Commit graph

600 commits

Author SHA1 Message Date
Robin Ward
8c29ed870e Non-staff users may not delete their posts in archived topics. 2014-01-17 17:42:12 -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
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
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
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
Sam
660d87a108 BUGFIX: cache did not support non strings
also reduced mocking in tests
2014-01-07 17:36:47 +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
Sam
126433cf65 Merge pull request #1744 from verg/prevent_delete_uncategorized
Prevent deleting 'uncategorized' category
2014-01-01 16:09:49 -08: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
Neil Lalonde
47e1d00f96 Check that common passwords list is greater than 0 2013-12-30 14:26:02 -05: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
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
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
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
1884bd959f make sure extension-based oneboxes are first to run 2013-12-13 00:56:48 +01:00
Régis Hanol
06dd7ffe3c better revision history 2013-12-12 03:41:34 +01:00
Robin Ward
6853f37bee Show estimated reading time near summarize button. 2013-12-10 13:47:36 -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
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
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
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
Robin Ward
4ce81e1b01 Rename "Best Of" to "Summary" 2013-11-18 12:48:26 -05: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
Régis Hanol
8a83f1a88f add disk space usage failsafe 2013-11-15 16:48:38 +01: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
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
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
Neil Lalonde
0c6f794eb0 Used the term suspended instead of banned. 2013-11-07 13:53:49 -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
Régis Hanol
37fd7ab574 pull hotlinked images 2013-11-05 19:07:29 +01: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
Neil Lalonde
e679ba97a3 FIX: categories created by users who are deleted cannot be deleted 2013-11-01 16:56:15 -04:00
Robin Ward
744cd93f28 FIX: Non-English category name regression 2013-10-31 16:25:26 -04:00
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
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
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
Neil Lalonde
7d582fbee3 Screened ip address can be edited, deleted, and changed to allow or block. 2013-10-22 16:30:46 -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
31b73171dc correct ordering algorithm 2013-10-21 16:14:09 +11:00
Sam
25723de9c8 no need for the undefine 2013-10-21 09:52:28 +11:00
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
1b81f73325 logged in requests were being treated as anon, causing major havoc 2013-10-17 10:37:18 +11:00
Robin Ward
f27413219e Support for MDTest 2013-10-16 10:28:42 -04:00
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
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
Régis Hanol
4536b5fe04 added a job to clean up orphan uploads 2013-10-15 11:15:48 +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
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
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
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
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
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
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
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
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
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
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
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
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
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
Sam
41a1b6942d notify moderators now goes to the "community" user, that saves our poor mods from a flood of pms
if any staff respond to a pm they are automatically added to the list of recipients and will start
getting email notifications
2013-09-06 14:07:23 +10:00
Sam
ee6882edfb ATTENTION NEIL, comment out a big pile of importer specs, this is code we never use and running a big slug of tests to ensure it keeps working is pointless.
We need to decide what we do with this. Either we get import/export working and used or strip it out till ready.
No point slowing down the test suite and fixing regressions in code this code
2013-09-06 12:56:08 +10:00
Sam
5b08f73561 give god rights of impersonation to developers, must be edited into the production.rb config file 2013-09-05 10:27:34 +10:00
Neil Lalonde
d76486a48b Topic can have null user_id when user was nuked 2013-09-04 15:42:24 -04:00
Neil Lalonde
117fc8db58 Change the way nuked users' posts are handled. Allow null in the user_id column of posts. Show these posts in the posts stream. 2013-09-04 15:42:21 -04:00
Neil Lalonde
b47eedba00 Add min_trust_to_create_topic setting to require a certain trust level before users can start new topics 2013-09-03 19:12:22 -04:00
Robin Ward
3cec95a2c3 Better API for parsing out blocks in the parser. 2013-08-29 11:47:44 -04:00
Emili Parreno
1dedfb2251 fix user_name_suggester spec 2013-08-29 16:15:02 +02:00
Neil Lalonde
f611a5d898 If min entropy setting is greater than min post/body length setting, then use a sensible min entropy value instead 2013-08-28 11:04:28 -04:00
Sam
28466eb5b2 group the "suggested topics" by category correctly.
in the past new topics were not prioritizing current category and
new topics in a category were not being inserted before other unread topics
in other categories
2013-08-28 10:52:06 +10:00
Sam
c0f610daf6 digest interfaces returning empty objects (except for id) interface needed correction 2013-08-28 10:52:06 +10:00
Robin Ward
29385f4898 Merge pull request #1387 from ZogStriP/fix-schemaless-urls-in-emails
FIX: schemaless urls in emails
2013-08-26 15:15:00 -07:00
Régis Hanol
561792a615 FIX: schemaless urls in emails 2013-08-27 00:08:38 +02:00
Robin Ward
1c3c468675 FIX: Single quotes in search terms would raise an error. 2013-08-26 16:25:54 -04:00
Neil Lalonde
3708d47c87 Check daily if there are new users who need to be approved and send a pm to moderators 2013-08-26 16:16:27 -04:00
Robin Ward
2d45c56ba5 Replace Markdown Linebreak Regexp with node parser. 2013-08-26 15:21:23 -04:00
Robin Ward
7c07079ed9 Revert "FIX: Failing spec"
This reverts commit 2df2838f40.
2013-08-26 12:46:28 -04:00
Robin Ward
2df2838f40 FIX: Failing spec 2013-08-26 11:54:05 -04:00
Sam
d0b4c751b7 fix facebook authenticator 2013-08-26 17:36:20 +10:00
Sam
bb3725cfca correct spec 2013-08-26 14:39:34 +10:00
Sam
818bf1355d PluginStore for plugin specific bits of storage
Amended plugin interfaces so they work with the vk sample
2013-08-26 12:59:17 +10:00
Sam
213ce33af2 Fixed all broken specs
Moved middleware config into authenticators
2013-08-26 12:59:17 +10:00
Sam
075002a6d5 refactoring the plugin interfaces to allow for better extensible 2013-08-26 12:59:17 +10:00
Sam
e0c99196a8 Merge pull request #1383 from ZogStriP/add-max-image-height-site-setting
add max_image_height site setting
2013-08-25 17:11:48 -07:00
Régis Hanol
32f717420d add max_image_height site setting 2013-08-26 00:24:24 +02:00
Navin Keswani
d87389b38e No more rails 4 deprecation warnings 2013-08-25 23:18:11 +02:00
Neil Lalonde
1ef9354e21 Remove enum setting spec since I don't think it's testing anything useful and it's causing random failures 2013-08-24 13:48:07 -04:00
Neil Lalonde
6e79197519 Enum site settings can have translatable names in dropdown. Add setting for how often users get digest emails by default: default_digest_email_frequency. 2013-08-23 17:36:25 -04:00
Neil Lalonde
663adde90e Users can change their own username at any time if they have no posts 2013-08-23 11:23:00 -04:00