Martin Brennan
7fca7fb7ff
DEV: Add SMTP group ID to EmailLog ( #13381 )
...
Adds a new `smtp_group_id` column to `EmailLog` which is filled in if the mail `from_address` matches a group's `email_username`. This is for easier debugging, so we know which emails have been sent via group SMTP.
2021-06-15 11:29:46 +10:00
Martin Brennan
e9dc88a7b6
FIX: Link up reply to post correctly when emailing group ( #13339 )
...
When replying to a user_private_message email originating from
a group PM that does _not_ have a reply key (e.g. when replying
directly to the group's SMTP address), we were mistakenly linking
the new post created from the reply to the OP and the user who
created the topic, based on the first IncomingEmail message ID in
the topic, rather than using the correct reply to user and post number
that the user actually replied to.
We now use the In-Reply-To header to look up the corresponding EmailLog
record when the user who replied was sent a user_private_message email,
and use the post from that as the reply_to_user/post.
This also removes superfluous filtering of incoming_email records. After
already filtering by message_id and then addressed_to_user (which only
returns incoming emails where the to, from, or cc address includes any
of the user's emails), we were filtering again but in the ruby code for
the exact same conditions. After removing this all existing tests still
pass.
2021-06-10 15:28:50 +10:00
Dan Ungureanu
b7e70850e4
FIX: Allow users to add emails which were deleted before
2020-06-11 14:54:11 +03:00
Krzysztof Kotlarek
427d54b2b0
DEV: Upgrading Discourse to Zeitwerk ( #8098 )
...
Zeitwerk simplifies working with dependencies in dev and makes it easier reloading class chains.
We no longer need to use Rails "require_dependency" anywhere and instead can just use standard
Ruby patterns to require files.
This is a far reaching change and we expect some followups here.
2019-10-02 14:01:53 +10:00
David Taylor
1bff81419e
DEV: Update annotations
2019-05-13 15:24:24 +01:00
Sam Saffron
30990006a9
DEV: enable frozen string literal on all files
...
This reduces chances of errors where consumers of strings mutate inputs
and reduces memory usage of the app.
Test suite passes now, but there may be some stuff left, so we will run
a few sites on a branch prior to merging
2019-05-13 09:31:32 +08:00
Gerhard Schlager
e9ec5238fc
DEV: Remove ignored columns
2019-02-08 12:12:38 +01:00
Robin Ward
95f263995d
FIX: Previous annotations were broken
2019-01-11 14:30:19 -05:00
Robin Ward
a3839495e0
Update annotations
2019-01-11 12:19:43 -05:00
Guo Xiang Tan
d10694150e
Revert "FIX: Partial reply key search in email sent logs."
...
This reverts commit e9b2018bc8
.
2019-01-10 10:05:56 +08:00
Guo Xiang Tan
e9b2018bc8
FIX: Partial reply key search in email sent logs.
...
Follow up to c85b9c6ed3
2019-01-10 09:25:14 +08:00
Arpit Jalan
72be638728
FEATURE: add external details to user fields
2018-09-20 08:10:51 +05:30
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
98f84d1a4e
Update annotations.
2018-07-24 15:49:55 +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
9b84e78fdf
Update annotations.
2018-07-24 11:14:19 +08:00
Guo Xiang Tan
be71f9ff82
REFACTOR: Don't load entire AR object just to get a column.
2018-07-18 13:53:57 +08:00
Guo Xiang Tan
3874d40910
Prepare to drop EmailLog#topic_id
.
2018-07-18 10:22:24 +08:00
Guo Xiang Tan
3553375dd2
PERF: Store EmailLog#reply_key
as uuid
data type.
2018-07-17 17:05:42 +08:00
Guo Xiang Tan
fe230f29cd
Update annotations.
2018-07-17 13:11:45 +08:00
Guo Xiang Tan
c0c263405a
PERF: Store EmailLog#bounce_key
as uuid
data type. ( #6093 )
...
PERF: Store `EmailLog#bounce_key` as `uuid` data type.
2018-07-16 20:05:54 +08:00
Guo Xiang Tan
214dac05de
Update annotations.
2018-07-16 14:19:07 +08:00
Guo Xiang Tan
226ace1643
Update annotations.
2018-02-20 14:28:58 +08:00
Arpit Jalan
daeb7694bc
update annotations
2017-12-05 21:03:20 +05:30
Guo Xiang Tan
5012d46cbd
Add rubocop to our build. ( #5004 )
2017-07-28 10:20:09 +09:00
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
Sam
aee7489a5a
annotate models
2016-06-17 11:28:49 +10:00
Sam
089b1d164c
annotate models
...
(reminder run RAILS_ENV=test bin/annotate once in a while)
2016-05-30 10:45:32 +10:00
Régis Hanol
8e611ec7a1
FEATURE: handle bounced emails
2016-05-02 23:15:32 +02:00
Sam
0119a2f980
FIX: only ever send users 1 email per post
...
in the past ninja editing a post to add a mention could trigger duplicate
emails to a user (and a few other edge cases)
2016-04-15 15:59:01 +10: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
32c681c96b
annotate models
2016-02-23 10:33:53 +11:00
Régis Hanol
93d1cc6294
add support for incoming emails in CC/BCC fields
2015-12-10 23:49:16 +01:00
Robin Ward
068d22e9b3
Add API support for querying admin reports by date range
2014-11-05 13:11:37 -05:00
Akshay
9524b514c6
Fix access specifiers with private_class_methods instead of removing directly
2014-10-04 09:20:41 +05:30
Sam
414c6d191f
FIX: remove nullable dates post upgrade to Rails 4
2014-08-27 15:19:25 +10:00
Sam
b1d5f4440b
Annotate models
2014-05-28 12:30:57 +10:00
Louis Rose
1574485443
Perform the where(...).first to find_by(...) refactoring.
...
This refactoring was automated using the command: bundle exec "ruby refactorings/where_dot_first_to_find_by/app.rb"
2014-05-06 14:41:59 +01:00
Sam
862a6696c0
Correct annotations
...
allow longer usernames (up to 60)
2014-04-15 15:53:48 +10:00
Régis Hanol
6373de550f
update annotations
2014-04-08 17:35:44 +02:00
Sam
5c148faeb9
annotations were out of date
2014-03-20 15:35:51 +11:00
Neil Lalonde
35dae76bbd
Log when and why an email was not sent in email_logs
2014-02-14 13:06:39 -05:00
railsaholic
34bba737ff
Refactor SessionController#create, reduce complexity.
...
Don't compromise readablity
2013-11-15 22:09:03 +05:30
Stephan Kaag
89b621d31a
Refactor update_all statements in order to prevent deprecation warnings in Rails 4
2013-07-02 18:36:47 +02:00
Sam
4a8a663a67
flagging workflow changes per http://meta.discourse.org/t/we-need-an-archive-flag-notification-button/7450
2013-06-20 17:42:15 +10:00
Robin Ward
8acdc18bc8
First stab at polling support for POP3S / reply by email
2013-06-17 16:49:02 -04:00
Régis Hanol
454636abf1
annotate models
2013-06-17 02:49:34 +02:00
Robin Ward
49c09898e2
The EmailBuilder now creates the Reply by Email Key if necessary.
2013-06-13 12:40:06 -04:00
Robin Ward
e29f4a3496
Work in Progress: Reply By Email:
...
- Add support classes and settings to enable reply by email
- Split out Email builder to be more OO, add many specs
2013-06-13 12:39:56 -04:00