Commit Graph

5500 Commits

Author SHA1 Message Date
Sam
12872d03be PERF: run post timings in background
This means that if a very large amount of registered users hit
a single topic we will handle it gracefully, even if db gets slow.
2018-01-19 08:27:29 +11:00
Robin Ward
34ed6088b9 FEATURE: New modal to show flags received for a user 2018-01-17 15:08:08 -05:00
Arpit Jalan
79eb9d7086 FEATURE: show header search results on search log term details page 2018-01-17 12:47:16 +05:30
Sam
3c0296c625 should be lower case 2018-01-17 17:16:33 +11:00
Kane York
ff91c43087 FEATURE: Keyboard shortcut to refocus composer (#5506)
It was very annoying to get back to the composer after losing it!

Added to the keyboard shortcuts help dialog, and reshuffled it a bit.
Translation keys were intentionally kept so our translators don't have
to copy paste to update.

This commit also fixes an incidental listener leak.
2018-01-17 17:15:03 +11:00
Marcus Baw
604c189440 remove superfluous 'the' from translation file (#5508)
Original text 'Use the HTML instead of the text for incoming email.' sounds odd for native English speakers. 
I propose the slight modification 'Use HTML instead of text for incoming email.'
2018-01-17 16:52:41 +11:00
Arpit Jalan
1208254961 FIX: validate presence of 'top menu' setting 2018-01-17 01:43:53 +05:30
Robin Ward
d74f609921 Rename key for defer flag -> ignore flag 2018-01-16 14:33:39 -05:00
Sam
7b562d2f46 FEATURE: much improved and simplified crawler detection
- phase one does it match 'trident|webkit|gecko|chrome|safari|msie|opera'
    yes- well it is possibly a browser

- phase two does it match 'rss|bot|spider|crawler|facebook|archive|wayback|ping|monitor'
    probably a crawler then

Based off: https://gist.github.com/SamSaffron/6cfad7ea3e6df321ffb7a84f93720a53
2018-01-16 15:41:45 +11:00
Neil Lalonde
5b356e446a FIX: subfolder support was broken 2018-01-15 15:42:31 -05:00
Arpit Jalan
6fff16a999 FEATURE: add collapse button 2018-01-16 01:07:48 +05:30
Sam
442a17bfb2 PERF: bypass omniauth unless in an auth path 2018-01-15 12:44:54 +11:00
Sam
2113266e51 Simplify complex conditional, add frozen strings 2018-01-15 12:44:54 +11:00
Neil Lalonde
4d50feb6bd FEATURE: add setting to display tags by tag groups 2018-01-12 11:03:02 -05:00
Sam
49ed382c2a FIX: return 429 when admin api key is limited on admin route
This also handles a general case where exceptions leak out prior to being handled by the application controller
2018-01-12 14:15:26 +11:00
Jeff Atwood
dcbaf2f213 copyedit: personal, not private, message throughout 2018-01-11 16:04:14 -08:00
Robin Ward
ee76636b76 FIX: Typo 2018-01-11 15:48:54 -05:00
Vinoth Kannan
b96ae14261 FEATURE: Display force_https warning in admin problems dashboard 2018-01-11 12:16:10 +05:30
Neil Lalonde
edb3a7f646 FIX: support for watched_words_regular_expressions when censoring words 2018-01-10 14:11:23 -05:00
Guo Xiang Tan
e90187cbf7
Merge pull request #5469 from tgxworld/add_guard_to_prevent_primary_email_from_being_reassigned
FIX: Add guard to prevent a primary `UserEmail` from being reassigned.
2018-01-09 13:35:08 +08:00
Sam
18a929d801 PERF: enable gzip on proxied requests 2018-01-09 13:28:05 +11:00
Sam
6e70065291 PERF: add some minimal caching to javascripts folder 2018-01-09 12:38:15 +11:00
Sam
ea63abf0f7 bypass mini profiler for locales
bypass cdn for now
2018-01-09 11:30:59 +11:00
Sam
cecd7d0d07 FEATURE: global rate limiter can bypass local IPs 2018-01-08 08:39:17 +11:00
Régis Hanol
e3f8182125 FIX: Google Calendar oneboxes weren't working 2018-01-07 19:15:11 +01:00
Joffrey JAFFEUX
642645ba9a
FIX: broken select badge as user title (#5474)
* FIX: broken select badge as user title

* selected id wasn’t pass to underlying component
* <none> was rendered as an html tag <none></none>
* overriding a badge name wouldn’t work as it was using badge.name and not badge.display_name
* adds a spec to ensure this behavior is correct
2018-01-05 16:58:15 +01:00
Arpit Jalan
fc68e3d223 📅 2018! 2018-01-05 10:09:52 +05:30
Guo Xiang Tan
8a3bbcb19a FIX: Add guard to prevent a primary UserEmail from being reassigned. 2018-01-04 19:40:50 +08:00
Neil Lalonde
e3965b4492 Update translations 2018-01-03 12:21:03 -05:00
Arpit Jalan
222fab1435 Update default ToS 2018-01-02 11:26:22 +05:30
Arpit Jalan
6ce422feab FIX: respect 'topic page title includes category' client side 2017-12-30 09:06:02 +05:30
Neil Lalonde
0567d523ee Update translations 2017-12-29 14:51:53 -05:00
Régis Hanol
f5e170c6b5 FIX: catch all server-side error when uploading a file
UX: always show a message to the user whenever an error happens on the server when uploading a file
2017-12-27 16:33:25 +01:00
Arpit Jalan
b205910faa FIX: allow upto three url redirects in onebox (#5457) 2017-12-27 10:30:06 +11:00
Arpit Jalan
89d1107f81 UX: show '{count}+' when not sure about exact search count 2017-12-26 19:50:03 +05:30
Arpit Jalan
0514ac4ee2 FIX: verify presence of 'sso url' before enabling 'enable sso' 2017-12-23 13:30:49 +05:30
blokovi
364e6fdd53 FIX: pluralization rules for Serbian language (#5453)
Updated SR pluralization to use 3 keys: one, few, other (as by Transifex)
2017-12-22 12:20:19 +01:00
Jeff Atwood
3bc53f2946 very minor copyedit 2017-12-21 18:37:14 -08:00
Jeff Atwood
2a8da9a9cb minor copyedit on google id conflict message 2017-12-21 18:36:02 -08:00
Jeff Atwood
cedfd6b68c
Merge pull request #5449 from Supermathie/google_fix
FIX: google oauth flow should automatically update the google account used for login when appropriate
2017-12-21 17:46:43 -08:00
Robin Ward
d0b44520bd Put back removed constants with deprecations for plugin compatibility 2017-12-21 17:18:01 -05:00
Robin Ward
aed37770e3 FIX: Load the route format before discourse 2017-12-21 16:29:11 -05:00
Robin Ward
063e449ce5 FIX: RouteFormat is a better class name than RouteFormats 2017-12-21 15:30:32 -05:00
Robin Ward
69a90f31fb FEATURE: Allow Forums to disable the Backups feature 2017-12-21 15:22:04 -05:00
Robin Ward
2908aab0da Allow extensibility on username route format (non-english usernames) 2017-12-21 14:32:51 -05:00
Jeff Atwood
ba3bf9c7bb minor copyedit 2017-12-20 21:32:54 -08:00
Sam
b3c086a636 copy 2017-12-21 16:15:07 +11:00
Sam
62a27f9d57 FEATURE: warn if attempting to mention a group with too many members 2017-12-21 16:13:57 +11:00
Joshua Rosenfeld
5a9c1c13ee
minor copyedit to username_change_period 2017-12-20 18:20:22 -05:00
Michael Brown
105cf61ed9 Implements https://meta.discourse.org/t/issue-user-changed-google-account-and-cant-connect-thru-his-profile/35028/18?u=supermathie 2017-12-20 17:59:36 -05:00
Neil Lalonde
7e3c4b4b2f Update translations 2017-12-20 15:28:29 -05:00
Guo Xiang Tan
6c4ee9d5b5 FEATURE: Trigger user webhook when a user logs in/out.
https://meta.discourse.org/t/how-do-you-learn-how-to-build-these-plugins/57946/10?u=tgxworld
2017-12-20 17:47:30 +08:00
Arpit Jalan
eab66065d1 FEATURE: search log term details page (#5445) 2017-12-20 13:41:31 +11:00
blokovi
0df1c85fd3 FEATURE: Serbian translation (#5443) 2017-12-19 12:26:06 +01:00
Vinoth Kannan
c60dcd4a3d HACK: select_replies key should have children 2017-12-15 20:59:12 +05:30
Sam
f5b3652d97 HTML paste is experimental 2017-12-15 12:29:39 +11:00
Sam
f18dda2adc FEATURE: full rebake of all old posts
This limits to 100 post per 15 minutes, so it will take a while.

This will pick up CommonMark and a large amount of onebox fixes.
2017-12-15 10:28:25 +11:00
Arpit Jalan
f15270a0df FIX: do not onebox flagged post link 2017-12-14 22:36:32 +05:30
Régis Hanol
f7f15a8538 actually need that key too 2017-12-13 22:32:34 +01:00
Régis Hanol
1b4483c942 FEATURE: Added 'select +below' and 'select +all replies' options to selecting posts 2017-12-13 22:12:06 +01:00
Gerhard Schlager
76e8a28420 Ignore winmail.dat in incoming emails 2017-12-13 22:03:31 +01:00
Neil Lalonde
e7c528894b Update translations 2017-12-12 11:09:38 -05:00
Guo Xiang Tan
7d8cd84fa6 Improve lograge custom payload error handling. 2017-12-12 17:27:40 +08:00
Vinoth Kannan
98d19616dd FIX: translation for site setting enable_rich_text_paste 2017-12-12 14:45:19 +05:30
Neil Lalonde
929aa98723 Update translations 2017-12-11 12:01:57 -05:00
Arpit Jalan
39d0dae5fe UX: clearer 'user left PM' system message 2017-12-11 18:06:55 +05:30
Sam
4b53be81cf corrects type
fixes #5412
2017-12-11 18:16:20 +11:00
Sam
63bdc4056d More log suppressions for rate limit exceeded 2017-12-11 17:52:57 +11:00
Sam
4986ebcf24 FEATURE: optional default off global per ip rate limiter 2017-12-11 17:52:57 +11:00
Arpit Jalan
6acf0693a5 make crawler_user_agents a hidden setting 2017-12-11 11:10:15 +05:30
Sam
68d3c2c74f FEATURE: add global rate limiter for admin api 60 per minute
Also move configuration of admin and user api rate limiting into global
settings. This is not intended to be configurable per site
2017-12-11 11:07:22 +11:00
Sam
394abbe26b bump up proxy buffer size 2017-12-11 09:29:47 +11:00
Vinoth Kannan
fdef4e58f0 Skip markdown table conversion from rich text feature flag setting 2017-12-08 18:30:38 +05:30
Vinoth Kannan
b9c0488687 New site setting to enable or disable rich text pasting 2017-12-08 14:09:39 +05:30
Guo Xiang Tan
2ff3444568 Rescue from errors when trying to append custom payloads to lograge output. 2017-12-08 08:31:58 +08:00
Sam
0693ed10d1 remove logging code for now 2017-12-08 08:36:35 +11:00
Joffrey JAFFEUX
fd99e1ef56 FEATURE: site setting enable_mentions to turn on/off mentions 2017-12-07 16:27:58 -05:00
Vinoth Kannan
58aeaef0c4 FIX: Rescue if default_current_user_provider raised an error 2017-12-08 01:42:55 +05:30
Arpit Jalan
02431d4af1 UX: iconize compose reply title 2017-12-07 23:24:49 +05:30
Vinoth Kannan
19247f9087 FIX: current_user should be called only if controller have that method 2017-12-07 23:12:34 +05:30
Arpit Jalan
5003f07b2c FEATURE: new site setting show_inactive_accounts 2017-12-07 19:22:41 +05:30
Gerhard Schlager
eda30c4cf2 FIX: spam posts get blocked, not silenced 2017-12-07 11:16:43 +01:00
Kyle Zhao
c52f747031 FEATURE: Catalan Translations (#5404) 2017-12-07 10:36:25 +01:00
Sam
90a55d6f7c FIX: handle CORS in hijacked requests 2017-12-07 10:31:04 +11:00
Neil Lalonde
978cf9485f Update translations 2017-12-06 10:25:12 -05:00
Guo Xiang Tan
4531563717 Hide new advanced editor and preview sync behind a hidden site settings. 2017-12-06 12:34:58 +08:00
Robin Ward
410994b7f5 FEATURE: Show a button to Staff for "Moderation History" on posts/topics
When clicked, it pops up a modal showing a history of moderation actions
taken on the post or topic.
2017-12-05 15:20:20 -05:00
Vinoth Kannan
6e054b2572 FEATURE: Convert HTML to Markdown while pasting in composer 2017-12-05 12:23:39 -05:00
Guo Xiang Tan
6cb2b68b22 current_username -> username. 2017-12-05 12:29:02 +08:00
Guo Xiang Tan
dc858ec120 Include request.remote_ip and current_username in lograge logs. 2017-12-05 11:57:41 +08:00
Arpit Jalan
248ad5466d replace invitee_name to inviter_name in all locale files 2017-12-04 14:12:48 +05:30
Arpit Jalan
0e0794dff9 FIX: correct use of invitee vs inviter in email templates 2017-12-04 14:09:48 +05:30
Jeff Atwood
cf2ff76d09 FEATURE: link to meta release notes tag in version release email text 2017-12-01 12:55:03 -08:00
Régis Hanol
bf1a1764ce
FIX: translation for "destroy_reasons.same_ip_address"
Take 2
2017-12-01 18:46:12 +01:00
Régis Hanol
2366cdaefe
FIX: translation for "destroy_reasons.same_ip_address" 2017-12-01 17:38:33 +01:00
Jeff Atwood
c888ee57f0 tags default text was too wordy 2017-11-30 23:20:10 -08:00
Arpit Jalan
496cd3b4df
Merge pull request #5385 from techAPJ/search-logs-improvements
FEATURE: support search click through tracking for user, category and tags
2017-12-01 12:08:38 +05:30
Arpit Jalan
e3925278e2 FEATURE: support search click through tracking for user, category and tags
https://meta.discourse.org/t/search-logs-page/73281/11?u=techapj

This commit adds following features:

- support for tracking click through to user, tag and category
- new filter for search type (header, full page)

This commit also removes "most viewed topic" field from search logs page because we are now tracking multiple click through entities, so topic is not a special entity anymore. This also improves query perf. The query now takes `20.5ms` to runs, as opposed to `655.9ms` previously.
2017-12-01 12:04:55 +05:30
Neil Lalonde
1603dcf0d1 Update translations 2017-11-30 15:32:15 -05:00
Jeff Atwood
a1c6bd47a7 copyedits to advanced search text 2017-11-30 01:43:21 -08:00
Guo Xiang Tan
900dec5bc1 Make logster ignore Rack::QueryParser::InvalidParameterError errors. 2017-11-30 15:29:19 +08:00
Guo Xiang Tan
1c2d1682ae
Merge pull request #5328 from tgxworld/reenable_interpolation_keys_check
FIX: Re-enable invalid interpolation keys check and allow default key…
2017-11-30 13:04:54 +08:00
Sam
05f5df69b1 UX: Add tooltips for messages and notifications in header 2017-11-30 12:56:54 +11:00
Sam
bf1f6c7fe4 UX: better help text for composer collapse / discard
also: warn on collapsed close if you are to discard content
2017-11-30 12:28:00 +11:00
Régis Hanol
0d34caff85 UX: show error message when no gravatar is associated 2017-11-29 18:09:44 +01:00
Gerhard Schlager
41e70c410c
FEATURE: replace GUID in image name uploaded from iOS (#5370) 2017-11-28 11:05:34 +01:00
Arpit Jalan
f37a1d5976 UX: add tooltip to unique on search logs page 2017-11-28 15:29:35 +05:30
Guo Xiang Tan
1d8b834301
Merge pull request #5369 from vinothkannans/queued
FIX: Error if queued post not found while updating
2017-11-28 17:51:05 +08:00
Guo Xiang Tan
7b8699f3be FIX: Can't load service-worker.js in production. 2017-11-28 15:40:57 +08:00
Jeff Wong
b094894c94 Feature: Add service worker registration method to plugin API 2017-11-28 14:01:41 +08:00
Guo Xiang Tan
46f8a6c97d Fix broken lograge logs. 2017-11-28 14:00:13 +08:00
Robin Ward
77f90876d3 REFACTOR: Track manual locked user levels separately from groups 2017-11-27 11:23:44 -05:00
Vinoth Kannan
31aa21b5a4 FIX: Error if queued post not found while updating 2017-11-27 19:25:51 +05:30
Guo Xiang Tan
5805979e88 FIX: Re-enable invalid interpolation keys check and allow default keys to be left out of translation overrides.
https://meta.discourse.org/t/bulk-invite-from-file-resets-the-invite-forum-mailer-customized-text/67606/16
2017-11-27 11:00:08 +08:00
Guo Xiang Tan
b907f7d307 Add more metrics to lograge's output if MethodProfiler is enabled. 2017-11-25 08:16:40 +08:00
Neil Lalonde
28cf043bad add topic reminder alt text 2017-11-24 11:15:13 -05:00
Neil Lalonde
3f58b18dab FEATURE: user card shows staff if a user is staged and lets them check the email address 2017-11-23 16:38:11 -05:00
Robin Ward
e0dc4ea4fc FIX: Missing i18n key 2017-11-23 13:28:06 -05:00
Robin Ward
ad07e6e172 FEATURE: group_removes_trust_level setting
By default in Discourse, if a group grants a user a particular trust
level that is locked even if they are removed from the group.

With this new setting, when a user is removed from a group their
trust level is set to either the next highest trust level based on group
membership, or they are unlocked and promoted based on the default
mechanisms.
2017-11-23 13:03:24 -05:00
Sam
2b8d4508e5 PERF: stop running background work between requests
Use a dedicated thread to run Scheduler::Defer

This avoids blocking of a worker during operations that require waiting.

In particular uploads risked blocking a unicorn.

This also add a queue "length" that discourse prometheus consumes.
2017-11-23 15:48:47 +11:00
Neil Lalonde
6c86e0c94a FEATURE: remove the featured link by editing the topic 2017-11-22 14:53:35 -05:00
Régis Hanol
4addc5e329 Add missing contexts when destroying users 2017-11-22 15:43:54 +01:00
Robin Ward
8d98752b57 Allow sites to bootstrap the error page.
This will display working dropdowns and such even if the page is a 404.
2017-11-21 16:13:09 -05:00
Neil Lalonde
66e53f449a UX: Auth complete page/modal has a link to continue to the site to accomodate auth methods that can't automatically redirect to Discourse 2017-11-21 13:56:19 -05:00
Robin Ward
628275fc31 FIX: Some badge routes were still working even with badges disabled 2017-11-21 12:22:44 -05:00
Joffrey JAFFEUX
39f3dbd945
Introduces select-kit
* renames `select-box-kit` into `select-kit`
* introduces `single-select` and `multi-select` as base components
* introduces {{search-advanced-category-chooser}} as a better component for selecting category in advanced search
* improves events handling in select-kit
* recreates color selection inputs using {{multi-select}} and a custom {{selected-color}} component
* replaces category-selector by a component using select-kit and based on multi-select
* improves positioning of wrapper
* removes the need for offscreen, and instead use `select-kit-header` as a base focus point for all select-kit based components
* introduces a formal plugin api for select-kit based components
* introduces a formal pattern for loading and updating select-kit based components:

```
computeValue()
computeContent()
mutateValue()
```
2017-11-21 11:53:09 +01:00
Neil Lalonde
8496191f0b UX: better tooltip for read time on user cards 2017-11-20 11:55:22 -05:00
Neil Lalonde
6dda87c49b FEATURE: show topics viewed on user summary 2017-11-17 17:53:30 -05:00
Gerhard Schlager
8f6d35aa59 FEATURE: category setting for mailinglist mirror 2017-11-17 15:29:14 +01:00
Neil Lalonde
b37e40eea9 FEATURE: show read time in last 60 days 2017-11-16 15:46:51 -05:00
Robin Ward
fc73de9578 Support for finding new locales in plugins 2017-11-15 11:20:04 -05:00
Vinoth Kannan
7b494a65c9 NEW: large image placeholder added in cooked html (#5291) 2017-11-15 11:30:47 +01:00
Guo Xiang Tan
db68434db1 More control over Unicorn logstash logger. 2017-11-15 12:28:36 +08:00
Guo Xiang Tan
89d9ffa884 EXPERIMENTAL: Allow logs to be shipped via different methods.
See https://github.com/dwbutler/logstash-logger#uri-configuration for
a list of available methods.
2017-11-15 09:11:33 +08:00
Guo Xiang Tan
0d8e9a88c9 FIX: Disable rails_multisite formatter if lograge is enabled. 2017-11-15 09:03:50 +08:00
OsamaSayegh
4c4410225e UX: cap likes 2 (#5237) 2017-11-15 11:28:54 +11:00
Arpit Jalan
3831663fea FEATURE: search logs page (#5313) 2017-11-15 11:13:50 +11:00
Robin Ward
0e2b9d3c10 UX: Make flag dropdown actions more clear 2017-11-14 15:44:16 -05:00
Robin Ward
971e302ff2 FEATURE: Support an end date for user silencing 2017-11-14 13:20:19 -05:00
Joshua Rosenfeld
4dc29e5f9e
Missed a spot renaming block to silence 2017-11-13 15:35:52 -05:00
Neil Lalonde
13c91fc7ec Update translations 2017-11-13 15:02:53 -05:00
Neil Lalonde
c958d8c7e1 string should say silencing instead of unsilencing 2017-11-13 09:55:04 -05:00
Sam
dfe9f70747 UX: warn that something must be selected with safe mode 2017-11-13 15:59:51 +11:00
Robin Ward
1f14350220 Rename "Blocked" to "Silenced" 2017-11-10 14:10:27 -05:00
Régis Hanol
6cd69529a8 UX: change composer button text to 'whisper' when whispering 2017-11-10 14:18:19 +01:00
Michael Howell
38b8d68c68 FEATURE: Allow the user to select a custom home page (#5268)
* Add user_home configuration option

* Use the new user_home preference to actually show the right home page

* Fix trailing whitespace

* Update user_option_serializer.rb

* Fix JavaScript default homepage tests

* Use an object instead of a giant switch

* Remove trailing whitespace

* Make the default `user_home` set to `null` instead of `0`

* Rename user_home to homepage_id
2017-11-10 06:45:19 +11:00
Joffrey JAFFEUX
0da529010a
FEATURE: support for multi-combo-box 2017-11-09 10:57:53 -08:00
Robin Ward
6e2853da53 UX: Make flagged topics details button more clear 2017-11-09 13:03:35 -05:00
Jeff Atwood
e1e6f46d26 Consistent copy for usercard (all past tense verbs) 2017-11-09 07:56:47 -08:00
Sam
86e6732f78 FEATURE: update rails multisite
always allow /srv/status through even if host does not match
2017-11-09 15:40:56 +11:00