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
Sam
a246e7c9c0
fix invalid spec
2015-08-14 16:28:29 +10:00
Régis Hanol
15418f3d44
FEATURE: new 'backup_frequency' site setting
2015-08-07 17:34:58 +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
Arpit Jalan
7a1694f1ac
FEATURE: add more data in user list export
2015-07-15 11:38:48 +05:30
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
Arpit Jalan
b33654ac31
Remove site setting stubbing (Round 1)
2015-06-03 15:44:00 +05:30
Luke Granger-Brown
9f9825bb6b
FIX: don't send emails to anonymous users
...
Also changes behaviour of real to not return anonymous users.
This means user counts will no longer include them, and the
mailing list system will ignore them even if they somehow end up
with the feature turned on.
2015-05-11 00:56:34 +01:00
Neil Lalonde
85320f919b
FEATURE: user list csv includes approved, suspended_at, suspended_till, blocked
2015-04-22 12:40:12 -04:00
Arpit Jalan
e6df97f01d
FIX: add email reply error message for topic not getting created in restricted category
2015-04-10 17:11:52 +05:30
Régis Hanol
1a3fa52cde
fix broken build (cc @riking)
2015-04-06 12:12:27 +02:00
Sam
c6a5081763
FEATURE: reorder participants in topic so always chronological
...
FEATURE: tie breaker for same number of posts is last post date
UX: highlight for latest poster when it is OP
2015-04-06 17:27:05 +10:00
Sam
6960639c58
Merge pull request #3190 from riking/thrown_logging
...
Delete old ErrorLog, use Logster for 500 errors
2015-02-23 14:19:16 +11:00
Robin Ward
3ce2077aa8
Migrate unsubscribe keys to the database.
...
This should reduce a lot of the keys in redis.
2015-02-13 14:24:15 -05:00
riking
5657006aca
Rename handle_exception to handle_job_exception
2015-02-09 12:47:46 -08:00
Arpit Jalan
12c82bed59
Disable digest emails site setting
2015-01-27 22:41:36 +05:30
Arpit Jalan
5c2ee8ec2a
FEATURE: suppress digest emails for users not seen on the site for more than (n) days.
2015-01-26 22:04:02 +05:30
Régis Hanol
256519dddf
FEATURE: automatic group membership based on email address
2015-01-23 18:25:43 +01:00
Arpit Jalan
c4da9ce62f
FIX: old csv's were not getting deleted
2015-01-15 00:00:39 +05:30
Arpit Jalan
835835832f
FIX: user list export was failing
2015-01-14 16:24:42 +05:30
Luciano Sousa
b3d769ff4f
Update rspec syntax to v3
...
update rspec syntax to v3
change syntax to rspec v3
oops. fix typo
mailers classes with rspec3 syntax
helpers with rspec3 syntax
jobs with rspec3 syntax
serializers with rspec3 syntax
views with rspec3 syntax
support to rspec3 syntax
category spec with rspec3 syntax
2015-01-05 11:59:30 -03:00
Arpit Jalan
bfe95966b4
better filenames for export
2015-01-02 15:30:50 +05:30
Robin Ward
f7955406cc
As an optimization, don't return suspended users in the query that
...
determines who to send digests to.
2014-12-29 15:16:29 -05:00
Régis Hanol
521226f4c9
FIX: registration fails with timeout on gravatar
2014-12-15 22:10:27 +01:00
Sam
a4ce039c85
demock spec
2014-12-07 18:11:38 +11:00
Sam
d171d6db19
FEATURE: export sso data if sso is enabled
2014-11-26 09:43:28 +11:00
Robin Ward
17b6d3a2fe
FIX: Mailing list mode was not checking for user deleted posts
2014-11-24 11:43:40 -05:00
Arpit Jalan
b37d845dd3
FIX: email replies should not be accepted for deleted topics
2014-10-27 13:05:33 +05:30
Arpit Jalan
08dc0e6ee6
FIX: email replies to closed topic should not be accepted
2014-10-25 23:47:13 +05:30
riking
e665bfd72a
Fix test failure
2014-09-30 13:16:34 +10:00
Régis Hanol
de76b512c1
fix most deprecations in the specs (still some left)
2014-09-25 17:44:48 +02:00
Sam
58eabb03e5
FEATURE: api support for arbitrary unlinked assets
...
admins can set retain periods for assets
2014-09-23 16:50:17 +10:00
Sam
2d615e4f8f
lesson, this is why you don't mock
2014-09-05 16:55:48 +10:00
Sam
59d04c0695
Internal renaming of elder,leader,regular,basic to numbers
...
Changed internals so trust levels are referred to with
TrustLevel[1], TrustLevel[2] etc.
This gives us much better flexibility naming trust levels, these names
are meant to be controlled by various communities.
2014-09-05 15:20:52 +10:00
Sam
c07d76677d
Merge pull request #2701 from riking/email-pr-ssl
...
Rename POP3 settings, fix multisite SSL state leak
2014-08-29 10:02:05 +10:00
riking
1c9f6159cd
Update the Receiver and PollMailbox specs for the changes
...
Tests are both added, moved, and deleted.
Add test for topic not being created
Move html_only.eml to parse_body testing section
2014-08-28 14:38:19 -07:00
riking
e28ef099a4
Fix pop3 SSL state leaking over multisite
2014-08-26 17:03:58 -07:00
riking
6d357c9c23
Rename pop3s settings to pop3, remove 'insecure'
2014-08-26 17:03:58 -07:00
Sam
ac4f6d9c97
Merge pull request #2647 from riking/multiple-addresses
...
Allow processing of email sent to multiple addresses
2014-08-22 10:32:42 +10:00
riking
5ae0b9ba42
Remove debugging prints
2014-08-21 17:29:33 -07:00
Régis Hanol
d7f8146a17
FIX the build
2014-08-20 19:20:29 +02:00
Arpit Jalan
8d7f4c1944
FEATURE: add additional fields in user list export
2014-08-16 00:39:28 +05:30
Arpit Jalan
d0736a06b6
FEATURE: export user list
2014-08-15 01:46:57 +05:30
riking
cce8b4720a
Have reciever handle multiple To addresses
2014-08-13 11:43:49 -07:00
Robin Ward
9a1580244a
FIX: Don't show profile pages for inactive users and don't show them in
...
search results.
2014-08-13 13:30:25 -04:00
riking
63cdde3d96
Add more tests, undo some changes to fixture files
...
Was causing Email::Reciever tests to fail
2014-08-01 12:40:28 -07:00
riking
0faea8ee0b
Attempt at checking throws....
2014-08-01 11:38:44 -07:00
riking
c0b2b9b341
Refactor out handle_failure method in PollMailbox
2014-08-01 11:12:06 -07:00
riking
d7df4e5979
Start making better-written tests for the email job
2014-08-01 11:03:16 -07:00
David McClure
025354f52f
add a low water mark at 90% of variable TL3 requirements
2014-07-27 23:42:38 -07:00
Sam
1359a02128
Merge pull request #2532 from riking/sidekiq
...
Pass more context from Sidekiq jobs to Logster
2014-07-18 10:24:51 +10:00
riking
12cb682548
Start passing more context to Discourse.handle_exception
2014-07-17 14:11:56 -07:00
riking
c8d322d1be
Include the email subject line in rejection messages
...
This change has a tradeoff.
It increases our backscatter vulnerability - the subject could have spammy content - but it's extremely valuable to the user to know exactly which message was rejected.
If you sent two at the same time, and only one was rejected, you would have no way of knowing which worked and which to resend without going to the website (which is what email-in is trying to avoid, kinda).
2014-07-17 10:25:53 -07:00
Neil Lalonde
4c867c5796
FIX: don't send repeated notifications that there are pending users who need to be approved to moderators who haven't read the previous notification
2014-07-16 17:53:51 -04:00
Neil Lalonde
df8b25d2f5
FEATURE: don't demote trust level 3 users who were promoted less than SiteSetting.leader_promotion_min_duration days ago
2014-07-08 17:39:49 -04:00
Sam
6099802d24
Revert "TEST: break build to ensure docker process does not update to this file"
...
This reverts commit 9e75b930e4
.
2014-07-01 15:27:48 +10:00
Sam
9e75b930e4
TEST: break build to ensure docker process does not update to this file
2014-07-01 11:58:49 +10:00
riking
07cedb7946
Fix specs, handle_exception calls
2014-06-30 15:16:16 -07:00
Neil Lalonde
807bfbd9bb
FEATURE: Trust level 3 promotion and demotion. Job is disabled for now.
2014-06-27 18:42:03 -04:00
riking
da9048f3ea
Fix email code & tests
2014-06-27 12:04:31 -07:00
Arpit Jalan
52f9984804
FEATURE: Add topic invitation support to Bulk Invite
2014-06-26 20:46:53 +05:30
Sam
6527862195
Remove fragile spec
2014-06-26 10:21:19 +10:00
Sam
67804cb56b
Merge pull request #2465 from riking/email_rejections
...
Give specific message for each kind of email rejection
2014-06-26 09:55:24 +10:00
Arpit Jalan
b227f736f1
Refactor code and update specs
2014-06-26 01:34:26 +05:30
Arpit Jalan
c2055732c7
FEATURE: Add groups support to Bulk Invite
2014-06-26 00:15:26 +05:30
riking
7ab5d3c018
Fix specs
2014-06-23 18:12:20 -07:00
Sam
7a2d64b27f
Merge pull request #2422 from peternlewis/honor_email_always_even_if_read
...
Honor email_always even if notification has been read
2014-06-20 16:14:37 +10:00
Peter N Lewis
8b32fb5b6d
Corrected typo, corrected accidental tab, removed unnecessary database rollback
...
Corrected it "do send" to it "does send"
Removed unnecessary user.update_column (rollback happens automatically)
Replaced Tab with spaces.
2014-06-10 11:36:20 +08:00
Justin Leveck
a78df3d57d
Add custom embed_by_username feature
...
Feature to allow each imported post to be created using a different discourse
username. A possible use case of this is a multi-author blog where discourse
is being used to track comments. This feature allows authors to receive
updates when someone leaves a comment on one of their articles because each of
the imported posts can be created using the discourse username of the author.
2014-06-09 12:35:38 -07:00
Peter N Lewis
87e254cc3a
Added test to ensure email is sent to users with email_always set even if the notification has been read
2014-06-09 19:09:36 +08:00
Sam
6e0f54ba9a
slow down the back fill process a bit
2014-05-27 20:46:17 +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
Régis Hanol
c3a1c867dd
REFACTOR: poll mailbox specs
2014-04-09 19:26:19 +02:00
Robin Ward
7e3ea5d644
Support for crawling topic links
2014-04-07 14:08:34 -04:00
Neil Lalonde
ecf211aa3f
Send email to contact_email if there are flags submitted more than 48 hours ago. Configurable with the notify_about_flags_after site setting.
2014-04-03 14:34:40 -04:00
Robin Ward
42ca83ece5
FEATURE: New site setting to enable a daily automatic backup
2014-03-12 13:30:47 -04:00