Guo Xiang Tan
78748f1501
DEV: Refactor tests for notification when liking a post.
...
Tests were covering the same code path so I'm consolidating it.
2019-01-14 11:43:09 +08:00
Régis Hanol
88e861e895
FIX: prevent error when badge has already been awarded
2019-01-04 15:17:54 +01:00
Sam
59c56bd20f
DEV: anonymizing should not delete uploads
...
We have another job for upload deletion cause uploads may be shared
2018-12-13 16:43:48 +11:00
David Taylor
160d29b18a
REFACTOR: Migrate TwitterAuthenticator to use ManagedAuthenticator ( #6739 )
...
No changes to functionality. TwitterAuthenticator goes from 136 lines to 24, and all twitter-specific logic elsewhere has been deleted 🎉
2018-12-07 15:39:06 +00:00
Bianca Nenciu
41e184280d
FEATURE: Remove full quotes of direct replies. ( #6729 )
2018-12-07 13:07:11 +01:00
Sam
82e45f5485
FIX: method extraction caused push notifications to include incorrect post
...
Previously the push notification code path was not tested for notification
collapsing. This happens if you get multiple replies to a topic you are
watching.
2018-12-05 16:40:10 +11:00
Sam
aa97f6fdba
FEATURE: disable notifications for small actions that are whispers
...
Previously we would notify on small actions if they were whispers
this inconsistently lead to all sorts of problems including
- collapsed "N replies" after assign
- empty push notifications
New behavior adds an api to explicitly send push notifications as well
if needed: create_notification_alert
2018-12-04 17:54:42 +11:00
David Taylor
208005f9c9
REFACTOR: Migrate FacebookAuthenticator to use ManagedAuthenticator
...
Changes to functionality
- Removed syncing of user metadata including gender, location etc.
These are no longer available to standard Facebook applications.
- Removed the remote 'revoke' functionality. No other providers have
it, and it does not appear to be standard practice in other apps.
- The 'facebook_no_email' event is no longer logged. The system can
cope fine with a missing email address.
Data is migrated to the new user_associated_accounts table.
facebook_user_infos can be dropped once we are confident the data has
been migrated successfully.
2018-11-30 11:18:11 +00:00
Arpit Jalan
059e36a6ff
FIX: log name changes only when the name is actually updated
2018-11-30 15:30:46 +05:30
Gerhard Schlager
5640166b27
FIX: Notify only invited users about mentions in PMs
2018-11-26 22:42:56 +01:00
Guo Xiang Tan
a57baeec2a
Fix the build.
2018-11-22 16:37:24 +08:00
Guo Xiang Tan
d298f00046
DEV: Improve specs to be more specific about what has changed.
2018-11-22 10:10:07 +08:00
Guo Xiang Tan
e28af0429c
DEV: Improve tests to be more specific.
2018-11-13 15:02:46 +08:00
Maja Komel
27e732a58d
FEATURE: allow multiple secrets for Discourse SSO provider
...
This splits off the logic between SSO keys used incoming vs outgoing, it allows to far better restrict who is allowed to log in using a site.
This allows for better auditing of the SSO provider feature
2018-10-15 16:03:53 +11:00
Sam
550e108a8c
FEATURE: only export settings that changed via rake task
2018-10-08 11:54:52 +11:00
Neil Lalonde
dc1e7bb645
UX: when admin is deleted, make it clear in staff action logs when records belong to a deleted user and show their username in the details
2018-10-02 13:46:54 -04:00
Régis Hanol
4481836de2
FEATURE: new 'search_ignore_accents' site setting
2018-09-17 10:42:30 +02:00
Régis Hanol
30619c244c
FIX: don't index urls to local files
2018-09-13 18:53:53 +02:00
David Taylor
84fc7abb73
FIX: Allow `rake destroy:topics` to delete topics in sub-categories
2018-09-10 12:52:14 +01:00
Gerhard Schlager
797cbf8653
FIX: Remove user fields when anonymizing user
2018-09-07 00:02:56 +02:00
Gerhard Schlager
b8fc699164
FIX: Detect {{foo}} as interpolation key
2018-09-05 00:47:39 +02:00
Guo Xiang Tan
8dc1463ab3
Enable `Lint/ShadowingOuterLocalVariable` for Rubocop.
2018-09-04 10:16:42 +08:00
Sam
9b7cab589a
FIX: revert diacritic stripping
...
See more details in test case and at: https://meta.discourse.org/t/discourse-should-ignore-if-a-character-is-accented-when-doing-a-search/90198/16?u=sam
2018-08-31 11:46:55 +10:00
James Kiesel
a4001c1ea0
FEATURE: Pop revise modal on post edited notification ( #6287 )
...
* Add revision number to notification url
* Pop modal on route change
* Add semicolon
* Ensure modal pops even when navigating within a topic
* Ensure modal pops when visiting from other page
* Fix eslint errors
* Fix prettier errors
* Add callback for notification item click
* Remove stray revisionUrl function
* Rename to afterRouteComplete
2018-08-24 09:13:07 -04:00
Osama Sayegh
e0cc29d658
FEATURE: themes and components split
...
* FEATURE: themes and components split
* two seperate methods to switch theme type
* use strict equality operator
2018-08-24 11:30:00 +10:00
Régis Hanol
bc7b530b0a
FIX: remove diacritics instead of transliterating
2018-08-24 00:38:44 +02:00
Régis Hanol
2fcf2b899e
FIX: remove diacritics when tokenizing html for search
2018-08-23 17:13:52 +02:00
Bianca Nenciu
975a72ab7a
FEATURE: Make links indexable. ( #6285 )
2018-08-20 10:39:19 +10:00
Osama Sayegh
865cb3feb9
FIX: allow selecting site's default theme from preference
2018-08-10 14:12:02 +03:00
Osama Sayegh
0b7ed8ffaf
FEATURE: backend support for user-selectable components
...
* FEATURE: backend support for user-selectable components
* fix problems with previewing default theme
* rename preview_key => preview_theme_id
* omit default theme from child themes dropdown and try a different fix
* cache & freeze stylesheets arrays
2018-08-08 14:46:34 +10:00
Guo Xiang Tan
919e8db686
FIX: Check for group name availability should skip reserved usernames.
2018-08-01 11:09:33 +08:00
David Taylor
eda1462b3b
FEATURE: List, revoke and reconnect associated accounts. Phase 1 ( #6099 )
...
Listing connections is supported for all built-in auth providers. Revoke and reconnect is currently only implemented for Facebook.
2018-07-23 16:51:57 +01:00
Vinoth Kannan
84ab825e41
FEATURE: Webhook for user destroyed event ( #6124 )
2018-07-23 13:19:49 +05:30
Maja Komel
368d4e8eae
FIX: notify staff about whispers in watched categories ( #6128 )
2018-07-21 11:20:21 +02:00
OsamaSayegh
decf1f27cf
FEATURE: Groundwork for user-selectable theme components
...
* Phase 0 for user-selectable theme components
- Drops `key` column from the `themes` table
- Drops `theme_key` column from the `user_options` table
- Adds `theme_ids` (array of ints default []) column to the `user_options` table and migrates data from `theme_key` to the new column.
- Removes the `default_theme_key` site setting and adds `default_theme_id` instead.
- Replaces `theme_key` cookie with a new one called `theme_ids`
- no longer need Theme.settings_for_client
2018-07-12 14:18:21 +10:00
Maja Komel
ec3e6a81a4
FEATURE: Second factor backup
2018-06-28 10:12:32 +02:00
Arpit Jalan
f1d1207725
FIX: improve context when user deletes self
2018-06-18 11:36:22 +05:30
Gerhard Schlager
89bbc94331
Add spec for a26889a
2018-06-11 18:43:56 +02:00
Gerhard Schlager
150ae21489
FEATURE: Log user merge in staff logs
2018-06-11 18:43:56 +02:00
Gerhard Schlager
2564a8285d
REFACTOR: Run some parts of user anonymizing in background job
2018-06-08 15:50:07 +02:00
Gerhard Schlager
cf038cf72a
FEATURE: Remove more PII during user anonymizing
...
Removes
* invite if the user was invited
* email tokens
* incoming emails
* email log entries
* raw emails from posts
2018-06-08 15:50:07 +02:00
Sam
89ad2b5900
DEV: Rails 5.2 upgrade and global gem upgrade
...
This updates tests to use latest rails 5 practice
and updates ALL dependencies that could be updated
Performance testing shows that performance has not regressed
if anything it is marginally faster now.
2018-06-07 14:21:33 +10:00
Arpit Jalan
36f9af4fa4
minor optimizations for post rejected logs
2018-06-02 09:44:55 +05:30
Arpit Jalan
89eca87f16
FEATURE: add staff action log for post rejections
2018-06-01 21:48:27 +05:30
Gerhard Schlager
b970b072f6
FIX: User merge should not fail when primary email address is missing
...
The merge process might move all email addresses of the source user to the target user. Destroying the source user failed in that case.
2018-06-01 16:23:21 +02:00
Guo Xiang Tan
7fc8a36529
DEV: Take 2 Queue jobs in tests by default.
...
On my machine this cuts the time taken to run our test suite
from ~11mins to ~9mins.
2018-05-31 16:23:23 +08:00
Guo Xiang Tan
56e9ff6853
Revert "DEV: Queue jobs in tests by default."
...
Too risky for now
This reverts commit be28154d3b
.
2018-05-31 15:34:46 +08:00
Guo Xiang Tan
2b783997fa
Refactor tests to complete assertions within a single `it` block.
2018-05-31 15:05:47 +08:00
Guo Xiang Tan
be28154d3b
DEV: Queue jobs in tests by default.
2018-05-31 14:45:47 +08:00
Gerhard Schlager
ed2ae3cb0a
FIX: Load post revisions in correct order
2018-05-28 11:25:24 +02:00
Gerhard Schlager
20b94bc714
FIX: Extraction of quoted posts failed in some cases
...
* It stored only oneboxed "quotes" when [quote] and links to topics or posts were mixed.
* Revising a post didn't add or remove records from the quoted_posts table.
2018-05-25 12:00:17 +02:00
Sam
720a12ce76
correct time dependent spec
2018-05-25 14:26:05 +10:00
Guo Xiang Tan
755b511b5c
PERF: Destroy collapsed notifications in 1 query instead of 3.
2018-05-25 12:01:36 +08:00
Guo Xiang Tan
ad9e0d6bea
Merge pull request #5848 from OsamaSayegh/fix-social-login-groups
...
FIX: apply automatic group rules when using social login providers
2018-05-23 08:17:42 +08:00
OsamaSayegh
f6d412465b
FIX: apply automatic group rules when using social login providers
2018-05-23 02:26:07 +03:00
Gerhard Schlager
95db5f0c8c
FIX: Do not replace wrong avatars when renaming user
2018-05-22 13:41:51 +02:00
Sam
661d89f489
skip erratic spec
2018-05-22 09:42:50 +10:00
Guo Xiang Tan
aae5575d33
Remove spec file that was accidentally added.
2018-05-21 17:35:55 +08:00
Guo Xiang Tan
bf84037f79
FIX: Payload for webhooks should be current as of the time the event was triggered.
...
https://meta.discourse.org/t/group-category-tag-user-deleted-webhooks-not-firing/87752
2018-05-21 17:29:58 +08:00
Gerhard Schlager
ae6236d090
FIX: Changing owner of deleted reply didn't work
2018-05-16 17:03:09 +02:00
Gerhard Schlager
74c4af279a
Improvements to user renaming
...
* don't update search index if post belongs to deleted topic
* log errors instead of crashing when updating post or revision fails
* update mentions even when the href attribute is missing
* run the background job with low priority
* replace username in all notifications
* update `action_code_who` used by small action posts
2018-05-15 21:05:51 +02:00
Gerhard Schlager
2e1b5bc8d3
FIX: Transaction in UserAnonymizer prevented avatar from updating
2018-05-15 20:47:58 +02:00
Gerhard Schlager
c67c2dc638
FIX: Username update should ignore revisions without raw
2018-05-14 15:22:42 +02:00
Gerhard Schlager
8232aba743
FIX: Update search index after renaming user within posts
2018-05-14 13:20:30 +02:00
Gerhard Schlager
02cb84847c
FIX: Update avatar in oneboxed posts when renaming user
2018-05-14 13:20:29 +02:00
Gerhard Schlager
49392fb105
FIX: Anonymizing user didn't replace uploaded avatar in posts
2018-05-14 13:20:29 +02:00
Gerhard Schlager
2e67998319
Improvements for user renaming ( #5810 )
...
* FEATURE: Update avatars in posts and revisions when user gets renamed
* FIX: Replace username in deleted posts when user gets renamed
* FEATURE: Replace username in notifications when user gets renamed
FEATURE: Update mentions and quotes when user gets merged
2018-05-08 10:02:43 -04:00
Jeff Wong
91b31860a1
Feature: Push notifications for Android ( #5792 )
...
* Feature: Push notifications for Android
Notification config for desktop and mobile are merged.
Desktop notifications stay as they are for desktop views.
If mobile mode, push notifications are enabled.
Added push notification subscriptions in their own table, rather than through
custom fields.
Notification banner prompts appear for both mobile and desktop when enabled.
2018-05-04 15:31:48 -07:00
Robin Ward
05dddcb2fd
Add an event that is triggered when a user is anonymized
2018-05-02 12:25:29 -04:00
Gerhard Schlager
3be3c50c7e
FEATURE: Rename user in mentions and quotes
...
Co-authored-by: Robin Ward <robin.ward@gmail.com>
2018-05-01 13:49:14 -04:00
Robin Ward
079caf08d6
FIX: leftover debug statement
2018-04-30 14:41:11 -04:00
Robin Ward
e21a4ce1dd
FEATURE: Support anonymizing a user's IP addresses
2018-04-30 14:09:03 -04:00
Neil Lalonde
f7c4c71409
FIX: title selector needs to flag whether title comes from badge or not
2018-04-26 16:51:11 -04:00
Sam
6676bbd38b
FEATURE: index YouTube titles in search
...
Previously we omitted the titles for videos that YouTube provided
2018-04-26 15:46:52 +10:00
Gerhard Schlager
ec29869350
FIX: Merging users failed when PM was sent to source and target user
2018-04-24 11:08:29 -04:00
Arpit Jalan
0a442977b3
FEATURE: add staff action log for post approvals
2018-04-23 11:28:44 +05:30
Guo Xiang Tan
9eabf7c02c
Fix randomly failing specs due to SearchLog cache.
2018-04-23 10:10:10 +08:00
Maja Komel
3d99726981
FIX: set notification level when changing post owner ( #5616 )
...
FIX: do not notify last post editor if they mention themself
2018-04-16 11:48:06 +02:00
Gerhard Schlager
f042a9529b
FIX: users shouldn't get notifications about mentions from system users
...
(unless the mentioned users are participants in a PM with the system user)
2018-04-12 16:19:44 +02:00
Sam
bf2955cd98
stablize spec
2018-04-11 15:45:27 +10:00
Gerhard Schlager
62aacce8f4
FEATURE: Notify flaggers when flagged post is edited by author
2018-04-09 16:45:33 +02:00
Guo Xiang Tan
142571bba0
Remove use of `rescue nil`.
...
* `rescue nil` is a really bad pattern to use in our code base.
We should rescue errors that we expect the code to throw and
not rescue everything because we're unsure of what errors the
code would throw. This would reduce the amount of pain we face
when debugging why something isn't working as expexted. I've
been bitten countless of times by errors being swallowed as a
result during debugging sessions.
2018-04-02 13:52:51 +08:00
Blake Erickson
31ce955487
Add destroy rake task
...
Adds several rake tasks to delete users, topics, pm's and site stats so
that you can have a fresh site but maintain site settings and category
structure.
2018-03-30 18:32:21 -06:00
Neil Lalonde
73c1d3e7fe
FIX: tag notification preferences were being cleared when other preferences were changed
2018-03-29 15:08:32 -04:00
Blake Erickson
25bf5278e0
Add a couple more tests for site settings import
2018-03-23 15:14:54 -06:00
Blake Erickson
9fdf139235
Add tests for Site Settings import/export
...
- extracted out site settings rake task to a class
- added tests for import and export of site settings
2018-03-23 14:55:17 -06:00
Arpit Jalan
d96c1058a2
FEATURE: add staff action log for 'restore topic'
2018-03-21 18:04:13 +05:30
Neil Lalonde
5ce8177662
FIX: unable to delete user belonging to a group that grants a trust level
2018-03-14 15:12:11 -04:00
Gerhard Schlager
dc77cce8d9
FIX: Create notifications for mentions in PMs
2018-03-09 11:04:29 +01:00
Gerhard Schlager
07649cd42d
FIX: email_domains_whitelist prevented creation of anonymous users
2018-03-06 18:14:53 +01:00
Guo Xiang Tan
1365bab0d7
FEATURE: Live updates for user's messages page.
...
https://meta.discourse.org/t/group-inbox-messages-not-updated-for-new-posts/38189
2018-03-06 18:15:21 +08:00
Robin Ward
0f66a99eb2
Setting to prevent logging details when anonymizing
2018-03-05 14:38:18 -05:00
Gerhard Schlager
79590e4bec
FIX: Merging users shouldn't add more than 1 secondary email
2018-03-01 17:50:13 +01:00
Gerhard Schlager
a7c50039de
FIX: Allow changing post owner even when topic validations fail
2018-03-01 17:31:58 +01:00
Gerhard Schlager
7a2183e8ab
FEATURE: rake task for merging users
2018-03-01 12:28:12 +01:00
Gerhard Schlager
fffd1a6602
FIX: Associated Instagram account was missing at some places
2018-03-01 12:26:40 +01:00
Gerhard Schlager
c22e56499a
FIX: Allow changing post owner even when validations fail
2018-02-27 15:46:20 +01:00
Sam
86d12bd44b
FEATURE: search within title using in:title
...
Also
- Significantly improved search ranking, title is treated most strongly
- Adds tag names to the index
- Run search re-indexer more aggressively
- Re-index topic and all posts on category change
2018-02-20 14:41:21 +11:00
Robin Ward
7348513848
FIX: Include post in staff action logs when silencing a user
2018-02-13 15:59:10 -05:00
Maja Komel
1c27d93dcf
anonymous shadow users are approved on creation if must_approve_users is enabled ( #5569 )
2018-02-13 01:58:38 -05:00
Arpit Jalan
7cda3a37af
rename 'private_email_time_window_seconds' to 'personal_email_time_window_seconds'
2018-02-01 13:25:29 +05:30
Arpit Jalan
1f6adbea5c
FEATURE: log private message views
2018-01-29 08:08:08 +05:30
Neil Lalonde
8f21c96ea5
FIX: don't downcase watched words on input since it can break the watched_words_regular_expressions setting
2018-01-09 16:51:59 -05:00
Arpit Jalan
ef4c6c67ba
fix the build
2017-12-23 14:42:40 +05:30
Robin Ward
77f90876d3
REFACTOR: Track manual locked user levels separately from groups
2017-11-27 11:23:44 -05:00
Robin Ward
d755c9c90f
FIX: Allow regular expressions to specify boundaries
2017-11-17 14:13:44 -05:00
Gerhard Schlager
d47fa6653b
do not notify staged users about posts withing mailinglist mirror category
2017-11-17 15:29:14 +01:00
Robin Ward
971e302ff2
FEATURE: Support an end date for user silencing
2017-11-14 13:20:19 -05:00
Robin Ward
1f14350220
Rename "Blocked" to "Silenced"
2017-11-10 14:10:27 -05:00
Gerhard Schlager
0ccefb0365
make RuboCop happy
2017-11-10 17:57:28 +01:00
Gerhard Schlager
31e2385316
FEATURE: do not send notification emails to users who are included in the To and CC header of an incoming email
2017-11-10 17:44:20 +01:00
Neil Lalonde
18d65fe7e5
FIX: post counts in user stats when changing post owner
2017-11-02 18:05:23 -04:00
Guo Xiang Tan
e91a631978
REFACTOR: DRY up code and add better test coverage.
2017-10-23 11:16:14 +08:00
Guo Xiang Tan
79de10b212
FEATURE: Allow users to disable new PMs.
...
https://meta.discourse.org/t/is-it-possible-to-disable-private-messaging-for-a-specific-user/46391
2017-10-19 12:32:55 +08:00
Gerhard Schlager
c0bb97b5cb
FIX: delete staged users when the incoming email is rejected
2017-10-11 16:17:01 +02:00
Robin Ward
41c3941c4c
FEATURE: Support regular expressions for watched words
2017-09-27 15:48:57 -04:00
Robin Ward
7578d8fc44
Add a `DiscourseEvent` for when a topic is closed
2017-09-27 14:00:53 -04:00
Guo Xiang Tan
4e5e7dc736
FIX: Fix ActiveRecord API that was removed in Rails 5.1.
2017-09-25 16:16:37 +08:00
Guo Xiang Tan
77d4c4d8dc
Fix all the errors to get our tests green on Rails 5.1.
2017-09-25 13:48:58 +08:00
Gerhard Schlager
87b4246c14
FIX: notify about whispered reply
2017-09-19 15:51:10 +02:00
Sam
50203794e6
FIX: staged users should get emails on must_approve_users sites
2017-08-28 17:32:07 -04:00
Bianca Nenciu
6bc74ceb50
Split alias levels in mentionable and messageable levels. ( #5065 )
...
* Split alias levels in mentionable and messageable levels.
* Fixed some tests.
* Set messageable level to everyone by default.
* By defaults, groups are not mentionable or messageable.
* Made staff groups messageable by the system.
2017-08-28 12:32:08 -04:00
Erick Guan
6e59149a77
FIX: rebuild index when engine replaced ( #5021 )
2017-08-16 07:38:34 -04:00
Guo Xiang Tan
b77aa29e71
Merge pull request #5013 from LeoMcA/alternate-emails-phase-1.5
...
FIX: add additional email to tests and clean up resulting mess
2017-08-16 16:19:28 +09:00
Bianca Nenciu
117417848e
Remove like on change of ownership. ( #5038 )
2017-08-11 09:55:00 +02:00
Leo McArdle
836dee1120
FIX: add additional email to tests and clean up resulting mess
2017-07-31 22:27:29 +00:00
Guo Xiang Tan
4620dfe92d
FEATURE: Add group settngs to allow users to leave a group freely.
...
https://meta.discourse.org/t/split-join-leave-freely-setting-on-groups/65565
2017-07-28 15:00:25 +09:00
Guo Xiang Tan
5012d46cbd
Add rubocop to our build. ( #5004 )
2017-07-28 10:20:09 +09:00
Neil Lalonde
24cb950432
FEATURE: Watched Words: when posts contain words, do one of flag, require approval, censor, or block
2017-07-26 11:01:09 -04:00
Régis Hanol
d67fe4c674
FIX: block all emails associated to a user when destroying their record
2017-07-25 17:44:46 +02:00
Sam Saffron
045a2abcec
FEATURE: remove the timecop gem
...
We should only have one way of mocking time, misuse of timecop
was causing build stability issues
2017-07-24 12:11:10 -04:00
Guo Xiang Tan
c12edda766
Use `Timecop.freeze` instead of `Timecop.travel`.
2017-07-24 15:40:57 +09:00
Guo Xiang Tan
86dbd76191
Fix random spec failure due to ordering.
2017-07-24 15:25:07 +09:00
Leo McArdle
ddc0134b48
add DiscourseEvent triggers necessary to update a user's permissions before they're notified
2017-07-21 11:03:54 -04:00
Leo McArdle
d0b027d88d
FEATURE: phase 1 of supporting multiple email addresses
2017-07-20 11:22:27 +09:00
Guo Xiang Tan
13f3de4bf6
Nuke all `SiteSetting.stubs` from our codebase.
2017-07-07 15:09:14 +09:00
Guo Xiang Tan
d82dbd565b
FIX: Remove dependency on `rest-client`.
2017-06-16 09:42:41 +09:00
Guo Xiang Tan
b5ec241716
FIX: Validate interpolation keys used in translation overrides.
...
https://meta.discourse.org/t/discobot-translation-missing-error/64429/6?u=tgxworld
2017-06-16 08:54:48 +09:00
Guo Xiang Tan
238a156300
FIX: `TopicTimestampChanger` should not allow timestamps in the future.
2017-05-22 16:03:49 +08:00
Guo Xiang Tan
4382a0bb07
Rename `PostTimestampChanger` -> `TopicTimestampChanger`.
2017-05-22 15:01:33 +08:00
Sam
e1dd543a93
FEATURE: allow users to select theme on single device
2017-05-15 12:48:16 -04:00
Neil Lalonde
55b61e9bea
rename topic_status_update to topic_timer
2017-05-11 18:27:53 -04:00
Sam
946f25098f
Refactor theme fields so they support custom theme defined vars
...
This paves the way to allowing themes to specify uploads and so on.
2017-05-02 16:02:14 -04:00
Sam
a3e8c3cd7b
FEATURE: Native theme support
...
This feature introduces the concept of themes. Themes are an evolution
of site customizations.
Themes introduce two very big conceptual changes:
- A theme may include other "child themes", children can include grand
children and so on.
- A theme may specify a color scheme
The change does away with the idea of "enabled" color schemes.
It also adds a bunch of big niceties like
- You can source a theme from a git repo
- History for themes is much improved
- You can only have a single enabled theme. Themes can be selected by
users, if you opt for it.
On a technical level this change comes with a whole bunch of goodies
- All CSS is now compiled using a custom pipeline that uses libsass
see /lib/stylesheet
- There is a single pipeline for css compilation (in the past we used
one for customizations and another one for the rest of the app
- The stylesheet pipeline is now divorced of sprockets, there is no
reliance on sprockets for CSS bundling
- CSS is generated with source maps everywhere (including themes) this
makes debugging much easier
- Our "live reloader" is smarter and avoid a flash of unstyled content
we run a file watcher in "puma" in dev so you no longer need to run
rake autospec to watch for CSS changes
2017-04-12 10:53:49 -04:00
Robin Ward
40cee37bcc
FIX: Don't insert topic status messages unless the status changes
2017-04-07 17:10:43 -04:00
Sam Saffron
48d9c69117
remove confusing comment
2017-04-05 08:46:35 -04:00
Sam Saffron
cd39049262
SECURITY: do not send push notifications to suspended users
2017-04-05 08:28:24 -04:00
Robin Ward
a649014adf
Add spec for validation on group mention updater
2017-04-04 11:22:39 -04:00
Guo Xiang Tan
34b7bee568
FEATURE: Allow admin to auto reopen at topic.
...
* This commit also introduces a `TopicStatusUpdate`
model to support other forms of deferred topic
status update in the future.
2017-03-31 11:14:18 +08:00
Sam
74dbe877d8
test for side effect without mock
2017-03-20 16:15:23 -04:00
Arpit Jalan
d5bcc70e9c
FIX: grant trust level when bulk adding users to group
2017-03-06 14:39:53 +05:30
Arpit Jalan
e27b1b98d1
FIX: handle new user when logging name change
2017-03-01 13:43:57 +05:30
Arpit Jalan
6661cebff8
FIX: do not log duplicate username changes
2017-02-28 01:32:00 +05:30
Arpit Jalan
b32d3d66e5
FEATURE: log all username and name changes
2017-02-28 00:23:27 +05:30
Sam
783bac9ff7
less stubbing for better clarity and robustness
2017-02-13 14:34:15 -05:00
Sam
ff49f72ad9
FEATURE: per client user tokens
...
Revamped system for managing authentication tokens.
- Every user has 1 token per client (web browser)
- Tokens are rotated every 10 minutes
New system migrates the old tokens to "legacy" tokens,
so users still remain logged on.
Also introduces weekly job to expire old auth tokens.
2017-02-07 09:22:16 -05:00
Robin Ward
496682c442
Merge pull request #4662 from tgxworld/fix_localized_group_name_change
...
Fix localized group name change
2017-01-26 10:50:00 -05:00
Neil Lalonde
6b93b09404
FIX: when blocking a user results in hiding their posts, only hide posts made in the last 24 hours
2017-01-19 15:56:22 -05:00
Guo Xiang Tan
706b4f6b9f
FEATURE: Remap group mentions when group name has been changed.
2017-01-18 13:39:34 +08:00
Robin Ward
86c52c72f6
FIX: Deleting a user was not deleting their directory items
2017-01-16 11:46:52 -05:00
Guo Xiang Tan
e3b6f9b8ae
FIX: Do not update user stats like counts for private messages.
2017-01-16 11:07:53 +08:00
Guo Xiang Tan
38496985ef
Fix syntax error.
2017-01-12 10:03:37 +08:00
Guo Xiang Tan
23d4435af1
Oops.
2017-01-12 09:56:20 +08:00
Guo Xiang Tan
515f50e42e
FEATURE: Log admin action when readonly mode is changed.
2017-01-12 09:41:02 +08:00
Neil Lalonde
b177827841
more specs for staff action logging
2017-01-11 11:41:21 -05:00
Guo Xiang Tan
d10fe51b72
Fix broken specs since all urls will be oneboxed.
2017-01-06 10:05:51 +08:00
Guo Xiang Tan
f1beef43a8
Merge pull request #4618 from tgxworld/fix_invalid_emails
...
FIX: Don't allow invalid email to be saved.
2016-12-30 07:11:48 +08:00
Sam
d28d8a1f85
FIX: order by op_likes leads to broken browsing
2016-12-27 19:08:54 +11:00
Sam
c531f4ded5
remove rails-observers
...
Rails yanked out observers many many years ago, instead the functionality
was yanked out to a gem that is very lightly maintained.
For example: if we want to upgrade to rails 5 there is no published gem
Internally the usage of observers had quite a few problem.
The series of refactors renamed a bunch of classes to give us more clarity
and removed some magic.
2016-12-22 16:46:53 +11:00
Sam
019f1a1d06
UserEmailObserver is now removed
...
no big surprises here was pretty straightforward
after_commit semantics sure are weird though
2016-12-22 16:46:53 +11:00
Sam
2f6a4cc6de
remove UserActionObserver, replace with after_save and service
...
interestingly there was some left over dead code from when stars
existed in the topic_users table
2016-12-22 16:46:53 +11:00
Sam
0a78ae739d
Remove SearchObserver, aim is to remove all observers
...
rails-observers gem is mostly unmaintained and is a pain to carry forward
new implementation contains significantly less magic as a bonus
2016-12-22 13:13:14 +11:00
Guo Xiang Tan
13c6191e89
FIX: Don't allow invalid email to be saved.
2016-12-21 17:47:11 +08:00
Guo Xiang Tan
05f55dbc10
FEATURE: Group logs.
2016-12-12 17:29:54 +08:00
Régis Hanol
6edd3c347c
FIX: automatically disable digests when enabling mailing list mode
2016-11-28 15:52:35 +01:00
Guo Xiang Tan
f824afb4d3
FEATURE: Allow date_of_field column to be updated.
2016-11-17 15:16:58 +08:00
Sam
aaf947356b
correct regression where notifications scope is not pushing to push server
2016-10-14 22:52:39 +11:00
Sam
f4f5524190
FEATURE: user API now contains scopes so permission is granular
...
previously we supported blanket read and write for user API, this
change amends it so we can define more limited scopes. A scope only
covers a few routes. You can not grant access to part of the site and
leave a large amount of the information hidden to API consumer.
2016-10-14 16:05:42 +11:00
Sam
3ad8616f44
Merge pull request #4476 from xfalcox/localize-badge-notifications
...
FIX: Properly localize badge notification on batch grant
2016-10-12 15:16:35 +11:00
Rafael dos Santos Silva
48fa1f141f
Add specs for localized notifications on backfilled badges
2016-10-11 19:15:36 -03:00
Sam
89daa43754
FEATURE: remap emojis back for push notifications and desktop alerts
2016-10-11 13:03:48 +11:00
cpradio
6f1c31d777
Add notification level user preference when replying to a topic
2016-09-30 14:58:07 -04:00
Robin Ward
c94e6f1b96
Add locale step
2016-09-22 09:52:19 -04:00
Neil Lalonde
06eb256d0a
FIX: blocking users should never hide all posts if they are trust level 1 or higher
2016-09-12 11:58:10 -04:00
Sam
340874d345
FIX: post notifications in JSON so we properly support arrays and so on
2016-09-04 15:51:16 +10:00
Sam
4fe52c8cbe
FEATURE: backend support for pushing notifications to clients
2016-08-26 12:47:10 +10:00
Arpit Jalan
4a2f0e772c
add specs for post ownership change without revision
2016-08-20 01:27:48 +05:30
Robin Ward
4061725a95
FIX: Don't ever grant badges when they're disabled
2016-08-19 15:16:37 -04:00
Robin Ward
3d62e5dd98
SECURITY: XSS issue on Admin users list
2016-08-05 12:01:16 -04:00
Sam
9018de39ed
FEATURE: allow shipping bio markdown via SSO
...
- Also adds site setting for sso_overrides_bio to disable bio editing by end users
2016-08-01 15:29:28 +10:00
Robin Ward
c279889191
FIX: Watching First Post in groups was working incorrectly
2016-07-21 15:05:10 -04:00
Robin Ward
09be741820
FIX: Don't alert on new posts in a topic unless it's a new record
2016-07-19 15:57:05 -04:00
Guo Xiang Tan
d55da4fe1b
Revert "Revert "Update rails.""
...
This reverts commit 4d27d7e1d3
.
2016-07-18 11:00:23 +08:00
Robin Ward
4d27d7e1d3
Revert "Update rails."
...
This reverts commit 898ec43989
.
2016-07-15 16:35:57 -04:00
Guo Xiang Tan
898ec43989
Update rails.
2016-07-15 13:18:30 +08:00
Sam
4161ee210a
FEATURE: improved tag and category watching and tracking
...
- present tags watched on the user prefs page
- automatically watch or unwatch old topics based on watch status
New watching and tracking logic takes care of handling old topics
(either with or without read state)
When you watch a topic you now watch historically
Also removes confusing warnings from user.
2016-07-08 12:58:30 +10:00
Robin Ward
2005565c9c
Server side code for Watching First Post Only
2016-07-07 11:21:50 -04:00
Robin Ward
83e46cc302
FIX: Restrict changing ownership to one topic
2016-06-17 14:20:14 -04:00
Neil Lalonde
d62f2b4d67
UX: rename setting num_flags_to_block_new_user to num_spam_flags_to_block_new_user
2016-06-15 13:19:06 -04:00
Neil Lalonde
1c9519636c
FEATURE: new users can be blocked from posting if enough TL3 users flag their posts
2016-06-15 10:51:34 -04:00