Robin Ward
526573074c
Add one off job to grant the emoji badge retroactively
2016-04-07 13:49:44 -04:00
Guo Xiang Tan
5734c7f3f3
FIX: Don't send rejection mailer to bounced emails.
2016-04-07 22:21:17 +08:00
Sam
a130cb8305
FEATURE: move more urgent emails notifications to critical queue
...
Move signup, admin login and password change email notifications
to critical queue
2016-04-07 14:39:01 +10:00
Sam
8ec7fd84fd
FEATURE: prioritize sidekiq jobs
...
This commit introduces 3 queues for sidekiq
"critical" for urgent jobs (weighted at 4x weight)
"default" for standard jobs(weighted at 2x weight)
"low" for less important jobs
"critical jobs"
Reset Password emails has been seperated to its own job
Heartbeat which is required to keep sidekiq running
Test email which needs to return real quick
"low priority jobs"
Notify mailing list
Pull hotlinked images
Update gravatar
"default"
All the rest
Note: for people running sidekiq from command line use
bin/sidekiq -q critical,4 -q default,2 -q low
2016-04-07 12:56:43 +10:00
Régis Hanol
79639e2dec
FIX: ensure group's users counters are kept in sync
2016-04-04 17:03:18 +02:00
Régis Hanol
9e9c81c30b
improve error log when timing out while connecting to mail server
2016-03-25 16:44:08 +01:00
Régis Hanol
39863953cd
new 'enable_staged_users' site setting
2016-03-23 18:56:03 +01: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
Sam
a202ec2028
don't run mailing list if mailing list mode is disabled
2016-03-22 14:50:35 +11:00
Régis Hanol
9c61f45bf9
FIX: properly handle failure in poll mailbox job
2016-03-21 18:49:01 +01:00
Sam Saffron
433fa74d87
FIX: ensure consistency of user options
...
Edge case during upgrade can cause accounts registered after migration
prior to restart to have missing user option records
2016-03-17 10:03:56 +11:00
Régis Hanol
162fcb75da
FEATURE: admin dashboard check when email polling errored in the past 24 hours
2016-03-16 21:17:48 +01:00
Régis Hanol
4a3cb4a000
FIX: use MD5 of the email_string when there's no 'Message-Id'
2016-03-14 18:18:58 +01:00
Robin Ward
5771d2aee2
SECURITY: Support for confirm old as well as new email accounts
2016-03-08 14:52:22 -05:00
Régis Hanol
622d804d46
FEATURE: Add rejection message on rejected IncomingEmail
...
FIX: Better RateLimit description in rejected IncomingEmail
FEATURE: Send email when hitting a rate limit
2016-03-07 16:56:17 +01:00
Arpit Jalan
05288144b5
FIX: export user list based on trust level filter
2016-03-07 18:49:31 +05:30
Guo Xiang Tan
bc4087b9bb
FIX: RSS description might be nil
.
2016-03-07 17:42:17 +08:00
Régis Hanol
05f0db0a20
FIX: don't use destroy_all
when delete_all
is enough
2016-03-05 00:41:22 +01:00
Neil Lalonde
c1aea91d63
FEATURE: More digest email frequency options. Digests can be sent as often as every 30 minutes.
2016-03-02 15:43:47 -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
3de390c067
quote fields in case they are still in the db
2016-02-19 13:57:07 +11:00
Sam
f0e942f647
PERF: move 3 more option columns out of the user table
2016-02-18 16:57:22 +11: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
bf96025507
link email logs to the post that generate the email notification when available
2016-02-16 16:35:57 +01:00
Régis Hanol
4ad5660615
add slightly more logs when skipping email notifications
2016-02-15 17:53:07 +01:00
Régis Hanol
40b099f1a6
FIX: keep whitespaces when replacing direct link to external images with local images
2016-02-15 12:34:45 +01:00
Neil Lalonde
06c9e79984
FIX: pending flags reminder email was ignoring the 'notify about flags after' site setting.
2016-02-12 14:33:23 -05:00
Régis Hanol
cad7fc1062
FIX: don't allow blocked user to send emails in
2016-02-11 10:39:57 +01: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
62cd6a4122
Merge pull request #3995 from devonestes/reducing-duplication-csv-export
...
Reducing duplication and string allocation in Jobs::ExportCsvFile
2016-02-06 11:10:21 +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
Devon Estes
0aa59956fa
Extract method refactoring in Jobs::ExportCsvFile
...
I was combing through some of the files with worse grades on Code Climate as a guide for places where I could jump in and help, and I saw this as one of the ones in need of some love. I reduced duplication in the #user_list_export method by extracting several methods that were common to both branches of the logic in that method.
2016-02-05 16:47:15 +01:00
Arpit Jalan
eec8436cfe
FEATURE: filter admin reports via user group
2016-02-04 11:23:49 +05:30
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
8608b5cbc1
FIX: don't poll the mailbox in development
2016-02-01 16:56:32 +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
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
8b0ffd9a88
don't bother iterating over disabled badges
2016-01-18 21:41:12 +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
fbacaab2fc
FIX: disable scheduled jobs when in readonly mode
2016-01-11 18:31:28 +01:00
Sam Saffron
426299d261
FEATURE: upgrade to Sidekiq 4
2016-01-01 15:40:31 +11:00
Régis Hanol
4bb31daa2e
FIX: when getting a reply by email, ensure it's by the same user
2015-12-16 00:43:05 +01:00
Régis Hanol
93d1cc6294
add support for incoming emails in CC/BCC fields
2015-12-10 23:49:16 +01:00
Sam
1f7c03df5c
FIX: missing email notifications for group mentions
2015-12-01 12:12:55 +11:00
Régis Hanol
0d54c18c8b
new hidden 'allow_staged_accounts' setting
2015-11-26 18:31:23 +01:00
Arpit Jalan
2eba00a326
FIX: user archive url field should have absolute URLs
2015-11-25 15:13:15 +05:30
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
Robin Ward
3720783c1b
Refactor to our own Discourse I18n backend
...
This removes some monkey patches and makes testing easier.
It will also support database backed I18n changes.
2015-11-13 16:35:02 -05:00
Régis Hanol
3c2486e2ba
FIX: compare UTC dates to schedule backups
2015-11-12 18:35:03 +01:00
Régis Hanol
de95573d23
FEATURE: new 'backup_with_uploads' site setting
2015-11-12 16:23:59 +01:00
Régis Hanol
72a7bd38e1
FEATURE: new 'backup_time_of_day' site setting
2015-11-12 16:14:49 +01:00
Régis Hanol
78de89f7a1
FIX: PullHotlinkedImages was messing with URL when using Markdown references
2015-11-09 16:37:51 +01: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
5c0fb34eee
FIX: resize emoji job was generate errors
2015-10-30 23:31:30 +01:00
Régis Hanol
5e3da94c46
FIX: prevent infinite loop in PullHotlinkedImages job
2015-10-30 22:46:46 +01:00
Robin Ward
971af6a762
FIX: PostAlerter should ignore deleted posts
2015-10-28 13:03:54 -04:00
Guo Xiang Tan
600e42c2ba
FIX: Race condition when wrapping PostCreator#create
in a transaction.
2015-10-15 14:42:40 +08:00
Sam
6f43b575a8
FEATURE: no need to cap new and unread together anymore
...
- leave unread alone
- cap new at 500 per site, with a site setting
2015-10-01 17:17:15 +10:00
Régis Hanol
54d6d24cbf
FIX: timing issue with edits and cook post processing
2015-09-29 18:51:26 +02:00
Régis Hanol
fe656fb04d
FIX: select appropriate period when redirecting to top
2015-09-21 20:28:20 +02:00
Régis Hanol
a3831a7003
FIX: uploading an animated user card/profile background was converted to a still image
2015-09-20 22:01:03 +02:00
Robin Ward
40934e595a
FIX: Some RSS feeds do unsafe redirects
...
There are people who have RSS feeds set up that do HTTPS -> HTTP
redirects which throw errors. Since RSS feeds are all configured
by admins I think it's OK if they allow an unsafe redirect as the
content is public anyway. This will reduce many server side errors.
2015-09-18 13:25:09 -04:00
Gerhard Schlager
619d5b1bc1
FIX: Load fallback locales in Sidekiq jobs
2015-09-18 18:21:27 +02:00
Neil Lalonde
b4a724e80a
FEATURE: export dashboard reports to csv file
2015-09-15 16:45:10 -04:00
Neil Lalonde
991a36f4f2
always use fetch_stats to get AdminDashboardData data
2015-09-14 16:10:54 -04:00
Sam
335be272ff
FEATURE: implement capping of new/unread
...
We cap new and unread at 2/5th of SiteSetting.max_tracked_new_unread
This dynamic capping is applied under 2 conditions:
1. New capping is applied once every 15 minutes in the periodical job, this effectively ensures that usually even super active sites are capped at 200 new items
2. Unread capping is applied if a user hits max_tracked_new_unread,
meaning if new + unread == 500, we defer a job that runs within 15 minutes that will cap user at 200 unread
This logic ensures that at worst case a user gets "bad" numbers for 15 minutes and then the system goes ahead and fixes itself up
2015-09-07 12:03:17 +10:00
Régis Hanol
2b9b29c8c8
FIX: ensure CategoryUser consistency
2015-09-02 22:02:31 +02:00
Sam
82a6176b08
lower the volume on failed to pull hotlinked image
...
add more diagnostics
2015-08-19 12:32:45 +10:00
Sam
add6e12ce4
FIX: topic links with long titles can not be crawled
...
0..255 == 256 numbers column fits 255
2015-08-18 17:34:46 +10:00
Régis Hanol
827ea641b0
FIX: Use File.size instead of IO.size
2015-08-17 18:57:28 +02:00
Régis Hanol
a47370fc52
Merge pull request #3456 from 5minpause/patch-1
...
Changes RSS item creation to prevent encoding errors
2015-08-14 18:19:58 +02:00
Régis Hanol
b8cf797e31
FIX: ensure Badge consistency
2015-08-14 13:03:49 +02:00
Régis Hanol
b6cd4af2ba
FIX: follow redirects when pulling hotlinked images
2015-08-14 12:46:52 +02:00
Sam
f743bc6e74
stop adding users to a group if they are already in the group
2015-08-14 17:50:24 +10:00
Sam
e670ebb433
FEATURE: allow backup settings to be overriden by globals
...
FEATURE: allow backup interval of up to 30 days
FIX: if a custom file exists in backup directory look at its date
FEATURE: site setting automatic_backups_enabled default true
2015-08-14 16:28:29 +10:00
Sam
7d86d23eec
correct bad error reporting.
2015-08-14 13:29:39 +10:00
Régis Hanol
15418f3d44
FEATURE: new 'backup_frequency' site setting
2015-08-07 17:34:58 +02:00
Sam
6f9dc135ba
FEATURE: allow logging of raw body of all unprocessable email
...
set log_mail_processing_failures to true to enable
2015-07-31 15:10:35 +10:00
Régis Hanol
faf4f44776
FEATURE: make pin expiration mandatory
2015-07-29 16:34:21 +02:00
Sam
e3d6c476f5
Merge pull request #3593 from tgxworld/cache_results_on_about_page
...
Cache results on about page
2015-07-21 10:04:51 +10:00
Guo Xiang Tan
b0ea6764e0
PERF: Cache About#stats.
2015-07-20 22:45:05 +08:00
5minpause
4ee1bc6320
Changes RSS item creation to prevent encoding errors
...
SimpleRss is unreliable with parsing RSS feeds that contain German Umlauts.
For example this feed http://www.lauffeuer-lb.de/api/v2/articles.xml can't be
parsed by SimpleRss. Discourse's logs are full of
```
Job exception: Wrapped Encoding::CompatibilityError: incompatible character encodings: ASCII-8BIT and UTF-8
Job exception: incompatible character encodings: ASCII-8BIT and UTF-8
```
The embedding fails because the feed can't be parsed.
This change forces the encoding (using #scrub) which prevents the numerous
encoding errors.
2015-07-20 14:30:42 +02:00
Arpit Jalan
7a1694f1ac
FEATURE: add more data in user list export
2015-07-15 11:38:48 +05:30
Kane York
38acc8a070
FIX: Don't root CSV export URLs
2015-07-06 15:19:31 -07:00
Sam
e32cecf60f
Don't run perf report in multisite
2015-06-26 16:30:07 +10:00
Sam
4b449241fb
correct formatting
2015-06-26 14:15:52 +10:00
Sam
542e796fb0
FEATURE: daily performance reports
2015-06-26 13:37:05 +10:00
Régis Hanol
18f887772d
FEATURE: allow plugins to add custom admin reports
2015-06-25 02:42:08 +02:00
Neil Lalonde
77595bcaa9
FEATURE: notify by email when there are posts from new users waiting to be reviewed
2015-06-18 15:47:35 -04:00
Régis Hanol
3db743640e
fix the build :fired:
2015-06-17 17:45:53 +02:00
Régis Hanol
56b9528de8
FIX: catch the PG::UniqueViolation exception too
2015-06-17 15:38:45 +02:00
Régis Hanol
189cb3ff12
FEATURE: move migrate_to_new_scheme into a background job
...
- new hidden site setting 'migrate_to_new_scheme' (defaults to false)
- new rake tasks to toggle migration to new scheme
- FIX: migrate_to_new_scheme also works with CDN
- PERF: improve perf of the DbHelper.remap method
- REFACTOR: UrlHelper is now a class
2015-06-12 12:07:57 +02:00
cpradio
afb566260e
FEATURE: Use created_at to remove an ip if its last_match_at is null
2015-06-05 10:51:13 -04:00
Arpit Jalan
725861f344
FIX: move draft cleanup to the dedicated method and add test
2015-06-03 14:35:54 +05:30