Commit Graph

2475 Commits

Author SHA1 Message Date
Régis Hanol 522e0dc9ca Merge pull request #3964 from keepcosmos/add-s3-region
Add new s3 region
2016-01-19 09:16:48 +01:00
Sam 665fc44741 FIX: message_archived? not set correctly for groups 2016-01-19 18:35:46 +11:00
Guo Xiang Tan 0812807a53 FIX: Use declared constant. 2016-01-19 10:58:15 +08:00
Régis Hanol 61cc776fdd FIX: only send email notifications for regular and whisper type of posts 2016-01-19 01:39:57 +01:00
Régis Hanol 3083657358 FEATURE: better email in support
FEATURE: new incoming_email model
FEATURE: infinite scrolling in emails admin
FEATURE: new 'emails:import' rake task
2016-01-19 00:57:55 +01:00
keepcosmos c53b4ae66d add s3 region 2016-01-18 22:50:15 +09:00
Sam ca3e2b4da3 FEATURE: you can not drill down and see why you have badges
Clicking on badges filters down the list to a particular user.
2016-01-18 17:59:20 +11:00
Guo Xiang Tan a055c37939 Merge pull request #3956 from tgxworld/fix_clashing_slug
FIX: Clashing category slug.
2016-01-18 10:15:13 +08:00
Neil Lalonde b8299a2710 log when staff blocks/unblocks someone 2016-01-14 15:05:11 -05:00
Régis Hanol 737c606710 FIX: 'cancel_scheduled_job' wasn't working due to sidekiq upgrade 2016-01-13 09:08:26 +01:00
Guo Xiang Tan c60e360c90 FIX: Clashing category slug. 2016-01-13 15:32:29 +08:00
Robin Ward 1f8586168b FIX: Incorrect subfolder urls when embedding 2016-01-12 12:38:49 -05:00
Régis Hanol e2744fc19f FIX: adding the 'contains_messages' column back 2016-01-12 12:06:51 +01:00
Régis Hanol 8049dfdfda CLEANUP: remove 'contains_messages' leftover 💩 2016-01-12 11:29:26 +01:00
Régis Hanol 96aa5b865f FIX: mentions regex server-side (ie. don't count email addresses) 2016-01-12 09:53:09 +01:00
Régis Hanol cf0558cd33 FEATURE: properly style whisper email notifications 2016-01-11 17:47:17 +01:00
Robin Ward 2a84db73b5 Support IP addresses for embeddable hosts 2016-01-11 11:06:32 -05:00
Régis Hanol 98c0fac461 FEATURE: add small action post when adding/removing users in messages 2016-01-11 12:42:06 +01:00
Sam Saffron c2e45c8377 Update annotate and annotate models 2016-01-11 17:30:56 +11:00
Arpit Jalan 97e4f7f6d3 Enums that are used in tables need to be stable 2016-01-08 20:43:11 +05:30
Sam 3b45cd0fcb FIX: missing suspension reasons (and many other messages) 2016-01-08 14:57:05 +11:00
Régis Hanol c5f9ae0de1 FIX: username mentions weren't working when immediately followed by a dot 2016-01-07 22:23:01 +01:00
Arpit Jalan bfd21461df FIX: proper regex for category slug validation 2016-01-07 12:06:45 +05:30
Régis Hanol f654528aa4 FIX: user/group/category mention dialects with less strict matchers 2016-01-06 18:47:21 +01:00
Sam Saffron bfcb0a52bb correct previous commit 2016-01-06 20:36:09 +11:00
Sam Saffron 9f4efed03a PERF: don't publish notification state unless it changed 2016-01-06 20:36:09 +11:00
Neil Lalonde c7df6783a9 FIX: only invalidate password reset links using javascript 2016-01-04 11:48:54 -05:00
Guo Xiang Tan c1dbf5c1c4 FEATURE: Autolinking to category using hashtags. 2016-01-05 00:12:24 +08:00
Régis Hanol bebeeffc30 FIX: ico are images too 2015-12-31 11:40:23 +01:00
Gerhard Schlager 8517674a32 UX: Show translated badge names and badge groupings
FIX: Disallow renaming of system badges
FIX: Disallow renaming/deleting of system badge groupings
UX: Use "modern" button style in badge groupings dialog
2015-12-30 23:35:16 +01:00
Robin Ward 74780c1688 Add more server side unicode replacements for emoji 2015-12-30 14:46:52 -05:00
Robin Ward b17e5c99cc PERF: Use a regexp for unicode replacements 2015-12-30 14:35:25 -05:00
Sam a4587b18f5 FEATURE: allow users to archive messages from message page 2015-12-30 13:26:39 +11:00
Neil Lalonde 007326d3bd FIX: hidden posts that are edited by the author and unhidden could not be flagged by the same users again 2015-12-29 16:59:36 -05:00
Neil Lalonde 98eee2b5de FEATURE: when all posts in a topic are moved, close the topic 2015-12-29 16:01:55 -05:00
Neil Lalonde c3e81dba68 FIX: setting tl3_min_likes_received too high can make it impossible to be promoted to tl3. Cap the min number of days over which those likes must be received. 2015-12-29 12:59:59 -05:00
Sam 03ea0bfe22 FEATURE: allow users to archive messages
Messages are now in 3 buckets

- Inbox for all new messages
- Sent for all sent messages
- Archive for all messages you are done with

You can select messages from your Inbox or Sent and move them to your Archive,
you can move messages out of your Archive similarly

Similar concept applied to group messages, except that archiving and unarchiving
will apply to all group members
2015-12-23 11:09:30 +11:00
Arpit Jalan f40249faad FEATURE: make trust level 3 time period admin setting 2015-12-22 23:26:19 +05:30
Régis Hanol a9099f9e23 SECURITY: ensure we never accept fake images 2015-12-21 16:08:14 +01:00
Sam f9e6e5a66a PERF: properly preload all category notification levels 2015-12-20 17:47:02 +11:00
Sam 63076a841e Merge branch 'refactor_user_page' 2015-12-20 16:50:33 +11:00
Sam a8b5192efd FEATURE: User page refactor
Re-organise user page so it is easier to find interesting info
split it into tabs

- Introduce notifications and messages tabs
- Stop couting stuff for the user page to speed up rendering
- Suppress more information when viewing your own profile
2015-12-20 16:45:49 +11:00
Régis Hanol e89d8e796e FIX: group messages notifications
Prevent double notifications when watching a group
Make sure mentions/quotes/replies in a group message shows up
2015-12-18 16:32:53 +01:00
Arpit Jalan 4c967d11b4 FEATURE: log site text changes 2015-12-18 19:42:06 +05:30
Guo Xiang Tan cca0896b9e FIX: Update all does not trigger callbacks. 2015-12-17 00:07:04 +08:00
Sam Saffron 436da215ae FIX: allow .network as a domain name 2015-12-15 18:01:31 +11:00
Régis Hanol 15c229195f FEATURE: notification_level on a per-group basis 2015-12-14 23:17:09 +01:00
Régis Hanol 93d1cc6294 add support for incoming emails in CC/BCC fields 2015-12-10 23:49:16 +01:00
Sam 8cf4d52cb6 FEATURE: split up group PMS on user page 2015-12-10 11:39:33 +11:00
Arpit Jalan e52852dd0f FIX: Autoclose message was not correct when immediate
FEATURE: Warn when setting auto-close for right now
2015-12-08 18:16:48 +05:30
Régis Hanol 3aa5129f54 FEATURE: allow group members to see all messages on group page 2015-12-07 23:19:33 +01:00
Régis Hanol a37d575d7d FEATURE: new 'My Groups' messages filter in user page 2015-12-07 18:37:03 +01:00
Régis Hanol 1cde276656 FEATURE: ability to send emails to a group 2015-12-07 17:01:08 +01:00
Guo Xiang Tan b6eb8f7793 FIX: Wrong period for quarterly reports. 2015-12-07 21:04:34 +08:00
Régis Hanol 578f606a1a add 'incoming_email' to groups 2015-12-07 12:39:28 +01:00
Sam 7f60693b46 add missing filter 2015-12-02 16:16:19 +11:00
Sam 9899e8d4a5 FEATURE: First class messages to groups, you can select a group as a target of a message 2015-12-02 15:49:43 +11:00
Sam d1a5d8ea62 FEATURE: show group mentions and topics in groups page 2015-12-01 16:52:43 +11:00
Sam ad3dd161e7 FEATURE: first class group mentions built in
If you allow a group to be mentioned it can be mentioned with the @ symbol.

Keep in mind as a safety mechanism max_users_notified_per_group_mention is set to 100
2015-11-30 17:08:43 +11:00
Régis Hanol 914b854d92 send invite & message notification emails immediately 2015-11-27 19:09:35 +01:00
Robin Ward 5e93140f85 FEATURE: Can override any translation via an admin interface 2015-11-27 11:35:19 -05:00
Arpit Jalan 6354324f2f FIX: validate automatic membership email domains 2015-11-27 12:35:33 +05:30
Sam 55b6f1aaa0 more fields needed flagging as HTML fields 2015-11-27 12:22:54 +11:00
Sam 43d63367fd PERF: stop loading handlebars and ember compilers in prod
(this removes a nice 50K from our initial payload and saves memory)

Also fixes invalid HTML automatically if added to HEAD or /BODY
2015-11-27 11:59:01 +11:00
Régis Hanol ba0df7e4cd rename 'is_support' to 'contains_messages' 2015-11-26 18:40:54 +01:00
Régis Hanol e8a6ff4808 prevent users from ever changing the category of a topic in a support category 2015-11-26 18:31:24 +01:00
Régis Hanol 0d54c18c8b new hidden 'allow_staged_accounts' setting 2015-11-26 18:31:23 +01:00
Régis Hanol 09bfe49254 FIX: don't automagically downsize uploaded images that are larger than 10MB
FIX: don't optimize GIFs since ImageOption was disabled for GIFs (too slow)
2015-11-26 18:16:47 +01:00
Robin Ward 8eeb027c65 Can revert changes to email templates 2015-11-20 12:30:21 -05:00
Robin Ward f5b34d5f53 FEATURE: Admin interface for editing email templates 2015-11-19 16:39:34 -05:00
Sam 88f1a8f0b1 Merge pull request #3821 from mpalmer/letter-avatar-proxy
Proxy letter avatars by default
2015-11-19 20:02:16 +11:00
Régis Hanol 31a54377be staged users automatically watches all topics they participates in 2015-11-18 22:24:46 +01:00
Régis Hanol ff10eb32a6 don't return staged users in mentions 2015-11-18 20:57:49 +01:00
Robin Ward 1be4b6a8f5 Refresh I18n customizations on change 2015-11-17 16:15:09 -05:00
Régis Hanol 92ba6125c4 FEATURE: new 'automatically_unpin_topics' user preference 2015-11-17 18:21:40 +01:00
Robin Ward 060ce9bf2a FEATURE: Overwrite server side I18n keys with API 2015-11-13 16:35:02 -05:00
Robin Ward 3939331dec FIX: Staff was getting 500 when editing post in deleted topic 2015-11-13 11:35:23 -05:00
Sam Saffron 6dd4bc7d57 FEATURE: support group owner, capable of controlling group membership
Group owners are regular users that can add or remove users to a group
The Admin UX allows admins to appoint group owners
The public group UX will display group owners first and unlock UI to
add and remove members

Group owners can only be appointed on non automatic groups
Group owners may not appoint another group owner
2015-11-10 00:56:57 +11:00
Sam Saffron ffa523a543 FIX: when moving posts, retain creator and date from OP 2015-11-07 15:17:47 +11:00
Robin Ward e2b5919579 FIX: Don't normalize URLs before fetching them, only for saving them 2015-11-06 16:25:11 -05:00
Robin Ward e2a663bff1 Merge pull request #3812 from gwwar/emoji-embed
FIX: allow emoji class when crawling embedded content
2015-11-06 14:52:59 -05:00
Robin Ward 8ba7c06b7d Merge pull request #3735 from riking/patch-4
FIX: Discourse.BaseUri should not default to /
2015-11-06 14:52:19 -05:00
Régis Hanol 86f76e5b4d FIX: better plugin emojis API 2015-11-06 15:02:40 +01:00
Matt Palmer af4a48a67c Use Discourse.current_hostname
Much cleaner.
2015-11-06 14:13:44 +11:00
Matt Palmer c09f345cff Proxy letter avatars by default
On sites that don't otherwise configure an avatar fallback, Discourse will
now tell the client to get its letter avatars from a location which nginx
proxies to the centralised `avatars.discourse.org` service.  This alleviates
privacy concerns, whilst still providing some degree of performance benefit
(no need for every site to delay avatar response by 300ms for image
rendering).

It is still possible to gain the benefits of global image caching and the
lower latency of requesting directly from a CDN, by explicitly changing the
`external_system_avatars_url` site setting to
`https://avatars.discourse.org/letter/{first_letter}/{color}/{size}.png`.
2015-11-06 14:13:44 +11:00
kerryliu b7803fc68e FIX: allow emoji class when crawling embedded content, add rspc-html-matchers 2015-11-05 18:51:26 -08:00
Régis Hanol 13e96ffd3b FEATURE: add support for custom emojis via plugins 2015-11-05 17:25:26 +01:00
Régis Hanol 7e255a151b PERF: only use fulltext when searching for a user (I checked, it's enough) 2015-11-04 23:04:37 +01:00
Régis Hanol ff0c12efa2 Merge pull request #3878 from gdpelican/optimize-all-allowed-users
Optimize all_allowed_users query
2015-11-02 17:06:36 +01:00
Régis Hanol 5c0fb34eee FIX: resize emoji job was generate errors 2015-10-30 23:31:30 +01:00
Arpit Jalan 9f8d6b6088 FIX: allow exisiting users to be invited to topic/message when enable_local_logins is disabled 2015-10-30 11:28:05 +05:30
James Kiesel 2fc52e26a6 Optimize all_allowed_users query 2015-10-29 19:39:30 +02:00
Neil Lalonde 32bc9a8f93 FIX: some reports ignored date range parameters 2015-10-19 16:30:34 -04:00
Arpit Jalan a439500bac FIX: do not mark post as spam if the previous flag was disagreed 2015-10-17 01:30:53 +05:30
Guo Xiang Tan 600e42c2ba FIX: Race condition when wrapping `PostCreator#create` in a transaction. 2015-10-15 14:42:40 +08:00
Sam 5b16adc0e8 FIX: sharing badges were off by 1 2015-10-13 12:32:29 +11:00
Neil Lalonde 3ef16a7711 FIX: permalinks redirect on subfolder installs could add the subfolder to the url twice 2015-10-12 16:54:53 -04:00
Sam e17978a203 FIX: do not notify in title if you created the post 2015-10-12 12:45:04 +11:00
Sam 6246dd0aa2 PERF: memoize to avoid N+1 query in category page 2015-10-02 12:35:47 +10:00
Sam 55c0f6a20c PERF: avoid method_missing 2015-10-02 12:27:38 +10:00
Sam 6f43b575a8 FEATURE: no need to cap new and unread together anymore
- leave unread alone
- cap new at 500 per site, with a site setting
2015-10-01 17:17:15 +10:00
Régis Hanol 54d6d24cbf FIX: timing issue with edits and cook post processing 2015-09-29 18:51:26 +02:00
Sam bc8c6d1a97 PERF: optimise new/unread query
This is part 1 of the work, need some internal cleanup to follow

new query seems to handle very large sets very efficiently
2015-09-29 11:55:09 +10:00
Sam 6c37b26b24 Correct site spec 2015-09-28 16:50:24 +10:00
Sam 1061a9ed06 PERF: introduce full cache for site json when anon 2015-09-28 16:50:24 +10:00
Sam 181ab89485 PERF: introduce fragment caches in site serializer 2015-09-28 16:50:24 +10:00
Sam edfd870249 PERF: omit needless query 2015-09-28 16:50:24 +10:00
Sam aefedfafea PERF: increase caching of category descriptions 2015-09-28 16:50:24 +10:00
Robin Ward 43c7320f55 FIX: Allow really long links to work 2015-09-25 14:07:20 -04:00
Sam 57870b970d correct hack and move to oneboxer 2015-09-25 20:14:53 +10:00
Sam 2422289c8b FIX: whispers should not be revealed in reply to, or reply expansion
FEATURE: mark whisper as experimental
FIX: badges should never apply to whispers
2015-09-25 10:16:19 +10:00
Régis Hanol fb62a7c0c3 FIX: only downsize user card & profile backgrounds 2015-09-24 21:04:06 +02:00
Robin Ward a1877e8292 FIX: `max_topics_per_day` was not working 2015-09-24 13:52:45 -04:00
Régis Hanol f29cd5f192 Merge pull request #3808 from gschlager/i18n-patch4
FIX: Use translated badge name and slug within notifications
2015-09-24 09:46:34 +02:00
Sam ffb8cb8cac FEATURE: remove dependency of Redcarpet
PERF: cache fancy_title in topics table

New pure ruby implementation is far more flexible and easier to amend.
2015-09-24 13:37:53 +10:00
Gerhard Schlager 25e9aa7653 FIX: Use user's locale for badge notifications 2015-09-24 00:33:33 +02:00
Neil Lalonde 690f839619 FIX: uncategorized topics list is 404 page when allow_uncategorized_topics is turned off 2015-09-23 15:21:36 -04:00
Neil Lalonde 5ca26a7707 FEATURE: add site setting use_admin_ip_whitelist to enable/disable the whitelisting of admins by IP address 2015-09-23 12:15:08 -04:00
Régis Hanol 36309e50cc Merge pull request #3767 from tgxworld/track_user_profile_views
Track user profile views
2015-09-23 11:38:18 +02:00
Régis Hanol 1aad58b642 Merge pull request #3781 from tgxworld/feature_log_category_settings
Feature log category settings
2015-09-23 11:34:08 +02:00
Sam 3853e3cfdc PERF: omit 2 queries on every full page load 2015-09-23 16:47:17 +10:00
Sam 613761d1cd FEATURE: upgrade to Rails 4.2.4 2015-09-23 15:24:30 +10:00
Sam a61765b9e4 PERF: improve perf of initial payload
also reduce  querying in topic query
2015-09-23 13:13:50 +10:00
Robin Ward 9f89aefdd3 FIX: Don't update the last poster when a whisper is made 2015-09-22 12:23:37 -04:00
Régis Hanol 4f7140fb32 FIX: properly filter whispers in user stream 2015-09-22 00:50:52 +02:00
Neil Lalonde 2ae032c9b0 FIX: categories page would sometimes show no topics, even if there are some visible topics to show 2015-09-21 18:13:14 -04:00
Régis Hanol fe656fb04d FIX: select appropriate period when redirecting to top 2015-09-21 20:28:20 +02:00
Sam f74c21d2e7 FIX: tracking of new/unread/latest in category/subcategory was broken 2015-09-21 10:36:20 +10:00
Régis Hanol a3831a7003 FIX: uploading an animated user card/profile background was converted to a still image 2015-09-20 22:01:03 +02:00
Robin Ward d062d64278 FIX: Sometimes posts can't be created. Don't raise errors in that case. 2015-09-18 15:07:31 -04:00
Robin Ward c1a9e32b48 FIX: When recovering a post, it should recreate user actions 2015-09-18 12:48:43 -04:00
Guo Xiang Tan f39b9124b6 FEATURE: Log staff actions for Category changes. 2015-09-18 10:53:08 +08:00
Sam 7067d32c33 protect against bad data 2015-09-18 11:27:56 +10:00
Sam 287411525a PERF: add missing index on group_users 2015-09-18 10:43:53 +10:00
Sam c1ecd6f4ce update annotations 2015-09-18 10:41:10 +10:00
Régis Hanol 07e7b07b63 FIX: refreshing gravatar wasn't working 2015-09-17 19:42:44 +02:00
Arpit Jalan f2c1dbaa68 FIX: return 422 if the invite is already redeemed 2015-09-16 17:30:00 +05:30
Guo Xiang Tan 21725cc907 FEATURE: Admin dashboard data for user profile views. 2015-09-16 14:48:31 +08:00
Guo Xiang Tan 7acc93b2a0 FEATURE: Track user profile views. 2015-09-16 14:48:31 +08:00
Guo Xiang Tan f41bcafe8d FEATURE: Add views to UserProfile. 2015-09-16 14:48:06 +08:00
Guo Xiang Tan d30f454261 FEATURE: Create UserProfilerView. 2015-09-16 14:48:06 +08:00
Régis Hanol 0de00308af FIX: categories' notification_level wasn't serialized when hitting /categories 2015-09-15 14:58:22 +02:00
Neil Lalonde 30999de3e2 add support for reports of 'time to first response' from a set of users 2015-09-14 13:36:54 -04:00
Régis Hanol 2c06db67a9 fix the build 2015-09-14 10:48:24 +02:00
Régis Hanol b9a9a91335 FIX: couldn't set 'never' for the default email digest frequency setting 2015-09-14 10:36:25 +02:00
Guo Xiang Tan 5fb405cca2 FIX: Use custom date for redis key in `TopicViewItem.add`. 2015-09-14 11:17:28 +08:00
Sam f948ee9e26 FIX: ensure letter avatar service uses same algorithm 2015-09-14 09:42:21 +10:00
Robin Ward 5af0f5f80e FEATURE: Whisper posts 2015-09-11 14:05:21 -04:00
Régis Hanol 29f25dbf6e fix the build 2015-09-11 15:18:17 +02:00
Régis Hanol 93f9dcfcec FIX: don't overwrite custom uploaded avatar when selecting gravatar
FIX: remove unecessary serialized fields
2015-09-11 15:10:56 +02:00
Régis Hanol 0c58f08207 FIX: profile picture selector 2015-09-11 15:10:56 +02:00
Sam 6437cd0341 FEATURE: add support for generic external avatar services
This changes it so we only ship an avatar template down to the client
it has no magic, all it knows is how to plug in size
2015-09-11 15:10:56 +02:00
Sam 90d49d1497 correct paths used for external service 2015-09-11 13:18:07 +10:00
Kane York aca70805f1 FIX: Discourse.BaseUri should not default to / 2015-09-10 17:34:08 -07:00
Régis Hanol 2742602254 FEATURE: support for external letter avatars service 2015-09-11 02:12:40 +02:00
Régis Hanol e43034f08f Revert "FEATURE: SVG letter avatars (based on @eviltrout's spike)"
This reverts commit cd77465788.
2015-09-11 00:23:52 +02:00
Régis Hanol cd77465788 FEATURE: SVG letter avatars (based on @eviltrout's spike) 2015-09-11 00:11:48 +02:00
Sam c845fcb154 PERF: turn 3 queries into 1 2015-09-10 17:07:20 +10:00
Sam cd8d82aa31 correct file size and add note about impending breakage of image_optim 2015-09-10 14:37:46 +10:00
Robin Ward b3d2982be7 FIX: Allow trailing `_` because we used to. 2015-09-09 14:06:36 -04:00
Régis Hanol 31e8309f05 FIX: ensure we never have a string when an enum is Fixnum - Take 2 2015-09-09 14:34:44 +02:00
Robin Ward b6343b1e10 Merge pull request #3697 from riking/patch-6
FEATURE: Allow plugins to add admin dashboard warnings
2015-09-08 16:49:58 -04:00
Régis Hanol d5a2029026 FIX: category permissions weren't properly loaded when /categories is the homepage
FIX: don't scope to a specific category when creating a new topic from /categories
2015-09-07 18:52:53 +02:00
Sam 335be272ff FEATURE: implement capping of new/unread
We cap new and unread at 2/5th of SiteSetting.max_tracked_new_unread

This dynamic capping is applied under 2 conditions:

1. New capping is applied once every 15 minutes in the periodical job, this effectively ensures that usually even super active sites are capped at 200 new items

2. Unread capping is applied if a user hits max_tracked_new_unread,
  meaning if new + unread == 500, we defer a job that runs within 15 minutes that will cap user at 200 unread

This logic ensures that at worst case a user gets "bad" numbers for 15 minutes and then the system goes ahead and fixes itself up
2015-09-07 12:03:17 +10:00
Sam 87cd3a3b6a Merge pull request #3728 from tgxworld/add_trigger_post_process
FEATURE: Add a trigger for plugins to include their own post processing jobs.
2015-09-07 08:42:43 +10:00
Guo Xiang Tan cbb86f9bf6 FEATURE: Add a trigger for plugins to include their own jobs. 2015-09-04 22:59:39 +08:00
Sam 1f31435a7b correct handling of data hash parsing 2015-09-04 13:34:21 +10:00
Sam a54e8f3c5e FEATURE: live refresh notifications as they happen 2015-09-04 13:20:33 +10:00
Régis Hanol 80041b874c FIX: don't show new topic notifications in homepag for suppressed categories 2015-09-03 19:18:46 +02:00
Régis Hanol d34f42d2f7 FIX: hide category column in topic list only when the current category has no children 2015-09-02 23:46:04 +02:00
Régis Hanol 2b9b29c8c8 FIX: ensure CategoryUser consistency 2015-09-02 22:02:31 +02:00
Régis Hanol 5984b62347 FIX: ensure we remove 'category_users' records when a user is deleted 2015-09-02 20:43:15 +02:00
Régis Hanol a501947d67 FEATURE: suppress categories from the homepage 2015-09-02 20:25:18 +02:00
Sam 262f561a87 FEATURE: relax username rules to allow - and . and leading _
This relaxes our very strict username rules to allow for some long asked for requests

- leading _ is now allowed
- . is allowed except for trailing char and confusing extensions like .gif .json
- dash (-) is now permitted
2015-09-02 12:13:44 +10:00
Neil Lalonde 1bd0f5b015 FEATURE: group can grant a trust level when a user is added 2015-09-01 16:52:12 -04:00
Kane York 65790452d8 Clean up the test checks when done 2015-09-01 13:32:35 -07:00
Arpit Jalan eb96016043 FEATURE: copy invite link for topic invites 2015-08-31 21:15:15 +05:30
Arpit Jalan 4e5228dc9e FIX: don't send notification emails to deactivated user 2015-08-31 12:35:12 +05:30
Arpit Jalan 4ad07b8c09 FEATURE: generate invite token 2015-08-28 18:29:31 +05:30
Régis Hanol d96531b163 FEATURE: bronze/silver/gold badges for popular links 2015-08-27 18:52:31 +02:00
Robin Ward f9717da28f Merge pull request #3695 from riking/patch-10
FIX: Consider reserved usernames as not 'available'
2015-08-26 10:51:50 -04:00
Sam ea9bc68ee5 PATCH: in some cases this is being turned to a string workaround for now 2015-08-26 16:19:21 +10:00
Kane York 1586886bf9 FIX: Consider reserved usernames as not 'available'
https://meta.discourse.org/t/reserved-usernames-ignored-by-invites/32490
2015-08-25 17:24:07 -07:00
Kane York 3cbfc45bf6 FEATURE: Allow plugins to add admin dashboard warnings 2015-08-25 17:20:14 -07:00
Sam 00e59bdc62 FIX: display warning when user is tracking too many topics
FEATURE: allow admins to bump up number of tracked topics if needed
using max_tracked_new_unread
2015-08-25 15:40:50 +10:00
Arpit Jalan 99edcddafb FEATURE: show pending/redeemed invite count in tabs 2015-08-25 01:12:46 +05:30
Sam 84fdc655ad correct retry logic 2015-08-24 10:28:38 +10:00
Sam 6451495ec6 FIX: only override sso name / username if it is supplied 2015-08-24 10:24:33 +10:00
Neil Lalonde d8d18ee0c3 FIX: emoji upload on subfolder install 2015-08-21 16:42:37 -04:00
Régis Hanol bef80633b1 FEATURE: global admin override of most of the user preferences 2015-08-21 20:39:21 +02:00
Robin Ward 7ffdc43091 Include the error messages so we can debug this easier 2015-08-21 12:43:10 -04:00
Robin Ward 146f2eab7f Can edit settings on the embedding page 2015-08-20 15:56:05 -04:00
Robin Ward d1c69189f3 FEATURE: Can edit category/host relationships for embedding 2015-08-20 15:56:04 -04:00
Régis Hanol 49996bcdea FIX: don't suggest name when email is empty 2015-08-20 11:59:28 +02:00
Sam dd3c685d39 Merge branch 'master' of github.com:discourse/discourse 2015-08-20 12:23:16 +10:00
Régis Hanol 9ae9aed010 FIX: change **default** notification state when a topic is recategorized within 5 days of creation 2015-08-19 22:40:20 +02:00
Sam 9364194f36 cut out an exception 2015-08-19 16:57:26 +10:00
Sam 157b118559 FIX: pointless error in log when failing to save post
rate_limit gets fired for rollback on in which case there is not post_number
2015-08-19 16:28:04 +10:00
Jonathan Brachthaeuser fc2fe5f02d Use userfield serializer in json dump
Use userfield serializer for json dump to make sure
that also the options are serialized correctly.
2015-08-17 21:44:13 +02:00
Robin Ward 2d4729782e FIX: Support quarterly on user directory 2015-08-17 13:58:40 -04:00
Régis Hanol 827ea641b0 FIX: Use File.size instead of IO.size 2015-08-17 18:57:28 +02:00
Sam f9deebefb9 FIX: include theme vars in site customizations 2015-08-17 10:59:46 +10:00
Régis Hanol b8cf797e31 FIX: ensure Badge consistency 2015-08-14 13:03:49 +02:00
Sam e82f892c2d FIX: allow global settings to include keys that have numbers in them 2015-08-14 17:01:21 +10:00
Sam e670ebb433 FEATURE: allow backup settings to be overriden by globals
FEATURE: allow backup interval of up to 30 days
FIX: if a custom file exists in backup directory look at its date
FEATURE: site setting automatic_backups_enabled default true
2015-08-14 16:28:29 +10:00
Arpit Jalan eb941475fa FIX: mark invite accepted notification as read 2015-08-13 11:11:54 +05:30
Régis Hanol 6669a2d94d FEATURE: per-topic unsubscribe option in emails 2015-08-12 23:00:16 +02:00
Régis Hanol ffbaf8c542 FEATURE: automatically downsize large images 2015-08-12 18:33:13 +02:00
Sam 75b4972682 posts with no url should return a 404 2015-08-12 07:28:54 +10:00
Robin Ward b02d624503 FIX: Okay, add support for hosts that have trailing paths 2015-08-10 15:26:58 -04:00
Robin Ward bd631e343a FEATURE: Can create stylesheets for embedded comments 2015-08-10 10:21:04 -04:00
Régis Hanol 15418f3d44 FEATURE: new 'backup_frequency' site setting 2015-08-07 17:34:58 +02:00
Sam fd63d89753 FEATURE: simpler definition of enum types 2015-08-07 11:41:48 +10:00
Neil Lalonde a4a14e6d5a add back the warning based on Sidekiq queue size, but only when the queue size is 100k or more 2015-08-06 16:46:49 -04:00
Sam 4486879fd2 select less data 2015-08-05 16:09:21 +10:00
Sam a51386a280 FEATURE: allow efficient preloading of custom fields in topic list 2015-08-05 16:09:21 +10:00
Sam a3c6cd7b38 FIX: handle link tracking correctly for cdn based urls
(usually attachments)
2015-08-05 12:15:08 +10:00
Sam 54b780439d FIX: CDN should always be whitelisted correctly 2015-08-05 11:49:11 +10:00
Sam c76cb671ad unblock early. 2015-08-05 10:49:59 +10:00
Sam 34122e06df FIX: if post creation fails, raise an exception 2015-08-05 10:47:38 +10:00
Sam 3c8ae643b2 UX: improve handling of users in queued-posts
- Display an icon on already blocked users
- Automatically unblock users that you approve
2015-08-04 12:56:37 +10:00
Sam 7b8b96446e FEATURE: track statistics around post creation
- how long were people typing?
- how long was composer open?
- how many drafts were created?
- correct, draft saved to go away after you continue typing

store in Post.find(xyz).post_stat
2015-08-03 14:29:15 +10:00
Robin Ward 76aa0795b3 Use small actions for moving posts 2015-07-31 16:30:18 -04:00
Robin Ward cf91bca0cd FIX: Small actions should show descriptions on the user stream 2015-07-31 14:25:49 -04:00
Robin Ward 00ecec1ee4 FIX: Don't log empty bodies from moderation actions 2015-07-29 14:54:33 -04:00
Régis Hanol faf4f44776 FEATURE: make pin expiration mandatory 2015-07-29 16:34:21 +02:00
Neil Lalonde 7518918b8f FEATURE: add quarterly period to Top page 2015-07-28 12:31:42 -04:00
Robin Ward dc8a68fd29 FEATURE: New "Dropdown" user field type 2015-07-28 12:30:21 -04:00
Robin Ward bb93a345eb UX: Use smaller messages for moderator actions. 2015-07-27 10:09:21 -04:00
Sam 2876725e1b REFACTOR: remove hacky search from discovery 2015-07-27 16:47:06 +10:00
Sam 786cf6e61f format does not allow numbers 2015-07-23 15:33:38 +10:00
Sam c056c3ba7e FEATURE: allow users to specify a second hostname if needed
(very rarely needed feature, mostly for multisite and origin pull cdns)
2015-07-23 15:22:54 +10:00
Régis Hanol d456460d33 FIX: don't butcher GIFs
Use 'gifsicle' instead of 'convert' to resize & optimize GIFs

FIX: don't even try to fix GIFs orientation
FIX: use 'allow_animated_thumbnails' site setting for user profile backgrounds & user cards
2015-07-22 17:10:42 +02:00
Sam 04e9fdc610 make query less strange, no need for outer join
categories must exist for all topics
2015-07-21 22:45:20 +10:00
Sam 2847ec0af1 this join is brutal, hardcoding user id is way more efficient, but in pg 2015-07-21 22:26:51 +10:00
Sam 3b61b098ab PERF: optimise original query instead of huge rewrite
better perf for all cases
2015-07-21 21:53:54 +10:00
Sam 4491813d22 Revert "Revert "PERF: optimise query that gathers topic tracking state""
This reverts commit 909be09f1a.
2015-07-21 21:48:07 +10:00
Sam 909be09f1a Revert "PERF: optimise query that gathers topic tracking state"
This reverts commit 343e417a55.
2015-07-21 17:35:50 +10:00
Sam 343e417a55 PERF: optimise query that gathers topic tracking state
(this query runs on the front page to figure out new and unread topics)
2015-07-21 17:14:30 +10:00
Sam e3d6c476f5 Merge pull request #3593 from tgxworld/cache_results_on_about_page
Cache results on about page
2015-07-21 10:04:51 +10:00
Guo Xiang Tan b0ea6764e0 PERF: Cache About#stats. 2015-07-20 22:45:05 +08:00
Arpit Jalan 5fc7545c01 UX: include more details on Permalinks page 2015-07-17 21:39:23 +05:30
Kane York 61ea8c6f72 FIX: Allow to change ownership on deleted users' posts 2015-07-15 15:29:35 -07:00
Régis Hanol b0802abae2 FIX: crop & optimize user background profile/card images 2015-07-15 17:15:43 +02:00
Sam b772d96f7a FEATURE: permalink normalization
Optionally allow admins to apply regex based normalization
to permalinks prior to matching.

This allows us to drop query string, or cleanly ignore slugs, etc.
2015-07-15 15:34:25 +10:00
Arpit Jalan e0c9054748 FEATURE: invite page tabs 2015-07-13 09:42:51 +05:30
Sam f533276507 FIX: do not publish all categories when a category changes.
minor fixes to UI, still needs more work for live refresh of category listing
2015-07-10 12:09:43 +10:00
Neil Lalonde 782dd13e78 FEATURE: track user visits on mobile and display on admin dashboard in a new Mobile section 2015-07-07 14:06:42 -04:00
Robin Ward 2c14acac72 Merge pull request #3236 from sigginet/patch-1
FIX: Added two user badge triggers
2015-07-07 11:25:11 -04:00
Neil Lalonde 8c84e60df6 FIX: application request numbers for prev 30 day period was for current 30 day period minus today, not previous 30 days 2015-07-06 15:01:43 -04:00
Neil Lalonde 86cd1a19cc FEATURE: page view stats for mobile view 2015-07-03 17:19:33 -04:00
Robin Ward bfb4dc0055 Merge pull request #3573 from gschlager/patch-1
FIX: Disable validation during thumbnail creation
2015-07-01 15:22:02 -04:00
Rob Yurkowski 0ad4a6f036 Correct typo in Redis settings
The typo prevents authentication to passworded instances.
2015-06-30 22:19:02 -04:00
Neil Lalonde 8e76e6e4b7 topics with no reply data were strings 2015-06-30 15:42:38 -04:00
Gerhard Schlager 2e8838a0cd FIX: Disable validation during thumbnail creation 2015-06-27 01:26:16 +02:00
Robin Ward b52e5d1536 FIX: `default_avatars` wasn't being used for some server side templates 2015-06-26 13:38:09 -04:00
Neil Lalonde 93d7edb810 FIX: reports of topics with no response and time to first response should not include replies to your own topic 2015-06-25 18:45:11 -04:00
Arpit Jalan 03665e8466 FIX: mark user as approved if an invite is already present 2015-06-26 01:57:29 +05:30
Sam 1edb5919fa PERF: don't count all likes twice on like 2015-06-25 17:19:32 +10:00
Sam 8252f4e110 FEATURE: allow use of redis sentinel via redis_sentinels
Use: DISCOURSE_REDIS_SENTINELS and DISCOURSE_REDIS_HOST to configure redis
sentinel
2015-06-25 16:51:48 +10:00
Régis Hanol 18f887772d FEATURE: allow plugins to add custom admin reports 2015-06-25 02:42:08 +02:00
Robin Ward 6422d5efbd Use the same component for similar topics as search results. 2015-06-24 15:08:22 -04:00
Régis Hanol f18098fd9b FEATURE: category dropdown in admin reports 2015-06-24 15:19:39 +02:00
Régis Hanol 80f258e51c FIX: don't count mentions in oneboxes 2015-06-24 11:44:58 +02:00
Robin Ward cb94a9000d Revert "Revert "Extract logic to save external avatar url""
This reverts commit 2d20e4c692.
2015-06-23 15:59:50 -04:00
Robin Ward 2d20e4c692 Revert "Extract logic to save external avatar url"
This reverts commit 18b8df3f32.
2015-06-23 15:45:34 -04:00
Robin Ward 18b8df3f32 Extract logic to save external avatar url 2015-06-23 15:23:19 -04:00
Sam 9f88d6e252 fix regression in visible notification detection 2015-06-23 06:14:22 +10:00
Régis Hanol b25a16ee3e FEATURE: 2 new reports: time to first response, topics with no response
FIX: relativeAgeMediumSpan was off by 1
REFACTOR: extracted decimalAdjust & round functions from the poll plugin
2015-06-22 19:46:51 +02:00
Régis Hanol 5a77f62181 PERF: poor SQL performances when counting notifications 2015-06-22 14:40:03 +02:00
Sam 41e427bd2e Work in progress, full page search 2015-06-22 18:09:08 +10:00
Sam 5eabf01c29 FIX: don't allow storage of post timings batch larger than 60 secs 2015-06-19 10:35:55 +10:00
Sam f0c74d7685 PERF: batch update post timings
previously we would issue a query per row in post timings,
this batches it
2015-06-18 17:02:10 +10:00
Sam 1343d40558 PERF: deleting a post in huge topics was timing out
- add missing index to user actions for fast retrieval by post
- add missing indexes to users for fast retrieval of staff
- only refresh topic_users liked/bookmarked cache for affected users
2015-06-18 09:58:49 +10:00
Neil Lalonde 76a14cd279 FIX: user visit stats on admin dashboard should show sum of values for 7 day and 30 day columns 2015-06-15 13:16:29 -04:00
Régis Hanol 81290d7f18 UX: sort staff members by username 2015-06-15 18:53:53 +02:00
Régis Hanol 87ab1cef8e FIX: destroy optimized images that cant' be migrated to new scheme
Since we can always recompute an optimized image from the original upload, there's no need to keep optimized images that are generating errors.
2015-06-15 18:30:11 +02:00
Robin Ward fb8ba5e137 FIX: `PG::UniqueViolation` when trying to use the same embed code
Previously providing an embed code already in use would result in
a logged server error. After this commit the error is gracefully
bubbled up from the `PostCreator`
2015-06-15 12:09:59 -04:00
Sam 05d343a921 EXTENSIBILITY: add point for topic loading 2015-06-15 16:25:54 +10:00
Sam 37dfb1b4b5 FEATURE: support for custom notification types
used by solved plugin
2015-06-15 14:18:03 +10:00
Régis Hanol bc9fd2c46d don't silence these errors 2015-06-12 20:11:23 +02:00
Régis Hanol 189cb3ff12 FEATURE: move migrate_to_new_scheme into a background job
- new hidden site setting 'migrate_to_new_scheme' (defaults to false)
- new rake tasks to toggle migration to new scheme
- FIX: migrate_to_new_scheme also works with CDN
- PERF: improve perf of the DbHelper.remap method
- REFACTOR: UrlHelper is now a class
2015-06-12 12:07:57 +02:00
Neil Lalonde 611b5f996e FIX: unpinned topics shouldn't remain pinned on categories page 2015-06-10 14:36:55 -04:00
Régis Hanol a52d31e25e FIX: properly handle external image download errors 2015-06-10 18:18:20 +02:00
Régis Hanol bdfdbcd217 FIX: we need the sha of the upload to create a thumbnail 2015-06-10 18:15:10 +02:00
Régis Hanol 90eca69e0a FEATURE: add a link to the topic in the banner for staff members 2015-06-09 19:31:14 +02:00
Robin Ward 7b6d6b76eb FEATURE: Multiple embeddable hosts
- Also refactors two site settings components into one, with tests
2015-06-09 13:25:43 -04:00
Arpit Jalan 545f19500d FIX: when sending private message emails do not check email_direct setting 2015-06-09 13:05:26 +05:30
Sam Saffron feeb509a97 SECURITY: expire all existing email tokens on password reset 2015-06-06 03:50:06 +10:00
Sam Saffron 4171eb758c SECURITY: expire all existing sessions if user changes passwords 2015-06-06 03:09:19 +10:00
Robin Ward c6cd1928be Simple "cook" for email imports from mailing lists 2015-06-05 11:46:36 -04:00
Régis Hanol 803083fc2e we don't care about convert output/errors 2015-06-04 19:16:52 +02:00
Arpit Jalan 725861f344 FIX: move draft cleanup to the dedicated method and add test 2015-06-03 14:35:54 +05:30
Sam Saffron 0fd1974838 FIX: leaving around useless drafts after posting 2015-06-02 20:28:33 +10:00
Sam Saffron d459cb95dc FIX: when advancing draft sequence remove old drafts 2015-06-02 20:28:33 +10:00
Régis Hanol 64e73e98fb FIX: allow the cooked_post_processor to download external uploads 2015-06-01 20:08:41 +02:00
Régis Hanol 81a699e2b0 better support for mixed content 2015-06-01 17:49:58 +02:00
Sam Saffron 83559bbf45 posts read may enter concurrently, retry 2015-06-01 11:55:07 +10:00
Sam Saffron 97f03e699d FIX: mixed local s3 store missing avatars 2015-06-01 11:17:42 +10:00
Régis Hanol acafa491b2 user avatar urls/templates refactor 2015-05-29 18:51:17 +02:00