Commit graph

1336 commits

Author SHA1 Message Date
Sam
e11c83341c add more specs 2016-05-30 12:43:01 +10:00
Sam
cc088956bc correct some test concurrency bugs 2016-05-30 12:28:05 +10:00
Sam
c9dcffe434 FEATURE: store history for scheduled job execution 2016-05-30 11:38:08 +10:00
Neil Lalonde
884779b5c1 FIX: N+1 query when tagging enabled and no tags in topic list query. Topic query ignored tags input when tagging is disabled. 2016-05-26 18:03:50 -04:00
Neil Lalonde
f13470b96b Use db schema for tags instead of plugin store and custom fields 2016-05-26 14:29:48 -04:00
David McClure
a92fd9d701 Add Site Setting to use HTML from incoming email when available. (#4236) 2016-05-26 10:13:01 +02:00
Régis Hanol
667dd54a23 FEATURE: new 'crop_tall_images' site setting 2016-05-23 16:18:30 +02:00
Guo Xiang Tan
3a140a982f
Fix build. 2016-05-23 11:22:25 +08:00
Sam
695773db1c FEATURE: upgrade from therubyracer to mini_racer
This pushes our internal V8 JavaScript engine from Chrome 32 to 50.

It also resolves some long standing issues we had with the old wrapper.
2016-05-23 09:57:15 +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
Régis Hanol
c75d58ab21 FEATURE: new 'ignore_by_title' site setting 2016-05-18 23:07:01 +02:00
Régis Hanol
5f76287b18 FEATURE: cap number of staged users (defaults to 10) created per incoming email 2016-05-16 21:45:34 +02:00
Guo Xiang Tan
96f07053b2
FIX: Ensure unique fields in TopicList.preloaded_custom_fields. 2016-05-16 17:56:00 +08:00
Arpit Jalan
5b030017d9 FEATURE: new search filter in:wiki 2016-05-13 13:56:53 +05:30
Arpit Jalan
00893ef1de FEATURE: new search filter - @username 2016-05-12 14:26:26 +05:30
Arpit Jalan
2e0350ee74 FEATURE: new search filter - #category-slug 2016-05-11 15:37:27 +05:30
Konrad Borowski
9d737d894d FIX: Don't diplay character reference in HTML diffs (#4204)
* FIX: Don't diplay character reference in HTML diffs

Before this change, HTML escaping was done before splitting text into
tokens, so token splitter saw literals like "'", and split them as
it was normal text into parts into ["&", "#", "39", ";"]. This caused
diff to display character references, as those tokens used separate
HTML tags to display their insertion/deletion status.

* Avoid making one element arrays while generating diffs
2016-05-09 08:44:21 +02:00
Sam
7c888c9a77 Merge pull request #4062 from xfalcox/patch-6
FIX: Properly downcase unicode chars
2016-05-08 21:39:00 +10:00
Régis Hanol
1e57bbf5c8 Lots bounce emails related fixes
- Show bounce score on user admin page
- Added reset bounce score button on user admin page
- Only whitelisted email types are sent to emails with high bounce score
- FIX: properly detect bounces even when there is no TO: header in the email
- Don't desactivate a user when reaching the bounce threshold
2016-05-06 19:34:33 +02:00
Arpit Jalan
53809d526c FIX: show proper error message when no user selected for private message 2016-05-05 18:47:08 +05:30
Arpit Jalan
b25d950d99 FEATURE: allow moderators to convert a private message to public topic or vice versa 2016-05-04 22:47:32 +05:30
Arpit Jalan
82daf93eb3 Merge pull request #4206 from techAPJ/convert-topic
FEATURE: move a topic from PM to regular topic or vice versa
2016-05-04 01:33:15 +05:30
Régis Hanol
8e611ec7a1 FEATURE: handle bounced emails 2016-05-02 23:15:32 +02:00
Arpit Jalan
acfb540952 FEATURE: move a topic from PM to regular topic or vice versa 2016-05-02 21:34:05 +05:30
Sam
d25dc126f7 FIX: Post does not save if it contains a tag link 2016-05-02 11:36:09 +10:00
Robin Ward
de82bd946d
FIX: Group members should be able to see their groups even if private 2016-04-26 14:17:53 -04:00
Régis Hanol
84d4ebd910 use 'reply_by_email_address' setting for handling bounce emails using VERP 2016-04-25 20:06:45 +02:00
Neil Lalonde
cf1fefe236 add more specs for Image Lightbox on Subfolder Install 2016-04-20 15:42:40 -04:00
Régis Hanol
4960b62110 FEATURE: new 'block_auto_generated_emails' site setting 2016-04-20 21:29:27 +02:00
Neil Lalonde
f62ffce03b Merge pull request #4053 from xfalcox/patch-5
FIX: Image Lightbox on Subfolder Install
2016-04-20 15:16:35 -04: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
de9136a8f2 FIX: bypass TL0-specific validations on posts in a PM 2016-04-18 22:08:42 +02:00
Sam
fad017d842 FEATURE: add support for bounce emails
We now optionally add a Variable Email Return Path to every email we send.
This allows us to cleanly handle email bounces, which in turn will improve
deliverability.
2016-04-18 17:14:01 +10:00
Guo Xiang Tan
36e3f1f5e4
FIX: Reset state of DiscourseRedis::FallbackHandler in tests. 2016-04-18 10:41:40 +08:00
Régis Hanol
1a621f3393 FIX: don't extract links to anchors 2016-04-15 20:02:18 +02:00
Guo Xiang Tan
862b4fc9da
FIX: DiscourseRedis::FallbackHandler not restricting number of threads spawned. 2016-04-15 17:05:03 +08: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
Sam
8ba57c0ffd FIX: restrict moderators from creating/editing topics in readonly categories
In the past moderators had blanket access to all categories they were allowed
to see. This tightens down the restriction.
2016-04-13 15:59:38 +10:00
Robin Ward
1ffa448154
FIX: Broken spec which was brittle 2016-04-12 16:09:47 -04:00
Robin Ward
0396b14b70
FEATURE: New "First Onebox" badge 2016-04-12 15:31:14 -04:00
Sam
0113fce420 FEATURE: automatically close topics with 10k+ posts
FEATURE: automatically close messages with 2k+ posts

Both configurable via `auto_close_messages_post_count`
and `auto_close_topics_post_count`
2016-04-12 13:29:48 +10:00
Sam
22b2f5285c FIX: extract links in post processor
when oneboxes are not cached or are refreshed they can introduce new
links, these links must be extracted otherwise you can not follow them
2016-04-12 12:28:18 +10: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
Robin Ward
cc25716e47 FIX: Allow message format translations to be overridden 2016-04-08 14:49:50 -04:00
Arpit Jalan
c5794ab0f6 allow magic login route emails even when emails are disabled 2016-04-08 11:20:09 +05:30
Robin Ward
5059ee04b9 Remove UserFirst table and grant Emoji badge directly 2016-04-07 12:31:41 -04:00
Guo Xiang Tan
6aa447816d UX: Publish changes to TopicView when Topic is updated. 2016-04-07 16:29:01 +02:00
Guo Xiang Tan
5734c7f3f3 FIX: Don't send rejection mailer to bounced emails. 2016-04-07 22:21:17 +08:00
Guo Xiang Tan
60c21a3393 Extract valid connection types into a constant. 2016-04-07 15:45:42 +08:00
Guo Xiang Tan
48e118a054 DRY up tests. 2016-04-07 15:43:33 +08:00
Guo Xiang Tan
7f6fe8fe13 FIX: Pubsub connections need to be killed too. 2016-04-07 15:30:05 +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
Arpit Jalan
094f7a73d5 FIX: allow post editing but do not allow ninja edit for active flagged post 2016-03-31 00:11:08 +05:30
Arpit Jalan
6f0137dec9 FEATURE: disable post editing when the post has active flag 2016-03-30 23:28:49 +05:30
Guo Xiang Tan
6d64b6d39f FIX: Query for category hashtag should be case sensitive. 2016-03-28 11:15:10 +08:00
Neil Lalonde
fd853e0776 FIX: error when sending a private message to a group in some cases 2016-03-23 16:20:31 -04:00
Régis Hanol
39863953cd new 'enable_staged_users' site setting 2016-03-23 18:56:03 +01:00
Régis Hanol
afacc70fbe improve error message when trying to change email address to one used by a staged user 2016-03-21 19:36:26 +01:00
Rafael dos Santos Silva
ef1558c98d Remove unnecessary post fabricator 2016-03-20 08:58:33 -04:00
Rafael dos Santos Silva
adae5d78f5 Rewrite capitalize for readability
Makes capitalize logic more clear with @sam suggestion
2016-03-20 08:35:48 -04:00
Robin Ward
5d4ee2ca1d FEATURE: Warn a user when they have few likes remaining 2016-03-18 11:30:29 -04:00
Sam
77242e4680 FEATURE: in:pinned and in:unpinned search filters 2016-03-18 16:26:54 +11:00
Régis Hanol
03a1aa0000 SECURITY: only add elided part of email in PM 2016-03-17 23:10:46 +01:00
Régis Hanol
7acdbc8448 FIX: don't extract links from elided parts 2016-03-16 22:35:08 +01:00
Régis Hanol
20ce7f29e0 FEATURE: new 'manual_polling_enabled' site setting 2016-03-16 22:28:01 +01:00
Robin Ward
06591022fe FEATURE: Generous badge 2016-03-15 16:08:29 -04:00
Arpit Jalan
3e32393ab6 FIX: do not allow normal users to wiki edit-expired posts 2016-03-15 15:05:57 +05:30
Robin Ward
621f7e0a65 FIX: Replace emoji in local oneboxes 2016-03-14 14:48:48 -04: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
Sam Saffron
e00850a1ab FEATURE: implement before and after filters in search remove max_age and min_age
supports

- before:monday
- after:june
- before:2001
- before:2001-01-22
2016-03-14 23:27:02 +11:00
Régis Hanol
841cec1bc1 FIX: support emails in with weird encoding 2016-03-11 18:51:53 +01:00
Régis Hanol
6d84a8a1b3 FIX: don't send out elided message in email notifications
UX: improved details tag for elided messages
2016-03-11 17:51:16 +01:00
Guo Xiang Tan
bf209d8344 FIX: Redis hostname may resolve to nothing. 2016-03-11 19:06:37 +08:00
Guo Xiang Tan
c07c474575 FEATURE: Master-Slave Redis configuration with fallback and switch over. 2016-03-11 12:18:58 +08:00
Rafael dos Santos Silva
c72363ebd7 Adds large image upload on subfolder install spec 2016-03-10 00:48:50 -03:00
Régis Hanol
2747e14b4c FEATURE: hide elided part of incoming emails behind a [details] tag 2016-03-09 18:51:54 +01: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
00078a438b FIX: FastImage#size returns nil if it can't fetch the image size. 2016-03-08 11:29:18 +08:00
Guo Xiang Tan
fcc86d3a9d FIX: PostgreSQLFallbackHandler was bouncing in and out of readonly. 2016-03-08 10:02:38 +08:00
Rafael dos Santos Silva
344f7629cd Add spec to unicode upcase and downcase 2016-03-07 22:10:49 -03: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
Sam
c838291d47 Merge pull request #4041 from joebuhlig/custom-field-sorting
Added ability to create topic sorts with custom_fields for plugins
2016-03-07 14:15:23 +11:00
Sam
77ecaba43a Merge pull request #4049 from tgxworld/support_multisite_in_postgresql_fallback
FEATURE: Support multisite in PostgreSQL fallback adapter.
2016-03-07 14:01:15 +11:00
Robin Ward
396713718b FEATURE: Adds ~200 more emoji
This includes all new emoji from Unicode 7 and Unicode 8 with the
exception of skin tones which will require a new interface.
2016-03-04 15:10:14 -05:00
Joe Buhlig
8d6579c729 Added ability to create topic sorts in plugins with custom_fields 2016-03-04 11:07:39 -06:00
Robin Ward
be257225b6 Adjustment: New User Posts must be reviewed at TL0 + TL1 2016-03-02 14:54:03 -05:00
Robin Ward
0167f6bb57 FIX: Don't substitute emojis within code blocks 2016-03-02 14:32:00 -05:00
Robin Ward
94f5aa6015 FIX: Have the approve post count setting work as advertised 2016-03-02 13:20:13 -05:00
Guo Xiang Tan
b41aa27a84 FEATURE: Support multisite in PostgreSQL fallback adapter. 2016-03-02 21:37:37 +08:00
Arpit Jalan
50e65634d7 FEATURE: new setting min_admin_password_length and better default 2016-03-02 14:43:26 +05:30
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
415efd0f5b FIX: staged user doesn't get notified for replies in topics they created in secured categories 2016-02-24 11:30:17 +01:00
Robert Riemann
9c39647cd2 fix: support for hyphens in group name
The group mention @ORG-team triggers notifications for the group @ORG. This fix changes the RegExp, so that the group name is correctly extracted.

see: https://meta.discourse.org/t/group-mentions-that-begin-with-the-same-characters-may-be-incorrect/39892/12?u=rriemann
2016-02-23 23:55:31 +01:00
Gerhard Schlager
80c9fa4dca FIX: Load translation overrides for more than one locale 2016-02-22 22:48:56 +01:00
Gerhard Schlager
2e875d3cca FIX: Use fallback locales when searching for translations 2016-02-22 22:48:55 +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
Gerhard Schlager
c4ec1d0fcf FIX: Don't suggest invalid username 2016-02-21 23:28:57 +01:00
Sam
f18f6dc31f correct spec to stop checking for empty category suppression 2016-02-19 17:43:26 +11:00
Sam
f0e942f647 PERF: move 3 more option columns out of the user table 2016-02-18 16:57:22 +11:00
Régis Hanol
52a6682690 FIX: don't create an EmailLog when we can't send a digest 2016-02-17 17:31:46 +01:00
Sam
a5c5ac12fb correct spec 2016-02-17 18:13:57 +11:00
Sam
bbbb09a6fb FEATURE: start tracking information about migrations that run
This commit adds a new tracking table that lets us know

- When a migration ran
- What version Discourse was at
- How long it took
- What version Rails was at

The built in tracking in Rails is very limited, does not track this info
2016-02-17 18:08:25 +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
Sam
b1e68390f4 FIX: false overrides should be permitted via ENV 2016-02-13 17:49:26 +11:00
Régis Hanol
75a78e0518 Merge pull request #4007 from tgxworld/fix_siitesetting_not_published_to_clients
FIX: Client settings were not being published.
2016-02-11 11:51:10 +01:00
Guo Xiang Tan
f2c64a3580 FIX: Client settings were not being published. 2016-02-11 17:53:30 +08:00
Régis Hanol
cad7fc1062 FIX: don't allow blocked user to send emails in 2016-02-11 10:39:57 +01:00
Sam Saffron
d0dd517f27 FEATURE: blank global settings should not shadow
Due to https://github.com/docker/docker/issues/9298 it is a huge pain
to remove ENV vars when composing images, allow us to simply treat "blank"
as a ENV var that is not being shadowed. In general we always supply a
value to ENV vars we are shadowing.
2016-02-10 11:54:40 +11:00
Régis Hanol
8944d62aa6 add validator for the 'reply_by_email_enabled' site setting 2016-02-09 23:35:40 +01:00
Arpit Jalan
82a75c00c0 UX: change 'Visit Topic' to 'Visit Message' for message notification email 2016-02-09 13:39:10 +05:30
Gerhard Schlager
89add4a4a2 JsLocaleHelper should search for moment.js locale files
moment.js uses a different naming conventions for locale files.
E.g. "zh-zn" instead of "zh_ZN" and "nb" instead of "nb_NO"

This change allows us to use the locale files without renaming which
makes future upgrades of moment.js a lot easier.
2016-02-05 21:49:03 +01:00
Guo Xiang Tan
8560194abf Merge pull request #3973 from tgxworld/postgres_failover
FEATURE: AR adapter to failover to a replica DB server.
2016-02-05 11:27:40 +08:00
Guo Xiang Tan
74dc838f5f FIX: Add a lock to ensure only a single thread is running each time. 2016-02-05 10:47:47 +08:00
Sam
886273f158 FIX: when CDN assets are not in root path source maps fail 2016-02-05 13:05:47 +11:00
Guo Xiang Tan
c532d7d1ae Internally AR::Base.establish_connection removes the current connection. 2016-02-05 08:51:50 +08:00
Guo Xiang Tan
a08496bb1a Remove Concurrent::TimerTask which spawns a long lasting Thread. 2016-02-05 08:51:50 +08:00
Guo Xiang Tan
0058d09e35 Second attempt which removes any kind proxying. 2016-02-05 08:51:10 +08:00
Guo Xiang Tan
46589a1a0c FEATURE: AR adapter to failover to a replica DB server. 2016-02-05 08:51:10 +08:00
Régis Hanol
d43a693654 Merge pull request #3991 from xfalcox/patch-4
FIX: Local onebox on subfolder installs
2016-02-03 11:23:29 +01:00
Sam Saffron
bc75010b20 FEATURE: suggested messages for messages
FEATURE: clicking envelope takes you to inbox

Suggested messages works somewhat like suggested topics.

- New show up first (in either group inbox or inbox)
- Then unread (in either group inbox or inbox)
- Finally "related" which are messages with same participants as the current pm.
2016-02-03 18:50:05 +11:00
Rafael dos Santos Silva
2b32a5c48e Adds tests to subfolder internal oneboxing
Test if the local onebox engine works fine when using a sulbfolder install
2016-02-02 22:57:54 -02:00
Arpit Jalan
99c4252ba6 FEATURE: Staff should be exempt from user mention limit 2016-02-01 21:19:56 +05:30
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
Sam Saffron
1d27b33100 FIX: DistributedCache would fail serialization in some cases 2016-01-30 09:01:15 +11:00
Guo Xiang Tan
28ac5fb17c FEATURE: DiscourseEvent hook for server side markdown context. 2016-01-29 22:59:15 +08:00
Régis Hanol
378b7f964c Revert "FEATURE (WIP): add max-width and center email notifications" 2016-01-29 11:13:59 +01:00
Arpit Jalan
106e3c897f FIX: TL3 users should not be able to edit title of archived topics 2016-01-29 01:16:41 +05:30
scossar
77167f12ad move styles to Styles 2016-01-27 19:07:21 -08:00
scossar
8d10130c10 test format_notifications 2016-01-27 15:44:49 -08:00
scossar
3f09ec2aca add layout for notifications 2016-01-27 11:27:32 -08:00
Guo Xiang Tan
0916007d01 Fix the build. 2016-01-27 16:04:11 +08:00
Sam
d0ee32f3ce FIX: correct counts on user summary 2016-01-24 16:39:01 +11:00
Neil Lalonde
685ba1eb7f FEATURE: blocked users can send and reply to private messages from staff 2016-01-22 12:54:24 -05:00
Régis Hanol
4a17cdc1e4 FIX: don't invite users with emails configured as 'incoming' (reply, group our category) 2016-01-20 23:08:27 +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
Régis Hanol
c88093eecb Merge pull request #3920 from tgxworld/fix_onebox_emoji
FIX: Emoji in Discourse onebox is wrapped in square brackets.
2016-01-20 15:38:12 +01:00
Régis Hanol
c2c01cdb5d FIX: username suggester to account for the more relaxed username rules (closes #3907) 2016-01-20 15:37:34 +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
Guo Xiang Tan
0812807a53 FIX: Use declared constant. 2016-01-19 10:58:15 +08: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
Guo Xiang Tan
a055c37939 Merge pull request #3956 from tgxworld/fix_clashing_slug
FIX: Clashing category slug.
2016-01-18 10:15:13 +08:00
Guo Xiang Tan
a362ad9407 FIX: Emoji in Discourse onebox is wrapped in square brackets. 2016-01-13 19:00:11 +08:00
Guo Xiang Tan
c60e360c90 FIX: Clashing category slug. 2016-01-13 15:32:29 +08:00
Arpit Jalan
e676974f16 Merge pull request #3953 from techAPJ/wiki
FEATURE: allow users to wikify their own posts based on trust level
2016-01-13 09:53:33 +05:30