Commit graph

1240 commits

Author SHA1 Message Date
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
Arpit Jalan
06bac23e5f FEATURE: allow users to wikify their own posts based on trust level 2016-01-12 08:44:25 +05:30
Sam
4ec409f705 FEATURE: don't add admins to topic allowed users if already in group 2016-01-12 13:57:45 +11:00
Régis Hanol
cf4cb2126a FIX: word_count wasn't working with non-latin sentences 2016-01-11 11:16:23 +01:00
Sam
6fabb341f1 FEATURE: automatically archive welcome messages for site_contact_user
This de-clutters the sent messages box for site_contact_user, making it again usable
2016-01-10 16:46:11 +11:00
Arpit Jalan
97e4f7f6d3 Enums that are used in tables need to be stable 2016-01-08 20:43:11 +05:30
Régis Hanol
dcd0270d52 FIX: don't use the CDN for attachments when login is required 2016-01-06 21:54:01 +01:00
Guo Xiang Tan
556cd1e3f8 FIX: Do not override existing translations. 2015-12-31 23:20:19 +08:00
Robin Ward
f0694d491a Merge pull request #3943 from gdpelican/plus-one-via-email
Allow +1 via email
2015-12-30 15:55:55 -05:00
James Kiesel
b94c53c71c cleanup post action creator 2015-12-30 20:54:51 +01:00
James Kiesel
6ceb108946 Add specs for post action guardian 2015-12-30 20:52:36 +01:00
Robin Ward
74780c1688 Add more server side unicode replacements for emoji 2015-12-30 14:46:52 -05:00
James Kiesel
86da47880a Allow +1 via email 2015-12-30 12:17:45 +01:00
Robin Ward
c064dc1322 FEATURE: Perform a server side replacement of unicode emoji 2015-12-29 16:28:27 -05:00
Guo Xiang Tan
e89f29cca7 FIX: Pluralization error when overriding translations. 2015-12-29 10:31:23 +08:00
Arpit Jalan
3a28bafc0f FEATURE: onebox internal audio or video files 2015-12-25 01:52:14 +05:30
Robin Ward
d1ebb9d0b5 FIX: I18n Fallbacks were not applying correctly 2015-12-23 12:09:18 -05:00
Sam
03ea0bfe22 FEATURE: allow users to archive messages
Messages are now in 3 buckets

- Inbox for all new messages
- Sent for all sent messages
- Archive for all messages you are done with

You can select messages from your Inbox or Sent and move them to your Archive,
you can move messages out of your Archive similarly

Similar concept applied to group messages, except that archiving and unarchiving
will apply to all group members
2015-12-23 11:09:30 +11:00
Jeff Atwood
e03861da7e change all emoji image tests to use ?v=1 2015-12-22 14:36:21 -08:00
Régis Hanol
3e923c7a41 FIX: ensure inactive users can't email in 2015-12-21 17:54:02 +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
Sam Saffron
f97a754b30 Revert "Try adding an ALT tag for avatars" 2015-12-15 19:57:54 +11:00
Sam Saffron
b7f6df7d0c fix specs and tests 2015-12-15 18:18:20 +11:00
Arpit Jalan
e65a7370ef FIX: disable avatar education message when 'allow_uploaded_avatars' is
disabled
FEATURE: setting to disable avatar education message
2015-12-14 22:47:35 +05:30
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
Arpit Jalan
1f003e3472 fix inline reply test case 2015-12-11 14:48:42 +05:30
Régis Hanol
323e3cee22 when creating a staged account, use the display name provided in the email 2015-12-10 23:52:20 +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
Régis Hanol
1cde276656 FEATURE: ability to send emails to a group 2015-12-07 17:01:08 +01:00
Sam
9899e8d4a5 FEATURE: First class messages to groups, you can select a group as a target of a message 2015-12-02 15:49:43 +11: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
Régis Hanol
5b9594277a skip most post validations for staged accounts 2015-12-01 10:40:23 +01:00
Régis Hanol
7c694139ec trust staged accounts when validating posts 2015-11-30 19:08:35 +01:00
Régis Hanol
540933dce3 don't notify users about sequential replies in messages 2015-11-27 19:29:44 +01:00
Robin Ward
5e93140f85 FEATURE: Can override any translation via an admin interface 2015-11-27 11:35:19 -05:00
Sam
f74a6457ee FEATURE: allow CJK to be tokenized in non CJK sites.
Meaning a mixed English/Chinese site can still have a functioning search.
2015-11-27 16:35:27 +11:00
Régis Hanol
0d54c18c8b new hidden 'allow_staged_accounts' setting 2015-11-26 18:31:23 +01:00
Neil Lalonde
f4d44187c8 FIX: site_contact_user should default to system user, not first admin user 2015-11-24 14:37:41 -05:00
Robin Ward
d65ec1af2e Rename ninja_edit_window to editing_grace_period :'( 2015-11-24 14:28:42 -05:00
Robin Ward
1506eba28d Support for overriding client side translation keys 2015-11-20 17:14:01 -05:00
Robin Ward
e168c5fde3 PERF: Much more performant, multisite aware I18n overrides 2015-11-19 16:36:59 -05:00
Régis Hanol
31a54377be staged users automatically watches all topics they participates in 2015-11-18 22:24:46 +01:00
Robin Ward
2196160549 FIX: Allow emails to begin with a quote (but skip it!) 2015-11-18 15:23:10 -05:00
Régis Hanol
8ba5397f0d can't find staged users with search 2015-11-18 21:06:59 +01:00
Jeff Wong
cf86f27415 FEATURE: New setting to allow all caps posts
Adds a setting to ignore text_sentinel's check on all caps content.
2015-11-18 09:50:50 -08:00
Robin Ward
060ce9bf2a FEATURE: Overwrite server side I18n keys with API 2015-11-13 16:35:02 -05:00
Robin Ward
3720783c1b Refactor to our own Discourse I18n backend
This removes some monkey patches and makes testing easier.
It will also support database backed I18n changes.
2015-11-13 16:35:02 -05:00
Sam Saffron
6dd4bc7d57 FEATURE: support group owner, capable of controlling group membership
Group owners are regular users that can add or remove users to a group
The Admin UX allows admins to appoint group owners
The public group UX will display group owners first and unlock UI to
add and remove members

Group owners can only be appointed on non automatic groups
Group owners may not appoint another group owner
2015-11-10 00:56:57 +11:00
Sam
48ef609003 correct implementation add tests 2015-11-02 15:05:08 +11:00
Arpit Jalan
9f8d6b6088 FIX: allow exisiting users to be invited to topic/message when enable_local_logins is disabled 2015-10-30 11:28:05 +05:30
Régis Hanol
bb79e6aff7 FEATURE: new hide_user_profiles_from_public site setting 2015-10-28 19:56:08 +01:00
Robin Ward
6b236d3c83 FEATURE: Bulk Unlisting of topics 2015-10-27 16:57:40 -04:00
Arpit Jalan
897563a309 FIX: List-ID should not contain space 2015-10-21 00:00:06 +05:30
Arpit Jalan
59a011e6a9 FIX: min_trust_to_create_topic affects private messages 2015-10-17 15:30:18 +05:30
Robin Ward
f155ff8270 FIX: Tests would fail if your test db's optimized image ids were high 2015-10-16 17:08:41 -04:00
Sam
e29fe77b45 FEATURE: make trust level for message sending configurable
- add min_trust_to_send_messages site setting (default 1) to allow admins
 to configure when messages can be sent between members
2015-10-12 11:15:48 +11:00
Régis Hanol
54d6d24cbf FIX: timing issue with edits and cook post processing 2015-09-29 18:51:26 +02:00
Robin Ward
c4b1b848bc More extension points for login buttons, used by OAuth2 plugin 2015-09-25 11:29:40 -04:00
Robin Ward
64598ceaba FIX: Replies to whispers *must* be whispers 2015-09-25 11:29:40 -04:00
Sam
fc2d61136d FEATURE: add context for cross topic links 2015-09-25 14:52:43 +10:00
Sam
150ad01111 improve UX remove username said if we have a title 2015-09-25 14:18:38 +10:00
Sam
e5234b38b8 FEATURE: add title expansion for off topic quotes 2015-09-25 13:35:14 +10:00
Sam
ffb8cb8cac FEATURE: remove dependency of Redcarpet
PERF: cache fancy_title in topics table

New pure ruby implementation is far more flexible and easier to amend.
2015-09-24 13:37:53 +10:00
Robin Ward
79beb9f409 FIX: You could set reply_to_post_number when replying as a new topic 2015-09-22 13:32:19 -04:00
Robin Ward
c1a9e32b48 FIX: When recovering a post, it should recreate user actions 2015-09-18 12:48:43 -04:00
Sam
a7b34cd16b rename to badge, better more consistent name 2015-09-16 08:51:28 +10:00
Sam
6496895096 FEATURE: search for all posts by a group 2015-09-15 17:39:14 +10:00
Sam
17d999ab12 FEATURE: search for all posts of users that have a badge
with_badge:"badge name" will allow you to search only
posts of users with a particular badge
2015-09-15 17:22:08 +10:00
Sam
83efde79f0 specs to account for new default letter avatar location 2015-09-15 13:25:15 +10:00
Kane York
b6febb0638 fix the build (460243d7) 2015-09-11 11:37:36 -07:00
Robin Ward
5af0f5f80e FEATURE: Whisper posts 2015-09-11 14:05:21 -04:00
Arpit Jalan
d73d4d4769 FIX: UserNameSuggester should not suggest usernames with a sequence of 2 or more special chars 2015-09-11 16:53:26 +05:30
Régis Hanol
3ee5cea9e2 fix the build 2015-09-09 15:34:53 +02:00
Régis Hanol
31e8309f05 FIX: ensure we never have a string when an enum is Fixnum - Take 2 2015-09-09 14:34:44 +02:00
Régis Hanol
9a999bfe84 FIX: ensure we never have a string when an enum is Fixnum 2015-09-09 12:59:49 +02:00
Régis Hanol
e3a80936c8 prefer empty href attribute to # 2015-09-08 18:27:20 +02:00
Guo Xiang Tan
cbb86f9bf6 FEATURE: Add a trigger for plugins to include their own jobs. 2015-09-04 22:59:39 +08:00
kerryliu
c85835afc3 FIX: rescale image during cooked_post_processor when only img height or width is specified 2015-08-29 15:23:25 -07:00
Robin Ward
f9717da28f Merge pull request #3695 from riking/patch-10
FIX: Consider reserved usernames as not 'available'
2015-08-26 10:51:50 -04:00
Sam
1c6250bff8 FIX: if an enum is Fixnum do not allow strings to live in it 2015-08-26 16:39:09 +10:00
Kane York
1586886bf9 FIX: Consider reserved usernames as not 'available'
https://meta.discourse.org/t/reserved-usernames-ignored-by-invites/32490
2015-08-25 17:24:07 -07:00
Régis Hanol
bef80633b1 FEATURE: global admin override of most of the user preferences 2015-08-21 20:39:21 +02:00
Sam
714f841f0a FIX: null bytes in user input should not cause post creation to fail 2015-08-19 12:15:38 +10:00
Sam
b38a1309f7 FIX: add more quoting to avoid invalid terms 2015-08-19 09:27:47 +10:00
Sam
27b1ec2917 FIX: incorrect emoji stripping logic 2015-08-19 09:12:08 +10:00
Sam
ad2de1804e Correct bad where clause when no category/user found 2015-08-14 11:53:16 +10:00
Sam
0ceca601d8 improve spec 2015-08-13 17:57:02 +10:00
Sam
ecac786f86 FIX: remove invalid chars from ts_query helper 2015-08-13 17:55:10 +10:00
Régis Hanol
6669a2d94d FEATURE: per-topic unsubscribe option in emails 2015-08-12 23:00:16 +02:00
Sam
56f12cd9f1 missing specs for 2 new events 2015-08-11 16:01:28 +10:00
Sam
139314c213 FIX: search for 1.5 etc was broken
FEATURE: search by exact phrase

Use PG tokenizer to split up search phrase instead of relying on Ruby code
This produces much more accurate tokenization
2015-08-10 17:41:14 +10:00
Sam
e26688c112 one more test 2015-08-06 10:38:30 +10:00
Sam
11d39345b3 FIX: always allow tl1 through for typing speed tests 2015-08-06 10:07:18 +10:00
Régis Hanol
82d743a052 FIX: don't use emojis as topic image 2015-08-05 12:57:31 +02:00
Sam
a51386a280 FEATURE: allow efficient preloading of custom fields in topic list 2015-08-05 16:09:21 +10:00