Commit Graph

326 Commits

Author SHA1 Message Date
Guo Xiang Tan
498cc15aa9 Upgrade mail gem to drop dependency on mime-types.
Boot Memory Usage

```
Total allocated: 225695379 bytes (1990663 objects)
Total retained:  32795116 bytes (291607 objects)
```

```
Total allocated: 218342892 bytes (1897350 objects)
Total retained:  30123426 bytes (261198 objects)
```
2018-02-15 16:24:26 +08:00
Gerhard Schlager
eb52c5469e FEATURE: Allow plugins to register a new locale 2018-01-25 14:57:41 +01:00
Gerhard Schlager
9f7ae908d8 Add specs to check email domain whitelist/blacklist for To and Cc 2018-01-10 16:57:26 +01:00
Arpit Jalan
6c1ebbb95c add test case for csv BOM handling 2018-01-09 15:49:41 +05:30
Gerhard Schlager
f086d28b30 FIX: Do not validate messages sent to mailing list mirror 2018-01-05 11:21:53 +01:00
Gerhard Schlager
ceb7590bcb FIX: bounced email can contain multiple status codes 2018-01-03 17:59:20 +01: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
Gerhard Schlager
1a3ab7c02e ignore some site settings for emails sent to mailinglist mirror category 2017-11-17 15:29:14 +01:00
Gerhard Schlager
5210e3e744 FEATURE: accept incoming email with reply_key mismatch when original email was forwarded 2017-11-12 23:44:22 +01:00
Gerhard Schlager
4dc4bc70c8 FIX: ignore_by_title should match case-insensitive 2017-11-12 01:43:18 +01:00
Robin Ward
4270c93666 FIX: Missing yml file 2017-11-10 14:29:36 -05:00
Robin Ward
1f14350220 Rename "Blocked" to "Silenced" 2017-11-10 14:10:27 -05:00
Régis Hanol
be0c7609f1 FIX: validates attachments against current authorized extensions 2017-11-07 19:17:33 +01:00
Vinoth Kannan
59529ea54a generalize spec fixture 2017-11-04 11:47:26 +05:30
Vinoth Kannan
a00af4d85a FEATURE: Rake task to export and import category structure 2017-11-01 17:17:05 +05:30
Gerhard Schlager
c0bb97b5cb FIX: delete staged users when the incoming email is rejected 2017-10-11 16:17:01 +02:00
Gerhard Schlager
7f50380221 FIX: respect email domain whitelist/blacklist when creating staged users 2017-10-03 16:36:08 +02:00
Gerhard Schlager
76706f9144 FIX: don't create staged users when incoming email is rejected
FIX: don't send subscription mail to new users
2017-10-03 16:36:08 +02:00
Kyle Zhao
15cd3b78ae integration test for PollFeed job 2017-10-02 01:16:11 -04:00
Gerhard Schlager
31ecb4fecf FIX: Handle incoming emails without email address in From header (#5177) 2017-09-12 22:35:24 +02:00
Erick Guan
1646bc0031 FIX: fails loud if default setting is not set
Noted:
- `push_api_secret_key` is set in initializer. Shimed with ''
- `default_theme_key` is set in seeding. Shimed with ''
2017-08-15 12:07:25 +02:00
Guo Xiang Tan
2c39743d5d Introduce multisite tests for better coverage. 2017-08-08 12:58:22 +09:00
Guo Xiang Tan
3f24ed2b3e Can't revert due to incompatibility of new site setting types.
Revert "Revert "FEATURE: Site settings defaults per locale""

This reverts commit 439fe8ba24.
2017-08-07 10:43:09 +09:00
Guo Xiang Tan
439fe8ba24 Revert "FEATURE: Site settings defaults per locale"
This reverts commit 468a8fcd20.
2017-08-07 10:31:50 +09:00
Erick Guan
468a8fcd20 FEATURE: Site settings defaults per locale
This change-set allows setting different defaults for different locales. 

It also:

- Adds extensive testing around site setting validation

- raises deprecation error if site setting has the default property based on env

- relocated site settings for dev and tests in the initializer

- deprecated client_setting in the site setting's loading process

- ensure it raises when a enum site setting being set

- default_locale is promoted to `required` category.

- fixes incorrect default setting and validation

- fixes ensure type check for site settings

- creates a benchmark for site setting

- sets reasonable defaults for Chinese
2017-08-02 12:24:19 -04:00
Guo Xiang Tan
5012d46cbd Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
Guo Xiang Tan
0ab0c82f11 Reenable skipped Email::Receiver spec. 2017-07-24 22:27:24 +09:00
Sam
fc90dd3592 Work in progress, CommonMark spec 2017-07-20 17:47:16 -04:00
David Taylor
9294826f31 Allow inclusion of elided text from emails when sending to a category… (#4844)
* Allow inclusion of elided text from emails when sending to a category address
2017-06-29 13:03:14 +09:00
Sam
6a1f579c6e FIX: don't search for plugins in nested subdirectories 2017-05-16 17:28:56 -04:00
Sam
bc0b9af576 FEATURE: support uploads for themes
This allows themes to bundle various assets
2017-05-10 15:47:11 -04:00
Arpit Jalan
e89d0a6b20 FIX: importing a theme via file was broken 2017-05-08 12:03:24 +05:30
Régis Hanol
bf322281e3 Improve handling of inlined images in incoming emails 2017-05-03 23:02:02 +02:00
Claus Strasburger
e9bb9a167b Fix reply-by-mail for 8-bit transfer encodings
The mail class seems to handle mails sent with Content-Transfer-Encoding: 8bit
somewhat weirdly: It decodes them (to utf-8), changes the raw source to base64,
and does not modify the Content-Type:charset= header.

This leads to Discourse trying the message encoding (in my example ISO-8859-1)
first, and if that does not contain any unparseable characters, it uses that.
Sadly, in ISO-8859-1, every byte sequence is valid.

Fix this by always trying to decode as UTF-8 first. The probability of someone
using another encoding that cleanly (but wrongly) decodes as UTF-8 should be
fairly low.
2017-04-30 23:30:40 +02:00
Régis Hanol
887e9af84f FEATURE: new 'max_image_megapixels' site setting 2017-01-11 23:37:12 +01:00
Régis Hanol
185dcb2ca1 handle emails with localized headers 😠 2017-01-09 22:59:30 +01:00
Régis Hanol
98c62bccb5 FIX: mark forwarded email as read by the forwarder
FIX: 'Re:' prefix is mostly used for replies and not forwarded emails
2017-01-06 15:33:55 +01:00
Régis Hanol
62763f025c FIX: wasn't able to parse FROM email in the embedded email 2016-12-01 18:34:47 +01: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
800081f606 FIX: staged users weren't able to reply in restricted categories 2016-06-26 19:25:45 +02:00
Régis Hanol
dffe50a2e6 new alternative reply by email addresses 2016-06-10 16:14:42 +02:00
Régis Hanol
c75d58ab21 FEATURE: new 'ignore_by_title' site setting 2016-05-18 23:07:01 +02:00
Régis Hanol
8e611ec7a1 FEATURE: handle bounced emails 2016-05-02 23:15:32 +02:00
Régis Hanol
4960b62110 FEATURE: new 'block_auto_generated_emails' site setting 2016-04-20 21:29:27 +02:00
Régis Hanol
7d9f2265b9 FIX: improve support for handling emails coming from screened email addresses 2016-04-18 23:01:54 +02:00
Régis Hanol
4d9c81fde7 Merge pull request #4148 from tgxworld/dont_reply_to_emails_that_are_autogenerated
FIX: Don't send rejection mailer to bounced emails.
2016-04-13 15:36:14 +02:00
Régis Hanol
56089c4856 FEATURE: new 'auto_generated_whitelist' site setting 2016-04-11 22:47:34 +02:00
Régis Hanol
e4980392da improve receiver specs to account for posts approval 2016-04-11 18:20:26 +02:00
Guo Xiang Tan
5734c7f3f3 FIX: Don't send rejection mailer to bounced emails. 2016-04-07 22:21:17 +08:00
Régis Hanol
39863953cd new 'enable_staged_users' site setting 2016-03-23 18:56:03 +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
Régis Hanol
841cec1bc1 FIX: support emails in with weird encoding 2016-03-11 18:51:53 +01:00
Régis Hanol
be5a54d67d FEATURE: new 'allow_all_attachments_for_group_messages' site setting 2016-02-29 22:39:24 +01:00
Régis Hanol
f7432d8ec9 FEATURE: add support for multiple incoming emails for groups & categories 2016-02-24 19:47:58 +01:00
Régis Hanol
54262cc9b2 FIX: properly handle invalid from header 2016-02-24 17:40:57 +01:00
Régis Hanol
5415b2666d FIX: staged users couldn't create new topic in a private category via email 2016-02-22 19:57:53 +01:00
Régis Hanol
cad7fc1062 FIX: don't allow blocked user to send emails in 2016-02-11 10:39:57 +01:00
Jeff Atwood
1a1dcb59f9 this period bothered me and it had to go 2016-02-08 15:37:49 -08:00
Régis Hanol
49d1f88f6e FIX: support incoming emails with no subject 2016-02-01 12:16:15 +01:00
Régis Hanol
27aaed0aa5 FIX: don't use 'Return-Path' header to determine whether the email was auto generated 2016-02-01 10:21:58 +01:00
Régis Hanol
46b6c55197 FIX: replace 'discourse_email_parser' with 'email_reply_trimmer' to better trim replies from plain text emails
FIX: undefined method `number_to_human_size' when email contains attachments
2016-01-30 01:29:31 +01:00
Régis Hanol
f145310cd5 FIX: associates email replies using both 'In-Reply-To' and 'References' headers 2016-01-20 22:52:08 +01:00
James Kiesel
c7283751a3 Unsubscribe via email 2016-01-20 22:25:25 +13:00
Régis Hanol
735017dd9f FIX: don't invite users with the same email as 'reply_be_email_address' 2016-01-19 15:24:34 +01: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
James Kiesel
86da47880a Allow +1 via email 2015-12-30 12:17:45 +01:00
Régis Hanol
a9099f9e23 SECURITY: ensure we never accept fake images 2015-12-21 16:08:14 +01:00
Régis Hanol
51b2279af0 fix the build 2015-12-16 01:31:19 +01: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
02279c41cb Merge pull request #3918 from techAPJ/better-email-parsing
FEATURE: better email reply parsing
2015-12-11 14:51:24 +01:00
Régis Hanol
93d1cc6294 add support for incoming emails in CC/BCC fields 2015-12-10 23:49:16 +01:00
Arpit Jalan
7a8e5a50ff FEATURE: better email reply parsing 2015-12-09 23:47:01 +05:30
Robin Ward
d65ec1af2e Rename ninja_edit_window to editing_grace_period :'( 2015-11-24 14:28:42 -05:00
Robin Ward
2196160549 FIX: Allow emails to begin with a quote (but skip it!) 2015-11-18 15:23:10 -05:00
Seth Reeser
85da9c6ff8 Digital Ocean should be DigitalOcean https://www.digitalocean.com/legal/terms/ 2015-10-30 13:31:48 -04: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
bef80633b1 FEATURE: global admin override of most of the user preferences 2015-08-21 20:39:21 +02:00
Régis Hanol
2473a00b26 FIX: improve smoke tests 2015-07-27 11:07:42 +02:00
Régis Hanol
b0802abae2 FIX: crop & optimize user background profile/card images 2015-07-15 17:15:43 +02:00
Arpit Jalan
d28515792a FIX: auto response email replies should not be accepted 2014-12-04 22:39:13 +05:30
Arpit Jalan
15c105eba5 Add test for email with inline reply 2014-12-01 23:51:14 +05:30
Arpit Jalan
529014d56e FEATURE: switch to GitHub email_reply_parser library and parse plain text email content 2014-12-01 09:00:35 +05:30
Régis Hanol
bdb78ce76a FEATURE: consider SVG as an image when authorized 2014-11-03 19:54:10 +01:00
Arpit Jalan
24a0db3244 FIX: fix email replies for ms outlook 2014-10-14 16:20:35 +05:30
Arpit Jalan
b457005b07 FIX: handle multiple paragraphs in email reply when parsing html 2014-10-08 19:45:46 +05:30
Jeff Atwood
5646ebf4c7 fix tests expecting "name said:" to "name:" 2014-09-18 20:39:27 -07:00
riking
c1df25e856 Add test for "on day, name wrote" quote trigger 2014-09-09 16:27:06 -07: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
90091972b9 Use same reply-to format in all email fixtures 2014-08-13 11:43:49 -07:00
riking
cce8b4720a Have reciever handle multiple To addresses 2014-08-13 11:43:49 -07: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
d7df4e5979 Start making better-written tests for the email job 2014-08-01 11:03:16 -07:00
Sam
dcc9923e4b FIX: failed messages posted via email silently ignored
also... test suite over mocking
2014-07-31 18:46:02 +10:00
riking
1682f5d584 Fix message, and add test, for EmailUnparseableError 2014-07-17 10:25:53 -07:00
Robin Ward
cce7cf8c85 FEATURE: Require Javascript to activate an account via email link 2014-07-14 12:26:10 -04:00
Sam
167a2a68e6 To be fixed properly tomorrow. 2014-07-11 14:17:43 +10:00
Neil Lalonde
e565ae2528 FEATURE: /guidelines route will always show our FAQ, ignoring the faq_url site setting 2014-07-10 12:58:41 -04:00
Régis Hanol
a52c80e2a8 FEATURE: automatic image orientation fix 2014-07-09 23:59:57 +02:00
Arpit Jalan
52f9984804 FEATURE: Add topic invitation support to Bulk Invite 2014-06-26 20:46:53 +05:30
Arpit Jalan
727184641e FEATURE: Bulk Invite 2014-06-09 01:43:39 +05:30
Neil Lalonde
c4d3aa3d47 Theming: a UI to choose some base colors that are applied to all the site css. CSS compiled outside of asset pipeline. 2014-05-14 10:18:12 -04:00
Benjamin Kampmann
4af2cf3f23 Refactor and clean up New-Topic via Email
With the new email_in admin configuration setting, emails to the email_in_address fetched via POP will now be processed and posted as new topics to the forum.

With the email_in_min_trust you can control the trust level the user needs to have at least to be able to post an email as a new topic.

Also contains tests for the email-in feature and minor clean ups
2014-02-28 16:53:58 +01:00
Robin Ward
7aaa70770b Remove old onebox fixtures 2014-02-21 16:04:15 -05:00
Herb Jiang
5fa464e10b force_encoding according to the charset in mail, this solve encoding problem when not using ‘utf-8’ charset. 2014-01-19 02:12:38 +08:00
Neil Lalonde
ed3d3ae1e1 Upgrade font-awesome to version 4 2013-12-11 10:31:09 -05:00
Robin Ward
5055da76e6 Abort triggers for email body processing 2013-11-20 13:30:01 -05:00
Neil Lalonde
791f5ac94e Load site settings from config/site_settings.yml 2013-11-14 16:02:13 -05:00
Robin Ward
c86b06e3fa Fix for non-english email polling. 2013-11-04 15:30:24 -05:00
Robin Ward
c8487f6bc7 FIX: Amazon spec 2013-10-04 12:49:39 -04:00
Sam
bb3725cfca correct spec 2013-08-26 14:39:34 +10:00
Robin Ward
ff3b163a78 FIX: Another email regexp for quote lines in the format we can recognize including
the site name.
2013-08-21 16:54:51 -04:00
Sam
160107a712 working plugin interface for custom openid auth, custom css and custom js 2013-08-01 16:02:43 +10:00
Robin Ward
2319a824f8 Special work to never include previous posts in parsed emails. Also a new attempt
to catch reply strings in different languages.
2013-07-24 14:22:32 -04:00
Robin Ward
9a19c0d9c4 Fix for multiple paragraph emails with text em-dashes in them (--). 2013-06-25 14:06:05 -04:00
Robin Ward
0e984762d5 Oops, forgot to check in the email fixtures :P 2013-06-20 13:07:42 -04:00
Robin Ward
0d10b5c9c4 More email receiving logic 2013-06-20 12:38:37 -04:00
Robin Ward
82d1465d18 Ugly Hack: Remove improperly parsed headers from Mail::Message 2013-06-19 12:14:01 -04:00
Robin Ward
8acdc18bc8 First stab at polling support for POP3S / reply by email 2013-06-17 16:49:02 -04:00
Ryan Boland
9bc8faeaf2 added rottentomatoes.com onebox 2013-04-28 16:24:03 -04:00
Robin Ward
368011d03b Merge pull request #628 from ZogStriP/add-uploads-controller-specs
add UploadsController specs
2013-04-03 08:06:49 -07:00
Régis Hanol
cf3eb98321 add GitHub commit onebox 2013-04-03 03:36:38 +02:00
Régis Hanol
2b120ef886 add UploadsController specs 2013-04-03 01:17:17 +02:00
Robin Ward
e461c84253 Clean up JS, add YUIDoc support, automatically create IIFE via asset pipeline 2013-02-25 17:16:57 -05:00
Robin Ward
f661fa609e Convert all CoffeeScript to Javascript. See:
http://meta.discourse.org/t/is-it-better-for-discourse-to-use-javascript-or-coffeescript/3153
2013-02-20 19:01:13 -05:00
Jaime Iniesta
e4c1b9702b Use FakeWeb to fake web requests on specs 2013-02-14 11:35:50 +01:00