Commit graph

1217 commits

Author SHA1 Message Date
Nick Borromeo
b51bebb200 Extract queries to keep logic in the Categories Model
This creates two methods in the Category model. This moves the model
logic to the model and just calls the Category class methods in
ListController.

This also adds tests for the two methods created in the Category
model. The motivation for this refactor is the code climate score of the
this class and readability of the code.

 Please enter the commit message for your changes. Lines starting
2014-02-08 14:10:48 -08:00
Sam
90ae4c6224 Try to fix random failing spec 2014-02-09 07:55:11 +11:00
Neil Lalonde
5f992ae34c Merge pull request #1913 from davidcelis/default-category-fields
Default values for posts/topics fields on Category
2014-02-07 11:27:57 -05:00
Robin Ward
2490837929 Added some specs for the group controller methods 2014-02-07 11:07:23 -05:00
Régis Hanol
cef2d8dc82 BUGFIX: make sure moderators can't view topics they aren't allowed to 2014-02-07 07:08:56 -08:00
Régis Hanol
e47f462f54 Merge pull request #1916 from vikhyat/pm-dominating
Don't notify about dominating private messages
2014-02-07 00:28:27 -08:00
Sam
585fae0541 another try fixing this test 2014-02-07 14:38:00 +11:00
Sam
93434be16d SECURITY: reduce moderator rights
You can now hide particular categories from certain moderators
2014-02-07 14:11:52 +11:00
Vikhyat Korrapati
2f38316bfc Don't notify about dominating private messages. 2014-02-07 05:49:45 +05:30
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
David Celis
e751b8d58f Default values for posts/topics fields on Category
When creating categories (or, at least, subcategories), certain integer
values are set to a default of NULL: topics_week, topics_month,
topics_year, posts_week, posts_month, and posts_year. This causes
consistent exceptions when trying to visit `/categories`, with the
offending line being in
`CategoryDetailedSerializer#count_with_subcategories`. This attempts to
coerce nil into Fixnum.

A fix could be to convert to 0 in the code, but these attributes should
really never be NULL. If there are no posts or topics, they should be 0
to maintain data integrity.

Signed-off-by: David Celis <me@davidcel.is>
2014-02-06 12:04:03 -08: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
Robin Ward
aff16f372b FIX: Show a nicer error when a user tries to access a category they
can't see.
2014-02-05 15:33:52 -05:00
Robin Ward
1dac3cfd64 API endpoint for retrieving the current user 2014-02-05 13:46:24 -05:00
Vikhyat Korrapati
6acc5c19e7 Use LOAD_PLUGINS=1 instead of LOAD_PLUGINS=true for consistency. 2014-02-05 10:50:28 +05:30
Vikhyat Korrapati
7b46cc0962 Don't clear DiscoursePluginRegistry if LOAD_PLUGINS=true. 2014-02-05 08:05:35 +05:30
Robin Ward
659546c4e4 CHANGE: Hide category definition topics unless you are viewing that
category.
2014-02-04 15:55:30 -05:00
Régis Hanol
4fb274fb9d BUGFIX: history link doesn't work on deleted posts 2014-02-04 20:05:50 +01:00
Neil Lalonde
9601684405 Suggested topics includes closed and archived in new and unread, but not in random results 2014-02-04 12:26:49 -05:00
Sam
6c3c9345df use consistent style 2014-02-04 12:57:52 +11:00
Sam
5267e5bea6 BUGFIX: emails sent from "2 replies" as opposed to correct user 2014-02-04 12:56:28 +11:00
Régis Hanol
d2974c2a15 BUGFIX: proper handling of top_menu_items 2014-02-03 16:08:00 +01:00
Sam
d0a6dd88df FEATURE: exclude muted categories from the latest and new tabs 2014-02-03 16:05:49 +11:00
Sam
6205240a56 minor style fix 2014-02-03 14:50:19 +11:00
Régis Hanol
ae401f0dc7 BUGFIX: JSON requests don't exclude categories from filters 2014-01-31 14:36:00 +01:00
Sam
51c06dea03 BUGFIX: hidden posts not absent from context 2014-01-31 16:37:40 +11:00
Robin Ward
6f23870327 Bulk close operation 2014-01-30 12:44:40 -05:00
Robin Ward
7564d9a20c Server side implementation for bulk editing categories 2014-01-30 11:44:29 -05:00
Robin Ward
b315a5c28f Delegate bulk operations to a TopicsBulkAction object. 2014-01-30 11:44:29 -05:00
Sam
ed45a1dce3 FEATURE: new scheduler so we can deprecate sidetiq
This is a work in progress, should have it finished tomorrow.
2014-01-30 16:21:38 +11:00
Neil Lalonde
d343e9f360 Add DiscourseLocalOnebox 2014-01-29 14:14:07 -05:00
Robin Ward
e453bfa073 Work in progress: Swap out onebox code for onebox gem 2014-01-29 14:14:07 -05:00
Robin Ward
2892153712 REMOVE: Get rid of the hotness control for good. 2014-01-29 11:54:34 -05: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
Neil Lalonde
74f1c553e3 FIX: 1868 Security: Dangerous Send 2014-01-27 13:05:51 -05:00
Neil Lalonde
7cc5da08fe Track how many posts a user reads each day in user_visits 2014-01-27 11:20:19 -05:00
slainer68
748e1e0748 Allow using the API when Login required site setting is on. 2014-01-24 14:02:49 +01:00
Régis Hanol
245bc19379 BUGFIX: PMs could be created with a category
BUGFIX: hide category column when displaying the list of private messages
2014-01-24 12:57:48 +01:00
Régis Hanol
bfc9664231 BUGFIX: site_contact_username was case-sensitive 2014-01-23 11:26:31 +01:00
Sam
7e5a17f277 FEATURE: mute/watch/track buttons for private conversations 2014-01-22 17:46:52 +11:00
Neil Lalonde
da825451d0 Invite link can't be used to log in after you set a password or sign in with 3rd party 2014-01-21 16:56:41 -05:00
Neil Lalonde
1dbc1c56b4 FIX: inviting a user again after the first invite expires will create a new invite 2014-01-21 16:56:40 -05:00
Robin Ward
963793549c FIX: Remove failing ruby tests. The same thing is tested in JS and
passes due to the ability to create a document fragment.
2014-01-20 15:28:46 -05:00
Sam
b85e5dc191 FEATURE: collapse PM notifications 2014-01-20 16:18:43 +11:00
Régis Hanol
8d2e5041bc BUGFIX: proper handling of /none subcategory 2014-01-18 19:27:25 +01: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
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
Robin Ward
8c29ed870e Non-staff users may not delete their posts in archived topics. 2014-01-17 17:42:12 -05:00
Neil Lalonde
1806a7d4b3 Trust Level 3: invited users start at default_invitee_trust_level + 1, unless default_invitee_trust_level is 2 or higher 2014-01-17 11:12:00 -05:00
Neil Lalonde
7c8ea8c166 Trust level 3 users can edit topic titles and change category 2014-01-16 11:59:26 -05:00
Neil Lalonde
89908cdb47 Admins don't see uncategorized on /categories if it has no topics and allow_uncategorized_topics is false 2014-01-15 14:11:36 -05:00
Neil Lalonde
4f6b208e8d Posts by trust level 3 users do not have nofollow on their external links. 2014-01-15 11:40:51 -05:00
Régis Hanol
ad8755aa70 BUGFIX: inline spoiler for text, block spoiler for images 2014-01-15 00:53:06 +01:00
Régis Hanol
b024bebbe2 BUGFIX: emoji's url were relatives (was breaking the wordpress plugin) 2014-01-14 23:51:36 +01:00
Robin Ward
4f6283ba56 FIX: Accept HTTPS or HTTP urls on redirect 2014-01-14 15:02:05 -05:00
Neil Lalonde
e7a05c54e8 FIX: suggested topics sometimes adds new topics from other categories before new topics of the current category 2014-01-13 15:02:15 -05:00
Sam
2b64118df1 Merge pull request #1782 from ligthyear/group-mention
Allow groups to be used as aliases for user mentions
2014-01-12 14:36:45 -08:00
Régis Hanol
70161498b6 BUGFIX: spoiler tag on lightboxed images wasn't working 2014-01-12 19:38:46 +01:00
Neil Lalonde
52580f09af Rename favorite to starred everywhere 2014-01-10 14:54:19 -05:00
Robin Ward
ca26d6d0d6 FIX: Uncaught promise on link click; fixes broken build 2014-01-09 16:31:26 -05:00
Neil Lalonde
259295d865 Add post_edit_time_limit site setting to limit the how long a post can be edited and deleted by the author. Default is 1 year. 2014-01-09 11:55:04 -05:00
Sam
74c1555885 BUGFIX: fix broken spec 2014-01-09 15:11:04 +11:00
Sam
1533a1163c use_ssl is just confusing, it means use_https , fix name of setting 2014-01-09 10:51:38 +11: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
Benjamin Kampmann
c743a985a4 Allow groups to be used as aliases for user mention
when configured by the admin a group can be found through the @mentions
feature in both the compose/reply and the private message user-selectors
and once selected the mention will be replaced by the list of users in
the group
2014-01-08 02:36:24 +11:00
Sam
660d87a108 BUGFIX: cache did not support non strings
also reduced mocking in tests
2014-01-07 17:36:47 +11:00
Sam
6e2797112d Attempt to fix spec under vagrant 2014-01-07 09:26:30 +11:00
Régis Hanol
8d73b7f94d BUGFIX: hide sensitive site settings 2014-01-06 13:03:53 +01:00
Sam
6befdceabf BUGFIX: UserStat spec was over ambitious with its mocking 2014-01-06 16:50:55 +11:00
Sam
b703d8c77a BUGFIX: redis-rails has always been a problem child
implemented an ActiveSupport::Cache::Store for our internal use.
* allows for expire by family
* works correctly in multisite
* namespaced correctly

Removed redis-rails from the project, no longer needed
2014-01-06 16:50:04 +11:00
Sam
7b7d6f3fa7 Merge pull request #1464 from GarantiaData/single_redis_db
Support single redis DB.
2014-01-05 16:30:41 -08:00
Robin Ward
1ffcf39448 Make embedded comments look nicer 2014-01-03 12:52:42 -05:00
Robin Ward
f145060315 Don't employ the "too many replies" if the user is staff, or if they created the topic.
See: http://meta.discourse.org/t/what-is-the-point-of-limiting-new-users-to-three-replies-per-topic/11696
2014-01-02 12:57:40 -05:00
Sam
2da5d2311b FEATURE: Added UI for adding and removing watched and muted categories 2014-01-02 17:59:08 +11:00
Sam
b482b280d6 FEATURE: Basic backend support for muted and watched categories 2014-01-02 12:00:29 +11:00
Sam
126433cf65 Merge pull request #1744 from verg/prevent_delete_uncategorized
Prevent deleting 'uncategorized' category
2014-01-01 16:09:49 -08:00
Sam
2ad190b9f6 FEATURE: allow for additional plugin defined global settings 2014-01-02 10:46:09 +11: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
verg
8a830fb8e3 Prevent deleting 'uncategorized' category 2013-12-31 11:22:44 -06:00
Godfrey Chan
c6577fb98e Added a reload to fix a test broken on master
I am not sure why this is wokring on Rails 4, but the problem is that `post3`
here is holding on to an old reference of some associations so `PostDestroyer`
is not doing the right thing.
2013-12-30 14:36:51 -08:00
Neil Lalonde
47e1d00f96 Check that common passwords list is greater than 0 2013-12-30 14:26:02 -05:00
Sam
1915f292ad BUGFIX: invalid referer would cause 500 errors 2013-12-30 14:05:44 +11:00
Sam
db1d01d1a2 Discourse as a Mailing List improvements
FEATURE: context is not emailed if we previously emailed you the post
FEATURE: site setting to enable_watch_new_topics , false by default.
  When enables users can elect to watch everything by default
FIX: Custom email subjects (x quoted you in [title], x replied to [title])
  was removed, this broke email grouping. TBD, include info in footer somehow
FIX: topic user specs were messy, reduce side effects
2013-12-30 13:02:12 +11:00
Sam
293b7e5857 add spec to demo blanking props 2013-12-30 08:42:55 +11:00
Neil Lalonde
2c19d8a136 Fix password_validator_spec 2013-12-27 11:15:53 -05:00
Neil Lalonde
ab12695d63 Block passwords that are in the top 5000 most common passwords. Site setting block_common_passwords can disable this feature. 2013-12-27 11:00:21 -05:00
Régis Hanol
567d2bd23c add top page 2013-12-24 00:50:36 +01:00
Robin Ward
0c45eba037 FIX: Users can edit posts when they've reached the newuser_max_replies_per_topic threshold. 2013-12-20 11:30:51 -05:00
Sam
f5f09933df Merge branch 'master' of github.com:discourse/discourse 2013-12-20 16:17:52 +11:00
Sam
7b8d2547d0 globals now implemented and documented 2013-12-20 16:17:21 +11:00
Neil Lalonde
854d9c8fc6 Minimum password length is configurable with the min_password_length site setting. FIX: reset password needs to validate password length. 2013-12-19 16:15:47 -05:00
Neil Lalonde
33c6997ded Move password validation into PasswordValidator 2013-12-19 16:15:47 -05:00
Robin Ward
1cac9fa257 New users can only post newuser_max_replies_per_topic times per topic. 2013-12-19 13:45:55 -05:00
Neil Lalonde
c35af5d755 FIX: When re-opening a topic that auto-closed, make sure it won't auto-close again 2013-12-19 11:25:05 -05:00
Neil Lalonde
1f0a59584b Revert "Re-apply with fixes: Stop using user agent to detect mobile devices. Use a media query and yepnope to load the appropriate css and customizations." 2013-12-18 14:47:22 -05:00
Neil Lalonde
3cc634d37b FIX: category_list_spec should not expect deterministic order 2013-12-17 12:53:29 -05:00
Sam
ea307931a7 fix spec, categories without position are now always at the end of the list 2013-12-17 14:36:07 +11:00
Régis Hanol
2ce75a8523 FIX: canonical url should not use the CDN 2013-12-17 00:35:34 +01:00