Commit graph

1385 commits

Author SHA1 Message Date
Régis Hanol
fd1c824187 Revert "Merge pull request #2116 from LessonPlanet/disable-name-edit-for-sso"
This reverts commit 91aa21671a, reversing
changes made to f19596af0d.
2014-03-13 18:17:59 +01:00
Neil Lalonde
283dc7dd2d Trust level 4: add ability to edit any post and see edit history 2014-03-13 10:47:49 -04:00
Forest Carlisle
e8c7c6fab7 Adding name to the list of uneditable items in preferences UI
* If enable_names,  enable_sso, and sso_overrides_name settings are true.
2014-03-12 17:09:53 -07:00
Robin Ward
085f7997a2 FEATURE: Upload backups to S3 when complete. 2014-03-12 16:24:45 -04:00
Robin Ward
42ca83ece5 FEATURE: New site setting to enable a daily automatic backup 2014-03-12 13:30:47 -04:00
Neil Lalonde
9ca516e58d Rename nickname to username in the code. Use new hub routes. (Old routes still exist as aliases for old Discourse instances.) 2014-03-12 12:39:36 -04:00
Robin Ward
dc1d6decf5 Support for removal of old backups automatically via a site setting 2014-03-12 12:24:35 -04:00
Neil Lalonde
cf630207b7 Remove an unused variable in check_reviving_old_topic spec 2014-03-12 10:46:50 -04:00
Neil Lalonde
659e7fa4ce FEATURE: Warn when reviving a topic that has been inactive for X days. Setting warn_reviving_old_topic_age controls when the warning is shown. Set it to 0 to disable this feature. 2014-03-12 10:44:12 -04:00
Régis Hanol
363fabd3e7 add tests for ListController.best_period_for 2014-03-12 12:58:41 +01:00
Neil Lalonde
2838e1c3b5 FIX: don't show option to flag with notify_user to trust level 0 users. they can't send private messages. 2014-03-10 11:48:40 -04:00
Benjamin Kampmann
680197200e Add support for arrays to PluginStore 2014-03-10 14:59:59 +01:00
Sam
1b66ed903f Merge pull request #2091 from Xenograph/fix-sso-override
Added spec for SSO override username/email changes
2014-03-10 13:11:25 +11:00
Douglas Browne
a1e70ac57e Added spec for SSO override username/email changes 2014-03-09 21:38:36 -04:00
Sam
3f0964bf60 BUGFIX: spec would blow up when DST kicked in 2014-03-10 10:12:09 +11:00
Régis Hanol
8214536614 BUGFIX: don't show redirect reason if you aren't redirected
Move the redirect to top page logic server-side and make sure the reason
is not shown when top is not in the navigation menu (top_menu).
2014-03-07 18:58:53 +01:00
Robin Ward
c3e5ee1d7e FIX: Failing specs 2014-03-07 12:06:20 -05:00
Régis Hanol
f618278b42 make sure topic specs aren't DST sensitive 2014-03-07 11:38:24 +01:00
Sam
73ef91cf27 junk code removed 2014-03-07 19:00:36 +11:00
Sam
b19400726f BUGFIX/FEATURE: store topic changes in post revisions
History + edit notifications for title and category changes
2014-03-07 19:00:36 +11:00
Régis Hanol
11d91328ab Merge pull request #2056 from vikhyat/pm-likes
Don't suppress like notifications in private messages
2014-03-06 14:53:27 +01:00
Vikhyat Korrapati
944246f4af Add test to ensure creation of like notification in a PM. 2014-03-06 19:07:26 +05:30
Régis Hanol
ac99947979 BUGFIX: topic specs were dependent on Time.now
which would fail when DST was around
2014-03-06 12:44:52 +01:00
Régis Hanol
bce4130d39 Merge pull request #2036 from ArmedGuy/profile-backgrounds
FEATURE: Profile Backgrounds
2014-03-05 16:00:49 +01:00
Johan Jatko
98c479c3c4 FEATURE: Profile Backgrounds
Shares a modified codebase with avatars called "user_image"
2014-03-05 15:10:44 +01:00
Sam
edf86a207b fix build 2014-03-05 14:26:42 +11:00
Sam
adb6541635 FEATURE: mailing list mode always available 2014-03-05 14:21:53 +11:00
Sam
69b498da24 Merge pull request #2034 from birarda/custom_username_length
allow for custom username length via site setting
2014-03-05 12:06:23 +11:00
Stephen Birarda
4a2dab9c5e allow for custom min_username_length
change constant in user to be global range and not default
2014-03-04 16:37:05 -08:00
Sam
ea553202f0 Merge pull request #2033 from birarda/master
add option to override user attributes from SSO payload
2014-03-05 11:33:32 +11:00
Robin Ward
aa3f7f764d You can only reuse email tokens within 24 hours. 2014-03-04 14:03:04 -05:00
Stephen Birarda
c3eb2025d8 add option to override user attributes from SSO payload
add an external_username attribute for username from SSO payload

repair the field name in SingleSignOnRecord migration

move setting of external_username for sso to controller

add settings toggle to override username/email from SSO payload

fix changing of external username after override toggle

complete tests and logic for sso override

add some extra context to username override option

add external_email and external_name to single sign on record

add setting for name override from SSO payload

complete override with stored external_email and external_name

add missing checks to tests

remove an unneeded describe block

break up a monster method for single sign on

fixes for sso attribute override after failed tests
2014-03-04 09:52:21 -08:00
Robin Ward
5e6764e9c9 FIX: Remove update, should fix issue with broken specs 2014-03-04 12:47:14 -05:00
Robin Ward
a2b0e2b50f BUGFIX: Fix ailing tests 2014-03-03 16:24:20 -05:00
Robin Ward
f9cd354a2c FEATURE: Button to reset new 2014-03-03 15:47:01 -05:00
Robin Ward
3abe84941f FEATURE: Add new_since column to UserStat so we can reset the "New"
date.
2014-03-03 15:47:00 -05:00
Sam
5c3f2feed4 BUGFIX: recovery code in case an unknown job is scheduled 2014-03-04 07:37:12 +11:00
Sam
172e517b31 Merge pull request #2012 from ligthyear/incoming-emails
Advanced New-Topic via Email Feature
2014-03-03 10:58:10 +11:00
Neil Lalonde
b40313559b FIX: moderators should not be able to see site setting changes in the staff action logs. Fixes #2027 2014-02-28 16:30:54 -05:00
Benjamin Kampmann
024597e643 Switch to proper exception handling system for better user feedback
- Replace implicit return code-system in Email::Receiver with proper exception system
 - Update tests to check for exceptions instead
 - Test the PollMailbox for expected failures
 - Add proper email-handling of problematic emails
"
2014-02-28 17:02:58 +01:00
Benjamin Kampmann
d32cb55837 Add public-inbox to Email-In-Feature
- Adds the advanced option to accept email from non-users per category email-address
 - Adds tests covering the new feature
 - Adds UI to configure this feature in the frontend
2014-02-28 16:53:58 +01:00
Benjamin Kampmann
37cea49459 Add Email-In-Per-Category
- allow the configuration of an inbox-email-address per category
 - post emails to that email into that category instead of global

 - Adds UI for configuration
 - Adds Documentation for configuration
 - Adds Tests for new feature
2014-02-28 16:53:58 +01:00
Benjamin Kampmann
4af2cf3f23 Refactor and clean up New-Topic via Email
With the new email_in admin configuration setting, emails to the email_in_address fetched via POP will now be processed and posted as new topics to the forum.

With the email_in_min_trust you can control the trust level the user needs to have at least to be able to post an email as a new topic.

Also contains tests for the email-in feature and minor clean ups
2014-02-28 16:53:58 +01:00
Sam
1992271bf9 FEATURE: white_listed_spam_host_domains for domains that are not blocked for spam
BUGFIX: bypass host spam detection for current host
2014-02-27 15:43:57 +11:00
Sam
ed7c051fcc BUGFIX: no need for mock central here 2014-02-27 12:15:41 +11:00
Sam
a4d7942dbd BUGFIX: Don't blow up on junk referers 2014-02-27 12:03:38 +11:00
Sam
9551f4aeea PERF: calculate scores for topics/posts faster
Only look at topics that changed in last day for 15 minuted schedule
Do a full recalc weekly, just in case
2014-02-27 11:45:40 +11:00
Sam
557af84ae2 FIX: broken spec 2014-02-26 10:52:11 +11:00
Sam
50a8d3caae BUGFIX: sso to send welcome emails 2014-02-26 10:28:03 +11:00
Sam
440435f023 FEATURE: SSO to handle return_path automatically 2014-02-26 09:58:30 +11:00
Robin Ward
9ebcdfba1f Merge pull request #2005 from eriko/plugin_store_delete
clean up plugin store when removing data instead of setting the value to...
2014-02-25 11:36:05 -05:00
Sam
6f31d3f0e5 FEATURE: single sign on support
Added support for outsourcing auth to a different website, documentation on meta
2014-02-25 14:31:03 +11:00
Erik Ordway
db411860c2 clean up plugin store when removing data instead of setting the value to nil. 2014-02-24 16:11:31 -08:00
Robin Ward
4cd5ccdf1f BUGFIX: Don't return child categories if you can't see the parent
category.
2014-02-24 14:52:41 -05:00
Robin Ward
3151f59bc9 REFACTOR: We don't cache the json for the Site model anymore, so let's
rename and remove the methods leftover from that.
2014-02-24 14:25:37 -05:00
Wojciech Zawistowski
d555df28f2 PostsController tests clean up. 2014-02-24 18:14:35 +01:00
Robin Ward
7aaa70770b Remove old onebox fixtures 2014-02-21 16:04:15 -05:00
Robin Ward
1aa27ade17 FEATURE: If you don't select any topics to "Dissmiss Read" it does all
by filter.
2014-02-21 15:18:45 -05:00
Robin Ward
a07e9f7e71 FEATURE: Bulk reset read status. 2014-02-21 15:18:45 -05:00
Neil Lalonde
5fd390c600 FIX: nuke spammer from flags page 2014-02-21 14:14:30 -05:00
Sam Saffron
451598c511 BUGFIX: regresses correct job execution 2014-02-21 16:05:19 +11:00
Sam Saffron
9a3af8997b BUGFIX: handle partial job failure in multisite
log all failures
2014-02-21 15:31:15 +11:00
Sam Saffron
2ab76f60d1 FEATURE: Discoruse.handle_exception
to report exception via sidekiq helper, adds extra context
2014-02-21 14:30:25 +11:00
Robin Ward
d95887c57d CHANGE: We now include the _escaped_fragment_ support by default, but
only if the crawler check fails. It is a fallback for non-google search
engines that support the Ajax crawling API.
2014-02-20 17:02:26 -05:00
Robin Ward
c4b5455c21 REFACTOR: Rename GooglebotDetection to CrawlerDetection because we
will likely whitelist more crawlers in the future.
2014-02-20 16:07:02 -05:00
Robin Ward
b8448b6e39 Merge pull request #1982 from velesin/posts_controller_replies_tests
Adds tests for PostsController#replies.
2014-02-20 13:36:31 -05:00
Neil Lalonde
b696c96a19 Look at the age of a user's first post to determine if the user can be nuked, instead of looking at when the user registered. 2014-02-20 12:29:40 -05:00
Wojciech Zawistowski
cfbeba84d2 Adds tests for PostsController#replies. 2014-02-20 17:38:13 +01:00
Vikhyat Korrapati
e781a758ad Preserve spoiler tags in post excerpts. 2014-02-20 15:01:44 +05:30
Régis Hanol
d443ddd43d Merge pull request #1922 from joallard/language-toggle
Allow users to toggle interface language in their preferences
2014-02-19 18:28:00 +01:00
Wojciech Zawistowski
5e8db5ce14 Adds specs for PostsController#by_number. 2014-02-19 17:41:17 +01:00
Sam
2a8734f0d5 Suppress search in topic unless we have more than 10 posts
(configurable in site setting)
2014-02-19 08:59:18 +11:00
Robin Ward
18e98851e3 Use lower case group names in URLs 2014-02-18 16:43:19 -05:00
Sam
43612e9fde Merge pull request #1971 from velesin/posts_controller_refactoring
Refactors PostsController and adds unit tests.
2014-02-19 08:34:40 +11:00
Robin Ward
f19b0b5fe0 Include members count on groups page. 2014-02-18 16:17:04 -05:00
Neil Lalonde
997a7c676e If flagging a topic with only one post, flag the post instead 2014-02-18 15:18:31 -05:00
Jonathan Allard
0592420e52 Add a site setting to allow users to toggle I18n.locale
It is false by default.
2014-02-18 14:54:00 -05:00
Jonathan Allard
c513725f26 Allow users to toggle interface language in their preferences 2014-02-18 14:53:59 -05:00
Robin Ward
3f3c07f136 FEATURE: Can bulk update the notification level of topics 2014-02-18 13:02:22 -05:00
Neil Lalonde
d0ecccb7e4 Translate asterisks in ip addresses to mask format so people can enter things like 127.*.*.* in screened ip addresses form 2014-02-18 13:00:55 -05:00
Wojciech Zawistowski
5b9a4d3581 Refactors PostsController and adds unit tests. 2014-02-18 17:19:38 +01:00
Neil Lalonde
6c23a1903e FIX: show ip address with mask again on /admin/logs/screened_ip_addresses 2014-02-18 10:33:08 -05:00
Sam
884346cbea Merge pull request #1951 from thoughtbot/bb-erb
Use ERB to pull conf files into app
2014-02-18 16:23:55 +11:00
Stephan Kaag
f12925887c Drop Rails3 support 2014-02-17 19:42:08 +01:00
Régis Hanol
77e0096142 Merge pull request #1959 from chris-ramon/patch-1
fix typos in posts_controller_spec.
2014-02-17 09:48:04 +01:00
Sam
abb2de22ab BUGFIX: search could break when expanding 2014-02-17 14:34:14 +11:00
Sam
2b10fdc97f FEATURE: search auto scopes on topic first 2014-02-17 13:54:51 +11:00
Sam
23af46a66c Merge pull request #1960 from verg/subcategory-search-links
Fix subcategories links from search
2014-02-17 10:33:35 +11:00
verg
f723f11443 Fix subcategories links from search 2014-02-16 12:49:20 -05:00
Christian Ramón
566d25ea75 fix typos in posts_controller_spec.
fixing 'suceeds' typo.
2014-02-16 12:17:36 -05:00
Neil Lalonde
d298e2e065 Detect Googlebot from user agent and use a different layout that doesn't load javascript 2014-02-15 17:54:34 -05:00
Britt Ballard
60e1a5aa69 Use ERB when importing conf files into app 2014-02-14 16:14:55 -08:00
Régis Hanol
3f3c9ca7cb FEATURE: add filters on email logs 2014-02-15 00:50:08 +01:00
Robin Ward
2f78dc775d FIX: double periods. How did that work?? 2014-02-14 17:57:38 -05:00
Robin Ward
16c6759818 FIX: i18n integrity check was not ignoring comments properly 2014-02-14 14:47:52 -05:00
Neil Lalonde
35dae76bbd Log when and why an email was not sent in email_logs 2014-02-14 13:06:39 -05:00
Régis Hanol
b89d328de2 display/preload the logs of the last/current operation 2014-02-13 13:31:14 -08:00
Régis Hanol
e7472dc374 readonly mode 2014-02-13 13:31:13 -08:00
Régis Hanol
3be1b5569a backups controller & specs 2014-02-13 13:31:13 -08:00
Régis Hanol
8344f0d8fd remove old import/export code 2014-02-13 13:31:13 -08:00
Neil Lalonde
8711762143 Users who have made no more than one post can delete their own accounts from their user preferences page. 2014-02-13 13:52:06 -05:00
Sam
e8aa85d783 FEATURE: unread pms go in front of notification report
also refactor fat controller
2014-02-13 17:27:50 +11:00
Sam
4ff6780758 Merge pull request #1935 from eriko/remove_cas
Remove cas
2014-02-13 17:26:20 +11:00
Sam
81a4b4d97e Merge pull request #1939 from lukemelia/patch-1
Fixed typo in test name
2014-02-13 17:15:49 +11:00
Robin Ward
f73a3f252a FIX: Don't allow parent categories to be deleted. Also, remove
duplicated logic and rely on the server response for `can_delete`
status.
2014-02-12 17:24:25 -05:00
Robin Ward
a963dd9081 Support embeddable_host values that contain a HTTP/HTTPs protocol 2014-02-12 15:56:06 -05:00
Luke Melia
e4ff06baad Fixed typo in test name 2014-02-12 15:24:44 -05:00
Robin Ward
669247977b FEATURE: Show the posts count on the groups page. It seems a bit odd
that it uses a new AJAX call, but I wanted to keep the count separate
from the group object itself.
2014-02-12 14:01:36 -05:00
Robin Ward
318e692290 FIX: If there is an exception when parsing one email, don't stop all
work, return an error code and continue.
2014-02-12 12:08:34 -05:00
Sam
9ec52d9425 BUGFIX: mailing list mode broke regular email 2014-02-12 16:51:26 +11:00
Sam
6fbd73d0eb include rb_trace to help debugging any hanging specs 2014-02-12 13:33:24 +11:00
Sam
71a38542a4 FEATURE: automatic orphan recovery
BUGFIX: improve scheduler robustness, in case redis is disconnected during operation

If sidekiq is terminated while task is running, it will be picked up and ran again
New owner on tasks to help debugging
better #stop semantics for tests
2014-02-12 13:33:24 +11:00
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