Commit Graph

6068 Commits

Author SHA1 Message Date
Régis Hanol f83a687551 UX: skip the modal and refresh the app when selecting an avatar 2018-07-20 00:37:57 +02:00
Joffrey JAFFEUX 1a78e12f4e
FEATURE: part 2 of dashboard improvements
- moderation tab
- sorting/pagination
- improved third party reports support
- trending charts
- better perf
- many fixes
- refactoring
- new reports

Co-Authored-By: Simon Cossar <scossar@users.noreply.github.com>
2018-07-19 14:33:11 -04:00
Joffrey JAFFEUX a2281fbb19
FEATURE: allows to jump to a date in a topic 2018-07-19 16:00:13 +02:00
Guo Xiang Tan 9b18ee4bba Improve handling of file params in lograge. 2018-07-19 08:23:59 +08:00
Maja Komel fa38891a98 FEATURE: show modal when user without permissions tries to delete their own topic (#6086) 2018-07-18 23:31:37 +02:00
Neil Lalonde afc94ac9e4 FEATURE: add a Top Categories section to the user summary page, showing the categories in which a user has the most activity 2018-07-18 16:39:16 -04:00
Régis Hanol 6d6e026e3c FEATURE: selectable avatars 2018-07-18 12:57:43 +02:00
Sam 02628883d2 FEATURE: adjust autobump system
- We spread out bumping through the day, if you are bumping
 4 topics then a topic will be bumped every 6 hours

- We add a small, bumping action at the bottom of the post to
 denote a topic got bumped
2018-07-18 10:17:33 +10:00
Gerhard Schlager d3e04daa95 Add Swahili language 2018-07-16 18:11:38 +02:00
Sam ac0053f491 FEATURE: navigate to first post and auto bump category settings
### navigate_to_first_post_after_read setting for categories

When enabled on categories logged on users will return to OP after
reading the entire category. (useful for documentation categories)

### num_auto_bump_daily

Set a number of topics that will automatically bump daily on a category.

- Every 15 minutes we will check if any category has this setting
- Categories with the setting are shuffled
- We exclude pinned, closed, category description and archived topics
- Maximum of 1 topic for the list of categories is bumped till limit reached per category
- We always try to bump oldest first
- Limit is elastic using a RateLimiter that ensures that we only bump N per day

Also some minor organisation on category settings

Froze strings on category.rb
2018-07-16 18:10:35 +10:00
Rishabh a6c589d882 FEATURE: Add custom S3 Endpoint and DigitalOcean Spaces/Minio support for Backups (#6045)
- Add custom S3 Endpoints and DigitalOcean Spaces support
- Add Minio support using 'force_path_style' option and fix uploads to custom endpoint
2018-07-16 14:44:55 +10:00
Leo McArdle 21ebb1cd54 FEATURE: Secondary emails support. 2018-07-16 11:09:49 +08:00
Keith David Winkler fa1c676c05 FIX: grammar/spelling error in server.en.yml (#6089) 2018-07-16 10:29:15 +10:00
Guo Xiang Tan 711371e8c8 FIX: Select+below will ask server for post ids on megatopics. 2018-07-13 15:10:39 +08:00
Kyle Zhao 2901691e87 FEATURE: per-category approval settings (#5778)
- disallow moving topics to a category that requires topic approval
2018-07-13 12:51:08 +10:00
Jeff Atwood 9ee32ad03e UX: don't repeat category name in topnav 2018-07-12 16:52:48 -07:00
Jeff Atwood 21de8411c9 some badge copy grooming 2018-07-12 15:50:34 -07:00
Arpit Jalan bd760e98af FIX: display error message when upload fails in wizard 2018-07-12 12:08:09 +05:30
OsamaSayegh decf1f27cf FEATURE: Groundwork for user-selectable theme components
* Phase 0 for user-selectable theme components

- Drops `key` column from the `themes` table
- Drops `theme_key` column from the `user_options` table
- Adds `theme_ids` (array of ints default []) column to the `user_options` table and migrates data from `theme_key` to the new column.
- Removes the `default_theme_key` site setting and adds `default_theme_id` instead.
- Replaces `theme_key` cookie with a new one called `theme_ids`
- no longer need Theme.settings_for_client
2018-07-12 14:18:21 +10:00
Sam 665ade50c6 SECURITY: extra CORS headers should be set on correct host 2018-07-11 09:29:02 +10:00
Sam b97b426d34 Revert "FIX: wrong site origin in message bus header"
This reverts commit 93b49a0dd5.
2018-07-11 09:26:43 +10:00
Neil Lalonde 93b49a0dd5 FIX: wrong site origin in message bus header 2018-07-10 15:01:03 -04:00
Guo Xiang Tan 96aca6d7e6
Remove legacy vote post action code. (#6009) 2018-07-09 16:54:18 +08:00
David Taylor 9a813210b9 SECURITY: Do not allow authentication with disabled plugin-supplied a… (#6071)
Do not allow authentication with disabled plugin-supplied auth providers
2018-07-09 14:25:58 +10:00
michael@discoursehosting.com 81188060d6 Add S3 region eu-west-3 (Paris) 2018-07-09 14:18:35 +10:00
Sam 4f41ccd975 FEATURE: MauiBot is abusive and is now blocked
We have now seen multiple forums where MauiBot uses a large amount of
traffic, due to this bad behavior it is blocked out-of-the-box
2018-07-06 16:46:33 +10:00
Neil Lalonde eabc8f7fbd
Merge pull request #6023 from misaka4e21/only-staff-can-create-tag
FEATURE: Support disabling tag creation for non-staff users.
2018-07-05 11:12:44 -04:00
Patrick Gansterer 28dd7fb562 FEATURE: Create hidden posts for received spam emails (#6010)
* Add possibility to add hidden posts with PostCreator

* FEATURE: Create hidden posts for received spam emails

Spamchecker usually have 3 results: HAM, SPAM and PROBABLY_SPAM
SPAM gets usually directly rejected and needs no further handling.
HAM is good message and usually gets passed unmodified.
PROBABLY_SPAM gets an additional header to allow further processing.
This change addes processing capabilities for such headers and marks
new posts created as hidden when received via email.
2018-07-05 11:07:46 +02:00
Maja Komel cb89797e9a FEATURE: shows remaining backup codes in user preferences 2018-07-04 10:45:42 +02:00
Guo Xiang Tan b59c17d484 Update title site setting defaults for ja locale.
https://meta.discourse.org/t/updating-title-when-using-japanese-characters-does-not-work/88718/7
2018-06-28 23:23:00 +08:00
Arpit Jalan a6d50d1ff7 FEATURE: new settings to control posts deletions rate limit 2018-06-28 17:03:37 +05:30
Maja Komel ec3e6a81a4 FEATURE: Second factor backup 2018-06-28 10:12:32 +02:00
Dax74 ccc2d94ae8
Update link
See https://meta.discourse.org/t/wrong-link-on-manual-admin-creation/90849
2018-06-27 11:38:01 +02:00
misaka4e21 47cb46671a FEATURE: Support disabling tag creation for non-staff users. 2018-06-27 07:15:02 +08:00
Jeff Atwood 7dce8290ed copyedit on category drop down 2018-06-26 12:43:45 -07:00
Jeff Atwood 67a986f30d centralize trust level doc to blog 2018-06-25 17:34:47 -07:00
Neil Lalonde b3073175a7 FIX: missing translations for mobile flag modal 2018-06-25 10:59:44 -04:00
Ernesto Serrano d1297b7296 Update server.en.yml 2018-06-25 16:18:07 +10:00
Gerhard Schlager e5f62f7965 Update server.es.yml (reverted from commit 1ea380e30e) 2018-06-25 16:18:07 +10:00
Ernesto Serrano 64941e7f91 Update server.en.yml 2018-06-25 16:18:07 +10:00
Ernesto Serrano 8809984d83 Update server.es.yml 2018-06-25 16:18:07 +10:00
Ernesto Serrano f57375a5ce Update site_settings.yml 2018-06-25 16:18:07 +10:00
Jeff Atwood 549a47e801 copyedit on TL1 welcome (again) 2018-06-23 22:29:13 -07:00
Jeff Atwood d634486870 copyedit on TL1 congrats PM 2018-06-23 14:30:04 -07:00
Jeff Wong 41f76a74f8 FEATURE: send message when a user reaches tl1 2018-06-22 13:20:00 -07:00
Robin Ward c08c725c54 Allow plugins to omit base locales if they want 2018-06-22 09:46:23 -04:00
Joffrey JAFFEUX fed86225c8
FEATURE: differentiate total and total for period on admin table report 2018-06-21 22:46:53 +02:00
Joffrey JAFFEUX a41057aa6e
FEATURE: display report total value when showing report 2018-06-21 18:17:22 +02:00
Neil Lalonde 072659c22a Update translations 2018-06-21 10:34:09 -04:00
Sam f66efc601d FIX: cubot android devices were detected as crawlers 2018-06-21 10:56:46 +10:00
Sam 591512fcb8 adjust defaults for search log retention 2018-06-20 10:46:07 +10:00
riking 38a8e52ca4 FIX: Add time retention limit to search logs
3 years is a very conservative limit that allows for a very wide buffer
for year-over-year analysis. The max is set to 5 years because that is
the policy listed for logging in hosted Discourse.
2018-06-20 10:44:11 +10:00
Arpit Jalan aedc61a3b4 FEATURE: allow large icon to be uploaded in wizard 2018-06-19 21:08:02 +05:30
Michael Brown ae5d255f83 FIX: Reference example.com instead of somesite.com in examples
* somesite.com actually exists...
* example.com should be used in examples and is harmless to visit
2018-06-19 10:37:24 -04:00
Sam 5f64fd0a21 DEV: remove exec_sql and replace with mini_sql
Introduce new patterns for direct sql that are safe and fast.

MiniSql is not prone to memory bloat that can happen with direct PG usage.
It also has an extremely fast materializer and very a convenient API

- DB.exec(sql, *params) => runs sql returns row count
- DB.query(sql, *params) => runs sql returns usable objects (not a hash)
- DB.query_hash(sql, *params) => runs sql returns an array of hashes
- DB.query_single(sql, *params) => runs sql and returns a flat one dimensional array
- DB.build(sql) => returns a sql builder

See more at: https://github.com/discourse/mini_sql
2018-06-19 16:13:36 +10:00
Neil Lalonde 320cd9a19e UX: rate limiter message will say to wait "a few seconds" instead of 0 to 3 seconds 2018-06-18 14:14:47 -04:00
Joffrey JAFFEUX 3fc82bf200
FIX: adds a title to composer actions header 2018-06-18 19:01:37 +02:00
Joffrey JAFFEUX f2dbe66367
FEATURE: adds a /admin/reports route to list all reports 2018-06-18 12:31:56 +02:00
Arpit Jalan f1d1207725 FIX: improve context when user deletes self 2018-06-18 11:36:22 +05:30
Arpit Jalan c7ee70941e FEATURE: show category page options on wizard 'homepage' step 2018-06-15 19:11:41 +05:30
Sam 87fabdc2f3 FIX: correct pool reaper
This removes a freedom patch and replaces with a custom reaper thread
it also captures an issue where reaper would fail when connections where
empty
2018-06-14 18:22:02 +10:00
Rafael dos Santos Silva 8fc08aad09 FEATURE: Update the webmanifest
- Remove share target because the spec is changing
- Allow any orientation again because natural is too restrictive
- Use correct file and mime types for the manifest
2018-06-14 00:13:28 -03:00
Sam 66982c7800 FIX: stop using Rails connection reaper in multisite
The Rails 5.2 connection reaper appears to be leaking threads
this is a quick fix to stop it, though we need to make sure we
never leak connection pools as well.
2018-06-14 12:49:30 +10:00
Robin Ward fd54c92a52 FEATURE: New site setting, whitelisted_link_domains
If provided, users who normally couldn't post links (say, due to a
low trust level), can post links to those specific hosts.
2018-06-13 16:11:22 -04:00
Jeff Atwood 0dee603ffc
Merge pull request #5985 from featheredtoast/pm-participants-two-lines
FIX: PM participants listed inline
2018-06-11 18:33:15 -07:00
Guo Xiang Tan 805fd17b23 ActiveRecord in Rails 5.2 discards connection pools after fork. 2018-06-12 09:30:52 +08:00
Jeff Wong 4599cc8435 FIX: PM participants listed inline 2018-06-11 18:14:25 -07:00
Gerhard Schlager 8fc6605d4f UX: No need to warn about username changes anymore 2018-06-11 18:43:56 +02:00
Gerhard Schlager 150ae21489 FEATURE: Log user merge in staff logs 2018-06-11 18:43:56 +02:00
OsamaSayegh 1dbe13886f REFACTOR: admin site texts controller specs to requests (#5958) 2018-06-11 12:59:21 +08:00
Guo Xiang Tan 8a2c5fbebb Remove unused lines. 2018-06-11 08:44:41 +08:00
Neil Lalonde 79854198c1 Update translations 2018-06-08 10:27:53 -04:00
Arpit Jalan f9ab3848ed FEATURE: support disabling emails for non-staff users 2018-06-07 18:31:08 +05:30
Guo Xiang Tan 01f126e38f Simplify unicorn config. 2018-06-07 09:03:16 +08:00
Guo Xiang Tan a50cd8675a FIX: Permalink route matcher should always be last. 2018-06-06 14:55:22 +08:00
Guo Xiang Tan a4e6662833 FIX: Disconnects all connections in the pool before forking.
* We were leaking connections as a result. Connections opened
  before the fork were never closed.
2018-06-06 14:45:05 +08:00
Arpit Jalan d069f4ecba Revert "Revert "allow codepen iframe by default""
This reverts commit 174bf98572.
2018-06-06 06:48:08 +05:30
Régis Hanol dc61eaad37 FEATURE: new 'min ratio to crop' site setting 2018-06-05 17:13:00 +02:00
Arpit Jalan 174bf98572 Revert "allow codepen iframe by default"
This reverts commit dc00089ab2.
2018-06-05 18:21:21 +05:30
Arpit Jalan dc00089ab2 allow codepen iframe by default 2018-06-05 18:17:23 +05:30
Arpit Jalan 46fc57222f FEATURE: improve handling of site setting secrets 2018-06-04 21:31:34 +05:30
Arpit Jalan 36f9af4fa4 minor optimizations for post rejected logs 2018-06-02 09:44:55 +05:30
Arpit Jalan 89eca87f16 FEATURE: add staff action log for post rejections 2018-06-01 21:48:27 +05:30
Guo Xiang Tan 12a0f12530 Fix the build. 2018-06-01 11:24:32 +08:00
Guo Xiang Tan 50be06af47 Remove stale code. 2018-06-01 08:18:59 +08:00
Neil Lalonde dee9af2877 Update translations 2018-05-31 17:03:38 -04:00
Gerhard Schlager b7bf0e96aa Update translations 2018-05-29 22:01:57 +02:00
Gerhard Schlager 864ada835b FEATURE: Add Bulgarian language 2018-05-29 21:07:17 +02:00
Gerhard Schlager ce687f334b UX: The "enable 2FA" string was hard to translate 2018-05-29 16:25:43 +02:00
Joffrey JAFFEUX 16d0ab5654 Revert "UX: localizes titles in dashboard table reports"
This reverts commit 409c0ddf85.
2018-05-28 20:35:22 +02:00
Joffrey JAFFEUX 409c0ddf85
UX: localizes titles in dashboard table reports 2018-05-28 20:03:05 +02:00
Guo Xiang Tan 0b55416742 UX: Don't display `all groups` option if group directory is disabled.a
https://meta.discourse.org/t/all-groups-option-leads-to-access-denied-page/88464
2018-05-28 11:32:55 +08:00
Sam c677877e4f FIX: Korean needs no word segmentation 2018-05-28 09:37:57 +10:00
Robin Ward 4195c7c9ea FEATURE: Ability to clear a user's penalty history
You can do this manually if you want to allow them to reach TL3 without
their penalty history counting against them.
2018-05-25 12:54:22 -04:00
Neil Lalonde 30fbf6fe81 Add min and max to digest topic and post settings. Email clients may truncate messages that are too long. 2018-05-24 14:39:28 -04:00
Sam ed08545d1f FEATURE: allow searching in title in advanced search
Add UI for matching in title only in advanced search options
2018-05-24 12:34:53 +10:00
Guo Xiang Tan 2aad91d4a2 PERF: Don't bloat the Sidekiq queue with `Jobs::SendPushNotification`. 2018-05-24 10:04:09 +08:00
Jeff Wong ebd966fbdb Feature: Add warning banner in email settings when mailing list mode enabled 2018-05-23 18:54:10 -07:00
Joe 9df6b2c00b
FIX: clarify badge image field help text 2018-05-23 21:34:16 +08:00
Ryan Mulligan fac4bf2f85 ignore emails that are from the reply by email addresses (#5843) 2018-05-23 10:04:45 +02:00
Sam 6974b7d6a8 FIX: run deferred jobs inline in sidekiq 2018-05-23 12:05:37 +10:00
Neil Lalonde 79d202a73c FIX: update Indonesian translations to fix date translations 2018-05-22 12:00:34 -04:00
Joshua Rosenfeld d86bd48397
Copyedit 2018-05-22 11:14:16 -04:00
Joe 3ef3b5b67a
FIX: both icon and image fields used the same string.
Added new string for image field and edited the current string for the icon field.
2018-05-22 16:02:50 +08:00
Sam 39bfd836c6 FEATURE: do not boot Ruby if not on 2.4 or up 2018-05-22 09:21:47 +10:00
Guo Xiang Tan 467d91347a Missing specs for `Group`, `Tag`, `Category` and `Flag` web hooks. 2018-05-21 17:29:58 +08:00
Guo Xiang Tan bf84037f79 FIX: Payload for webhooks should be current as of the time the event was triggered.
https://meta.discourse.org/t/group-category-tag-user-deleted-webhooks-not-firing/87752
2018-05-21 17:29:58 +08:00
Sam ec337bbcb3 DEV: attempt to report last exception as the "cause" for failures
This allows our request specs to report exceptions so we can debug

May have a few false positives but generally should be quiet

TODO only wire magic in for request specs, currently happens for all
2018-05-21 17:01:50 +10:00
Guo Xiang Tan e78f1d7589 Fix the build take 2. 2018-05-21 14:35:59 +08:00
Guo Xiang Tan b7b08b4173 Fix regression introduced in 2ceb107074. 2018-05-21 13:26:23 +08:00
Guo Xiang Tan 2ceb107074 Refactor tests to use the json extension instead of headers. 2018-05-21 09:49:46 +08:00
Jeff Atwood 4329b484e8 minor copyedit on dashboard chart title 2018-05-18 16:04:33 -07:00
OsamaSayegh 0800098f1a FIX: don't allow duplicate watched words (#5844)
We already have logic in place for server side, this'll just display a little message that says the word already exists
2018-05-18 10:11:08 +02:00
Régis Hanol 53f8f6095d FEATURE: staff action logs when creating/updating/deleting badges 2018-05-17 18:09:27 +02:00
Sam 0db04956d7 update description of graph 2018-05-17 12:24:13 +10:00
Sam 6796d72e9d Shorten copy 2018-05-17 10:26:30 +10:00
Régis Hanol a9ebde5111 FEATURE: new 'staged' users list for admins 2018-05-17 01:52:49 +02:00
Jeff Atwood 7195bdf025 very minor copyedit 2018-05-16 16:08:14 -07:00
Gerhard Schlager 01b0d9d235 Update translations 2018-05-17 00:08:33 +02:00
Régis Hanol 489e7f220d UX: show a message when more than 30 site settings matches the current filter
UX: show the counts when displaying only overridden settings
UX: show 30+ count when more than 30 site settings matches the current filter
2018-05-16 15:37:40 +02:00
Sam 2271869c6b old dashboard needs a route 2018-05-16 11:42:45 +10:00
Jeff Atwood c0a87f1fbf very minor copyedit 2018-05-15 15:22:46 -07:00
Sam 4461de6281 improve tooltip 2018-05-15 10:32:41 +10:00
Joffrey JAFFEUX e474351ae4
inactive users report is not used anymore 2018-05-14 21:31:14 +02:00
Joffrey JAFFEUX ba0cec2091
UX: minor fixes to new dashboard UI
- adds a link to search log
- display a text if log search queries is disabled
- adds link to trust level and user types
- adds a description for eeach report when browsing a report directly
2018-05-14 14:23:51 +02:00
Gerhard Schlager 494fb36c77 UX: Remove obsolete warning about changing post ownership 2018-05-14 13:20:29 +02:00
Sam 6332d5040d UX: switch dashboard to be the new dashboard
Also:
- add pageviews
- add problems and version sections
2018-05-14 13:07:59 +10:00
Sam 8a783412b7 UX: improvements to new dashboard
- remove inactive user report and replace with posts
- clean up internals so grouping by week happens on client
- when switching periods old report was not destroyed leading to bugs
- calculate trend based on previous interval ... not previous 30 days
- show percentages for mau/dau
- be more careful about utc date usage
- show uniqu and click through rate on search panel
- publish key of report with report so we only load the correct one
- subscribe earlier in channel in case of concurrency issues
2018-05-11 13:30:32 +10:00
Joshua Rosenfeld 52d6b0f948
Minor copyedit 2018-05-10 15:24:27 -04:00
Guo Xiang Tan 186623acd0 FEATURE: Keep `EmailLogs` records without a `reply_key` for 90 days by default. 2018-05-10 15:33:49 +08:00
Régis Hanol 86eb3528ec FEATURE: clearer error message when receiving a reply to an old notification 2018-05-09 18:51:01 +02:00
Régis Hanol 858ac6b61e FIX: prevent theme uploads from overwriting existing variables 2018-05-09 11:54:43 +02:00
Jeff Wong dc93c1b433 FIX: temporary redirect for service worker scripts 2018-05-08 10:40:02 -07:00
Arpit Jalan 83245aa508 FIX: better handling of invite links after they are redeemed
FIX: deprecate invite_passthrough_hours setting
2018-05-08 20:17:57 +05:30
Robin Ward 8262fc5d15
Merge pull request #5807 from discourse/min-flags-by-topic
FEATURE: New site setting `min_flags_staff_visibility`
2018-05-08 09:17:29 -04:00
Jeff Wong 2002a7c4ef FIX: regenerate vapid keys when the public key bytes is blank 2018-05-07 17:01:56 -07:00
Robin Ward ac60a84329 FEATURE: New site setting `min_flags_staff_visibility`
When set higher than 1, flags won't show up for staff in the admin
section unless the minimum threshold of flags on a post is reached.
2018-05-07 16:05:13 -04:00
Misaka 0x4e21 ff6be3c2e3 FEATURE: add profile_background fields into SSO (#5701)
Add profile_background and card_background fields into Discourse SSO.
2018-05-07 10:03:26 +02:00
Jeff Wong 91b31860a1
Feature: Push notifications for Android (#5792)
* Feature: Push notifications for Android

Notification config for desktop and mobile are merged.

Desktop notifications stay as they are for desktop views.

If mobile mode, push notifications are enabled.

Added push notification subscriptions in their own table, rather than through
custom fields.

Notification banner prompts appear for both mobile and desktop when enabled.
2018-05-04 15:31:48 -07:00
Robin Ward 84cc52d8fc FIX: Show a nicer message when there aren't any flagged topics. 2018-05-04 10:24:18 -04:00
Gerhard Schlager 7bf01fd769 Update translations 2018-05-04 10:58:21 +02:00
Jeff Wong 62a8904729
Feature: Include participants at the bottom of PM emails (#5797)
* Feature: Include participants at the bottom of PM emails

... as undecorated links.

https://meta.discourse.org/t/email-notification-recipients-unclear-when-pm-is-sent-to-multiple-users/26934/13?u=featheredtoast

Fix: missing translation for PM mentions

* display membership count as `group (count)`
2018-05-03 15:50:06 -07:00
Neil Lalonde a0447b47e0 UX: when deleting a user, show a modal indicating that the delete is happening. User hijack so requests don't time out. 2018-05-03 16:18:19 -04:00
Neil Lalonde 69a3ba0014 Update translations 2018-05-03 15:23:31 -04:00
Joffrey JAFFEUX 980972182f
dashboard next: caching, mobile support and new charts 2018-05-03 15:41:41 +02:00
Michael Brown beef046259 Clarify user-to-user message report titles 2018-05-01 16:43:07 -04:00
Risto e686c5edb6
deferred -> ignored
Came across to an obsolete term.
2018-05-01 23:06:57 +03:00
Jeff Atwood f0bdca87d8 improve help copy on enable local logins 2018-04-28 23:27:16 -07:00
Gerhard Schlager 0e5104fa70 Update translations 2018-04-27 19:20:19 +02:00
Neil Lalonde bd77795d7a REFACTOR: move support for user card badge images to a plugin discourse-user-card-badges 2018-04-26 13:25:24 -04:00
Joffrey JAFFEUX 9fabf2543b
dashboard next: activity metrics and new contributors
This commit also introduces a better grouping of data points.
2018-04-26 14:49:41 +02:00
Sam 88f5251415 FIX: disallow invalid top_menu and post_menu and share_links
In the past any text could be entered there causing big potential issues
2018-04-26 17:00:56 +10:00
Sam c7a0ced656 FIX: remove facebook_request_extra_profile_details
Since this no longer works
2018-04-26 14:14:35 +10:00
Jeff Atwood 0cad5b2125 missed a file somehow 2018-04-25 12:47:09 -07:00
Jeff Atwood 6fae1cee34 better help for typographer setting 2018-04-25 12:46:45 -07:00
Robin Ward 456e40a709 FIX: Don't allow a user to become TL3 if they've ever been penalized
Previously the code would only check if they were *currently* suspended
or silenced.
2018-04-24 15:15:32 -04:00
Arpit Jalan 4f55fbfefa FEATURE: include report title in PM subject and filename 2018-04-24 22:25:54 +05:30
Neil Lalonde 8babf1c1e1 Update translations 2018-04-24 11:08:45 -04:00
Gerhard Schlager ed4c0c4a63 FEATURE: Add option to delete all replies of flagged post 2018-04-24 11:08:05 -04:00
Robin Ward fd14ee4797 FEATURE: Allow safe mode to be disabled 2018-04-24 11:03:33 -04:00
Sam 54d153068a DEV: remove qunit rails fork and add a couple of async tests 2018-04-23 16:42:40 +10:00
Arpit Jalan 0a442977b3 FEATURE: add staff action log for post approvals 2018-04-23 11:28:44 +05:30
Sam ded84a4b58 PERF: improve performance once logged in rate limiter hits
If "logged in" is being forced anonymous on certain routes, trigger
the protection for any requests that spend 50ms queueing

This means that ...

1. You need to trip it by having 3 requests take longer than 1 second in 10 second interval
2. Once tripped, if your route is still spending 50m queueuing it will continue to be protected

This means that site will continue to function with almost no delays while it is scaling up to handle the new load
2018-04-23 11:55:25 +10:00
Neil Lalonde 70f2c5d3fd FEATURE: move staff tags setting to tag group settings 2018-04-20 15:34:23 -04:00
Guo Xiang Tan 45fe5dc793 `$redis.client` -> `$redis._client`.
See c239abb43c
2018-04-20 13:01:17 +08:00
Sam 26ce930ac6 FIX: remove auth cookie if we see InvalidAccess 2018-04-20 11:21:51 +10:00
Arpit Jalan 91bf10bd12 FIX: create upload record for exported csv files 2018-04-20 00:27:49 +05:30
Joffrey JAFFEUX 0e414d0890
dashboard next: trending search report
This commit also improves how data is loaded sync and async
2018-04-19 18:19:21 +02:00
Joffrey JAFFEUX 01c061d20d
dashboard next: perf and UI tweaks
* cache CORE reports
* adds backups/uploads section
* few css tweaks
2018-04-18 21:30:41 +02:00
Jeff Atwood 2e1454a6e2 very minor copyedit 2018-04-18 02:08:26 -07:00
Arpit Jalan dcf33e74d6 UX: update placeholder for full page search 2018-04-18 13:50:34 +05:30
Jeff Atwood 1b9647d124 minor copyedit 2018-04-18 01:04:14 -07:00
Sam 59cd7894d9 FEATURE: if site is under extreme load show anon view
If a particular path is being hit extremely hard by logged on users,
revert to anonymous cached view.

This will only come into effect if 3 requests queue for longer than 2 seconds
on a *single* path.

This can happen if a URL is shared with the entire forum base and everyone
is logged on
2018-04-18 16:58:57 +10:00
Joffrey JAFFEUX 2b8307c6c3
dashboard next: minor improvements
* rename route to dashboard-next
* better scaling of charts for large data sets
* adjust trend position to avoid overlap
* makes sure silenced/suspended is made on real users
* correctly format data when only one data point
* minor refactoring
2018-04-17 11:01:06 +02:00
Guo Xiang Tan 28fbee04df Allow auto close site settings to be shadowed by global. 2018-04-17 14:23:44 +08:00
Sam 56cbfa2611 UX: Require an extra click to open topic draft
When there is a topic draft in place instead of showing "+ New Topic"
we will show "+ Open Draft", this allows topic drafts to be much less
intrusive.

Also, fixes draft handling of tags
2018-04-17 14:45:18 +10:00
Guo Xiang Tan 1b9a38c5e2 FIX: Incorrect formatter used when logstash formatter is enabled. 2018-04-17 12:07:52 +08:00
Robin Ward 3d7dbdedc0 FEATURE: An API to help sites build robots.txt files programatically
This is mainly useful for subfolder sites, who need to expose their
robots.txt contents to a parent site.
2018-04-16 15:43:20 -04:00
Joffrey JAFFEUX cfe88a67e1
dashboard next: minor quality improvements
* locale for title
* minimum chart/table while loading
* sort users by type
* more spacing in the UI
* minor refactoring
2018-04-16 16:01:29 +02:00
Joffrey JAFFEUX 06b6c805d5
dashboard next: adds report for user types 2018-04-16 13:03:43 +02:00
Arpit Jalan 9353ae4b5d Remove obsolete per topic unsubscribe page. 2018-04-16 16:11:20 +05:30
Joffrey JAFFEUX 035d92d2e1
dashboard next: minor tweaks
* help texts
* renaming of components to dashboard-*
* use number formatter
* adjust trend position
2018-04-16 12:00:49 +02:00
Joffrey JAFFEUX 0e15a575f4
EXPERIMENTAL: new dashboard UI
This is the first iteration of an effort towards making a very good dashboard.

Until we feel confident this is good, this dashboard will only be accessible through /admin/dashboard_next
2018-04-16 10:42:06 +02:00
Arpit Jalan a1ef455c78 SECURITY: do not show private topic title on /unsubscribed page 2018-04-16 10:35:57 +05:30
Jeff Atwood bf2574ee76 very minor copyedit (part deux) 2018-04-15 03:44:23 -07:00
Jeff Atwood 9642240a18 very minor copyedit 2018-04-15 03:38:53 -07:00
Neil Lalonde a631c8f09d Update translations 2018-04-13 10:32:39 -04:00
Sam 6179c0ce51 FEATURE: bingbot heavily throttled till it plays nice 2018-04-13 14:24:22 +10:00
Guo Xiang Tan a902d5b27f Replace ActiveSupport::Logger with DiscourseLogstashLogger when enabled. 2018-04-13 12:08:27 +08:00
Arpit Jalan 00f59f648d
Merge pull request #5755 from techAPJ/flag-webhook
FEATURE:  webhook for flag events
2018-04-13 07:50:21 +05:30
Arpit Jalan a16b616861 FEATURE: webhook for flag events 2018-04-13 07:47:58 +05:30
Guo Xiang Tan b3a88109a8 Minor UX tweaks to group pages. 2018-04-13 10:10:42 +08:00
Gerhard Schlager f4ebe47b32 Minor copy edit 2018-04-12 17:12:53 +02:00
Guo Xiang Tan a389baeb07 FIX: Group pages should work when group name contains periods.
https://meta.discourse.org/t/group-name-cant-have-dot-inside/48658
2018-04-12 17:11:36 +08:00
Jeff Atwood e79c92c0e1 minor copyedit 2018-04-11 20:25:43 -07:00
Jeff Atwood 3d5a55b55b update copy for post hidden twice 2018-04-11 18:28:19 -07:00
Robin Ward 88324a13fe Copy edit 2018-04-11 10:19:36 -04:00
Arpit Jalan 48d43b33cc add client side validation for category minimum_required_tags 2018-04-11 07:17:52 +05:30
Arpit Jalan 9ca6ebe8fe FEATURE: enforce tagging on categories 2018-04-11 07:15:24 +05:30
Sam abf0b1c5bd correct multisite bleed in proxy cache 2018-04-11 11:02:16 +10:00
Jeff Wong 4c6d2ed59a
Merge pull request #5749 from featheredtoast/service-worker-registration-fixes
Fix - service worker registrations
2018-04-10 16:37:06 -07:00
Neil Lalonde 6e6892c88e FEATURE: when uncategorized topics are not allowed, disable the post input until a category is chosen 2018-04-10 19:31:28 -04:00
Jeff Wong 32f919ea34 Fix - service worker registrations
* register service workers in a development env

* register service worker from ember initialize fn
2018-04-10 15:17:32 -07:00
Blake Erickson 720dd2432e remove change from descourse_defaults.conf 2018-04-10 14:27:03 -06:00
Blake Erickson 0337a8f6d5 ensure correct '/'s for relative_url_root in route file 2018-04-10 14:24:29 -06:00
Blake Erickson 2fd31f2b2a FIX: use root path for service_worker_asset and handle subfolder installs for the '/c' route 2018-04-10 14:06:32 -06:00
Sam afaeb20f27 FEATURE: Add option to have sso synchronize group membership
In some cases add_groups and remove_groups is too much work, some sites
may wish to simply synchronize group membership based on a list.

When sso_overrides_groups is on all not automatic group membership is
sourced from SSO. Note if you omit to specify groups, they will be cleared
out.
2018-04-10 13:17:23 +10:00
Sam 6995382323 update copy 2018-04-10 09:51:29 +10:00
Joffrey JAFFEUX bd7100a062 FEATURE: revamp full-page-search UI (#5703)
This is the first iteration of this revamp, a following iteration will focus on improving the controls in the advanced search sidebar.
2018-04-09 11:51:09 -04:00
Gerhard Schlager 15873200b3
Fix typo 2018-04-09 12:56:01 +02:00
Sam c081130601 remove uneeded words 2018-04-09 17:28:25 +10:00
Guo Xiang Tan c82b2dcc24 Remove admin group management pages. 2018-04-09 15:14:50 +08:00
Guo Xiang Tan 4319273cf5 UX: Split up group form into smaller sections. 2018-04-09 15:14:50 +08:00
Claas Augner ba905b24ca FIX: differentiate one/other select-kit maximumLabel/minimumLabel 2018-04-09 09:12:01 +02:00
Neil Lalonde f6cfff3cea UX: user preferences allows users to choose which title to use from their badges and groups 2018-04-06 14:34:36 -04:00
Gerhard Schlager 10dad5de63 Update translations 2018-04-06 18:56:06 +02:00
Gerhard Schlager 4c53e81c69 Update translations 2018-04-06 14:51:09 +02:00
jose-hms b87205831b FEATURE: Staged user moderation (#5721) 2018-04-06 11:41:25 +02:00
Sam cf19982fca ban bingbot 2018-04-06 15:40:03 +10:00
Guo Xiang Tan 2ddcdf8704 UX: Add an icon to indicate if a plugin is official.
https://meta.discourse.org/t/improving-admin-plugins/84585
2018-04-06 10:54:58 +08:00
Sam 3a7b696703 FEATURE: allow for setting crawl delay per user agent
Also moved to default crawl delay bing so no more than a req every 5 seconds is allowed

New site settings:

"slow_down_crawler_user_agents" - list of crawlers that will be slowed down
"slow_down_crawler_rate" - how many seconds to wait between requests

Not enforced server side yet
2018-04-06 10:15:23 +10:00
Joffrey JAFFEUX f0fe16d824
FEATURE: implements minimum selection for select-kit 2018-04-05 16:45:19 +02:00
Gerhard Schlager cd6a99a027 FEATURE: Send a different PM when a post has been hidden more than once 2018-04-05 14:03:21 +02:00
Gerhard Schlager 35efdb39b3 FEATURE: Show the current reply count of the flagged post 2018-04-05 14:03:02 +02:00
Sam 91a4fee03d FEATURE: block bing from crawling all discourse sites
bing is crawling our properties 10x faster than any other crawler,
until default behavior is improved we are blocking it out-of-the-box

You may enable it by setting the blacklist back to empty
2018-04-05 16:03:02 +10:00
Vinoth Kannan 434cbc649f FEATURE: Webhook for tag events 2018-04-04 17:49:20 +05:30
Guo Xiang Tan e04d09d148 Add Process pid to lograge output as well. 2018-04-04 18:31:29 +08:00
Guo Xiang Tan 746889bbc1 Include hostname in lograge payload. 2018-04-04 18:24:30 +08:00
Vinoth Kannan efb19dbdaf
Merge pull request #5705 from discourse/new_webhooks
FEATURE: Webhook for group and category events
2018-04-02 10:53:21 +05:30
Jeff Atwood 656da091b6 very minor typo in copy 2018-03-29 15:01:43 -07:00
Jeff Atwood e591f08495 remove "for today" text from rate limit copy 2018-03-29 15:00:42 -07:00
Robin Ward e4a5b0c39a
Merge pull request #5715 from jjaffeux/remove-title-user-notifications
FIX: remove unneeded and uninformative title on user notifications list
2018-03-29 09:23:09 -04:00
Guo Xiang Tan 52e75eaee9 UX: Tweaks to group pages. 2018-03-29 17:04:48 +08:00
Joffrey JAFFEUX a64cc9a990
FEATURE: allow users to collapse profile after expanding it 2018-03-29 10:53:57 +02:00
Régis Hanol fa608f2bb4 FIX: ensure theme variables are unique when adding an upload 2018-03-28 18:57:11 +02:00
Joffrey JAFFEUX 466f09bbc4 FIX: remove uneeded and uninformative title on user notifications list 2018-03-28 17:05:42 +02:00
Robin Ward b5da0b5796 FIX: Missing translation key 2018-03-28 09:14:53 -04:00
Arpit Jalan 03725c7c8a FIX: add reserved usernames for ‘/u/’ static routes 2018-03-28 11:15:38 +05:30
Guo Xiang Tan 21ae49ab92 Simplify log in for request specs. 2018-03-28 11:32:47 +08:00
Guo Xiang Tan 70be8124a3 SECURITY: Don't expose development route in production. 2018-03-28 11:32:47 +08:00
Robin Ward 05dc1f65ab UX: Editing a shared draft was confusing in the composer
Now when you edit a shared draft it looks like creating one, where the
destination category id appears in the dropdown.
2018-03-27 17:11:21 -04:00
Neil Lalonde 7311023a52
Merge pull request #5700 from discourse/crawl-block
FEATURE: control web crawlers access with white/blacklist
2018-03-27 15:06:03 -04:00
Arpit Jalan 518f7ba91b FIX: show private message topic count on admin dashboard reports 2018-03-27 17:10:33 +05:30
Gerhard Schlager 37fa843efc Allow pulling of Urdu translations from Transifex again
The translations have been fixed.
2018-03-27 11:56:40 +02:00
Guo Xiang Tan 7edab1c0b9 UX: Add `groups/custom/new` route for admins to create a new group. 2018-03-27 17:39:05 +08:00
Vinoth Kannan e7407d0adc FEATURE: Webhook for group and category events 2018-03-27 11:53:35 +05:30
Guo Xiang Tan 2ecd234e27 UX: Consolidation group manangement into a single tab. 2018-03-27 13:34:46 +08:00
Neil Lalonde f2c060bdf2 FEATURE: option for tags in a tag group to be visible only to staff 2018-03-26 17:05:09 -04:00
Neil Lalonde cd99ccdbf0 Update translations 2018-03-26 10:58:01 -04:00
Guo Xiang Tan dcd1d422d1 UX: Allow admins to set users as owners while adding users.
https://meta.discourse.org/t/adding-owners-members-ux-is-inconsistent-and-misleading/58084/9
2018-03-26 17:33:50 +08:00
Guo Xiang Tan 35745166b5 UX: New group membership management workflow.
https://meta.discourse.org/t/adding-owners-members-ux-is-inconsistent-and-misleading/58084
2018-03-26 16:15:02 +08:00
Sam da6c268e56 FEATURE: add request start time so we can track queueing 2018-03-26 16:29:20 +11:00
Jeff Atwood 786dd88e5a copyedit: put back copy accidentally removed 2018-03-25 00:58:26 -07:00
Jeff Atwood 3b71abb0e2 very minor copyedits 2018-03-25 00:53:32 -07:00
Robin Ward 38af67eb73 Update the destination category id when a user changes it 2018-03-23 11:12:56 -04:00
Guo Xiang Tan a8036189cc Minor 2fa copy edit. 2018-03-23 11:43:59 +08:00
Guo Xiang Tan 7a4b70ef58 UX cleanup changes to 2FA flow. 2018-03-23 11:05:36 +08:00
Jeff Atwood 90af1659ff very minor copyedits on 2fa 2018-03-22 17:17:47 -07:00
Jeff Atwood 1d3a142f35 minor copyedits 2018-03-22 15:27:07 -07:00
Neil Lalonde ced7e9a691 FEATURE: control which web crawlers can access using a whitelist or blacklist 2018-03-22 15:41:02 -04:00
Jeff Atwood 448f4afa68 copyedits on login via email link 2018-03-22 04:19:34 -07:00
Jeff Atwood 096c3a0bf8 copyedits on 2 factor auth 2018-03-22 03:39:06 -07:00
Jeff Atwood 337a301a57 missing file in commit 2018-03-22 02:22:25 -07:00
Jeff Atwood d7c2d2edb8 remove extraneous "click to show" copy 2018-03-22 02:19:57 -07:00
Guo Xiang Tan f3b402ffd5 UX: Allow users to filter members on group page.
* Only admins are allowed to filter users by email.
2018-03-22 14:02:41 +08:00
Guo Xiang Tan 1cc0961566 FEATURE: Allow admin to manage group owners on group page. 2018-03-22 12:33:42 +08:00
Arpit Jalan d96c1058a2 FEATURE: add staff action log for 'restore topic' 2018-03-21 18:04:13 +05:30
Guo Xiang Tan 6381bc6ce1 Improve description for removing a group member. 2018-03-21 18:37:13 +08:00
Guo Xiang Tan be866dbe6e UX: Allow group owners to manage members from group members page. 2018-03-21 18:22:55 +08:00
Robin Ward b9abd7dc9e FEATURE: Shared Drafts
This feature can be enabled by choosing a destination for the
`shared drafts category` site setting.

* Staff members can create shared drafts, choosing a destination
category for the topic when it is published.

* Shared Drafts can be viewed in their category, or above the
topic list for the destination category where it will end up.

* When the shared draft is ready, it can be published to the
appropriate category by clicking a button on the topic view.

* When published, Drafts change their timestamps to the current
time, and any edits to the original post are removed.
2018-03-20 17:15:26 -04:00
Guo Xiang Tan 28baf97a00 Fix duplicated translations. 2018-03-20 19:08:32 +08:00
Guo Xiang Tan 15bcfcd182 UX: Allow users to filter by different group types on groups page. 2018-03-20 17:38:11 +08:00
Neil Lalonde 4d44024c82 FIX: error when trying to block an IP address. Return a message when IP address matches an existing screened IP address, including ranges. 2018-03-19 14:34:43 -04:00
Régis Hanol 9de134caa0
Better copy for redirect_warning' 2018-03-19 16:02:07 +01:00
Guo Xiang Tan 19a93b0e95 UX: Improve groups page on mobile. 2018-03-19 18:48:12 +08:00
Guo Xiang Tan 41b0fbe001 UX: Indicate user's group membership on groups page. 2018-03-19 18:29:30 +08:00
Guo Xiang Tan 05ea034490 UX: Allow groups page to be searchable. 2018-03-19 17:16:51 +08:00
Arpit Jalan f053e4cf37
Merge pull request #5682 from techAPJ/allowed-tags-page
FIX: show only allowed tags on PM tags page and display correct count
2018-03-17 08:29:00 +05:30
Régis Hanol 89f5c90ce0 FIX: show an error page on click tracking error 2018-03-17 00:33:11 +01:00
Arpit Jalan e9bc763440 FIX: show only allowed tags on PM tags page and display correct count
FIX: tags page should link to user profile we are browsing
2018-03-17 00:17:48 +05:30
Guo Xiang Tan fe96ef6ed2 UX: Use topic list for displaying group messages on group page.
https://meta.discourse.org/t/group-inbox-on-a-groups-page-mockup/71319
2018-03-16 11:56:40 +08:00
Guo Xiang Tan a35227918f UX: Display group topics in a topic list. 2018-03-15 11:37:55 +08:00
Kyle Zhao f7bd05e534 FEATURE: set 'Retry-After' header for 429 responses (#5659) 2018-03-13 23:12:41 +08:00
Arpit Jalan 7d375690c1
Merge pull request #5667 from techAPJ/pm-tags-page
FEATURE: replace PM tags dropdown with a dedicated tags page
2018-03-13 13:08:21 +05:30
Arpit Jalan 24338fbbe8 FEATURE: replace PM tags dropdown with a dedicated tags page 2018-03-13 13:06:58 +05:30
Robin Ward 65ac80b014 FEATURE: Log Staff edits in Staff Action Logs
Why? Some edits by staff are not tracked. For example, during the grace
period, or via the flags/silence dialog.

If a staff member is editing someone else's post, it now goes into the
Staff Action Logs so it can be audited by other staff members.
2018-03-12 13:51:40 -04:00
AhmadFCheema d75eb23231 Fix typos in server.en.yml (#5668)
* Fix typos in server.en.yml

* Minor typo correction

Emoji = Emojis
2018-03-12 20:21:04 +08:00
Arpit Jalan 12706c4b29 FEATURE: support markdown rendering for embedded posts 2018-03-11 08:00:48 +05:30
Michael Brown 5316b6c6bc FIX: typo whipser → whisper 2018-03-10 16:53:24 -05:00
Sam 800760e353 also watch CSS in unicorn on dev 2018-03-09 17:47:57 +11:00
Sam 7c0e6b820e move key so it does not interfere with other errors 2018-03-09 16:42:11 +11:00
Sam 39e679d3cb FEATURE: allow themes to live in private git repos
This feature allows themes sourced from git to live on private
servers, it automatically generates key pairs.
2018-03-09 16:14:38 +11:00
Guo Xiang Tan a89f3160a5 Add new config to ensure backup/restore connects to PG directly.
* In `pg_dump` 10.3+ and 9.5.12+, in
  it does a `SELECT pg_catalog.set_config('search_path', '', false)`
  which changes the state of the current connection. This is known
  to be problematic with Pgbouncer which reuses connections. As such,
  we'll always try to connect directly to PG directly during
  the backup/restore process.
2018-03-09 10:28:03 +08:00
Sam 5b6e49ae1d FEATURE: split out max diff to 2 settings
We trust staff + tl2 and up to perform edits in grace period.
Allow them significantly more edit room in grace period prior to storing
a revision.

editing_grace_period_max_diff_high_trust applies to users with tl2 and up.

So

tl0 / 1 : we store an extra revision if more than 100 chars change
tl2 and up : we store an extra revision if more than 400 chars change

We may tweak these numbers as we go.
2018-03-09 11:58:50 +11:00
Arpit Jalan 55fd18e195 add locale for Tags title 2018-03-08 19:12:03 +05:30
Jeff Atwood fb77a6eb49 minor copyedit 2018-03-07 14:51:26 -08:00
Régis Hanol b5b5b68972 Add proper error message when SCSS variable name is invalid when uploading a theme file 2018-03-07 21:37:22 +01:00
Neil Lalonde 0c8df32903 Update translations, except ur because of errors 2018-03-07 14:11:56 -05:00
Jeff Atwood 4132c37add increase grace period max diff to 100 chars 2018-03-07 01:45:48 -08:00
Sam e162cd16b6 FEATURE: editing_grace_period_max_diff to force revisions in grace period
If a user performs a substantive edit of 20 chars or more during grace period
we will store a revision to track the change

This allows for better auditing of changes that happen during the grace period
2018-03-07 18:34:34 +11:00