Guo Xiang Tan
d299197392
DEV: Add missing test cases for Topic.for_digest
and Topic.secured
.
2019-04-05 09:00:48 +08:00
Robin Ward
b58867b6e9
FEATURE: New 'Reviewable' model to make reviewable items generic
...
Includes support for flags, reviewable users and queued posts, with REST API
backwards compatibility.
Co-Authored-By: romanrizzi <romanalejandro@gmail.com>
Co-Authored-By: jjaffeux <j.jaffeux@gmail.com>
2019-03-28 12:45:10 -04:00
Sam Saffron
9ebabc1de8
FEATURE: unconditionally update Topic updated_at when posts change in topic
...
Previously we would bypass touching `Topic.updated_at` for whispers and post
recovery / deletions.
This meant that certain types of caching can not be done where we rely on
this information for cache accuracy.
For example if we know we have zero unread topics as of yesterday and whisper
is made I need to bump this date so the cache remains accurate
This is only half of a larger change but provides the groundwork.
Confirmed none of our serializers leak out Topic.updated_at so this is safe
spot for this info
At the moment edits still do not change this but it is not relevant for the
unread cache.
This commit also cleans up some specs to use the new `eq_time` matcher for
millisecond fidelity comparison of times
Previously `freeze_time` would fudge this which is not that clean.
2019-03-28 17:28:01 +11:00
Tim Lange
f7b156ffbd
UX: Better emoji escaping for topic title ( #7218 )
...
* FIX: Fixed failing discourse-prometheus-alert-receiver plugin specs
2019-03-21 09:11:33 +01:00
Régis Hanol
6fb49e74a1
Revert "UX: Better emoji escaping for topic title ( #7176 )" ( #7201 )
...
This reverts commit 0d9bc0aaa6
.
2019-03-19 12:02:47 +01:00
Tim Lange
0d9bc0aaa6
UX: Better emoji escaping for topic title ( #7176 )
2019-03-19 09:33:10 +01:00
Robin Ward
fa5a158683
REFACTOR: Move queue_jobs
out of SiteSetting
...
It is not a setting, and only relevant in specs. The new API is:
```
Jobs.run_later! # jobs will be thrown on the queue
Jobs.run_immediately! # jobs will run right away, avoid the queue
```
2019-03-14 10:47:38 -04:00
Joffrey JAFFEUX
d32557ea32
Revert "FIX: Better emoji escaping for topic title"
...
This reverts commit 35426b5ad6
.
2019-03-13 13:02:56 +01:00
Tim Lange
35426b5ad6
FIX: Better emoji escaping for topic title
...
This commit also puts emojiVersion in its own erb file.
2019-03-13 11:17:59 +01:00
Robin Ward
d1d9a4f128
Add new run_jobs_synchronously!
helper for tests
...
Previously if you wanted to have jobs execute in test mode, you'd have
to do `SiteSetting.queue_jobs = false`, because the opposite of queue
is to execute.
I found this very confusing, so I created a test helper called
`run_jobs_synchronously!` which is much more clear about what it does.
2019-03-11 16:58:35 -04:00
Guo Xiang Tan
978f0db109
SECURITY: Require groups to be given when inviting to a restricted category. ( #6715 )
2018-12-05 16:43:07 +01:00
Maja Komel
c701036034
FIX: reset bump date resets bumped_at to the last regular post in topic ( #6605 )
2018-11-14 18:56:22 +01:00
Guo Xiang Tan
5ae4cbcf88
DEV: Clear ColorScheme.hex_cache
to avoid leaking state.
2018-10-15 11:16:26 +08:00
Sam
7d6b348d0b
SECURITY: correct XSS on long topic titles
2018-09-18 08:54:44 +10:00
Gerhard Schlager
c358421ca5
FIX: Bulk updating category failed when topic title was too short
2018-08-14 16:37:52 +02:00
Gerhard Schlager
b9072e8292
FEATURE: Add "Reset Bump Date" action to topic admin wrench ( #6246 )
2018-08-10 10:51:03 +10:00
Misaka 0x4e21
6db623ef6b
UX: Improve category filtering and include subcategories
...
* category_filtering
1. report_top_referred_topics
2. report_top_traffic_sources
3. report_post_edit
* category_filtering with subcategory topics
1. report_top_referred_topics
2. report_top_traffic_sources
3. report_post_edit
4. report_posts
5. report_topics
6. report_topics_with_no_response
* category_filtering tests (without subcategory topics)
1. report_posts
2. report_topics_with_no_response
* subcategory topics tests `in_category_and_subcategories` in `topic_spec.rb`
1. `in_category_and_subcategories` in `topic_spec.rb`
2. topics, posts, flags and topics_with_no_response in `report_spec.rb`
2018-08-10 10:50:05 +10:00
Sam
0408e87e00
remove uneeded specs
2018-07-05 15:34:58 +10: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
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
be28154d3b
DEV: Queue jobs in tests by default.
2018-05-31 14:45:47 +08:00
Guo Xiang Tan
147ea37115
FIX: Missing notification for watching first post users when topic is recategorized.
...
https://meta.discourse.org/t/not-receiving-notifications-for-announcements/87275/2?u=tgxworld
2018-05-17 16:15:29 +08:00
Sam
8a783412b7
UX: improvements to new dashboard
...
- remove inactive user report and replace with posts
- clean up internals so grouping by week happens on client
- when switching periods old report was not destroyed leading to bugs
- calculate trend based on previous interval ... not previous 30 days
- show percentages for mau/dau
- be more careful about utc date usage
- show uniqu and click through rate on search panel
- publish key of report with report so we only load the correct one
- subscribe earlier in channel in case of concurrency issues
2018-05-11 13:30:32 +10:00
Guo Xiang Tan
ee1eb1a5bd
FIX: Retrigger notification when a topic is recategorized.
...
https://meta.discourse.org/t/notifications-when-a-topic-is-recategorized/63079
2018-05-07 21:29:06 +08:00
Sam
f8637ed616
FIX: if a message is *partially* archived consider it not archived
2018-04-05 17:17:47 +10:00
Guo Xiang Tan
3d18cd1d9d
Raise error when timestamp is invalid when creating topic timers.
...
https://meta.discourse.org/t/topic-timer-doesnt-work-for-fa-ir-locale/83702
2018-03-26 11:33:52 +08:00
Arpit Jalan
82143a421c
FIX: max topic invitations per day
should apply on PM invites as well
...
FIX: do not apply `max topic invitations per day` on email invites
2018-03-12 23:17:58 +05:30
Arpit Jalan
a8149f8969
FIX: user should not be able to invite to PM if trust level requirment not met
...
FIX: when personal messages are disabled let user invite to a public topic
2018-03-08 14:59:04 +05:30
Sam
e162cd16b6
FEATURE: editing_grace_period_max_diff to force revisions in grace period
...
If a user performs a substantive edit of 20 chars or more during grace period
we will store a revision to track the change
This allows for better auditing of changes that happen during the grace period
2018-03-07 18:34:34 +11:00
Guo Xiang Tan
07f1d90b88
FIX: Inviting a group that I am part of creates a notification.
...
https://meta.discourse.org/t/inviting-a-group-to-a-message-does-not-trigger-a-notification-mail/50509/10?u=tgxworld
2018-03-05 13:51:32 +08:00
Arpit Jalan
2e202495a3
FIX: do not allow invite notifications from muted user/topic
2018-03-02 12:24:51 +05:30
Guo Xiang Tan
47c41f474d
Missing indentation.
2018-03-01 13:12:13 +08:00
Guo Xiang Tan
947b6fdf46
FIX: Incorrect rate limit applied to topics invitation flow.
2018-03-01 12:50:00 +08:00
Neil Lalonde
3313072957
Remove censored_pattern site setting, which is replaced by watched words
2018-02-26 16:29:27 -05:00
Guo Xiang Tan
65cb785374
Improve specs for Topic#invite
.
2018-02-26 15:18:34 +08:00
Guo Xiang Tan
6a88f7db61
Notification created for wrong user after invite.
...
Introduced in c64f09b6b7
2018-02-26 13:21:19 +08:00
Guo Xiang Tan
6c1c5fe2d6
Fix the build take 2.
2018-02-26 13:09:13 +08:00
Guo Xiang Tan
c64f09b6b7
REFACTOR: Simplify and DRY Group#invite
.
2018-02-26 11:59:07 +08:00
Arpit Jalan
25ec077eca
rename 'min_private_message_{post/title}_length' to 'min_personal_message_{post/title}_length'
2018-02-01 13:25:29 +05:30
Vinoth Kannan
e5affdf230
FIX: URI must be ascii only for URI.parse command
2018-01-07 02:31:35 +05:30
Guo Xiang Tan
7aee1e3083
Remove specs that makes the build very sad.
2017-12-13 17:51:52 +08:00
Guo Xiang Tan
d5293aeae2
Clean Topic#slug
when SiteSetting.slug_generation_method
changes.
...
https://meta.discourse.org/t/removing-the-concept-of-slugs-for-some-languages/26643/24?u=tgxworld
2017-12-13 16:11:07 +08:00
Guo Xiang Tan
365bd771d9
Fix the build.
2017-12-11 17:03:05 +08:00
Guo Xiang Tan
4bd5acec47
FIX: Topic#featured_link
may contain more than a URL.
2017-12-11 16:36:19 +08:00
Joffrey JAFFEUX
f0ef307d2d
FIX: topic timer offset applied two times
...
timezone offset was calculated and sent from browser to server, it would be applied on utc time generated from '2013-11-22 5:00' format for example and then sent back to browser which would display it thinking it's UTC time using `moment(utc time)` when it's in fact an UTC time we have offseted with the initial user timezone.
This is impossible to automatically test in the current app state. Easiest reproduction is in live browser after setting your timezone to `America/New_York`, when setting a topic timer to later_today, after save, the time under the topic should be off to something roughly equal +1/-1 hour to your timezone offset.
2017-12-07 14:42:58 +01:00
Sam
dd70ef3abf
Revert "Revert "PERF: improve speed of rate limiter""
...
This reverts commit 2373d85239
.
2017-12-04 21:23:11 +11:00
Sam
2373d85239
Revert "PERF: improve speed of rate limiter"
...
This reverts commit a9bcdd7f27
.
2017-12-04 21:19:28 +11:00
Sam
a9bcdd7f27
PERF: improve speed of rate limiter
...
Also
- adds a global rate limiter option
- cleans up usage in tests
- fixes freeze_time so it handles clock_gettime
2017-12-04 18:17:30 +11:00
Guo Xiang Tan
e73fbfe265
FIX: Topic#featured_link_root_domain
extracts URL before parsing.
2017-12-04 10:00:07 +08:00
Guo Xiang Tan
9fbe1436b6
UX: Replace heuristic solution root domain extraction for topic featured link.
2017-11-29 21:52:41 +08: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
Guo Xiang Tan
401fbdbfe7
FIX: Topic#title
were being parameterized when encoded slug is
...
enabled.
2017-10-27 11:02:47 +08:00
Gerhard Schlager
3cd73cdf18
FIX: fancy topic title must fit into column
2017-10-19 14:34:30 +02:00
Guo Xiang Tan
22ba70fb01
Merge pull request #5226 from tgxworld/allow_user_to_disable_private_messages
...
FEATURE: Allow users to disable new PMs.
2017-10-19 16:46:18 +08:00
Guo Xiang Tan
5b9ddaf972
FIX: Topic#fancy_title
should not write in readonly mode.
2017-10-19 16:07:03 +08:00
Guo Xiang Tan
25c25ae423
FEATURE: Allow user to leave a PM.
2017-10-19 12:32:55 +08:00
Guo Xiang Tan
b0557c6692
UX: Allow users to remove a remind me topic timer.
2017-10-05 11:50:08 +08:00
Guo Xiang Tan
1310181664
FIX: Adding a public topic timer deletes a private topic timer.
2017-10-04 16:31:40 +08: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
Guo Xiang Tan
bc3e43b496
FIX: Topic timers being incorrectly trashed!
.
...
https://meta.discourse.org/t/temporary-timed-closure-of-topic-not-re-opening-topic/67877
2017-08-22 15:23:09 +09:00
Guo Xiang Tan
87994a86ce
FIX: Don't set topic timer for close topics when changing category.
...
https://meta.discourse.org/t/moving-a-topic-after-closure-reopens-topic/67659/4
2017-08-22 12:54:34 +09:00
Neil Lalonde
94d8f6d734
FIX: digest emails should not include posts that are still in the edit grace period
2017-08-14 12:47:33 -04: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
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
fa09a02201
Fix specs.
2017-07-24 15:56:08 +09:00
Arpit Jalan
76981605fa
FIX: don't raise error when inviting existing user to private topic via email
...
https://meta.discourse.org/t/inviting-existing-user-to-a-private-topic-message-via-email-shows-error-message/65994
2017-07-12 21:51:21 +05:30
Guo Xiang Tan
13f3de4bf6
Nuke all SiteSetting.stubs
from our codebase.
2017-07-07 15:09:14 +09:00
Neil Lalonde
fcb2f68565
FIX: duplicate topics and posts in summary email because user has muted tags and topics contain multiple tags
2017-07-04 16:12:10 -04:00
Neil Lalonde
3964929c75
FIX: summary email excludes all untagged topics if user has muted some tags
2017-07-04 12:52:25 -04:00
Robin Ward
b93edc9945
FIX: Make sure censored words are on boundaries in topic titles
2017-06-28 13:13:40 -04:00
Guo Xiang Tan
4c98bd9d5f
FIX: Can't update status_type of topic timers.
...
https://meta.discourse.org/t/topic-timers-internal-error-500/64805
2017-06-21 15:31:15 +09:00
Guo Xiang Tan
2fdf9068eb
FIX: Create notification for group users when group has been invited.
...
https://meta.discourse.org/t/inviting-a-group-to-a-message-does-not-trigger-a-notification-mail/50509
2017-06-14 14:53:49 +09:00
Guo Xiang Tan
b0dd05fdc6
FIX: Inherit topic auto close when changing topic's category.
2017-05-31 17:40:21 +09:00
Guo Xiang Tan
08c36fa968
REFACTOR: Clean up some code associated with topic timers.
2017-05-22 18:10:29 +08:00
Neil Lalonde
7821400141
FEATURE: staff can set a timer to remind them about a topic
2017-05-16 14:49:50 -04:00
Sam
44d7fe89ed
FIX: unescape emoji in pretty title
...
This makes emoji in title consistent, it is later escaped back when needed
2017-05-15 10:28:05 -04:00
Neil Lalonde
55b61e9bea
rename topic_status_update to topic_timer
2017-05-11 18:27:53 -04:00
Arpit Jalan
77a8cae094
FIX: rescue specific errors on invite failure
2017-05-02 15:13:33 +05:30
Guo Xiang Tan
59b906ab0d
FEATURE: Disable minimum post length check when in PM with non human users.
...
https://meta.discourse.org/t/discourse-narrative-bot-beta-feedback/58621/65?u=tgxworld
2017-04-27 16:00:22 +08:00
Arpit Jalan
aeead60036
FIX: make TopicEmbed trashable
2017-04-25 18:40:39 +05:30
Robin Ward
e2ff06ce02
FIX: rounding error in spec
2017-04-07 17:44:02 -04:00
Robin Ward
40cee37bcc
FIX: Don't insert topic status messages unless the status changes
2017-04-07 17:10:43 -04:00
Guo Xiang Tan
ad44d2a400
Merge pull request #4790 from tgxworld/add_publish_to_topic_status_update
...
FEATURE: Allow admins to schedule a topic to be published in the future.
2017-04-04 11:18:53 +08:00
Guo Xiang Tan
f4758a4c4d
FEATURE: Allow admins to schedule a topic to be published in the future.
2017-04-04 11:16:05 +08:00
Arpit Jalan
5ff29ce321
add test case for topic status update based on last post
2017-04-03 22:35:56 +05:30
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
Arpit Jalan
295cf8839e
FIX: better error message when invited user already exists
2017-03-22 13:55:28 +05:30
Sam
2c59ffeb2c
FIX: token rotation not accounting for overlapping tokens correctly
...
also... freeze_time has no block form, correct all usages and specs
2017-02-15 10:58:18 -05:00
Robin Ward
b251d11518
FIX: If you make a new banner, clear the old dismissed values
2017-02-03 15:07:38 -05:00
Arpit Jalan
6b8691ecea
Merge pull request #4685 from techAPJ/approve-users-invite-fix
...
FIX: allow existing users to be invited to topic/message when must_approve_users is enabled
2017-02-03 13:22:18 +05:30
Arpit Jalan
dc2171960b
FIX: allow existing users to be invited to topic/message when must_approve_users is enabled
2017-02-03 13:01:23 +05:30
Neil Lalonde
b91cb92af0
FIX: reports for time to first reply and topics without replies were counting whispers and moderator actions
2017-02-02 17:27:41 -05:00
Rimian Perkins
25516874b5
FIX: Escape regexp chars in SiteSetting.censored_words
.
2017-01-31 10:14:51 +08:00
Guo Xiang Tan
0e5d490b05
No need for special helper to reset SiteSetting state.
...
* SiteSetting in tests uses a local provider that resets it.
2017-01-28 10:55:49 +08:00
Neil Lalonde
7ead3e1f18
fix failing specs
2017-01-27 16:17:10 -05:00
Guo Xiang Tan
ce07da1d8b
UX: Only display the words that fails censored words validations.
2017-01-24 13:11:05 +08:00
Guo Xiang Tan
3d21ccd4a5
FIX: Add validation to disallow censored words in topic title.
2017-01-09 16:55:41 +08:00