Commit Graph

2255 Commits

Author SHA1 Message Date
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