Guo Xiang Tan
9e86b425bc
FIX: Job to clean up old URL settings when new setting has been set.
...
Related to 44391ee8ab
2018-11-16 09:33:31 +08:00
Guo Xiang Tan
df111259fe
More URL site settings into a onceoff job.
...
* Doing it in a post migration was a bad idea
because the migration will fail if the site
is down while trying to download uploads
which points to the instance. This mainly
affects self-hosters using `discourse_docker`
where `./launcher rebuild` will take the
existing container down.
2018-11-14 20:29:20 +08:00
Bianca Nenciu
fce0a0ccc8
FEATURE: Compute distance between logins to generate login alerts. ( #6562 )
2018-11-14 13:26:47 +01:00
Guo Xiang Tan
44391ee8ab
FEATURE: Upload Site Settings. ( #6573 )
2018-11-14 15:03:02 +08:00
Guo Xiang Tan
7b44339529
FIX: Prevent uploads used in site settings from being deleted.
2018-11-13 09:15:16 +08:00
Gerhard Schlager
24e5be3f0c
FIX: Relative links in translations should work with subfolder
2018-11-08 23:31:05 +00:00
Bianca Nenciu
2070edf889
FIX: Clarify User.group_locked_trust_level.
...
* Rename User.group_locked_trust_level to User.group_granted_trust_level.
* Remove the column from users table.
2018-11-07 10:27:44 +08:00
Guo Xiang Tan
bdb8e9efdb
DEV: Remove mocks from specs.
2018-11-07 09:55:58 +08:00
Bianca Nenciu
e0ccd36dbe
FEATURE: Suspicious logins report. ( #6544 )
2018-10-30 22:51:58 +00:00
Régis Hanol
d17c8df926
Only check for suspicious login for staff members
2018-10-26 00:29:28 +02:00
Bianca Nenciu
6a3767cde7
FEATURE: Warn users via email about suspicious logins. ( #6520 )
...
* FEATURE: Warn users via email about suspicious logins.
* DEV: Move suspicious login check to a job.
2018-10-25 09:45:31 +00:00
Kyle Zhao
0f1afad6da
FIX: extracted theme JavaScripts for multisite ( #6502 )
...
* FIX: extracted theme javascripts for multisite
* onceoff to rebake all theme fields
2018-10-18 17:05:34 +11:00
Neil Lalonde
12f132736b
FIX: error looking at users in admin when tl3_promotion_min_duration is set to a very high value
2018-10-11 15:11:48 -04:00
Guo Xiang Tan
1b1ef21481
DEV: Improve `Jobs::CleanUpEmailLogs` specs.
2018-10-08 11:11:20 +08:00
Vinoth Kannan
8430ea927e
FIX: Generate webhook payloads before destroy events ( #6325 )
2018-10-05 16:53:59 +08:00
Guo Xiang Tan
cfa7173da3
FIX: Onceoff job to fix missing user profile backgrounds.
2018-10-01 16:26:40 +08:00
Robin Ward
02da022c70
PERF: Quit out of the email job quickly if disabled ( #6423 )
...
This prevents sidekiq from doing a bunch of queries when email is
disabled.
Critical emails are a special case and will be sent.
2018-10-01 01:15:45 +08:00
Guo Xiang Tan
767f27929d
Rename `Jobs::RecoverPostUploads` to rerun the job take 2.
2018-09-19 22:40:32 +08:00
Guo Xiang Tan
aa1af9fc22
FIX: Onceoff job to recover missing post uploads.
...
This fixes the regression due to 1f636c445b
2018-09-14 09:04:01 +08:00
Sam
d9c0dc8687
correct prev commit
...
s3. did not exists it is s3-
2018-09-05 16:11:44 +10:00
Sam
83e1315e42
FIX: correct urls in uploads table to point at dualstack
...
Last week we added support for dual stack urls but did not remap the
the old records in the uploads and optimized images table
This caused a few minor edge cases worst was that if you rebaked old
images S3 CDN was not repopulated.
2018-09-05 15:58:04 +10:00
Sam
1866a8e8da
correct invalid spec
2018-08-31 15:06:30 +10:00
Gerhard Schlager
b2cf725700
FIX: Don't try to send invite email when invite was deleted
2018-08-29 12:43:12 +02:00
Sam
44cf3cf975
FIX: queue heartbeats in readonly modes
...
If sidekiq is paused or Discourse is in readonly continue to queue
heartbeats
If we do not do that then a master process can end up reaping sidekiq
workers and causing various badness
This also impacts restore which can do weird stuff TM in cases like this
2018-08-29 12:36:59 +10:00
Sam
740308675b
FEATURE: erode bounce score every time an email is sent
...
Introduces a hidden setting (default is 0.1) that erodes bounce score
every time we send an email. This means that erratic failures are less
painful cause system auto corrects
2018-08-28 17:02:12 +10:00
Kyle Zhao
e25a6e085e
FIX: drop title updates through RSS feeds
...
can create an update loop
2018-08-28 16:25:04 +10:00
Guo Xiang Tan
36a7028f19
FEATURE: Clean up `PostReplyKey` records.
...
* Default retention of 90 days.
2018-08-23 10:40:02 +08:00
Guo Xiang Tan
8bdf14834b
PERF: Restrict number of skipped email log for `Jobs::UserEmail`.
2018-08-21 11:14:43 +08:00
Guo Xiang Tan
2c70d3f443
Take 2 on ba6f11c521
.
2018-08-21 10:06:36 +08:00
Bianca Nenciu
860c1c3dcd
FEATURE: Automatically expire keys if not used for a configurable amount of time. ( #6264 )
2018-08-20 17:36:14 +02:00
Guo Xiang Tan
16c0ebe8a8
Fix the build.
2018-08-17 16:53:07 +08:00
Joffrey JAFFEUX
10a3499d68
uses emoji versions for specs ( #6276 )
2018-08-16 13:45:30 +02:00
Gerhard Schlager
b73950692b
FIX: Parsing non-existent feed should not fail
2018-08-10 18:37:14 +02:00
Simon Cossar
3cd4dc0f5f
Allow users with group_locked_trust_level to be promoted to tl3 ( #6249 )
2018-08-10 10:42:23 +10:00
Guo Xiang Tan
ba6f11c521
PERF: Only log the first skipped email when user exceeds daily limit.
...
https://meta.discourse.org/t/cleaning-up-e-mail-logs/39132
2018-08-08 16:25:00 +08:00
Guo Xiang Tan
4e11811321
FIX: `UserAvatar#update_gravatar!` does not update `User#uploaded_avatar`.
...
https://meta.discourse.org/t/missing-user-profile-pictures/93844/4
2018-08-06 13:29:44 +08:00
Gerhard Schlager
5d421fb946
FIX: Try respecting charset in HTTP header of RSS feed
2018-08-01 10:41:20 +02:00
Gerhard Schlager
ff942ed2f3
FIX: Try detecting encoding of RSS feed
2018-08-01 10:41:20 +02:00
Guo Xiang Tan
87537b679c
Drop `reply_key`, `skipped` and `skipped_reason` from `email_logs`.
2018-07-30 11:39:28 +08:00
Guo Xiang Tan
fad9c2b971
PERF: Move `EmailLog#reply_key` into new `post_reply_keys` table.
2018-07-24 13:51:53 +08:00
Guo Xiang Tan
ae8b0a517f
PERF: Split skipped email logs into a seperate table.
2018-07-24 13:14:37 +08:00
Vinoth Kannan
f8e9190617
FEATURE: Retry web hook when it is failed
2018-07-23 10:12:04 +08:00
Joffrey JAFFEUX
06323f9c89
FIX: takes old dashboard out of caching job
2018-07-21 12:42:03 -04:00
Régis Hanol
6d6e026e3c
FEATURE: selectable avatars
2018-07-18 12:57:43 +02:00
Guo Xiang Tan
202b839208
Fix the build.
2018-07-17 17:20:57 +08:00
Guo Xiang Tan
4172e1dd52
FIX: Rename `User#usernames` that clashes with `Group#name`. ( #6069 )
2018-07-09 16:54:57 +08:00
Gerhard Schlager
50192de046
Fix the specs
2018-06-25 16:18:07 +10:00
Ernesto Serrano
93e60a59f5
Added rspec test
2018-06-25 16:18:07 +10:00
Sam
5f64fd0a21
DEV: remove exec_sql and replace with mini_sql
...
Introduce new patterns for direct sql that are safe and fast.
MiniSql is not prone to memory bloat that can happen with direct PG usage.
It also has an extremely fast materializer and very a convenient API
- DB.exec(sql, *params) => runs sql returns row count
- DB.query(sql, *params) => runs sql returns usable objects (not a hash)
- DB.query_hash(sql, *params) => runs sql returns an array of hashes
- DB.query_single(sql, *params) => runs sql and returns a flat one dimensional array
- DB.build(sql) => returns a sql builder
See more at: https://github.com/discourse/mini_sql
2018-06-19 16:13:36 +10:00
Sam
1d9fdcd9d3
Attempt to make spec more robust
2018-06-14 16:10:30 +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
aaea24448e
DEV: Add specs for 085eaaf18d
.
2018-06-05 10:03:26 +08:00
Guo Xiang Tan
dcba320bf6
Remove spec that isn't testing for anything.
2018-06-05 09:30:02 +08:00
Gerhard Schlager
c0bab84dc1
Fix random build error
...
Spec usually failed when there was an UpdateGravatar job for the system user.
2018-06-01 17:34:19 +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
be28154d3b
DEV: Queue jobs in tests by default.
2018-05-31 14:45:47 +08:00
Guo Xiang Tan
58fbe74b6f
Remove assertion `to_not raise_error`.
...
If an error is raised the test would fail anyway.
2018-05-25 09:57:08 +08:00
Guo Xiang Tan
43f7cb05c9
FIX: Broken ping event for web hooks due to missing payload.
2018-05-24 15:16:52 +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
Sam
21e0b7c818
avoid async report pattern and replace with simpler hijack
2018-05-16 16:05:03 +10:00
Régis Hanol
a28c58feb1
FIX: automatic group membership when using SSO
2018-05-15 01:48:30 +02:00
Sam
67054d524d
correct missing day from async reports
2018-05-11 15:06:23 +10:00
Misaka 0x4e21
ff6be3c2e3
FEATURE: add profile_background fields into SSO ( #5701 )
...
Add profile_background and card_background fields into Discourse SSO.
2018-05-07 10:03:26 +02:00
Kyle Zhao
0cc4b42180
FIX: TopicEmbed.import should update title and author
2018-05-02 17:12:31 +10:00
Régis Hanol
598aba3261
fix the build
2018-04-25 22:34:23 +02:00
Arpit Jalan
65be3c627d
further optimize spec
2018-04-25 11:08:38 +05:30
Arpit Jalan
9d7f4cec3e
optimize spec
2018-04-25 10:27:56 +05:30
Arpit Jalan
d2cc5452ec
add spec for user csv export
2018-04-25 10:22:39 +05:30
Arpit Jalan
91bf10bd12
FIX: create upload record for exported csv files
2018-04-20 00:27:49 +05:30
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
Vinoth Kannan
efb19dbdaf
Merge pull request #5705 from discourse/new_webhooks
...
FEATURE: Webhook for group and category events
2018-04-02 10:53:21 +05:30
Vinoth Kannan
dc33f2d071
Add new web hook serializers
2018-03-28 17:40:29 +05:30
Neil Lalonde
ced7e9a691
FEATURE: control which web crawlers can access using a whitelist or blacklist
2018-03-22 15:41:02 -04:00
Guo Xiang Tan
486bbe9cc2
FIX: Auto re-opened topics should restore category auto close settings.
...
https://meta.discourse.org/t/topic-closed-temporarily-due-to-community-flags-overwrites-category-auto-close-timer/77421
2018-02-27 15:33:31 +08:00
Régis Hanol
0559a4736a
FIX: don't double request when downloading a file
2018-02-24 12:35:57 +01:00
Vinoth Kannan
e924de71e7
Spec test to make sure we do not skip trashed post
2018-02-13 12:23:47 +05:30
Neil Lalonde
d7e90edeb5
PERF: Tl3Promotions job can limit the number of TL3 candidates by using some simple requirements in the query
2018-02-05 17:54:36 -05:00
Régis Hanol
130974d58d
FIX: automatically unsilence users
2018-02-05 17:45:47 +01:00
Régis Hanol
a7603b1cfb
remove unused file
2018-02-05 16:58:57 +01:00
Régis Hanol
77ac14d475
prevent users with a tiny number of posts to dominate the 'new user of the month' leaderboard
2018-01-29 12:09:17 +01:00
Jan Suchal
bc56d86a63
Support ruby 2.5.0
2018-01-09 16:03:17 +01:00
Arpit Jalan
6c1ebbb95c
add test case for csv BOM handling
2018-01-09 15:49:41 +05:30
Arpit Jalan
ef4c6c67ba
fix the build
2017-12-23 14:42:40 +05:30
Gerhard Schlager
7b58afe677
FIX: ProcessPost job failed for posts that have no user
2017-12-21 14:45:59 +01:00
Guo Xiang Tan
97ceebb570
SECURITY: Don't pass email backup token to sidekiq as a parameter.
...
* This exposes the token in the Sidekiq dashboard which can be
viewed by an admin and defeats the purpose of using a token
in the download backup email ink.
2017-12-18 11:25:22 +08:00
scossar
11050e5d10
Don't override count value that has been set by query.count
2017-12-13 18:48:46 -08:00
Sam
b998efdc94
FIX: do not send mailing list emails to unapproved users
2017-12-13 15:13:17 +11:00
Kyle Zhao
5f318a5241
FEATURE: Replace SimpleRSS with Ruby RSS module ( #5311 )
...
* SPEC: PollFeedJob parsing atom feed
* add FeedItemAccessor
It is to provide a consistent interface to access a feed item's tag
content.
* add FeedElementInstaller
to install non-standard and non-namespaced feed elements
* FEATURE: replace SimpleRSS with Ruby RSS module
* get FinalDestination and download with Excon
* support namespaced element with FeedElementInstaller
2017-12-06 10:45:09 +11:00
Sam
af061efcf5
DEV: if plugins are installed do not fail the test
2017-12-04 18:17:30 +11:00
Guo Xiang Tan
c128e421c4
FIX: Don't run job if topic timer has already been deleted.
2017-11-30 15:26:26 +08:00
Régis Hanol
a586738f25
fix randomly failing spec
2017-11-16 18:16:16 +01:00
Régis Hanol
678e28794a
FIX: properly handle too large & broken images in posts
2017-11-16 15:45:07 +01:00
Vinoth Kannan
6f2a3cb026
Remove unwanted triggers to `CookedPostProcessor` ( #5319 )
2017-11-16 15:20:44 +05:30
Sam
9c22c68d39
FIX: only save custom fields if they actually change
2017-11-16 15:14:10 +11:00
Vinoth Kannan
7b494a65c9
NEW: large image placeholder added in cooked html ( #5291 )
2017-11-15 11:30:47 +01:00
Robin Ward
971e302ff2
FEATURE: Support an end date for user silencing
2017-11-14 13:20:19 -05:00
Régis Hanol
7370adeae3
FIX: don't delete uploads referenced in drafts or queued posts when using the short_url
2017-11-13 15:01:31 +01:00
Robin Ward
1f14350220
Rename "Blocked" to "Silenced"
2017-11-10 14:10:27 -05:00
Kyle Zhao
15cd3b78ae
integration test for PollFeed job
2017-10-02 01:16:11 -04:00
Guo Xiang Tan
0f2c5f5fc9
FIX: Don't raise error when trying to download avatar from URL.
2017-10-02 12:59:41 +08:00
Sam
0358931b9f
correct erratic spec
2017-09-29 12:58:15 +10:00
Sam
8ecf313a81
FIX: correctly raise errors when downloads fail
...
This corrects an issue where we are hitting Gravatar for 404 over and over
Also ensures file download properly reports errors
2017-09-28 16:35:43 +10:00
Robin Ward
fa41913ba5
FIX: Don't count private content in New User of the Month
2017-09-27 15:03:24 -04:00
Robin Ward
6bce3004d9
UX: Nicer selection of suspend duration
2017-09-25 12:28:00 -04: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
Neil Lalonde
16fe7aa307
FEATURE: automatically handle flags and posts that have been waiting in a queue for a long time. Flags will be deferred. Posts waiting for approval will be rejected. Control how old the records need to be with the auto_handle_queued_age site setting.
2017-09-14 12:01:06 -04:00
Régis Hanol
eb61ad0114
fix the build
2017-09-13 18:25:58 +02:00
Régis Hanol
d9465bac13
add 'staged' column to user export
2017-09-13 18:09:11 +02:00
Vinoth Kannan
6e9671c2c3
UX: Placeholder images color changed & tootip added
2017-09-13 15:16:38 +05:30
Neil Lalonde
beea5cac48
FIX: send the queued posts reminder as a message to moderators instead of an email to the contact_email
2017-09-12 18:00:51 -04:00
Neil Lalonde
6831efe2e9
FIX: no notification was being sent when a post is hidden by community flags
2017-09-12 15:43:44 -04:00
Sam Saffron
4cef3cd762
move fix to top of test
2017-09-01 13:12:47 -04:00
Sam Saffron
936582b8d1
Correct flaky spec
...
Can fail if the machine running tests has less that 10% free space
2017-09-01 13:10:01 -04:00
Vinoth Kannan
0fb7831749
FEATURE: Add placeholders to broken and large image files ( #5113 )
2017-09-01 10:26:13 -04:00
Leo McArdle
3986367f3f
update pr based on review
2017-08-23 14:55:34 +01:00
Leo McArdle
be1df3ba75
FIX: transfer posts by duplicated staged users to original
2017-08-22 09:58:51 +01:00
Erick Guan
6e59149a77
FIX: rebuild index when engine replaced ( #5021 )
2017-08-16 07:38:34 -04: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
793eccf6c5
FIX: Staged users were incorrectly created multiple times with same email.
2017-08-10 18:56:15 +09:00
Guo Xiang Tan
5012d46cbd
Add rubocop to our build. ( #5004 )
2017-07-28 10:20:09 +09: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
Guo Xiang Tan
25448b70e4
Fix specs.
2017-07-24 15:52:56 +09:00
Guo Xiang Tan
7f1e74a272
Not sure how this spec actually worked in the past.
2017-07-24 14:13:23 +09:00
Sam Saffron
93f2c97266
simplify spec
2017-07-22 22:49:04 -04:00
Sam Saffron
687fbf5f09
simplify spec
2017-07-22 22:47:16 -04:00
Sam Saffron
7caf82f03c
simplify spec
2017-07-22 22:01:11 -04:00
Sam
8ef4d6d812
this was failing erratically
2017-07-21 17:14:06 -04: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
Sam Saffron
d0c5205a52
Feature: Change markdown engine to markdown it
...
This commit removes the old evilstreak markdownjs engine.
- Adds specs to WhiteLister and changes it to stop using globals
(Fixes large memory leak)
- Fixes edge cases around bbcode handling
- Removes mdtest which is no longer valid (to be replaced with
CommonMark)
- Updates MiniRacer to correct minor unmanaged memory leak
- Fixes plugin specs
2017-07-17 11:41:34 -04:00
Guo Xiang Tan
13f3de4bf6
Nuke all `SiteSetting.stubs` from our codebase.
2017-07-07 15:09:14 +09:00
Guo Xiang Tan
e92acb4c40
FIX: `Jobs::PullHotlinkedImages#is_valid_image_src` returns true for a generic string.
2017-07-06 18:31:15 +09:00
Régis Hanol
d6c63cc5b2
FIX: user's default group should only be set once
...
Setting a user's default groups based on their email address should only be done once, ie. when they confirm their email address.
Previously we were doing this everytime we'd save a user record 🤷
2017-06-14 19:20:18 +02:00
Sam
826f332766
Merge pull request #4901 from jjaffeux/emoji-5.0
...
Emoji next
2017-06-13 11:12:41 -04:00
Régis Hanol
5d63a7f4a6
FIX: pull hotlinked images even when they have no extension
2017-06-13 13:27:05 +02:00
Régis Hanol
e8f0771dc9
FIX: the 'clean_up_uploads' jobs would delete images used in site settings
...
when they were entered using absolute URLs, with the CDN or simple a different format than the one used in the database
2017-06-07 22:53:15 +02:00
Vinoth Kannan
209383faab
FEATURE: pull onebox images
2017-06-06 18:51:58 +05:30
Joffrey JAFFEUX
09d34b7642
emoji images are now v5 not v3
...
TODO: we should not hardcode this
2017-06-05 16:10:36 +02:00
Guo Xiang Tan
56f98de7b2
Use webmock to stub external web requests.
2017-05-26 15:19:09 +08:00
Robin Ward
36e477750c
FIX: Use same code path for downloading images
2017-05-23 14:51:30 -04: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
Robin Ward
bd0bb879e5
FIX: Don't count likes from system users in the new user of the month
2017-05-15 13:14:32 -04:00
Guo Xiang Tan
41711e53b7
Fix typo.
2017-05-12 10:31:31 +08:00
Guo Xiang Tan
8eecd42856
FIX: Delete topic timer after completion.
2017-05-12 10:28:51 +08:00
Neil Lalonde
55b61e9bea
rename topic_status_update to topic_timer
2017-05-11 18:27:53 -04:00
Neil Lalonde
1019bbda46
FEATURE: set a timer to delete a topic
2017-05-11 12:52:29 -04:00
Robin Ward
3ade46de0b
FIX: Don't send system message for new user of the month if disabled
2017-05-11 11:33:16 -04:00
Robin Ward
4db76796b9
FEATURE: Setting to poll feeds more frequently
2017-05-10 14:30:12 -04:00
Robin Ward
4f6e5fed2a
We don't need to raise an error when no post is present. Just noop.
2017-05-08 15:08:29 -04:00
Guo Xiang Tan
71a266b673
Remove daily mailing mode option as it doesn't scale.
...
https://meta.discourse.org/t/daily-updates-option-for-mailing-list-mode/45029/14?u=tgxworld
2017-05-05 12:21:50 +08:00
Arpit Jalan
75300b6356
improve specs
2017-05-03 17:48:33 +05:30
Arpit Jalan
86f1cc8c92
FIX: don't apply max_emails_per_day_per_user on critical emails
2017-05-03 17:07:39 +05:30
Arpit Jalan
cdce060a38
FIX: don't apply max emails per day per user to forgot password
2017-05-03 14:02:37 +05:30
Robin Ward
f05f1a24d3
Change Anniversary badge to be multiple grant, once per year
2017-04-28 14:22:54 -04:00
Guo Xiang Tan
85d9342ff0
Merge pull request #4836 from tgxworld/fix_clean_up_staged_users_job
...
FIX: Clean up unused staged users job not completing.
2017-04-27 15:41:46 +08:00
Robin Ward
bf9c4a7828
FEATURE: secure_email site setting to prevent data going out in email
2017-04-26 13:05:56 -04:00
Guo Xiang Tan
daa97c40ce
FIX: Clean up unused staged users job not completing.
2017-04-26 10:51:36 +08:00
Neil Lalonde
3835e16cf7
FIX: New implementation of the "notify about flag after" setting. Only notify about new flags since the last notification. Send a private message to staff. Mention the 3 most active moderators in the message so they get notification emails.
2017-04-19 16:17:45 -04:00
Guo Xiang Tan
04016f0dec
Support Ruby 2.4.
2017-04-15 12:29:00 +08:00
Guo Xiang Tan
5a57278a8e
Fix build.
2017-04-11 21:37:57 +08:00
Guo Xiang Tan
73180c8a19
FIX: Private message can be set to publish in the future.
2017-04-11 20:44:25 +08:00
Guo Xiang Tan
aadf4805a5
FIX: Topic status update not being deleted once it has been executed.
2017-04-11 10:32:13 +08:00
Guo Xiang Tan
690d2f4bd3
UX: Publish topic changes when topic is published.
2017-04-07 15:32:00 +08:00
Guo Xiang Tan
48a9860f07
FIX: Publish topic to a category should unlist it as well.
2017-04-07 13:58:52 +08: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
Robin Ward
ebe232da47
Weigh staff votes more for New User of the Month badges
2017-04-03 16:52:31 -04:00
Robin Ward
a13a8dc96c
FIX: Safeguard to not award NewUserOfTheMonth if it hasn't been a month
2017-04-03 13:26:51 -04:00
Robin Ward
3d64f33d40
Require at least two likes to get the "New User of the Month" badge
2017-04-03 13:03:28 -04:00
Robin Ward
b189486fc0
We can do a lot less work in the test since we eased the criteria
2017-04-03 12:15:24 -04:00
Robin Ward
e4b1376146
Change New User of the Month Badge to use trust level rather than age
2017-03-31 16:56:58 -04:00
Robin Ward
a8d3779f0b
Update New User of the Month badge to require 4 posts in 2 topics
2017-03-31 16:52:00 -04:00
Robin Ward
fc7fa4c0ad
Rename "Rookie of the Month" to "New User of the Month"
2017-03-31 16:30:30 -04:00
Robin Ward
893e93dfbe
New badge, Rookie of the Month, for two new high quality users.
2017-03-31 15:06:31 -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
Guo Xiang Tan
7cf0f39066
Require `Sidekiq::Testing` in rails helper.
2017-03-29 11:10:25 +08:00
Arpit Jalan
df246c79b6
FEATURE: add user profile fields in user list export
2017-03-21 15:51:52 +05:30
Erick Guan
cfbfea0596
FEATURE: Allow easier customization to the web hook event serialization.
2017-03-16 10:09:05 +08:00
Guo Xiang Tan
685c26961f
Fix randomly failing specs.
2017-03-14 16:28:05 +08:00
Guo Xiang Tan
6312b8b7e4
Fix failing specs.
2017-03-14 14:58:22 +08:00
Guo Xiang Tan
1a7e954e09
FIX: Store custom emojis as uploads.
...
* Depending on a hardcoded directory was a flawed design
which made it impossible to debug when custom emojis go
missing.
2017-03-14 13:07:18 +08:00
Régis Hanol
23b06d2895
FIX: should not try to send digest to users who reached the bounce threshold
2017-03-08 19:19:11 +01:00
Régis Hanol
cf8bc4483f
FIX: always send critical emails even when bounce score threshold has been reached
2017-03-08 10:06:16 +01:00
Arpit Jalan
d5bcc70e9c
FIX: grant trust level when bulk adding users to group
2017-03-06 14:39:53 +05:30
Régis Hanol
ba115480ba
FIX: wasn't extracting links to quoted posts
2017-02-06 14:45:04 +01:00
Arpit Jalan
a525563eea
Optimize spec for ProcessPost job
2017-01-31 14:10:56 +05:30
Arpit Jalan
19f7beaa2c
FIX: topic links were getting dropped when post is rebaked
2017-01-30 14:55:53 +05:30
Neil Lalonde
7ead3e1f18
fix failing specs
2017-01-27 16:17:10 -05:00
Leo McArdle
b60e9b7330
FIX: Handle img src starting with "//" in pull_hotlinked_images job
2017-01-16 10:50:07 +00:00
Arpit Jalan
7a1ff59822
FIX: PM email to suspended member was broken
2017-01-05 13:58:14 +05:30
Guo Xiang Tan
076a08d8e1
FIX: Unactivated users should not be automatically added into groups as well.
2016-12-21 18:15:01 +08:00
Guo Xiang Tan
7228081820
FIX: Automatic group membership should not add staged or unactivated users.
2016-12-21 18:04:26 +08:00
Guo Xiang Tan
18f400e652
Remove RSpec given.
2016-12-14 10:29:22 +08:00
Régis Hanol
664feca199
FIX: don't send emails from muted users in mailing list mode
2016-12-12 15:28:26 +01:00
Guo Xiang Tan
9a800107cb
FIX: Associate category logo and background to uploads record.
2016-12-12 17:37:28 +08:00
Arpit Jalan
ce974da9e5
FIX: simplify CSV file upload
2016-12-05 14:09:08 +05:30
Sam
ac2c035856
FIX: stop raising exceptions when a post goes missing
2016-11-08 14:51:56 +11:00
Guo Xiang Tan
f03d9cad06
PERF: `NOT IN` query is really inefficient for large tables.
2016-11-02 13:09:18 +08:00
Kiril Staikov
aee943486a
FEATURE:'No Echo' option for mailing list mode.
...
Mailing list mode now includes the 'no echo' option: to only receive emails of posts not created
by you. If you reply to an email thread in mailing list mode, your reply will not then be echoed
back to you in a duplicate email by the system.
2016-10-19 13:14:36 -04:00
Robin Ward
af83c8dc14
Upload Logos Step
2016-09-22 09:52:19 -04:00
Erick Guan
9ce61b4586
FEATURE: Webhooks.
2016-09-05 18:44:00 +08:00
Régis Hanol
7db2083d45
FIX: 'cancel_scheduled_job' was deleting all jobs in multisite
2016-08-12 13:10:52 +02:00
Régis Hanol
51322a46b3
FEATURE: retry processing incoming emails on rate limit
2016-08-08 22:28:27 +02:00
James Kiesel
c2819e99f4
Don't halt notification emails for those on daily mailing list mode
2016-08-03 12:29:38 -04:00
Régis Hanol
c591429868
FIX: don't destroy uploads in queued posts and drafts
2016-08-01 18:35:57 +02:00
Régis Hanol
17890f95a1
FIX: don't send emails to mailing_list users when bounce threshold is reached
2016-07-05 12:20:07 +02:00
Guo Xiang Tan
bd07658a37
PERF: Split queries when cleaning uploads.
...
This reduces the number of scans that the db has to do in the query
to fetch orphan uploads. Futheremore, we were not batching our
records which bloats memory.
2016-07-04 16:34:32 +08:00
Sam
813fcebdd1
FIX: email_always was not respected correctly
...
In the past email always meant, email me even if active UNLESS I read post
Now emails always means, always, even if I read the post
2016-07-01 11:22:07 +10:00
Régis Hanol
214f5bff5c
don't send more than 1 reply per day to auto-generated emails
2016-06-28 16:42:05 +02:00
Régis Hanol
e9a293beeb
FIX: clean up uploads job
2016-06-20 22:05:41 +02:00
Arpit Jalan
7b205ebba4
FEATURE: customize invite email message
2016-06-06 20:15:30 +05:30
Guo Xiang Tan
cb5be1fe8f
Upgrade rspec to 3.4.0.
2016-05-30 11:38:38 +08:00
Sam
efc45aa704
correct specs
2016-05-27 12:35:22 +10:00
James Kiesel
feffe23cc5
FEATURE: More granular mailing list mode ( #4068 )
...
* Rearrange frontend to account for mailing list mode
* Allow update of user preference for mailing list frequency
* Add mailing list frequency estimate
* Simplify frequency estimate; disable activity summary for mailing list mode
* Remove combined updates
* Add specs for enqueue mailing list mode job
* Write mailing list method for mailer
* Fix linting error
* Account for stale topics
* Add translations for default mailing list setting
* One query for mailing list topics
* Fix failing spec
* WIP
* Flesh out html template
* First pass at text-based mailing list summary
* Add user avatar
* Properly format posts for mailing list
* Move make_all_links_absolute into Email::Styles
* Apply first_seen_at to user
* Send mailing list email summary hourly based on first_seen_at
* Branch and test cleanup
* Use existing mailing list mode estimate
* Fix failing specs
2016-05-21 15:17:54 +02:00
Guo Xiang Tan
e3e31441b8
FIX: Random Redis connection timeout failure in Travis.
2016-05-18 10:42:40 +08:00
Guo Xiang Tan
b68860ee28
FIX: Do not send email when user of the post has been deleted. ( #4228 )
2016-05-17 17:42:15 +02:00
Guo Xiang Tan
4e59ec5a60
Fix the build.
2016-05-16 18:22:03 +08:00
Régis Hanol
aa5ea719ee
fix build
2016-05-06 19:50:44 +02:00
Arpit Jalan
9427e0c732
FIX: bootstrap mode should not amend setting that is not in default state
2016-05-04 16:46:46 +05:30
Régis Hanol
8e611ec7a1
FEATURE: handle bounced emails
2016-05-02 23:15:32 +02:00
Arpit Jalan
74b3807f60
FEATURE: new bootstrap mode settings for brand new Discourse community ( #4193 )
...
* FEATURE: new bootstrap mode settings for brand new Discourse community
* new SiteSetting.set_and_log method
2016-04-26 13:08:19 -04:00
Guo Xiang Tan
b4e0c5afe0
FIX: Fetch stats if it has not been cached.
2016-04-21 14:50:25 +08:00
Guo Xiang Tan
f95cefd09a
FEATURE: Add POP3 timeout error only after 3 failures in a row.
2016-04-14 08:55:19 +08:00
Guo Xiang Tan
5734c7f3f3
FIX: Don't send rejection mailer to bounced emails.
2016-04-07 22:21:17 +08:00
Sam
c095304d6d
FEATURE: limit daily emails per user to 100 per day via site setting
...
- controlled via max_emails_per_day_per_user, 0 to disable
- when limit is reached user is warned
2016-03-23 15:08:48 +11:00
Robin Ward
5771d2aee2
SECURITY: Support for confirm old as well as new email accounts
2016-03-08 14:52:22 -05:00
Guo Xiang Tan
f89e9024ba
FIX: Topic and Post may be `nil`.
2016-02-24 16:27:28 +08:00
Neil Lalonde
e8d837269b
FEATURE: pending flags reminder is sent as a group message to staff instead of sending an email to the contact email site setting.
2016-02-19 15:21:18 -05:00
Sam
3829c78526
PERF: shift most user options out of the user table
...
As it stands we load up user records quite frequently on the topic pages,
this in turn pulls all the columns for the users being selected, just to
discard them after they are loaded
New structure keeps all options in a discrete table, this is better organised
and allows us to easily add more column without worrying about bloating the
user table
2016-02-17 18:08:25 +11:00
Régis Hanol
460665895c
properly name purge emails/email logs site settings
2016-02-08 22:18:52 +01:00
Régis Hanol
ac863bab91
FEATURE: new 'suppress_email_logs_after_days' site setting
2016-02-08 18:47:35 +01:00
Régis Hanol
ea0e63b150
FIX: handle cases where we only pass the notification type rather than the notification id when sending user email
2016-02-05 20:07:30 +01:00
Régis Hanol
7d992cb4c5
FIX: sending emails to mailing list subscribers wasn't working
2016-02-03 19:27:58 +01:00
Régis Hanol
12051f79a8
FIX: don't send empty email notifications for small_actions
2016-02-01 19:12:10 +01:00
Régis Hanol
96380bfd38
FIX: only create 1 email_log when an email is sent
2016-01-29 16:49:49 +01:00
Régis Hanol
3390fa56d0
improve the specs to check we properly update 'user.last_emailed_at'
2016-01-28 19:31:17 +01:00
Régis Hanol
d51019ee53
FIX: *always* create an EmailLog whenever we run the UserEmail job
...
There were actually 2 bugs:
1/ Calling '.try(:key)' on a hash doesn't work. So EmailLogs were never associated to a user.
2/ Turns out that we update the 'user.last_emailed_at' whenever we create an EmailLog (in the 'after_create' callback).
So we need to always create an EmailLog (whenever the email is sent or skipped).
2016-01-28 19:01:35 +01:00
Sam
1bb485fca5
FIX: when a user got multiple replies to a topic, emails were missing
2016-01-27 12:20:08 +11:00
Régis Hanol
3083657358
FEATURE: better email in support
...
FEATURE: new incoming_email model
FEATURE: infinite scrolling in emails admin
FEATURE: new 'emails:import' rake task
2016-01-19 00:57:55 +01:00
Régis Hanol
737c606710
FIX: 'cancel_scheduled_job' wasn't working due to sidekiq upgrade
2016-01-13 09:08:26 +01:00
Régis Hanol
51b2279af0
fix the build
2015-12-16 01:31:19 +01:00
Andy Waite
3e50313fdc
Prepare for separation of RSpec helper files
...
Since rspec-rails 3, the default installation creates two helper files:
* `spec_helper.rb`
* `rails_helper.rb`
`spec_helper.rb` is intended as a way of running specs that do not
require Rails, whereas `rails_helper.rb` loads Rails (as Discourse's
current `spec_helper.rb` does).
For more information:
https://www.relishapp.com/rspec/rspec-rails/docs/upgrade#default-helper-files
In this commit, I've simply replaced all instances of `spec_helper` with
`rails_helper`, and renamed the original `spec_helper.rb`.
This brings the Discourse project closer to the standard usage of RSpec
in a Rails app.
At present, every spec relies on loading Rails, but there are likely
many that don't need to. In a future pull request, I hope to introduce a
separate, minimal `spec_helper.rb` which can be used in tests which
don't rely on Rails.
2015-12-01 20:39:42 +00:00
Neil Lalonde
523138f1fd
FEATURE: add setting pending_users_reminder_delay to configure when to send reminders to moderators about user approvals based on how long new users have been waiting
2015-11-20 16:06:07 -05:00
Neil Lalonde
5597957cc6
FIX: don't send repeat notifications to moderators about the same pending approval users
2015-11-20 16:06:07 -05:00
Régis Hanol
acecfeb37f
Add 'staged' boolean to User
2015-11-06 19:19:13 +01:00
Arpit Jalan
700c005c26
PERF: optimize export user list CSV queries
2015-11-02 13:15:58 +05:30
Régis Hanol
b9a9a91335
FIX: couldn't set 'never' for the default email digest frequency setting
2015-09-14 10:36:25 +02:00
Régis Hanol
bef80633b1
FEATURE: global admin override of most of the user preferences
2015-08-21 20:39:21 +02:00