Commit Graph

261 Commits

Author SHA1 Message Date
David McClure
025354f52f add a low water mark at 90% of variable TL3 requirements 2014-07-27 23:42:38 -07:00
Sam
95d13bf68a PERF: move avg time calculation to daily 2014-07-25 13:21:10 +10:00
Sam
0f9678fe49 FIX: faster update of all badges
Introduced badge triggers, introduced concept of badge that happens due to a post but has the post hidden

Delta badge grant happens once a minute, backed by redis
2014-07-23 11:46:07 +10:00
Régis Hanol
c7330ed73f BUGFIX: errors when post-processing 'data images' 2014-07-18 17:54:18 +02: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
d90404e830 Change 'code' to 'message' 2014-07-17 15:19:58 -07: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
Sam
89fc989adb FEATURE: First Quote badge 2014-07-11 14:17:43 +10: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
650e9348f3 FIX: multiple grant not working correctly 2014-07-04 17:41:03 +10:00
Sam
9a9ad9bda8 FEATURE: Badge progress
- Refactor model so it stores backfill query
- Implement autobiographer
- Remove sample badge
- Correct featured badges to only include a badge once
2014-07-03 17:29:44 +10:00
Arpit Jalan
aeec5067d5 FEATURE: Send notification by system user for bulk invite 2014-07-02 14:28:57 +05:30
Sam
198731de23 FIX: 100% cpu while parsing feeds 2014-07-02 13:53:04 +10:00
Sam
a4b7b561dc Add link to badge reason on badge details page. 2014-07-02 09:46:28 +10:00
Neil Lalonde
3f16e1e335 Enable trust level 3 promotion/demotion job 2014-07-01 17:34:07 -04:00
Sam
bc44bfcdf2 Work in progress backfill for like badges 2014-07-01 22:01:15 +10:00
Sam
760e9a756d PERF: push reindex job to daily 2014-07-01 10:09:55 +10:00
riking
a7b8f25c50 Even better fix 2014-06-30 15:17:05 -07:00
riking
07cedb7946 Fix specs, handle_exception calls 2014-06-30 15:16:16 -07:00
riking
eb14983dfa Change pop3 auth errors from admin message to dashboard notice 2014-06-30 14:44:18 -07:00
Robin Ward
e22688a204 FEATURE: Can upload images to categories 2014-06-30 14:14:00 -04:00
Sam
777371bf14 Merge pull request #2480 from vikhyat/badge-system
Add consistency check to revoke invalid badges
2014-06-30 14:13:12 +10:00
Neil Lalonde
807bfbd9bb FEATURE: Trust level 3 promotion and demotion. Job is disabled for now. 2014-06-27 18:42:03 -04:00
Vikhyat Korrapati
83749779cc Add consistency check to revoke duplicate badges. 2014-06-28 01:24:00 +05:30
riking
da9048f3ea Fix email code & tests 2014-06-27 12:04:31 -07:00
Robin Ward
6907739a0b Merge pull request #2474 from techAPJ/add-topic-id-to-bulk-invite
FEATURE: Add topic invitation support to Bulk Invite
2014-06-26 13:30:30 -04:00
Arpit Jalan
dad2d34d02 Refactor methods post feedback 2014-06-26 22:50:09 +05:30
Andrew Bezzub
386d1e231a move profile_background from User to UserProfile 2014-06-26 12:30:07 -04:00
Arpit Jalan
52f9984804 FEATURE: Add topic invitation support to Bulk Invite 2014-06-26 20:46:53 +05:30
Kane York
6f5b58969b Only give necessary context 2014-06-25 17:01:23 -07:00
Sam
e05aa9bdc8 Stop spamming mods even on exceptional cases 2014-06-26 09:58:37 +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
Sam
3c84876660 BUGFIX: Chinese search was broken
BUGFIX: User locale was used index data
BUGFIX: missing Norwegian fulltext config
FEATURE: store the text used to index stuff in fulltext (for diagnostics / in page search)
FEATURE: re-index posts when locale changes (in bg job)
FEATURE: allow reindexing by trucating post_search_data

Note: I removed japanese specific config cause it requires custom pg config,
  happy to add it once our base docker config ships with it
2014-06-24 17:11:13 +10:00
riking
222db71dd7 Cleanup 2014-06-23 17:48:51 -07:00
riking
8b5d2b835a Add case for bad reply key 2014-06-23 17:46:22 -07:00
riking
d2823fc5ee More detailed email rejection responses 2014-06-23 17:17:53 -07:00
riking
edc17dddb3 Let's see if this works 2014-06-23 17:17:53 -07:00
Neil Lalonde
6aa44fd412 Merge pull request #2461 from peternlewis/pop3s_polling_period_mins
Add a SiteSetting to control the pop3 polling period.
2014-06-23 10:48:40 -04:00
Peter N Lewis
5da2eac1bb Add a SiteSetting to control the pop3 polling period.
The default 5 minutes may add too much lag for some sites used to mailing list performance.

Unfortunately, this seems to require restarting the server for the change to be noticed - is there any way to avoid that, or otherwise should this be noted in the setting text?
2014-06-21 15:57:49 +08:00
riking
a7a28454a1 DEBUG: Send all email processing errors to admins 2014-06-20 09:31:19 -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
Vikhyat Korrapati
3ba65af19e Add like-based system badges. 2014-06-19 17:10:43 +05:30
Vikhyat Korrapati
b5eea1d79f Grant system badges in a background job. 2014-06-19 17:10:37 +05:30
Robin Ward
1147b9d2e5 Merge pull request #2408 from peternlewis/pop3_insecure
Support for insecure POP3 (without SSL)
2014-06-16 11:51:44 -04:00
Robin Ward
88b5e78424 Merge branch 'add_custom_embed_by_username' of github.com:justinleveck/discourse into justinleveck-add_custom_embed_by_username
Conflicts:
	config/site_settings.yml
2014-06-16 10:52:15 -04:00
Sam
76166567fb Use the cheap Defer queue as opposed to sidekiq for view tracking. 2014-06-12 11:29:29 +10:00
Régis Hanol
18489ba83a BUGFIX: proper regex escaping 2014-06-11 16:37:26 +02:00
Régis Hanol
0781531e3c Merge pull request #2415 from techAPJ/bulk-invite-users-5
FEATURE: Bulk Invite
2014-06-10 19:11:11 +02: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
Arpit Jalan
727184641e FEATURE: Bulk Invite 2014-06-09 01:43:39 +05:30
Sam
0f37699d5f BUGFIX: broken schedule 2014-06-07 10:25:15 +10:00
Peter N Lewis
d0ebdea5fa Honor email_always even if notification has been read
Even if the notification has been read, send it by email if user has enabled email_always
2014-06-06 21:16:41 +08:00
Peter N Lewis
6c05de45b6 Support for insecure POP3 (without SSL)
Ideally it would be a menu selection to select POP3, POP3S, and potentially other future protocols like IMAP if desired, but I didn't want to deal with data migration at this point.  And then I was going to have a checkbox for "Secure" (on by default, obviously), but that was very hard to word as to how it was different given everything else referred to pop3s and I couldn't change that either.  So I settled on a preference:

pop3s_polling_insecure: "Poll using plain text POP3 without SSL"

Off by default.

This makes it very clear that as to what turning on that checkbox will be, and by calling it "insecure" makes sure people will think twice before turning it on.

I have not attempted to do any of the translations of the preference, I'm ot sure how you handle that.
2014-06-02 20:59:10 +08:00
Sam
fa6f22dd39 Move letter avatars out of upload system
FIX: S3 issues around system avatars
FIX: reduced backup file size
2014-05-30 14:45:55 +10:00
Sam
1a31eb1d97 job should warn about corrupt user_avatar records 2014-05-28 19:55:33 +10:00
Sam
3e36d0698c BUGFIX: ensure it tries downloading avatars 2014-05-28 17:57:15 +10:00
Sam
d9f51961c4 BUGFIX: pick gravatar if it was just downloaded
BUGFIX: don't go rebaking unless all avatars are downloaded
2014-05-28 16:54:21 +10:00
Sam
f6753d3d46 FEATURE: automatically rebake out-of-date posts 2014-05-28 12:30:57 +10:00
Sam
2791852bd8 FEATURE: ability to regenerate system avatars as needed
BUGFIX: made system letter avatar more thinner for less block look
2014-05-28 12:30:57 +10:00
Sam
ce6c25afed Correct query so it scopes correctly 2014-05-27 22:17:04 +10:00
Sam
6e0f54ba9a slow down the back fill process a bit 2014-05-27 20:46:17 +10:00
Sam
504cfcff96 Fix specs for avatars
Implement avatar picker
Correct avatar related jobs
2014-05-27 10:08:03 +10:00
Sam
6c1c8be794 Work in progress, keeping avatars locally
This introduces a new model to store the avatars and 3 uploads per user (gravatar, system and custom)

user can then pick which they want.
2014-05-27 10:08:03 +10:00
Sam
b329e23f85 don't attempt to send emails on deleted topics 2014-05-14 10:34:28 +10:00
Sam
557dc76c07 BUGFIX: failing avatar detection job 2014-05-12 15:50:44 +10:00
Sam
a2e2d0e886 Merge pull request #2316 from mutiny/refactor-where-first
Refactor `where(...).first` to `find_by(...)`
2014-05-08 09:10:45 +10:00
Régis Hanol
4b9acd6806 BUGFIX: make sure we do not try to pull images from the CDN 2014-05-07 19:49:16 +02:00
Camille Roux
f14c71b9d4 Fix the Amazon links regex 2014-05-06 19:19:32 +02:00
Camille Roux
e77e7f23ca Update the Amazon links regexp
Added all the countries displayed in the Amazon footer
2014-05-06 18:36:07 +02: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
c21d3f41d0 BUGFIX: only redirect new users to top page once
Actually, new users will still be redirected to the top page during the first 30 seconds of their first visit.
2014-05-05 19:00:40 +02:00
Régis Hanol
c52ee665b4 FEATURE: do not bump topic when pulling hotlinked images 2014-04-24 16:07:47 +02:00
riking
7da5d3fe78 Backoff-retry for hotlinked image pull + some style fixes 2014-04-23 22:25:43 -07:00
riking
b309deef11 Add site setting for domains to never download images from 2014-04-23 22:24:35 -07:00
Neil Lalonde
d8ebeef857 FIX: NotifyMailingListSubscribers can handle trashed posts, instead of raising an error and retrying 2014-04-23 15:50:52 -04:00
Sam
7c57d74e85 FEATURE: unicorn sidekiq will restart sidekiq on complete failure.
(checks every 30 minutes for complete failure)
2014-04-23 13:13:18 +10:00
Régis Hanol
5fd4d88491 BUGFIX: pull hotlinked images job wasn't properly handling the InvalidParameters exception 2014-04-22 15:32:48 +02:00
Robin Ward
a57f802048 If there's a TopicEmbed record for a url, we don't have to crawl it.
This should help sites like Boing Boing where sometimes links are
crawled before saved in WordPress.
2014-04-17 14:00:22 -04:00
Régis Hanol
9cd8476453 REFACTOR: use an options hash instead of multiple nil-able parameters 2014-04-15 17:17:10 +02:00
Régis Hanol
542d54e6bf BUGFIX: uploads to S3 2014-04-15 13:04:14 +02:00
Régis Hanol
2505d18aa9 FEATURE: support email attachments 2014-04-14 22:55:57 +02:00
Robin Ward
e80851b0fa Special case: When crawling a link to an image, just put the filename as
the title.
2014-04-10 13:45:13 -04:00
Robin Ward
99e2bab62d Use update_all to prevent after_commit from executing again. 2014-04-10 13:19:57 -04:00
Régis Hanol
c3a1c867dd REFACTOR: poll mailbox specs 2014-04-09 19:26:19 +02:00
Robin Ward
aa63868d5e FIX: Problem crawling amazon titles 2014-04-08 16:39:47 -04:00
Robin Ward
1e3faddfe4 FIX: Change crawl size to 10k. Youtube for example doesn't work with the
first 1k
2014-04-07 16:03:47 -04:00
Robin Ward
7e0028ba50 FIX: Don't crawl in test mode, raise correct exception when parameters
are missing
2014-04-07 14:38:18 -04: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
Julian Tescher
a6062e0b98 Remove confusing/incorrect comments 2014-03-30 23:14:21 -07:00
Robin Ward
51e3d72461 Merge pull request #2141 from riking/correctness
Lots of JS correctness fixes
2014-03-19 11:20:15 -04:00
riking
2ade638d79 Remove unused variables 2014-03-18 19:09:44 -07:00
Régis Hanol
5bc8e7c19b BUGFIX: BackupChunksMerger
- actually remove the tmp directory
- merge all the chunks into a .tmp archive and then remove the .tmp extension once done
2014-03-19 01:05:47 +01:00
Robin Ward
e22f1ae186 Support for a daily job at a certain hour. Convert backup job to run at
3am instead of randomly during the day.
2014-03-14 13:02:45 -04:00
Robin Ward
42ca83ece5 FEATURE: New site setting to enable a daily automatic backup 2014-03-12 13:30:47 -04:00
Robin Ward
78889163bf BUGFIX: We were tring to delete the mail string, not the mail itself. 2014-03-07 11:28:55 -05:00
Régis Hanol
bce4130d39 Merge pull request #2036 from ArmedGuy/profile-backgrounds
FEATURE: Profile Backgrounds
2014-03-05 16:00:49 +01:00
Johan Jatko
98c479c3c4 FEATURE: Profile Backgrounds
Shares a modified codebase with avatars called "user_image"
2014-03-05 15:10:44 +01:00
Sam
ceb80611d6 PERF: defer last_ip_address and last_seen updates 2014-03-03 15:16:38 +11:00
Sam
172e517b31 Merge pull request #2012 from ligthyear/incoming-emails
Advanced New-Topic via Email Feature
2014-03-03 10:58:10 +11:00
Régis Hanol
6b83ed0347 OPTIM: change Top Topic's score computation algorithm
New algorithm will not wipe the entire table anymore and will only remove
invisible topics and add new visible topics.
2014-02-28 20:33:52 +01:00
Benjamin Kampmann
024597e643 Switch to proper exception handling system for better user feedback
- Replace implicit return code-system in Email::Receiver with proper exception system
 - Update tests to check for exceptions instead
 - Test the PollMailbox for expected failures
 - Add proper email-handling of problematic emails
"
2014-02-28 17:02:58 +01:00
Allen Hancock
dad43b9853 Optionally allow discourse to create new topics from email. 2014-02-28 16:53:58 +01:00
Sam
1b0c567729 OOPS 2014-02-27 12:43:44 +11:00
Sam
9551f4aeea PERF: calculate scores for topics/posts faster
Only look at topics that changed in last day for 15 minuted schedule
Do a full recalc weekly, just in case
2014-02-27 11:45:40 +11:00
Sam
e4909c017c PERF: only rebuild entire top topic table daily 2014-02-27 11:45:40 +11:00
Régis Hanol
68a935c36b FEATURE: upload backups 2014-02-22 01:41:01 +01:00
Sam Saffron
451598c511 BUGFIX: regresses correct job execution 2014-02-21 16:05:19 +11:00
Sam Saffron
9a3af8997b BUGFIX: handle partial job failure in multisite
log all failures
2014-02-21 15:31:15 +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
Régis Hanol
8344f0d8fd remove old import/export code 2014-02-13 13:31:13 -08:00
Sam
57ee244394 Bump up consistency check to run twice a day instead of once 2014-02-11 16:11:40 +11:00
Sam
56e09802fe BUGFIX: Use email sender 2014-02-09 07:29:16 +11:00
Sam
e133c82d4b SECURITY: check permissions for mailing list
if you deployed this feature in the last 2 hours upgrade asap.
2014-02-07 14:10:45 +11:00
Sam
227873df78 FEATURE: proper mailing list mode
once enable_mailing_list_mode is enabled any user can elect
to get every post via email unless they opt out of category or topic
2014-02-07 11:07:52 +11:00
Sam
e1f293ad66 FEATURE: new scheduler
Removed sidetiq, introduced new scheduler

- add basic UI
- add schedule discover
- add scheduling in initializer
2014-02-06 10:26:16 +11:00
Sam
5267e5bea6 BUGFIX: emails sent from "2 replies" as opposed to correct user 2014-02-04 12:56:28 +11:00
Sam
b33faa85c0 BUGFIX: raise on fail 2014-01-31 12:23:37 +11:00
Sam
4825bf7e02 REFACTOR: clean up mechanism 2014-01-31 11:40:25 +11:00
Sam
9fc3a335cc BUGFIX: don't leak out a transaction if fails 2014-01-31 11:38:33 +11:00
Sam
0a0ed44248 BUGFIX: avoid trasactions in test 2014-01-29 17:08:42 +11:00
Sam
cce5fb3303 BUGFIXES: improved performance of import an export
we no longer generate the entire dump in memory, instead we generate one table at a time
added some basic progress
2014-01-29 16:49:01 +11:00
Robin Ward
4981525047 REFACTOR: Fixes poor class hierarchy for listing topics
- Upgrades Ember to latest
- Fixes a bunch of bugs with page titles and missing "active" states
2014-01-18 19:26:24 +01:00
Sam
a30aaa90d5 BUGFIX: export was broken, not exporting any tables 2014-01-17 12:33:42 +11:00
Régis Hanol
9da773af7a BUGFIX: do not pull images we already host locally 2014-01-15 01:14:41 +01:00
Robin Ward
1aee217a61 FIX: sidekiq 100% CPU usage due to ice_cube 2014-01-10 11:43:51 -05:00
Robin Ward
339b5942bb Default should be to poll every 5 mins 2014-01-08 15:05:18 -05:00
Régis Hanol
e732aa8a86 BUGFIX: we should not store absolute urls for locally uploaded avatar templates
Highly recommended to run: `RAILS_ENV=production bundle exec rake avatars:regenerate` to fix the avatar templates stored in the database.
2014-01-07 17:45:06 +01:00
Robin Ward
ed2e53bb06 FIX: Support feeds with description as well as content 2014-01-02 14:29:27 -05:00
Régis Hanol
46fe78cf8f BUGFIX: export rake task should include locally stored avatars 2014-01-02 17:47:19 +01:00
Neil Lalonde
df220ae973 Get detailed info about new versions from the Discourse Hub. Include version notes from the latest version in notification email. 2013-12-31 15:52:35 -05:00
Robin Ward
4f8aed295a FEATURE: Embeddable Discourse comments, now with simple-rss instead of feedzirra 2013-12-31 15:01:22 -05:00
Robin Ward
62db063e1e Revert "Support for Embeddable Comments via IFRAME" - it depends on Curl
which not every server has. Have to rethink this.

This reverts commit e3e4c62887.
2013-12-31 12:52:31 -05:00
Robin Ward
e3e4c62887 Support for Embeddable Comments via IFRAME 2013-12-31 12:26:24 -05:00
Neil Lalonde
90bf3cc3d4 Merge pull request #1760 from dv2/fix_spelling
Correct few spelling in the comments
2013-12-27 11:00:02 -08:00
Régis Hanol
567d2bd23c add top page 2013-12-24 00:50:36 +01:00
DV Suresh
24886c300b Correct few spelling in the comments 2013-12-21 01:19:22 -06:00
Régis Hanol
418856a789 make sure assets always use schemaless absolute uris 2013-12-06 11:16:13 +01:00
Régis Hanol
52160179f8 add a tombstone for extra safety 2013-11-27 22:05:11 +01:00
Régis Hanol
b0d132ee2e make sure image urls have a scheme before pulling them in 2013-11-25 19:47:53 +01:00
Régis Hanol
f65cde3cda do not bump posts when rebaking 2013-11-22 01:52:26 +01:00
Régis Hanol
31fd5b85bc FIX markdown hotlinked images were not properly pulled 2013-11-20 13:10:08 +01:00
Régis Hanol
482b752046 add edit reason when editing a post 2013-11-15 23:28:49 +01:00
Régis Hanol
16267e4887 add download_remote_images_to_local site setting 2013-11-15 15:22:18 +01:00
Régis Hanol
7e7d951152 do not pull hotlinked images when max_image_size_kb == 0 2013-11-13 17:30:48 +01:00
Neil Lalonde
1d8a3e6fc8 Add an order for user_stats table in exporter 2013-11-11 10:49:27 -05:00