Commit Graph

1423 Commits

Author SHA1 Message Date
Erik Ordway 557d1886bb remove what little CAS testing there was. 2014-02-11 17:53:20 -08:00
Robin Ward b035c050d2 Merge pull request #1920 from nickborromeo/list-controller
Extract queries to keep logic in the Categories Model
2014-02-11 15:48:20 -05:00
Sam fd34932068 use discourse redis, not redis 2014-02-11 16:11:51 +11:00
Sam 4a35d055bc correct spec to account for category definition topics 2014-02-11 10:50:14 +11:00
Robin Ward ca17f8a437 FIX: Wrong text. Thanks @riking 2014-02-10 17:36:13 -05:00
Robin Ward b61df08d1b FEATURE: Admin selector to choose a primary group for a user, display it
and apply a CSS class to their posts.
2014-02-10 17:00:15 -05:00
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
Neil Lalonde 341adc93a4 Allow categories with null position, which means sort them based on activity. Mix absolutely positioned (position is not null) categories with null position categories. 2013-12-16 15:13:57 -05:00
Robin Ward acf262b631 Support for "no subcategories" 2013-12-16 13:06:35 -05:00
Régis Hanol ccd0f9c371 add onpdiff tests 2013-12-16 18:39:49 +01:00
Régis Hanol 206ef3dc08 add discourse_diff tests 2013-12-16 18:11:46 +01:00
Régis Hanol c6fb60e0a0 FIX: S3 upload when using dots in bucket name 2013-12-16 11:44:59 +01:00
Alexander d93e4fc65d add more info to rss feeds 2013-12-15 01:17:39 -08:00
Neil Lalonde 49c3482464 Show topic and post counts by day/week/month/year on categories page 2013-12-13 15:37:45 -05:00
Robin Ward 06e9cbc6cb FIX: Look up a url without the query string if it couldn't be found with it. 2013-12-13 12:56:20 -05:00
Sam 05a3c8090f Merge pull request #1658 from salbertson/sa-refactor-users-controller-create
Refactor UsersController#create
2013-12-12 22:16:50 -08:00
Régis Hanol 1884bd959f make sure extension-based oneboxes are first to run 2013-12-13 00:56:48 +01:00
Régis Hanol 1457a3792d that fix should have been in the emoji plugin 2013-12-12 16:42:27 +01:00
Régis Hanol be835785f8 FIX: allow new user to post emojis 2013-12-12 15:05:18 +01:00
Régis Hanol 06dd7ffe3c better revision history 2013-12-12 03:41:34 +01:00
Neil Lalonde 5171a23a9c 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-11 11:19:22 -05:00
Neil Lalonde ed3d3ae1e1 Upgrade font-awesome to version 4 2013-12-11 10:31:09 -05:00
Robin Ward 6853f37bee Show estimated reading time near summarize button. 2013-12-10 13:47:36 -05:00
Neil Lalonde 561961eff6 FIX: can grant titles to regular users. Guardian initializer needs current_user, not the target user. 2013-12-10 12:46:35 -05:00
Neil Lalonde 2596f7dec2 Revert "Stop using user agent to detect mobile devices. Use a media query and yepnope to load the appropriate css and customizations." 2013-12-09 16:28:11 -05:00
Neil Lalonde ca5d4d5e54 Stop using user agent to detect mobile devices. Use a media query and yepnope to load the appropriate css and customizations. 2013-12-09 13:28:42 -05:00
Neil Lalonde 9a24d2651d Allow category to auto-close topics in X hours instead of days. FIX: the system message that says a topic was automatically closed was only counting in days. 2013-12-06 16:39:35 -05:00
Robin Ward 79427732b2 Show Gaps in the post stream when filters are active
Conflicts:
	app/assets/javascripts/discourse/templates/topic.js.handlebars
2013-12-05 16:46:59 -05:00
Scott Albertson 51eff92170 Refactor UsersController#create
* Simplify controller action
* Extract service classes
2013-12-05 10:11:16 -08:00
Neil Lalonde abed146cc7 FIX: Category description topics shouldn't auto-close 2013-12-04 10:31:25 -05:00
Jithu Gopal 9584ecb295 fixing gender sensitive pronouns 2013-12-03 10:19:54 +05:30
Régis Hanol 5150376e12 add wrapper class for lightboxes 2013-12-02 10:06:48 +01:00
Godfrey Chan 1a2114d87d Don't abuse as_json, it's not meant for consumption
The `as_json` API is a hook for JSON encoders to call, not meant for
consumption like this, and the result is not guarenteed to be stable
across Rails versions.

There might be other cases like this that we should revisit later, but
this one in particular is causing a test to fail on Rails master.
2013-11-29 21:58:09 -08:00
Régis Hanol 298b54c0e7 add download link in lightbox 2013-11-29 20:03:39 +01:00
Robin Ward 8c8645f158 FIX: Code and Emoticon formatting in HTML emails. 2013-11-28 17:21:14 -05:00
Neil Lalonde 4ec0543362 FIX: emails with embedded posts should always use absolute URLs 2013-11-28 15:57:21 -05:00
Neil Lalonde 1cc72d564f Add specs for topic create with auto_close_time. Just ignore auto_close_time from users who are not authorized to use it instead of raising an error. 2013-11-28 11:06:04 -05:00
Régis Hanol 52160179f8 add a tombstone for extra safety 2013-11-27 22:05:11 +01:00
Neil Lalonde a9ab98ef9e Auto-close time can be entered in 3 ways, so a topic can close at any time 2013-11-27 09:52:35 -05:00
Régis Hanol 6b6c3d05dd FIX stretched thumbnails 2013-11-25 18:36:13 +01:00
Robin Ward d208be14d2 FIX: Ruby 1.9.3 UTF-8 bug 2013-11-25 11:29:58 -05:00
Régis Hanol 82b78ec6ba schemaless avatar urls 2013-11-22 19:18:45 +01:00
Régis Hanol 3cf5a363f7 do not destroy uploads when destroying a user 2013-11-22 18:29:07 +01:00
Sam 49b48e1eb6 ensure we have a bigint id 2013-11-22 17:51:36 +11:00
Régis Hanol f65cde3cda do not bump posts when rebaking 2013-11-22 01:52:26 +01:00
Neil Lalonde bcfbacec16 Don't show category descriptions as suggested topics 2013-11-21 16:43:22 -05:00
Neil Lalonde 69cc1dd689 FIX: don't suggest a username that's already taken, even if hub finds a match 2013-11-20 14:56:21 -05:00
Robin Ward 5055da76e6 Abort triggers for email body processing 2013-11-20 13:30:01 -05:00
Régis Hanol 31fd5b85bc FIX markdown hotlinked images were not properly pulled 2013-11-20 13:10:08 +01:00
Neil Lalonde 981d8f6aea Signup form: prefill username if Discourse Hub has a match for the email address. Also, fix some bad specs in username_checker_service_spec that were passing... 2013-11-19 14:15:28 -05:00
Neil Lalonde ae58a7db95 Add a warning on dashboard if enforce_global_nicknames is checked, but access key is blank. 2013-11-18 13:45:10 -05:00
Robin Ward 4ce81e1b01 Rename "Best Of" to "Summary" 2013-11-18 12:48:26 -05:00
Robin Ward ad3e276b4b Rename TopicSummary -> TopicMap 2013-11-18 12:08:21 -05:00
Robin Ward 639394e38a FIX: Pinned topics within a category weren't working without a refresh 2013-11-18 10:52:01 -05:00
Régis Hanol 482b752046 add edit reason when editing a post 2013-11-15 23:28:49 +01:00
Neil Lalonde fc180ccd71 Site settings: move category into the opts hash so that it's compatibale with existing plugins 2013-11-15 14:32:33 -05:00
railsaholic 34bba737ff Refactor SessionController#create, reduce complexity.
Don't compromise readablity
2013-11-15 22:09:03 +05:30
Régis Hanol 8a83f1a88f add disk space usage failsafe 2013-11-15 16:48:38 +01:00
Robin Ward e03ae73c5d Merge pull request #1653 from ScotterC/uri-addressable
URI adapter should use Addressable
2013-11-15 07:24:57 -08:00
Régis Hanol 16267e4887 add download_remote_images_to_local site setting 2013-11-15 15:22:18 +01:00
Neil Lalonde 1e37abc310 Add site setting category support 2013-11-14 16:02:13 -05:00
Neil Lalonde 791f5ac94e Load site settings from config/site_settings.yml 2013-11-14 16:02:13 -05:00
Robin Ward 968c0672ef Enable column sorting main topic list 2013-11-14 15:50:36 -05:00
Robin Ward 67041d1c6d Support for tracking the count of unique participants in a topic 2013-11-14 14:32:41 -05:00
Scott Carleton 32e414690a Handle ugly url targets 2013-11-14 13:14:02 -05:00
Robin Ward bda5a72c6a Server side support for custom ordering of topics 2013-11-13 14:17:06 -05:00
Robin Ward 7207cef7aa TopicQuery cleanup in advance of custom sorting:
- Move SQL method constants into a module
- Removed unused count methods
- Moved methods that don't return a TopicList into Topic
- Replaced some confusing method signatures
2013-11-13 12:26:32 -05:00
Scott Albertson 77b59b54ce Refactor UsersController#invited
* Add test coverage
* Simplify controller action
* Move finder code to Invite class
2013-11-11 13:23:49 -08:00
Neil Lalonde 2f8866add5 Change admin display-row css so that multiple lines can fit in the control column. Don't hard-code a height on the rows. 2013-11-11 15:03:17 -05:00
Régis Hanol d65cd0f97e Merge pull request #1637 from railsaholic/refactor_users_upload_avatar_action
Refactor Users#upload_avatar method
2013-11-11 09:59:30 -08:00
railsaholic 58f78e9001 Refactor Users#upload_avatar method
Moved avatar file upload to ```AvatarUploadService``` class and
```AvatarUploadPolicy```

Address review comments + require missing file in spec
2013-11-11 23:21:14 +05:30
Sam d1d661f6e1 add logic that auto closes any topics that missed the queued job (due to redis flush or whatever) 2013-11-11 10:52:44 +11:00
Sam a9c5d843f7 remove problem spec that does not work properly in rails 4 mode into application controller and correct it 2013-11-11 10:50:48 +11:00
sirMackk af67284995 User ctrl refactor - breaks up large methods, moves some logic into model
Includes missing methods from backup for travis to pass

fix missing code, failing specs

keep params handling in the controller.
2013-11-09 18:44:13 +05:30
Robin Ward 6e43372e7c Merge pull request #1610 from salbertson/sa-refactor-users-update
Move logic for updating a user to a service class
2013-11-07 12:29:19 -08:00
Neil Lalonde 0c6f794eb0 Used the term suspended instead of banned. 2013-11-07 13:53:49 -05:00
Scott Albertson 72bfa4471f Move logic for updating a user into a service class 2013-11-07 08:39:39 -08:00
Robin Ward 948a545cb1 Category descriptions should not appear in digests 2013-11-06 15:05:06 -05:00
Robin Ward de30af9302 Support for inviting to a forum from a user's invite page. 2013-11-06 12:56:50 -05:00
Régis Hanol 8d47215ea5 Fixed Youtube videos appearing on top of compose panel (props to @hrobertson) 2013-11-06 17:19:02 +01:00
Régis Hanol f8e2ecfa94 keep track of the user who revised a post 2013-11-06 11:43:40 +01:00
Régis Hanol 3992aa971d ninja_edit_window is is seconds, not minutes 2013-11-06 11:08:57 +01:00
Robin Ward 25ef66c60b User invites page now has search, displays first `invites_shown` records 2013-11-05 17:53:26 -05:00
Régis Hanol 37fd7ab574 pull hotlinked images 2013-11-05 19:07:29 +01:00
Sam 415d4df648 work around bust encodings passed in to method 2013-11-05 13:40:39 +11:00
Neil Lalonde bd9b85f076 Screened Urls page shows results for each domain instead of each url 2013-11-04 16:24:48 -05:00
Robin Ward c86b06e3fa Fix for non-english email polling. 2013-11-04 15:30:24 -05:00
Neil Lalonde ede59a4386 FIX: issue 1538. After upgrading and before a new version check request has been made, dashboard might still say that an update is available. 2013-11-04 12:51:09 -05:00
Robin Ward b474babe26 Merge pull request #1602 from salbertson/sa-refactor-users-update-specs
Refactor specs for UsersController#update
2013-11-04 07:16:18 -08:00
Vipul A M 895d801669 Dont call `SiteSetting.uncategorized_category_id` twice 2013-11-03 15:36:59 +05:30
Régis Hanol b56b11d96a add qunit to autospec 2013-11-01 23:57:50 +01:00
Neil Lalonde e679ba97a3 FIX: categories created by users who are deleted cannot be deleted 2013-11-01 16:56:15 -04:00
Scott Albertson c0cffca1e6 Test title updating 2013-11-01 13:43:31 -07:00
Scott Albertson 3cc17ad4cd Add test coverage for #update 2013-11-01 13:43:31 -07:00
Scott Albertson 58f96bdfb5 Remove duplication in test setup 2013-11-01 13:43:31 -07:00
Scott Albertson 2e7696630b Make #update specs consistent
* Use expect syntax
* Avoid lets
* Stub Guardian method used in the controller
2013-11-01 13:43:31 -07:00
Neil Lalonde 92a0729937 When banning a user, a reason can be provided. The user will see this reason when trying to log in. Also log bans and unbans in the staff action logs. 2013-11-01 10:47:26 -04:00
Neil Lalonde 52b0c1c45f When logging the deletion of a user, don't store its id in the target_user_id column. It will never match a user record. 2013-11-01 10:47:26 -04:00
Robin Ward 744cd93f28 FIX: Non-English category name regression 2013-10-31 16:25:26 -04:00
Neil Lalonde ce5ebc3eb5 On sites with login_required enabled, after signup, don't show the /login page again 2013-10-30 16:37:36 -04:00
Robin Ward 704adc00ca FIX: Broken test. No idea why the name randomly changed! 2013-10-30 16:04:26 -04:00
Robin Ward 3d6d7c8abe SiteSetting to hide regular names from users 2013-10-30 15:45:34 -04:00
Neil Lalonde c8d5db38d6 Emails to banned users will be sent for notifications of PMs from staff users 2013-10-30 15:31:16 -04:00
Robin Ward 6063b52d6a Support for choosing a destination category when splitting topics. 2013-10-29 15:30:06 -04:00
Manoj 9650dbb97c Refactor topics controller
Refactor: 1) TopicsController to reduce code climate complexity.
2) Topic model, addressed comments

fix typo
2013-10-28 11:42:07 +05:30
Sam 95e936c299 cleanup API for looking up a user by email or username, add specs, fix invalid auto association in open id provider 2013-10-28 16:29:07 +11:00
Sam 370e961a90 add failing test for AMS upgrade 2013-10-28 15:55:27 +11:00
Robin Ward f4d9bf9181 Merge pull request #1573 from railsaholic/use_existing_find_by_username_or_email
Utilize already existing method 'find_by_username_or_email'
2013-10-25 12:57:18 -07:00
Neil Lalonde 4e46d91b8d Refactor SpamRulesEnforcer so that each spam rule is in its own class 2013-10-25 13:25:02 -04:00
Sam 4929c5db71 FIX: when allow_uncategorized_topics was false, PMs can not be created 2013-10-25 09:33:39 +11:00
Manoj 96ae3cdacc Utilize already existing method 'find_by_username_or_email'
check presence of email using include, dont use =~
2013-10-24 19:26:06 +05:30
Sam cc83b55134 fix incorrect test, that fails if shared test state gets corrupt 2013-10-24 14:55:55 +11:00
Sam 666264879c change it so all topics MUST include a category, we store a special uncategorized category to compensate
this cleans up a bunch of internals and removes some settings
2013-10-24 12:08:02 +11:00
Neil Lalonde 8aab2253d0 Whitelisted ip addresses will not be flagged as spam by flag_sockpuppets 2013-10-23 17:11:35 -04:00
Robin Ward 541620c115 Routes and support for sub-categories 2013-10-23 15:22:49 -04:00
Robin Ward c814fc16a3 Database structure to support sub categories 2013-10-23 15:22:49 -04:00
Robin Ward f73a64982a Raise an error if a `api_username` is supplied and does not match the key 2013-10-23 11:05:49 -04:00
Brian Alexander e2a5415aca fix #1567; nil reference in spam_rules_enforcer.rb 2013-10-22 19:14:31 -06:00
Neil Lalonde c1008f4359 Fixes for postgresql inet columns in Rails 4. They're backed by an IPAddr class now, which breaks sql parameter marker support, and automatically sets the attribute to nil when trying to assign an invalid ip address. 2013-10-22 19:19:32 -04:00
Robin Ward 348e2e3ef2 Support for per-user API keys 2013-10-22 17:34:39 -04:00
Neil Lalonde 7d582fbee3 Screened ip address can be edited, deleted, and changed to allow or block. 2013-10-22 16:30:46 -04:00
Régis Hanol 9b2f821012 Merge pull request #1512 from ScotterC/avatar-from-url
Build out a URI Adapter to allow uploading an avatar via a url
2013-10-21 13:17:37 -07:00
Robin Ward 2308784713 Merge pull request #1543 from railsaholic/small_users_controller_refactoring
refactor UsersController to reduce complexity
2013-10-21 12:21:03 -07:00
Scott Carleton cbef844a57 Build out a URI Adapter to allow uploading an avatar via a url
Currently only really accessible via the API. The UriAdapter creates a
tempfile from a url and gives a ActionDispatch::HTTP::UploadedFile back
to the controller to process as normal.
This will help a lot in being able to transfer avatar urls from another
app without monkey patching a lot of discourse code.
2013-10-21 14:53:03 -04:00
Neil Lalonde 648b11a0eb Add screening by IP address. When deleting a user as a spammer, block all signups from the same IP address. 2013-10-21 14:50:18 -04:00
Régis Hanol fcd85b8a72 allow plugins to be symlinked 2013-10-21 19:59:28 +02:00
Sam 451a1620f9 Merge pull request #1545 from railsaholic/lists_controller_refactor
Remove duplication of action defintion
2013-10-20 22:19:40 -07:00
Sam 31b73171dc correct ordering algorithm 2013-10-21 16:14:09 +11:00
Manoj 7dfa99998f Remove duplication of action defintion, add missing spec for topics_by, extract out URL construction logic 2013-10-21 08:34:18 +05:30
Sam 25723de9c8 no need for the undefine 2013-10-21 09:52:28 +11:00
Manoj 868e4ffe6d refactor UsersController to reduce complexity
Refactored: UsersController#create
2013-10-19 15:18:11 +05:30
Robin Ward d7182d0b14 FIX: Only wrap inline html tags in <p> 2013-10-18 15:21:05 -04:00
Sam 5f74cb6bf9 category is not "positionable" 2013-10-18 18:09:30 +11:00
Sam 1ee49798b2 work in progress wide category list 2013-10-18 11:10:10 +11:00
Sam 7bf96ee690 naive implementation of post_count on categories 2013-10-18 11:10:10 +11:00
Robin Ward 0a4f5af4a8 Merge pull request #1531 from railsaholic/topics_model_refactoring
Refactored Topic#limit_topics_per_day to improve Code Climate Complexity
2013-10-17 06:56:41 -07:00
Sam 1b81f73325 logged in requests were being treated as anon, causing major havoc 2013-10-17 10:37:18 +11:00
Neil Lalonde cabe8f0d2d Clean up ScreenUrl normalization and matching 2013-10-16 16:39:29 -04:00
Robin Ward 2a8db38c7a FIX: Smoke test failure 2013-10-16 16:01:41 -04:00
Robin Ward f27413219e Support for MDTest 2013-10-16 10:28:42 -04:00
Manoj 7c03076c2a Refactored Topic#limit_topics_per_day to reduce code climate complexity
Extracted  1) #apply_per_day_rate_limit_for, method as generic
RateLimiter , 2) #limit_first_day_topics_per_day as a separate method,
3) Added User#added_a_day_ago?, 4) Fixed private methods indentation.
2013-10-16 14:58:18 +05:30
Sam 3d647a4b41 remove rack cache, it has been causing trouble
instead implement an aggressive anonymous cache that is stored in redis
this cache is sitting in the front of the middleware stack enabled only in production
TODO: expire it more intelligently when stuff is created
2013-10-16 16:39:18 +11:00
Robin Ward b62913695c Merge pull request #1528 from JEG2/master
Adding post details in preparation for the API importer code.
2013-10-15 08:19:19 -07:00
Robin Ward 5281b7f80c Upgraded and refactored Sanitizing. Much less crap should get through now!
Conflicts:
	app/assets/javascripts/discourse/components/syntax_highlighting.js
2013-10-15 10:53:11 -04:00
James Edward Gray II 1aa9fc982d Adding post details in preparation for the API importer code. 2013-10-15 09:21:30 -05:00
Régis Hanol 4536b5fe04 added a job to clean up orphan uploads 2013-10-15 11:15:48 +02:00
Régis Hanol d80f4fa3f7 Merge pull request #1523 from dbarbera/avatar_formats_fix
add image authorization on upload_avatar
2013-10-14 05:33:25 -07:00
Sam 7df4e4afb9 security fix, anon should not be treated as though they can create anything 2013-10-13 09:54:48 +11:00
dbarbera 9106596a9a add image authorization on upload_avatar 2013-10-12 14:11:44 +02:00
Régis Hanol 23bf4436f5 FIX: avatar was attached to the user who uploaded it... 2013-10-12 10:55:41 +02:00
Robin Ward af931f0444 Reverting the Sanitizer commit in case we have to do something urgent
before we deploy it early next week. It's in the branch `sanitizer` for
now.

This reverts commit 9e93d8ed52.
2013-10-11 16:44:26 -04:00
Robin Ward 9e93d8ed52 Upgraded and refactored Sanitizing. Much less crap should get through now!
Conflicts:
	app/assets/javascripts/discourse/components/syntax_highlighting.js
2013-10-11 16:25:40 -04:00
Neil Lalonde 3c2c6ab24b Add sockpuppet spammer detection. Automatically flag posts if they are from new users (registered less than 24 hours ago) at the same IP address and one of them started the topic. 2013-10-11 13:34:05 -04:00
Régis Hanol c38ba8acdd add rss links to anonymous homepages 2013-10-11 18:43:29 +02:00
Sam 172a85ae14 prettier twitter links, extracted mini api 2013-10-11 11:46:35 +11:00
Sam b0465c517e (experimental) added framework for filtering all sorts of internals in discourse and consuming by plugins 2013-10-10 18:45:40 +11:00
Sam ad2ed5fe51 rate limits for topics and posts on first day
max_topics_in_first_day and max_replies_in_first_day
2013-10-10 10:32:03 +11:00
Sam 7993845bfa add current_user_provider so people can override current_user bevior cleanly, see
http://meta.discourse.org/t/amending-current-user-logic-in-discourse/10278
2013-10-09 15:11:54 +11:00
Neil Lalonde bccb37b6f3 When creating a topic, don't select a category by default when allow_uncategorized_topics is false. Also, added category validation on the server to enforce allow_uncategorized_topics. 2013-10-08 14:41:20 -04:00
Sam e18b93026a defer view creation on so updates are not performed when people navigate to topics 2013-10-07 15:04:59 +11:00
Sam 5bf26ec34e large refactor, ship a few columns from the user table into user_stats 2013-10-07 15:04:59 +11:00
Robin Ward c8487f6bc7 FIX: Amazon spec 2013-10-04 12:49:39 -04:00
Sam Saffron ad93fc959c security issue, anon and logged in users could see the fact that a user sent another user a pm (but could not see the pm itself or title) 2013-10-03 16:48:03 -07:00
Robin Ward 3562d02905 Adjust smoke test to work with user expansion 2013-10-03 14:17:25 -04:00
Régis Hanol af96ef2994 FIX: deleting a flagged post issue
cf. http://meta.discourse.org/t/deleting-a-flagged-post-issue/10061

The bug was only happening when you were about the delete the first post, which means deleting the entire topic.
2013-10-02 16:59:57 +02:00
Sam f0a122a66c move job files so they live underneath app/ and not in lib/
introduce new setting email_always, that will force emails to send to users regardless of presence on site
2013-10-01 17:04:02 +10:00
Robin Ward 3f0c03a20c FIX: Prevent unauthorized list of private message titles. Also remove some unused code. 2013-09-30 14:35:11 -04:00
Régis Hanol 40c08eab14 do not break oneboxes' favicon after updating favicons 2013-09-30 19:09:57 +02:00
Robin Ward 37304b7eba FIX: Too many new lines in long quotes 2013-09-27 15:08:56 -04:00
Régis Hanol cd4cda5b4c allow users to specify thumbnail size 2013-09-27 10:57:31 +02:00
Discourse application 0c8f6ba9a4 Support single redis DB. 2013-09-24 15:47:35 +03:00
Neil Lalonde 07d08b81c7 Show mobile view as default for nexus 7 tablet 2013-09-23 17:13:29 -07:00
Robin Ward 60abde2253 FIX: Broken spec 2013-09-19 18:40:46 -07:00
Robin Ward 99b6a62fcb New composer message for people dominating a topic 2013-09-17 14:38:39 -04:00
Robin Ward 16dc0a7001 New user education notification was off by one. Also, remove the "basic" restriction on the
"posting too often" message.
2013-09-17 12:12:03 -04:00
Neil Lalonde 0fafe124db Add enable_mobile_theme site setting. Uncheck it to disable the mobile theme. 2013-09-17 11:25:37 -04:00
Robin Ward 2baf5fda8e Merge pull request #1438 from Elegios/composer_use_category_id
Make the composer and TopicCreator use category id instead of category name
2013-09-17 08:03:48 -07:00
Neil Lalonde b15e629f46 Strip trailing slashes from ScreeningUrl records 2013-09-17 10:26:05 -04:00
Viktor Palmkvist 37673e3412 Make the composer and TopicCreator use category id instead of category name
Also fixes #1171
Includes backwards compatibility for topic creation
2013-09-17 12:13:19 +02:00
Neil Lalonde c845071066 Fix an error with mobile custom header 2013-09-16 12:55:44 -04:00
Neil Lalonde 13f17b2a5c Add ability to customize css and header for mobile 2013-09-16 12:28:02 -04:00
Nathan Nontell d95172cb5d Allow TextSentinel#seems_unpretentious? to accept words joined with dashes or forward slashes. (Issue 1133) 2013-09-16 09:45:57 -04:00
Matthieu Guillemot 3ba1f20674 New site settings to enable/disable the possibility of editing user's nickname or email address 2013-09-14 21:34:21 +09:00
Robin Ward b39d39dbb6 FIX: Use `post_count` instead of `topic_reply_count` in education for replies. 2013-09-14 00:32:18 -04:00
Robin Ward c365bd0070 Notify users posting sequential replies that there's a better way to do it. 2013-09-13 13:49:34 -04:00
Robin Ward 7d9a84b496 New User Education goes through a server side ComposerMessages check. Composer message for users
who don't have avatars.
2013-09-13 12:23:53 -04:00
Sam 4599e5d732 oops did not have autospec running 2013-09-12 15:55:18 +10:00
Robin Ward fcff4e80d1 New `user_stats` table to keep track of queried information on a user.
This is information that is not usually needed when representing a user
and is in a separate table with a has one relationship to avoid querying
it all the time.
2013-09-11 14:50:26 -04:00
Neil Lalonde e8ef55c446 Rename StaffActionLog to UserHistory 2013-09-10 22:01:20 -04:00
Neil Lalonde cc2acafc9a Enable mobile view. Use local storage to remember whether you chose mobile or desktop view. Mobile device detection needs to be replaced with a better solution. 2013-09-10 16:44:17 -04:00
Robin Ward 2319924206 Adds a class that can detect whether a user has uploaded a custom avatar 2013-09-10 15:39:11 -04:00
Neil Lalonde 78c15d5810 Move the unique post key storage code into the Post model 2013-09-09 16:17:31 -04:00
Einar Jonsson 724b3aadcf Extracted nickname registration out of the UsersController and into its
own service.
2013-09-09 09:26:50 +00:00
Robin Ward b87a78f7b2 Merge branch 'master' of github.com:discourse/discourse 2013-09-06 18:01:33 -04:00
Robin Ward c8ad977c8a Revert "Merge pull request #1215 from Elegios/composer_use_category_id"
This reverts commit 763859d439, reversing
changes made to b62caf80fb.
2013-09-06 18:00:57 -04:00
Neil Lalonde 10547848f0 Update importer_spec for system user 2013-09-06 16:51:43 -04:00
Robin Ward 763859d439 Merge pull request #1215 from Elegios/composer_use_category_id
Make the composer and TopicCreator use category id instead of category name
2013-09-06 11:55:27 -07:00
Régis Hanol 45b838009c proper content-disposition header when downloading attachments 2013-09-06 19:23:56 +02:00
Neil Lalonde eae7e75611 FIX: recover post by a non-staff user fails because the post is not unique. Uniqueness check shouldn't happen when recovering a deleted post. 2013-09-06 11:50:15 -04:00
Sam 641c51367a fix broken build
hack to allow for PMs with no users for flagging needs
2013-09-06 18:03:30 +10:00
Sam 2ce4468aa5 rename system_username to site_contact_username , system_user is a special user with -1 id that is only used for certain admin tasks
for example system_user will autoclose stuff if needed, it will delete stubs and be the target for flag pms
2013-09-06 17:28:37 +10:00