Jay Pfaffman
0ed2834c2d
FEATURE: Add users:disable_2factor rake task
...
https://meta.discourse.org/t/admin-locked-out-of-2fa/92156/2?u=pfaffman
2018-07-16 09:56:55 +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
Arpit Jalan
db67c87916
fix purge unactivated users subquery
2018-07-13 07:58:58 +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
574d447254
FIX: don't attempt to bump draft sequence if no editor
...
Rare case on old installs
2018-07-11 17:06:49 +10:00
Guo Xiang Tan
a17f5052a3
FIX: ignored_columns
was called twice.
2018-07-11 09:52:37 +08:00
OsamaSayegh
f2cc05c6c6
FIX: ignore self-quotes from the same post when saving ( #6082 )
2018-07-10 16:17:28 +08:00
Guo Xiang Tan
5374a0e720
Fix the build.
2018-07-10 09:48:57 +08:00
Jordan Seanor
10bc69a62f
FEATURE: Event on topic merge ( #6057 )
2018-07-10 09:28:57 +08:00
Guo Xiang Tan
96aca6d7e6
Remove legacy vote post action code. ( #6009 )
2018-07-09 16:54:18 +08:00
Sam
330e848d4a
FIX: if s3 set via global setting bypass config check in UI
2018-07-09 15:38:06 +10:00
michael@discoursehosting.com
81188060d6
Add S3 region eu-west-3 (Paris)
2018-07-09 14:18:35 +10:00
Andrew Schleifer
dba22bbde2
rollback changes
...
This reverts:
* 1baba84c438e "fix s3 subfolders harder"
* ea5e57938edf "fix test for absolute_base_url change"
2018-07-06 17:16:40 -05:00
Andrew Schleifer
52e9f49ec1
fix s3 subfolders harder
...
specifically, include the folder in absolute_base_url
2018-07-06 16:28:40 -05:00
Maja Komel
18f5f646b1
FEATURE: allow selecting a tag when moving posts to a new topic ( #6072 )
2018-07-06 18:21:32 +02:00
Guo Xiang Tan
875008522d
FIX: Discourse.S3BaseUrl
did not account for subfolder bucket names.
2018-07-06 15:53:57 +08:00
Guo Xiang Tan
7163bf9323
FIX: Upload.get_from_url
not respective subfolder in s3 bucket names.
2018-07-06 11:37:11 +08: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
Sam
7b26f5086b
PERF: we have no use for topic percent rank
...
Prepare to remove this column
2018-07-05 15:10:19 +10:00
Maja Komel
cb89797e9a
FEATURE: shows remaining backup codes in user preferences
2018-07-04 10:45:42 +02:00
Leo McArdle
c3129444ea
FIX: allow multiple secondary emails
2018-07-03 18:21:35 +08:00
Arpit Jalan
7550e9ff95
FIX: purge unactivated users with a message from non-human users
2018-06-29 13:03:04 +05:30
hellekin
25cfc98b67
Fix 'asscoiated' typo
...
I know that **Naming is CRITICAL** and that **Refactoring only NOT welcome**.
But since I spotted this (consistent) typo and the change does not affect any
functionality -- I checked the presence of "asscoiated" in the code base, I
guess the first rule trumps the second one.
It also gave me a false pretext to bypass my reluctance to use Google forms and
sign de CLA. Typos hurt the eye.
2018-06-29 11:10:05 +10:00
Sam
e0bc6590fd
minor cleanup
2018-06-29 10:30:22 +10:00
Robin Ward
5d1d7e0e7d
PERF: Scanning the id
for this is signficantly slower in production
2018-06-28 11:04:40 -04:00
Sam
db14e10943
SECURITY: category badges should HTML escape names
2018-06-28 18:15:07 +10:00
Maja Komel
ec3e6a81a4
FEATURE: Second factor backup
2018-06-28 10:12:32 +02:00
misaka4e21
47cb46671a
FEATURE: Support disabling tag creation for non-staff users.
2018-06-27 07:15:02 +08:00
David Lee
4644d777bd
FEATURE: add website field to SSO
2018-06-25 16:09:39 +10:00
Jeff Wong
41f76a74f8
FEATURE: send message when a user reaches tl1
2018-06-22 13:20:00 -07:00
Jeff Wong
bc52bdfa12
Feature: unconditionally consider TL0 users as "first day" users
2018-06-21 10:53:08 -07:00
Guo Xiang Tan
f7d22bad90
FEATURE: Forced summary mode for megalodon topics.
...
This is mainly done for performance reasons and megalodon
topics are usually a byproduct of imports where site setting
limits are not respected.
2018-06-21 14:00:20 +08:00
Guo Xiang Tan
ac80360bea
PERF: Help postgres make use of index in Post.summary
.
2018-06-21 13:29:16 +08:00
Guo Xiang Tan
6ddd214476
FIX: Post#summary
returning posts from other topics.
2018-06-21 12:00:54 +08:00
Joffrey JAFFEUX
50d11fd582
FIX: improves durability display check
2018-06-20 23:15:11 +02:00
Guo Xiang Tan
0365806b93
FIX: Properly display error when post action fails to create.
2018-06-20 21:20:23 +08:00
Joffrey JAFFEUX
fa43969fe2
FIX: crashes with date conversion in reports
2018-06-20 14:42:15 +02:00
Sam
35e0ccfc84
make linter happy
2018-06-20 18:03:27 +10:00
Sam
cb824a6b33
DEV: remove all calls to SqlBuilder use DB.build instead
...
This is part of the migration to mini_sql, SqlBuilder.new is being
deprecated and replaced with DB.build
2018-06-20 17:53:49 +10:00
riking
7f37ee9152
SearchLog: fix specs
2018-06-20 10:44:11 +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
riking
1de0ef137e
FIX: SearchLog: Do not store IP of logged in users
2018-06-20 10:44:11 +10:00
Jeff Wong
2ff226e509
FIX: consider staged users mature (no spam checks) after 1 day
2018-06-19 09:41:10 -07: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
Jeff Wong
68e4e6a575
FIX: staged users are still tl0 but do not trigger spam if 1 week old.
2018-06-18 17:20:04 -07:00
Jeff Wong
9e55767f6a
FIX: don't punish a user for being previously staged for spam flags.
2018-06-15 12:25:25 -07:00
Régis Hanol
ff06ce4cce
fix the build
2018-06-13 23:05:23 +02:00
Régis Hanol
051d1a3c36
PERF: faster Screened IP Address roll up
2018-06-13 22:47:23 +02: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
Maja Komel
6c9190357c
fix get from url for external uploads without CDN
2018-06-13 16:21:28 +10:00
riking
94f70c7b5c
FIX: TopicViewItem: do not store IP of logged in users
2018-06-12 12:43:56 +10:00
riking
4b2e2ea8ef
Change TopicViewItem to allow null IP address
2018-06-12 12:43:56 +10:00
Gerhard Schlager
150ae21489
FEATURE: Log user merge in staff logs
2018-06-11 18:43:56 +02:00
Vinoth Kannan
a6303073a0
Strip images from cooked for topic excerpt
2018-06-11 14:43:53 +05:30
Guo Xiang Tan
ad5082d969
Make rubocop happy again.
2018-06-07 13:28:18 +08:00
Sam
89ad2b5900
DEV: Rails 5.2 upgrade and global gem upgrade
...
This updates tests to use latest rails 5 practice
and updates ALL dependencies that could be updated
Performance testing shows that performance has not regressed
if anything it is marginally faster now.
2018-06-07 14:21:33 +10:00
Guo Xiang Tan
d600e71b3d
FIX: Clean up stale UserExport
records daily.
...
* Add tests for `UserExport.remove_old_exports`
2018-06-05 09:43:40 +08:00
Robin Ward
fab59c66f0
FIX: Protection against dangling category group records
2018-06-04 15:43:26 -04:00
Arpit Jalan
89eca87f16
FEATURE: add staff action log for post rejections
2018-06-01 21:48:27 +05:30
Guo Xiang Tan
9ef61e0af5
PERF: Prefer exists?
instead of loading AR object.
2018-06-01 09:44:14 +08:00
Neil Lalonde
e26a14dc29
FIX: error when flagging to notify moderators because message title is too long
2018-05-29 12:21:47 -04:00
Sam
df815d6c0e
DEV: prefer using ordering in relation over default scope
2018-05-29 09:34:12 +10:00
Arpit Jalan
8d9c77e113
optimize group invitation code
2018-05-28 17:59:14 +05:30
Arpit Jalan
c8bc942333
FIX: do not add invited user to automatic groups
2018-05-28 17:17:48 +05:30
Gerhard Schlager
ed2ae3cb0a
FIX: Load post revisions in correct order
2018-05-28 11:25:24 +02:00
Guo Xiang Tan
754458e6a2
PERF: Minor but we can just pass a hash to where
.
...
```
Warming up --------------------------------------
4 x .where 1.040k i/100ms
1 x .where 1.677k i/100ms
Calculating -------------------------------------
4 x .where 10.321k (± 5.2%) i/s - 52.000k in
5.053803s
1 x .where 17.117k (± 3.8%) i/s - 85.527k in
5.004107s
Comparison:
1 x .where: 17117.1 i/s
4 x .where: 10321.3 i/s - 1.66x slower
```
2018-05-28 16:41:38 +08:00
Sam
5a32a70d6c
FIX: ColorScheme color missing was returning "nil"
2018-05-28 11:46:00 +10:00
Régis Hanol
5b2e7c8d10
fix the build
2018-05-26 03:11:10 +02:00
Régis Hanol
338d39265a
FIX: don't publish notifications_state when user has been deleted
2018-05-26 02:27:54 +02:00
Régis Hanol
d23229df85
Let's use the same method
2018-05-26 02:16:53 +02:00
Régis Hanol
f988fa31aa
FIX: ensure 'notifications_state' is up to date after creating a notification
2018-05-26 02:09:48 +02: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
Joffrey JAFFEUX
a8901efafe
FIX: flags report is now a lower is better kind of report
2018-05-25 12:59:39 +02:00
Gerhard Schlager
20b94bc714
FIX: Extraction of quoted posts failed in some cases
...
* It stored only oneboxed "quotes" when [quote] and links to topics or posts were mixed.
* Revising a post didn't add or remove records from the quoted_posts table.
2018-05-25 12:00:17 +02:00
riking
501bc0e9af
FIX: UserProfileView: Do not log IP of logged-in users
2018-05-25 15:54:14 +10:00
Régis Hanol
71f66cd679
FIX: ensure PostAlerter is always run in sidekiq
2018-05-24 17:27:43 +02:00
Guo Xiang Tan
3bfd9698c7
PERF: Avoid running the same query twice in TopicViewSerializer#details
.
2018-05-24 16:46:13 +08:00
Guo Xiang Tan
b3860c82da
FIX: Don't enqueue web hooks inside a deferred queue.
...
* The deferred queue is meant for short lived jobs
and does not guarantee execution. We need to ensure
that web hooks are always run.
2018-05-24 15:03:17 +08:00
Guo Xiang Tan
8a1aab4e8a
PERF: Select distinct active web hooks at the db level.
2018-05-24 14:56:40 +08:00
Gerhard Schlager
beed676b04
FIX: Check group names when checking username availability
2018-05-22 21:55:54 +02:00
Joffrey JAFFEUX
508b65b76a
UX: refactoring/refining tables of new dashboard
2018-05-22 16:47:23 +02:00
Guo Xiang Tan
f6becd6a4e
Merge pull request #5838 from discourse/fix-for-s3-subfolders
...
FIX for bucket name in GlobalSetting with folder
2018-05-22 18:10:44 +08:00
Sam
1ac1ee4287
FEATURE: allow registration of an array custom field
2018-05-22 16:48:39 +10:00
riking
9b0efe9c84
FIX: TopicLinkClick: do not log IP of logged in users
2018-05-22 16:05:38 +10:00
Guo Xiang Tan
ae3a7ca08d
Fix unexpected return error.
2018-05-21 22:28:44 +08: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
Arpit Jalan
290ee312e6
FIX: handle invalid mailto links
2018-05-18 18:02:52 +05:30
David Taylor
c168639be2
Add plugin outlet in admin theme list ( #5837 )
...
This will be used by discourse-theme-creator to add avatars next to each theme.
2018-05-18 10:09:21 +02:00
Guo Xiang Tan
416d19af27
FIX: Wrong target user displayed for user actions in activity stream.
...
https://meta.discourse.org/t/wrong-assigned-username-in-activity-list/73816
2018-05-18 11:28:13 +08:00
Joffrey JAFFEUX
af548c23c4
new dashboard quality pass (code, tests and UI)
2018-05-17 22:44:33 +02:00
Andrew Schleifer
bc89674b58
FIX for bucket name in GlobalSetting with folder
...
When `s3_bucket="bucket/folder` in discourse.conf, absolute_base_url
was bucket/folder.s3-region.amazonaws.com
These names are bad, but this mirrors the s3_bucket/s3_bucket_name in
S3Store
N.B. that nearby s3_upload_bucket _should_ include the folder
2018-05-17 12:59:34 -05:00
Régis Hanol
53f8f6095d
FEATURE: staff action logs when creating/updating/deleting badges
2018-05-17 18:09:27 +02:00
Guo Xiang Tan
b3981ddc43
Shorten User.suggest_name
further.
2018-05-17 16:35:03 +08:00
Guo Xiang Tan
147ea37115
FIX: Missing notification for watching first post users when topic is recategorized.
...
https://meta.discourse.org/t/not-receiving-notifications-for-announcements/87275/2?u=tgxworld
2018-05-17 16:15:29 +08:00
Arpit Jalan
33899664ce
FIX: handle bad user profile website
2018-05-17 13:21:24 +05:30
Arpit Jalan
539cf32f87
FIX: handle encoded mailto links when looking for upload record
2018-05-17 12:44:53 +05:30
Guo Xiang Tan
117763493b
Refactor User#suggest_name
.
...
* Rename `email` to `string` as variable can be an email, username
or any valid string.
2018-05-17 14:54:14 +08:00
Arpit Jalan
aee4045dd0
FIX: suggest name when username/name is provided
2018-05-17 10:36:36 +05:30
Sam
c381d60471
Replace the "posts" line with message count
2018-05-17 10:26:30 +10:00
Régis Hanol
39aceed63d
FIX: don't purge unactivated users with a message
2018-05-16 18:24:11 +02:00
Gerhard Schlager
ae6236d090
FIX: Changing owner of deleted reply didn't work
2018-05-16 17:03:09 +02:00
Régis Hanol
4103783821
FIX: don't use PMs in Incoming Links reports
2018-05-16 16:55:54 +02:00
Régis Hanol
5e97a9bfb7
FIX: tags in a 'visible by everyone but usable only by staff' group weren't visible by everyone
2018-05-16 09:48:19 +02:00
Sam
21e0b7c818
avoid async report pattern and replace with simpler hijack
2018-05-16 16:05:03 +10:00
Sam
3864091f2d
correct links to admins and moderators
2018-05-16 15:24:52 +10:00
Jeff Wong
74aecdfd9d
Feature: add a 30 seconds grace window for 2-factor token checks
2018-05-15 16:13:21 -07:00
Joffrey JAFFEUX
9947c38e1c
UX: support for multiple datasets in one chart
2018-05-15 20:12:03 +02:00
Régis Hanol
a512b181d9
FIX: automatically in/decrement topic_tags.pm_topic_count
2018-05-15 16:05:48 +02:00
Sam
fe89f441ae
correct reports
2018-05-15 15:12:27 +10:00
Sam
193b6d5651
UX: improve new dashboard
...
- top referred topics
- limit search logs to 8 results
2018-05-15 15:08:36 +10:00
Sam
eb33f6e9b9
correct daily engaged users to look at average
2018-05-15 10:17:17 +10:00
Régis Hanol
a28c58feb1
FIX: automatic group membership when using SSO
2018-05-15 01:48:30 +02:00
riking
cdcb0a396f
FIX: IncomingLink: do not log IP of logged-in users
2018-05-15 09:32:29 +10:00
Joffrey JAFFEUX
e474351ae4
inactive users report is not used anymore
2018-05-14 21:31:14 +02:00
Régis Hanol
e9abdaebbe
UX: show an enveloppe icon when a badge is used in messages
...
- the badge count now includes messages
- only show the message badges to admins
2018-05-14 19:02:00 +02:00
Joffrey JAFFEUX
34dbb32df4
FIX: makes report description optional
2018-05-14 16:34:56 +02:00
Joffrey JAFFEUX
83255d94d9
DateGroupable is not used anymore
2018-05-14 16:26: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
Régis Hanol
3e06598e96
FIX: only unstage staged users
2018-05-14 12:03:15 +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
d6316ac4b9
add some more protection
2018-05-14 12:01:57 +10:00
Sam
9d97e1244e
correct it so when we have no dates we still return graphs
2018-05-14 11:12:52 +10:00
Régis Hanol
2cf6fb7359
FIX: always unstage users when they log in
2018-05-13 17:00:02 +02:00
Sam
4f508b2358
correct sorting in dashboard
2018-05-11 16:32:12 +10:00
Sam
67054d524d
correct missing day from async reports
2018-05-11 15:06:23 +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
Guo Xiang Tan
630a8ba3d8
Update annotations.
2018-05-09 07:52:45 +08:00
Arpit Jalan
d2f99419b7
Merge pull request #5809 from techAPJ/invite-redeem-fixes
...
FIX: better handling of invite links after they are redeemed
2018-05-08 22:06:11 +05:30
Gerhard Schlager
badad80cdf
FIX: Use default locale for flag reason
2018-05-08 17:31:00 +02: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
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
Guo Xiang Tan
ee1eb1a5bd
FIX: Retrigger notification when a topic is recategorized.
...
https://meta.discourse.org/t/notifications-when-a-topic-is-recategorized/63079
2018-05-07 21:29:06 +08: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
Guo Xiang Tan
ad833c4485
FIX: Don't downcase group name.
2018-05-07 14:02:11 +08: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
Gerhard Schlager
ee426623e4
Dashboard next: correctly group inactive member count
2018-05-04 07:48:55 +02:00
Gerhard Schlager
41cd8c169c
Add specs for inactive users report
2018-05-04 07:48:55 +02:00
Sam
3a06cb461e
FEATURE: remove support for legacy auth tokens
2018-05-04 10:12:10 +10:00
Joffrey JAFFEUX
581d362627
fix spec
2018-05-03 17:39:37 +02:00
Joffrey JAFFEUX
980972182f
dashboard next: caching, mobile support and new charts
2018-05-03 15:41:41 +02:00
osamasayegh
4ebf46dc08
FEATURE: theme settings in RAW hbs templates
2018-05-03 10:43:07 +10:00
Kyle Zhao
0cc4b42180
FIX: TopicEmbed.import should update title and author
2018-05-02 17:12:31 +10:00
Joffrey JAFFEUX
691174fa8f
FEATURE: adds emoji search aliases
2018-05-01 15:43:49 +02:00
Gerhard Schlager
14e700fa50
Adds query for daily engaged users
2018-04-28 01:20:13 +02:00
Arpit Jalan
67357b84b9
FIX: only allow one user to be created per invite
2018-04-27 19:21:10 +05:30
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
73a1be0d57
Fix spec
2018-04-26 17:19:44 +02:00
Joffrey JAFFEUX
b9c7e09a4e
linting
2018-04-26 15:21:02 +02: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
Gerhard Schlager
3f6d1a583e
Add helper for grouping by periods
...
The methods are still experimental and might change without notice!
You need to add `include DateGroupable` to your model before you can use it like this:
`User.smart_group_by_date("users.created_at", start_date, end_date)`.count
2018-04-24 23:31:26 +02: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
Gerhard Schlager
ed4c0c4a63
FEATURE: Add option to delete all replies of flagged post
2018-04-24 11:08:05 -04:00
Arpit Jalan
0a442977b3
FEATURE: add staff action log for post approvals
2018-04-23 11:28:44 +05:30
Guo Xiang Tan
9eabf7c02c
Fix randomly failing specs due to SearchLog cache.
2018-04-23 10:10:10 +08:00
Neil Lalonde
70f2c5d3fd
FEATURE: move staff tags setting to tag group settings
2018-04-20 15:34:23 -04:00
Arpit Jalan
91bf10bd12
FIX: create upload record for exported csv files
2018-04-20 00:27:49 +05:30
Joffrey JAFFEUX
58a53017c9
simplify code
2018-04-19 18:26:30 +02:00
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
Régis Hanol
45850a0cd6
FIX: don't break when posting invalid URIs
2018-04-19 12:29:35 +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
Neil Lalonde
8fc1289172
move topic excerpt code to one method to DRY it up and for extensibility
2018-04-17 15:08:21 -04: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
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
Neil Lalonde
3e9230714f
UX: moved posts message links to the first post at the destination topic
2018-04-13 12:47:36 -04: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
6e46f81123
Add a distributed mutex around user creation via SSO.
...
* When two SSO requests containing the same email in the payload are
sent at the same time, it would sometimes result in two users
being created but one without an email record. Investigations
points to ActiveRecord not generating the right statements but
we have no figured out the reproduction steps yet. We should review
this after upgrading to Rails 5.2.
2018-04-12 16:18:49 +08:00
Vinoth Kannan
19e8f9af13
Remove support for theme settings in raw handlebar templates
2018-04-11 18:21:04 +05:30
Arpit Jalan
9ca6ebe8fe
FEATURE: enforce tagging on categories
2018-04-11 07:15:24 +05:30
Guo Xiang Tan
874003b7b1
FIX: Group can't be deleted if certain users are demoted.
2018-04-10 14:19:35 +08:00
Sam
fe37ce165d
correct issue where groups was never being blanked
2018-04-10 15:30:18 +10: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
Guo Xiang Tan
c82b2dcc24
Remove admin group management pages.
2018-04-09 15:14:50 +08:00
osamasayegh
ce1a6f2fd8
FEATURE: Theme settings in handlerbars templates
2018-04-09 16:47:28 +10:00
Neil Lalonde
e33aef729f
FIX: unable to save groups with mixed case names
2018-04-06 16:12:35 -04: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
f2d00e5eff
FEATURE: Use Message-ID for detecting email replies to group
...
Ignores the site setting "find_related_post_with_key" and always tries to honor the `In-Reply-To` and `References` header for emails sent to a group.
The senders email address must be included in the `To` or `CC` header of a previous email sent to the group and the `Message-ID` of that email must be included in the current email's `In-Reply-To` or `References` header.
2018-04-05 11:00:38 +02:00
Sam
f8637ed616
FIX: if a message is *partially* archived consider it not archived
2018-04-05 17:17:47 +10:00
Vinoth Kannan
434cbc649f
FEATURE: Webhook for tag events
2018-04-04 17:49:20 +05:30
Arpit Jalan
c36e201eb3
FIX: update categories topic_count when converting topic to a PM and vice versa
2018-04-04 12:01:56 +05:30
Guo Xiang Tan
00d879ec63
Fix the build.
2018-04-03 00:44:12 +08:00
Guo Xiang Tan
2498403bc3
Revert "FIX: Username uniqueness check should not happen to current user_id"
...
This reverts commit f71a18facd
.
2018-04-03 00:44:04 +08:00
Vinoth Kannan
f71a18facd
FIX: Username uniqueness check should not happen to current user_id
2018-04-02 21:59:11 +05:30
Guo Xiang Tan
221503cd10
FIX: Add server side uniqueness validations for Group#name
and User#username
.
...
https://meta.discourse.org/t/groups-can-be-given-same-name-as-existing-username/74010
2018-04-02 18:19:18 +08:00
Guo Xiang Tan
d2a8f40fb0
Merge pull request #5711 from Supermathie/learn_cdn_url_hostname
...
FIX: CDN_URL hostname should be in GlobalSetting.hostnames
2018-04-02 16:39:24 +08:00
Guo Xiang Tan
142571bba0
Remove use of rescue nil
.
...
* `rescue nil` is a really bad pattern to use in our code base.
We should rescue errors that we expect the code to throw and
not rescue everything because we're unsure of what errors the
code would throw. This would reduce the amount of pain we face
when debugging why something isn't working as expexted. I've
been bitten countless of times by errors being swallowed as a
result during debugging sessions.
2018-04-02 13:52:51 +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
Robin Ward
eab64710ff
FIX: Shared draft performance fix + missing avatars
2018-03-28 16:11:43 -04:00
Robin Ward
4b5977aa6a
Revert "PERF: Don't join on shared drafts unless you have to"
...
This reverts commit efedd9745f
.
2018-03-28 15:35:13 -04:00
Robin Ward
efedd9745f
PERF: Don't join on shared drafts unless you have to
2018-03-28 13:57:39 -04:00
Robin Ward
31d0998506
FIX: Don't allow links with no href
2018-03-28 12:32:16 -04:00
Michael Brown
976d6b290c
FIX: CDN_URL hostname should be in GlobalSetting.hostnames
2018-03-27 15:20:22 -04:00
Neil Lalonde
eb714d8ae3
FIX: application request count keys not expiring in redis
2018-03-27 15:12:39 -04:00
Neil Lalonde
2bd44bbf13
WebCrawlerRequest.clear_cache needs to clear user agent list too
2018-03-27 15:11:48 -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
Neil Lalonde
4d12ff2e8a
when writing cache, remove elements from the user agents list. also return a message and content type when blocking a crawler.
2018-03-27 13:44:14 -04:00
Arpit Jalan
518f7ba91b
FIX: show private message topic count on admin dashboard reports
2018-03-27 17:10:33 +05:30
Vinoth Kannan
e7407d0adc
FEATURE: Webhook for group and category events
2018-03-27 11:53:35 +05:30
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
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
Guo Xiang Tan
3d18cd1d9d
Raise error when timestamp is invalid when creating topic timers.
...
https://meta.discourse.org/t/topic-timer-doesnt-work-for-fa-ir-locale/83702
2018-03-26 11:33:52 +08:00
Neil Lalonde
ced7e9a691
FEATURE: control which web crawlers can access using a whitelist or blacklist
2018-03-22 15:41:02 -04:00
Guo Xiang Tan
fa95699fde
Fix the build.
2018-03-22 14:20:27 +08: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
bfe38b2118
FIX: limit
wasn't correctly applied to Upload.migrate_to_new_scheme
.
2018-03-22 10:56:06 +08:00
Arpit Jalan
d96c1058a2
FEATURE: add staff action log for 'restore topic'
2018-03-21 18:04:13 +05:30
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
Robin Ward
b39fbf7187
A staff member can hide another staff's member's post by flagging
2018-03-20 09:38:23 -04:00
Guo Xiang Tan
d0e7898fa0
Build primary_email
association directly in DiscourseSingleSignOn
.
2018-03-20 19:36:35 +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
Guo Xiang Tan
69a53210d3
Improve UserEmail#email
validation to use the index.
2018-03-20 10:22:06 +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
Guo Xiang Tan
0522aabaab
UX: Allow user_count on groups page to be sortable.
2018-03-19 16:15:13 +08:00
Guo Xiang Tan
9e8d10f711
Fix the build.
2018-03-19 12:34:21 +08:00
Guo Xiang Tan
52b9af10a1
PERF: PG queries for the UserEmail#email
column was not using the index.
2018-03-19 11:31:14 +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
Gerhard Schlager
864bdbd9b6
Fix the build
2018-03-16 22:55:42 +01:00
Gerhard Schlager
6c736a1fa4
FIX: Translation overrides for flag types didn't expire cache
2018-03-16 22:10:19 +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
c85e1fdb50
Revert "PERF: Query for email was not using index."
...
This reverts commit 65eb046e69
.
2018-03-16 15:31:39 +08:00
Guo Xiang Tan
65eb046e69
PERF: Query for email was not using index.
2018-03-16 15:19:35 +08:00
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
937372df02
Merge pull request #5677 from jjaffeux/fix-ruby-warning-keyword
...
FIX: prevents ruby warning with circular reference
2018-03-16 09:31:54 +08:00
Sam
5474635361
add more safety
2018-03-16 11:19:06 +11:00
Joffrey JAFFEUX
c0a986c181
FIX: prevents ruby warning with circular reference
2018-03-15 15:48:40 +01:00
Sam
c589564f6a
FIX: color schemes not updating when remote saves
2018-03-15 18:26:54 +11:00
Neil Lalonde
5ce8177662
FIX: unable to delete user belonging to a group that grants a trust level
2018-03-14 15:12:11 -04:00
Michael Brown
1b5549df58
FIX: my sso_overrides_username assumed username was passed
2018-03-13 18:29:11 -04: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
Guo Xiang Tan
d5c828213f
FIX: Circular references warning in TopicTrackingState
.
2018-03-13 08:35:15 +08:00
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
Arpit Jalan
82143a421c
FIX: max topic invitations per day
should apply on PM invites as well
...
FIX: do not apply `max topic invitations per day` on email invites
2018-03-12 23:17:58 +05:30
Sam
758b9a7dda
FEATURE: prototype of local theme directory watcher
...
(note this will be documented a bit late)
2018-03-12 18:36:06 +11:00
Arpit Jalan
12706c4b29
FEATURE: support markdown rendering for embedded posts
2018-03-11 08:00:48 +05:30
Michael Brown
3c3d205180
FIX: sso_overrides_username may inappropriately change the username if the case changed
2018-03-09 16:06:55 -05:00
Guo Xiang Tan
0e1b896821
Explicitly assign primary_email record when creating a user
...
* This looks like we're doing the same thing but
we're debugging a race condition where a user
can be created without an email record. Therefore,
we prefer the more obvious method of assigning an
association.
2018-03-09 15:59:46 +08: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
Arpit Jalan
4b23634092
FIX: converting topic to message for a second time was broken
2018-03-08 17:59:04 +05:30
Arpit Jalan
0c2be8b775
Merge pull request #5655 from techAPJ/pm-tags-dropdown
...
FEATURE: filter personal messages by tags
2018-03-08 16:30:38 +05:30
Arpit Jalan
a8149f8969
FIX: user should not be able to invite to PM if trust level requirment not met
...
FIX: when personal messages are disabled let user invite to a public topic
2018-03-08 14:59:04 +05:30
Arpit Jalan
c29660c8f1
FEATURE: filter personal messages by tags
2018-03-08 14:42:07 +05:30
Neil Lalonde
1093dacc03
FIX: bulk importers need to create category description topics
2018-03-07 12:10:22 -05:00
Guo Xiang Tan
3045c589f6
FIX: Publish live messages to both team inbox and archive on update.
2018-03-07 14:01:20 +08:00
Guo Xiang Tan
5169be6080
FIX: User archiving message should also publish to sent section.
2018-03-07 11:39:23 +08:00