Commit graph

1049 commits

Author SHA1 Message Date
Sam
93ab03966e FIX: no-follow not handled correctly for sub domains
if a.com was whitelisted aa.com would pass through
2015-05-27 14:31:01 +10:00
Sam
693b5234da FIX: nil emails are invalid 2015-05-27 14:12:10 +10:00
Sam
e17f614771 FIX: fallback to local store when uploads are not on S3 2015-05-26 13:08:31 +10:00
Sam
90eaad336d FEATURE: allow users to pick a CDN for s3 assets 2015-05-26 11:13:12 +10:00
Régis Hanol
bb0c2813ac FEATURE: generate (avatar) thumbnails in a background task
FIX: keep the "uploading..." indicator until the server replies via the MessageBus
FIX: text was disapearing when uploading an avatar

PERF: always use a region for S3 (defaults to 'us-east-1')
FEATURE: ApplyCDN middleware when using S3
FIX: use the same pattern to store files on S3 and locally
PERF: keep a local cache of uploads when generating thumbnails
FEATURE: migrate_to_s3 rake task
2015-05-25 17:59:00 +02:00
Sam
675e2c6e13 remove invalid test since fog is gone 2015-05-25 18:08:59 +10:00
Régis Hanol
bcd98c8f0f FIX: API can provide a URL to create an upload 2015-05-20 17:38:06 +02:00
Robin Ward
4ab9ef3497 FIX: Allow long words if they contain periods 2015-05-19 13:10:25 -04:00
Régis Hanol
9ded21e4c6 FIX: consistent and future-proof upload storage pattern 2015-05-19 12:31:12 +02:00
Sam
dd91d5b02f FEATURE: disable invites by setting max_invites_per_day to 0 2015-05-19 16:51:21 +10:00
Robin Ward
5fdbc6c4b2 FIX: Replies to PMs should never been enqueued 2015-05-13 12:08:53 -04:00
Neil Lalonde
406c8bb340 PERF: don't recompile css files that have already been compiled 2015-05-12 16:12:49 -04:00
Erick Guan
a48dd1cc28 store the slug as the title is, only sanitize the slug
and prettify code
2015-05-05 18:33:16 +08:00
Erick Guan
b772ff6e13 FEATURE: add slug geneartion options 2015-05-05 18:08:30 +08:00
Robin Ward
7e3eaf5b02 FIX: Never enqueue private messages 2015-05-04 11:07:46 -04:00
Sam
803feefd54 MessageBus handles readonly redis now, no need to wrap it 2015-05-04 12:21:00 +10:00
Robin Ward
f9069c350f FIX: Permission issues when editing topics
If a user can't create a topic in a category, they should'be be
able to edit topics.
2015-04-30 17:08:12 -04:00
Robin Ward
16408cee06 Allow Postgres to trigger readonly mode for the site. 2015-04-29 11:49:58 -04:00
Robin Ward
cf0c2d09d4 Handlers can be added with a priority 2015-04-28 15:06:47 -04:00
Sam
6a338afbdd Merge pull request #3403 from zzakcanncode/rspec_up
Rspec 3
2015-04-28 07:50:30 +10:00
Robin Ward
de42c627c5 Allow plugins to specify a minimum requires version 2015-04-27 13:07:12 -04:00
Arthur Neves
e0ea68b9ca
Fix tests on site_setting for new rspec 2015-04-25 11:33:26 -04:00
Arthur Neves
b8cbe51026
Convert specs to RSpec 2.99.2 syntax with Transpec
This conversion is done by Transpec 3.1.0 with the following command:
    transpec

* 424 conversions
    from: obj.should
      to: expect(obj).to

* 325 conversions
    from: == expected
      to: eq(expected)

* 38 conversions
    from: obj.should_not
      to: expect(obj).not_to

* 15 conversions
    from: =~ /pattern/
      to: match(/pattern/)

* 9 conversions
    from: it { should ... }
      to: it { is_expected.to ... }

* 5 conversions
    from: lambda { }.should_not
      to: expect { }.not_to

* 4 conversions
    from: lambda { }.should
      to: expect { }.to

* 2 conversions
    from: -> { }.should
      to: expect { }.to

* 2 conversions
    from: -> { }.should_not
      to: expect { }.not_to

* 1 conversion
    from: === expected
      to: be === expected

* 1 conversion
    from: =~ [1, 2]
      to: match_array([1, 2])

For more details: https://github.com/yujinakayama/transpec#supported-conversions
2015-04-25 11:18:35 -04:00
Robin Ward
15dbce5886 Show pending posts count in modal when your posts are enqueued 2015-04-24 15:44:59 -04:00
Robin Ward
3660fe4f60 FIX: When approving/rejecting a post it should delete the user action 2015-04-24 15:25:47 -04:00
Robin Ward
3a6efa25f0 Allow ReadOnly to propogate up to the Ember app via Response Header 2015-04-24 14:37:16 -04:00
Robin Ward
5b3f99aa50 Don't blow up if Redis switches to READONLY 2015-04-24 14:37:16 -04:00
Sam Saffron
923c164d54 workaround: pg app installs a poorly encoded db, so skip CI will catch 2015-04-24 07:23:02 +10:00
Régis Hanol
a737090442 - FEATURE: revamped poll plugin
- add User.staff scope
- inject MessageBus into Ember views (so it can be used by the poll plugin)
- REFACTOR: use more accurate is_first_post? method instead of post_number == 1
- FEATURE: add support for JSON-typed custom fields
- FEATURE: allow plugins to add validation
- FEATURE: add post_custom_fields to PostSerializer
- FEATURE: allow plugins to whitelist post_custom_fields
- FIX: don't bump when post did not save successfully
- FEATURE: polls are supported in any post
- FEATURE: allow for multiple polls in the same post
- FEATURE: multiple choice polls
- FEATURE: rating polls
- FEATURE: new dialect allowing users to preview polls in the composer
2015-04-23 19:33:29 +02:00
Arpit Jalan
2ee033caa5 FIX: validate integer site setting 2015-04-23 18:15:14 +05:30
Robin Ward
5bf8c31af4 Users can see their pending posts 2015-04-21 16:44:47 -04:00
Robin Ward
26693c16ac Don't show the link to "Needs Approval" unless approval is enabled.
Note that any plugin that extends the NewPostMananger to support
enqueuing will enable it.
2015-04-21 13:59:57 -04:00
Robin Ward
2cdd967188 Adds support for invisible approval queues, which we'll need for Akismet 2015-04-20 17:19:05 -04:00
Robin Ward
5990ab855b PERF: Move post alerting into async 2015-04-20 13:34:57 -04:00
Robin Ward
af1571a58f Site Settings for post approval 2015-04-15 14:54:37 -04:00
Robin Ward
96d2c5069b Interface for reviewing queued posts 2015-04-15 14:54:37 -04:00
Robin Ward
f1ede42569 Add the posts that need to be reviewed to the hamburger 2015-04-15 14:54:37 -04:00
Robin Ward
19a9a8b408 NewPostManager determines whether to queue a post or not 2015-04-15 14:54:36 -04:00
Robin Ward
a5ee45ccbe PostEnqueuer object to handle validation of enqueued posts 2015-04-15 14:54:36 -04:00
Robin Ward
869d8e25ad Promotion fails if the user account isn't old enough yet. 2015-04-14 12:14:59 -04:00
Ben Hadley-Evans
c3b461f58d Add blank alt attribute to avatars.
This was giving an ugly border to avatars in the user card as the full size version loaded in Firefox.
2015-04-14 14:39:40 +01: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
Sam
5d31290dbc FIX: cleanup old letter avatars if needed
FEATURE: use image magick version as a key for letter avatars
2015-04-07 13:03:43 +10: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
Neil Lalonde
30b063c08b FEATURE: make full names a required field of user profiles with the full_name_required setting 2015-04-02 17:08:04 -04:00
Sam
58c95f64d2 FIX: stop stripping zero-width-whitespace
This char is used for formatting khmer words
2015-03-27 13:03:24 +11:00
Robin Ward
ff3e1e1dd7 FIX: User's topic lists weren't consistent WRT visibility 2015-03-23 18:13:06 -04:00
Sam
1601211617 Revert "FEATURE: allow end users to opt out of getting any private messages"
This reverts commit 229ecc4f8a.
2015-03-23 17:21:58 +11:00
Sam
229ecc4f8a FEATURE: allow end users to opt out of getting any private messages 2015-03-23 15:50:45 +11:00
Sam
4720d0c12b Merge pull request #3277 from techAPJ/patch-1
FIX: return proper error message when replying to a closed or deleted topic
2015-03-17 07:38:00 +11:00
Régis Hanol
5d74cadf2f FIX: picture would be hidden when [details] block was closed in the composer 2015-03-16 18:57:15 +01:00
Arpit Jalan
484ae8b6b7 FIX: return proper error message when replying to a closed or deleted topic 2015-03-16 16:43:22 +05:30
Régis Hanol
3a40875e0b Merge pull request #3247 from jmay/group-manager-invites
group manager can issue invitations from restricted topics
2015-03-16 09:53:04 +01:00
Sam
a82530012a FEATURE: Allow selection of highlight js languages
PERF: stop loading highlight js on load

To get latest highlight js run bin/rake highlightjs:update
2015-03-13 16:18:59 +11:00
Sam
12d59d13a7 stop randomly failing here 2015-03-12 13:44:13 +11:00
Neil Lalonde
608647d02f FEATURE: Anonymize User. A way to remove a user but keep their topics and posts. 2015-03-10 11:59:08 -04:00
Sam
a26853c1a4 try to work around caching bug in spec 2015-03-05 17:47:34 +11:00
Jason W. May
0f36774246 group manager can invite members into the group from any restricted topic 2015-03-03 12:18:42 -08:00
Sam
f432b9f5b7 correct spec failure, only test code was affected 2015-03-03 10:21:01 +11:00
Sam
474c947427 temporarily disable test while debugging 2015-03-03 09:51:10 +11:00
Sam
336c15672a clear cache to fix spec 2015-03-03 08:27:27 +11:00
Neil Lalonde
c04b214910 FEATURE: don't allow username and email to be the same 2015-02-27 13:47:43 -05:00
Sam
0742f340f9 FEATURE: allow for a localized error when a regex fails in site settings
FEATURE: apply string validation to list site settings (so we get regex)
2015-02-27 11:45:56 +11:00
Sam
ea40dd08e6 correct tests 2015-02-27 09:41:08 +11:00
Régis Hanol
7d8dd9d93b fix some rspec deprecations 2015-02-26 13:05:20 +01:00
Sam
cbe18eb0df FEATURE: allow view exclusion using custom header
Set Discourse-Track-View to either "0" or "false" to exclude request
2015-02-26 11:41:11 +11:00
Régis Hanol
1a070b16e4 FIX: use the 'post edit time limit' for topics too 2015-02-25 20:53:21 +01:00
Neil Lalonde
cf81b3f86d FEATURE: don't allow username and password to be the same 2015-02-25 12:00:13 -05:00
Sam
9ca61efa97 correct test 2015-02-25 18:09:45 +11:00
Sam
7b6e85cb6c remove unused api call
correct spec
2015-02-25 14:39:50 +11: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
Sam
103d42a9d9 FIX: emoji cache could get corrupt
FEATURE: enforce 1 day expiry by default on discourse cache

remove family expiry concept as the implementation was fragile
2015-02-19 16:58:22 +11:00
Sam
451788b95d FIX: allow searching in PMs when "search this topic" is selected 2015-02-19 12:56:49 +11:00
Arpit Jalan
f3daae6dec Improve auto generated email reply error message 2015-02-18 18:58:51 +05:30
Sam
cdef67667a PERF: allow background jobs to flush between requests in same thread 2015-02-17 09:58:43 +11:00
Régis Hanol
3cad4824d7 FEATURE: allow moderators to see flagged private messages 2015-02-16 13:03:04 +01:00
Robin Ward
e207ca36ee Easier helper for filtering secured categories 2015-02-12 11:52:59 -05:00
Sam
acda6ebd60 FIX: view tracking needs to release data earlier
retaining data during queuing was causing huge memory spikes
2015-02-10 17:03:33 +11:00
riking
5657006aca Rename handle_exception to handle_job_exception 2015-02-09 12:47:46 -08:00
Robin Ward
7dea65122e Support a url field in plugin metadata 2015-02-06 18:08:57 -05:00
Régis Hanol
f7d2fc0524 FEATURE: 'reply by email address' validator
Prevent infinite email loophole when the 'reply_by_email_address' site setting is the same as the 'notification_email'.
2015-02-06 12:08:37 +01:00
Sam
820ce8765e refactor traffic report
split traffic report in 2, page view vs raw traffic
hide raw traffic report by default
improve flushing logic for application reqs
2015-02-06 14:39:16 +11:00
Sam
08b790b3c2 improve metrics gathered using in our traffic section
this also pulls out the middleware into its own home and inserts in front
2015-02-05 16:08:52 +11:00
Robin Ward
3b68214210 FIX: Clean up after adding events. Fixes random test failures. 2015-02-04 17:33:18 -05:00
Robin Ward
25daca8f23 Helpers for plugins to support enabling/disabling 2015-02-04 16:23:56 -05:00
Sam
a4b96adfc5 eliminate cross talk in site setting test 2015-02-04 16:57:16 +11:00
Sam
c150c55e2d FEATURE: rudimentary view tracking wired in 2015-02-04 16:15:16 +11:00
Robin Ward
aacf2e6f20 Can add shadowed_by_global to a site setting to override
If a site setting has `shadowed_by_global: true` then, if
a `GlobalSetting` exists with the same name then that value
will be used instead.  Additionally, the setting will be hidden.

This is useful in a multisite environment for private settings
such as API keys. You want to set it globally, yet not display
the key to customers.
2015-02-03 16:49:22 -05:00
Robin Ward
f15b0d205f FIX: The "too similar" check happened when trying to make a post a wiki 2015-02-02 12:44:56 -05:00
Régis Hanol
6a68e8c272 FIX: use CDN for user card/profile background and user avatars (for real this time) 2015-01-29 22:53:48 +01:00
Arpit Jalan
e97755ab5d FIX: remove custom Discourse headers in email 2015-01-29 17:25:50 +05:30
Robin Ward
d43944b3ed Extensibility for tracking changes to a topic 2015-01-28 13:37:06 -05:00
Arpit Jalan
b0369061e2 FIX: always set a default Message ID in email 2015-01-28 14:49:38 +05:30
Neil Lalonde
4a11bb5227 FIX: on topic page, don't try to render post counts for a deleted user 2015-01-15 15:39:34 -05:00
Robin Ward
505fa9f1cf FIX: 🐛 Saving the same custom field array twice would raise an error 2015-01-15 15:31:50 -05:00
Régis Hanol
b4e5937850 FIX: 🐛 ensure emoji are case insensitive 2015-01-15 19:00:55 +01:00
Luciano Sousa
0fd98b56d8 few components with rspec3 syntax 2015-01-09 13:34:37 -03:00
Régis Hanol
6cec925f26 FIX: all PMs should be flaggable 2015-01-08 16:06:43 +01:00
Robin Ward
114cc1c851 FIX: We missed some references to /category/xyz in the ruby code base. 2015-01-07 11:47:01 -05:00
Sam
ea87f5fd8a FEATURE: support for filter=bookmarked and filter=liked in topic list 2015-01-07 18:20:10 +11:00
Sam
efc717c14a FEATURE: remove star concept from Discourse 2015-01-07 13:43:27 +11:00
Robin Ward
6f72f265cb A trigger when a topic is updated, adds a couple of custom field tests 2015-01-02 15:57:08 -05:00
Régis Hanol
c57a1b393f clean up 'checked_for_custom_avatars' user history entries 2015-01-02 12:37:17 +01:00
Sam
e23e008682 FIX: buggy unhoisting of escaped \* 2014-12-23 18:25:10 +11:00
Régis Hanol
45dbdb6896 FEATURE: custom emojis 2014-12-23 01:12:26 +01:00
Neil Lalonde
3cb25b019e FIX: when private messages are disabled in settings, flag modal shouldn't show private message options 2014-12-19 16:47:39 -05:00
Sam
ae16186100 FEATURE: post chunk size should not be configurable
If people need to configure post chunk size use a plugin
Core only supports out of the box settings, if changed can lead to
severe performance issues.
2014-12-15 10:57:34 +11:00
Robin Ward
2d6b15a34d Load fewer posts when the android platform is detected 2014-12-12 11:47:39 -05:00
Régis Hanol
6027073547 FIX: properly unescape HTML entities in excerpts 2014-12-10 12:52:51 +01:00
Robin Ward
663cd93c6d Move register_asset into PluginRegistry -- the logic works better
there.
2014-12-09 14:20:53 -05:00
Régis Hanol
929ff00741 FIX: use excerpt instead of the summary 2014-12-06 18:48:39 +01:00
Arpit Jalan
d28515792a FIX: auto response email replies should not be accepted 2014-12-04 22:39:13 +05:30
Sam
4aa0d88c6c FEATURE: search private messages option 2014-12-04 13:50:36 +11:00
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
Arpit Jalan
20044da474 FIX: cleanup commas in email From and Reply-to fields 2014-11-24 19:55:20 +05:30
Sam
4d936325e7 test forwarding works as expected 2014-11-24 17:16:11 +11:00
Régis Hanol
ced35cb3bb FEATURE: don't limit registration from an IP address if a staff member has that IP address 2014-11-21 00:25:44 +01:00
Régis Hanol
82a6e3aedc Merge pull request #2988 from cpradio/pr-add-deleted-querystring-rebase
FEATURE: Add ?status=deleted querystring
2014-11-20 16:39:36 +01:00
cpradio
0d6e5470d4 FEATURE: Add ?status=deleted querystring
Add tests around the ?status=deleted querystring
2014-11-20 10:32:33 -05:00
Sam
a9cda0f947 FEATURE: allow restricting API keys to a particular range 2014-11-20 15:21:49 +11:00
Régis Hanol
c5f9dd4ef3 FEATURE: only limit new registrations from that IP if all the users from that IP are TL1 or TL0 2014-11-17 15:02:10 +01:00
Régis Hanol
7641d88224 FEATURE: new 'maximum new user accounts per registration IP' site setting 2014-11-17 12:04:29 +01:00
Sam
6125b675b6 remove broken spec 2014-11-14 18:03:01 +11:00
Sam
a2ee213100 correct spec 2014-11-13 20:25:49 +11:00
Sam
564fb0b100 FIX: distributed cache leak and potential infinite loop 2014-11-13 18:31:42 +11:00
Sam
5fd0841563 correct broken spec 2014-11-12 10:27:34 +11:00
Sam
c55fa9d5c8 PERF: distributed cache class to help sync caches between processes 2014-11-12 09:44:44 +11:00
Sam
a2ba9a735e Merge pull request #2943 from fantasticfears/slug
Add stringex for Chinese slug generation
2014-11-12 08:57:59 +11:00
Erick Guan
667758ff40 Add stringex for Chinese slug generation 2014-11-11 21:12:07 +08:00
Godfrey Chan
b1a0cd417d Avoid a deprecation warning by poly-filling #deliver_now and #deliver_now 2014-11-10 01:05:46 -08:00
David McClure
efc4109902 update specs to remove deprecation warnings 2014-11-07 06:05:44 -08:00
Régis Hanol
a5616146eb FIX: remove meta data from lightbox in both excerpt (html & text) 2014-11-05 20:37:00 +01:00
Régis Hanol
862c8a19a3 FEATURE: use img's title attribute in overlay information when provided 2014-11-03 22:03:06 +01:00
Sam
2251877332 FIX: "Dismiss Posts" corrupting read state
REFACTOR: seen_post_count was a bad name, renamed to highest_seen_post_number
2014-10-31 09:40:35 +11:00
Régis Hanol
6e053942a4 FIX: moderators should be able to search users by email 2014-10-29 22:08:41 +01:00
Régis Hanol
ada750b384 fixed some more deprecations. 20 to go 2014-10-29 16:06:50 +01:00
Sam
3a11e5b52e Merge pull request #2921 from techAPJ/patch-1
FIX: email replies should not be accepted for deleted topics
2014-10-28 14:11:33 +11:00
Régis Hanol
e7f251c105 LOTS of changes to properly handle post/topic revisions
FIX: history revision can now properly be hidden
FIX: PostRevision serializer is now entirely dynamic to properly handle
hidden revisions
FIX: default history modal to "side by side" view on mobile
FIX: properly hiden which revision has been hidden
UX: inline category/user/wiki/post_type changes with the revision
details
FEATURE: new '/posts/:post_id/revisions/latest' endpoint to retrieve
latest revision
UX: do not show the hide/show revision button on mobile (no room for
them)
UX: remove CSS transitions on the buttons in the history modal
FIX: PostRevisor now handles all the changes that might create new
revisions
FIX: PostRevision.ensure_consistency! was wrong due to off by 1
mistake...
refactored topic's callbacks for better readability
extracted 'PostRevisionGuardian'
2014-10-27 22:06:43 +01:00
Arpit Jalan
370f50250b FIX: attachment links in mail lacks protocol 2014-10-28 00:08:51 +05:30
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
cpradio
38d901ac91 FIX: Do not show unconfirmed users in search results 2014-10-24 19:20:41 -04:00
Arpit Jalan
a826840540 Moderators can search users by ip address 2014-10-23 23:30:11 +05:30
Arpit Jalan
1035df46bf FEATURE: search by ip address on admin user list page 2014-10-23 08:02:02 +05:30
Robin Ward
4eb1288dba FIX: Broken spec from @coding-horror 2014-10-20 17:13:45 -04:00
Jeff Atwood
92b615b503 reorganize site settings a bit 2014-10-19 23:14:50 -07:00
Sam
e6cc4cba8b FEATURE: in:tracking and in:watching search filters 2014-10-18 15:34:05 +11:00
Sam
8afd7a7f21 FEATURE: in:likes and in:posted search filters 2014-10-18 15:19:08 +11:00
Sam
cbc132eca9 FEATURE: added status:noreplies and status:archived to advanced search 2014-10-18 14:54:11 +11:00