Commit Graph

19514 Commits

Author SHA1 Message Date
Robin Ward
6f7b6a3333 FIX: Disagree and Restore should not revert edits 2019-04-11 16:21:18 -04:00
Penar Musaraj
60db57acc0 Make Prettier happy 2019-04-11 14:15:47 -04:00
Penar Musaraj
f060c9b3ff UI: improvements to footer nav for app and PWAs
Adds support for iPad and Chrome PWAs

Better scroll direction logic when reaching bottom of the page
2019-04-11 14:11:26 -04:00
Robin Ward
d21dd521d2 FIX: Don't try to create a reviewable user twice 2019-04-11 12:30:54 -04:00
Robin Ward
331a809738 FEATURE: Display the reason for many reviewable items
Queued Posts and Users will now display a reason why they are in the
review queue.
2019-04-11 12:04:45 -04:00
Arpit Jalan
7143572e0c
FIX: correctly retrieve 'login required' setting value on wizard (#7355)
* FIX: correctly retrieve 'login required' setting value on wizard

FEATURE: extract 'invite only' setting in a separate checkbox control

* Update invite_only checkbox locale on wizard.

Co-Authored-By: techAPJ <arpit@techapj.com>
2019-04-11 20:25:08 +05:30
Tim Lange
9a428acce4 UX: Switched composer draft saving to animations (#7356) 2019-04-11 10:03:36 -04:00
Joffrey JAFFEUX
7226240df3
UX: full revamp of local-dates form (#7357) 2019-04-11 11:14:34 +02:00
Penar Musaraj
54daa92c2d Fix progress wrapper margin on Safari/iOS 2019-04-11 00:42:26 -04:00
Guo Xiang Tan
d705dd8bb8 Update annotations. 2019-04-11 12:37:24 +08:00
Penar Musaraj
723feea832 Bump textarea font size on mobile
As of eae2254, zooming is enabled in mobile. Unfortunately, iOS zoomns in on textareas and inputs with font sizes below 16px. This bumps font size for textareas (i.e. composer) but not yet for inputs.
2019-04-11 00:03:29 -04:00
Kris
9291ffaac0 email-in alignment fix 2019-04-10 23:49:26 -04:00
Kris
abd34882d5 UX: Better organization of category settings 2019-04-10 23:00:31 -04:00
Sam Saffron
baa7a9836c FEATURE: remove "COMPRESS_BROTLI" optional behavior
The compress brotli functionality is no longer optional, this has worked
well for years. The name of the ENV var is also confusing cause it does
not have a `DISCOURSE_` prefix which caused issues with the web upgrader

Brotli support is now unconditionally on
2019-04-11 12:36:18 +10:00
Dan Ungureanu
7a7c6af21e
FIX: Fallback to last post when the in-view post cannot be detected.
In certain situations the detection method fails. For example, it fails
for a topic containing: a long post (~1600px height), gap, small action
(focus on this), hidden reply.
2019-04-11 01:14:59 +03:00
Dan Ungureanu
47c50d9a95
DEV: Add test for post notices. (#7352) 2019-04-10 22:06:27 +03:00
Kris
689c7f5410 Minor reviewable alignment fixes 2019-04-10 14:22:46 -04:00
Kris
1b6f18396b UX: Simplify merged reviewable table 2019-04-10 13:22:28 -04:00
Tim Lange
fe9c271d44 FIX: Fixed deleted posts layout (#7348) 2019-04-10 19:00:39 +02:00
Robin Ward
cab83596ec FIX: Sites with SSO that required approval were not creating reviewables 2019-04-10 12:53:50 -04:00
Penar Musaraj
eae22548de
Footer navigation for iOS PWAs and DiscourseHub app (#7347) 2019-04-10 12:23:18 -04:00
Régis Hanol
ab79060468 FIX: don't send activation reminder to staged users 2019-04-10 17:29:08 +02:00
Robin Ward
5d99346740 FIX: Always allow us to reject users, even if they are deleted 2019-04-10 11:00:39 -04:00
Bianca Nenciu
3d545d66df FEATURE: Send user activation reminders. (#7280) 2019-04-10 16:53:52 +02:00
Vinoth Kannan
b0600e52b6 FIX: use 'freeze' method again to fix 'cant modify frozen string' error
8d5c900142
2019-04-10 18:30:59 +05:30
Roman Rizzi
536b90e0ef
FEATURE: Support searching custom staff actions (#7346) 2019-04-10 09:53:17 -03:00
Vinoth Kannan
8d5c900142 DEV: add unique missing uploads index in post custom fields
https://review.discourse.org/t/feature-send-missing-post-uploads-stat-to-prometheus/2609/6?u=vinothkannans
2019-04-10 18:09:35 +05:30
Tarek Khalil
442fb2facb FEATURE: Remove ignore feature SiteSetting and enable ignore by default (#7349) 2019-04-10 12:54:59 +02:00
Roman Rizzi
82e051077d Show link to the original topic when it was deleted (#7319)
* Moved i18n keys to core. We show a links that points to the original topic when it was deleted

* Use link-to since it's more idiomatic
2019-04-10 11:25:45 +02:00
Bianca Nenciu
b5008586c5 DEV: Remove HTML parser from Tautologistics. (#7344) 2019-04-10 11:21:22 +02:00
Vinoth Kannan
d0fe42e2ef FIX: should look through posts for image markdown
Downloaded onebox images only included in the cooked HTML content. So we have to check 'post.cooked' instead of 'raw'. bfdd0fe64c
2019-04-10 13:52:35 +05:30
Arpit Jalan
9c1d1777db Bump onebox version
- adds support for oneboxing google drive files
- add styling for google drive onebox favicon
2019-04-10 13:37:24 +05:30
Sam Saffron
88f8c9f43e FIX: when banner is removed update all clients
Previously removing a banner raised a null "banner" in the message bus
channel.

Then Ember.Object.create would fail cause it always expects an object in
constructor.
2019-04-10 15:59:29 +10:00
Kris
df85d4593e UX: Unify admin intro styles for badges/customize, improve mobile 2019-04-09 20:32:24 -04:00
Robin Ward
9ebfdaa356 UX: Unify reviewable scores + history 2019-04-09 16:43:08 -04:00
Kris
8e9d0ceb67 UX: Mobile - fix editor button space, divider, extra upload icon 2019-04-09 13:15:31 -04:00
Tarek Khalil
307499e48b FIX: Keep highlighted text for quoted replies by ignored users (#7345) 2019-04-09 17:33:12 +02:00
Robin Ward
9bcd7aacc8 Remove deprecation, the admin controller can approve just fine 2019-04-09 11:19:19 -04:00
Robin Ward
692e09d813 FIX: Only show "Approve" button for the admin user if reviewable 2019-04-09 11:14:52 -04:00
Vinoth Kannan
73663c2fdb FIX: should find records by sha1 only in Upload model 2019-04-09 18:48:49 +05:30
Robin Ward
4552d86605 FIX: Broken tests 2019-04-09 08:33:10 -04:00
Sam Saffron
ec1c3559da PERF: correct clean up inactive so it does not clog scheduler
also add a hard limit of 1000 users per job run so we do not clog the
scheduler

destroyer.destroy has a transaction and this can have some serious complications
with the open record set find_each has going
2019-04-09 22:25:05 +10:00
Guo Xiang Tan
6d0e8821f8 FIX: Optimize query and avoid bloating memory in Jobs::MigrateUploadScheme. 2019-04-09 15:45:30 +08:00
Joffrey JAFFEUX
df7f37f10a
FIX: web_crawlers had been mistakenly removed (#7342) 2019-04-09 09:26:22 +02:00
Joffrey JAFFEUX
a89c90ed5d
FIX: removes link to old dashboard (#7341) 2019-04-09 09:24:41 +02:00
Vinoth Kannan
f0f659286f UX: move up profile picture field next to the username 2019-04-09 11:46:03 +05:30
Guo Xiang Tan
c82a929025 PERF: Add index_for_rebake_old to posts.
The index becomes smaller over time and is much faster.

Follow up to 4791d992dc.
2019-04-09 13:59:46 +08:00
Guo Xiang Tan
28d117898f Update annotations. 2019-04-09 13:27:32 +08:00
Sam Saffron
f6db30a5da FEATURE: mark last notification unread when removing timings
This calls a bit more attention to the deferred topic by amending the "read"
state of the last notification on the topic.
2019-04-09 12:42:21 +10:00
Guo Xiang Tan
f0bb492d24 Fix regression due to 914ada1c74. 2019-04-09 09:47:11 +08:00
Vinoth Kannan
f5ac01253a FIX: use new changed method name and remove whitespaces 2019-04-09 02:25:26 +05:30
Robin Ward
bc949cf684 FIX: Display the username instead of {{username}} 2019-04-08 16:46:05 -04:00
Robin Ward
32a0346069 UX: Don't show the username of the first user in the conversation 2019-04-08 16:39:53 -04:00
Vinoth Kannan
914ada1c74 DEV: convert scheduled job EnsurePostUploadsExistence into a rake task 2019-04-09 02:07:35 +05:30
Robin Ward
cc53f902c6 FIX: Missing translation key for Reviewable -> Deleted 2019-04-08 16:12:41 -04:00
Robin Ward
0fc798c2ef UX: Show the score status
If a review review score has been Approved/Rejected/Ignored then show it
2019-04-08 12:08:18 -04:00
Tarek Khalil
5957991340 FIX: Remove quoted post text and block realtime replies from ignored users (#7336) 2019-04-08 17:44:42 +02:00
Tarek Khalil
02394e9170
FIX: assign decoratorHelper (#7338) 2019-04-08 16:17:09 +01:00
Joffrey JAFFEUX
9d2e2867cc
s/fa-icon/d-icon (#7337) 2019-04-08 15:51:38 +02:00
Tarek Khalil
0d2a1fce51
REFACTOR: Pass down currentUser to post-cooked widget (#7333)
* REFACTOR: Pass down `currentUser` to `post-cooked` widget
2019-04-08 14:50:53 +01:00
Vinoth Kannan
2ae87a27fa make rubocop happy 2019-04-08 17:03:26 +05:30
Guo Xiang Tan
f0f3deb32b PERF: Simplify query of UserStat#update_topic_reply_count.
For a user with alot of posts, we get a 25% speed up.
2019-04-08 17:48:19 +08:00
David Taylor
f524f8f811
Remove Yahoo login support from core and deprecate OpenID2.0 (#7310)
- Plugin developers using OpenID2.0 should migrate to OAuth2 or OIDC. OpenID2.0 APIs will be removed in v2.4.0

- For sites requiring Yahoo login, it can be implemented using the OpenID Connect plugin: https://meta.discourse.org/t/103632

For more information, see https://meta.discourse.org/t/113249
2019-04-08 10:38:25 +01:00
Guo Xiang Tan
108c231d1c FIX: Clean up topic_search_data of trashed topics.
This keeps the index and table smaller.
2019-04-08 16:53:39 +08:00
Guo Xiang Tan
c4997ce85f FIX: Don't try and reindex posts that have been trashed. 2019-04-08 16:38:43 +08:00
Vinoth Kannan
ca57e18f42 UX: display signup cta even if 'must_approve_users' setting enabled. 2019-04-08 12:27:56 +05:30
Guo Xiang Tan
33fa249fa5 SECURITY: Remove XSS in composer preview when applying image scale buttons. 2019-04-08 11:22:14 +08:00
Guo Xiang Tan
6525613b89 PERF: Use joins for Post.for_mailing_list instead of NOT IN.
Joining on the topics table and then filtering the topics against a large set of
ids is so much slower than doing a join on a sub query.
2019-04-06 07:58:55 +08:00
Kris
84eb9bc1c9 UX: Only highlight close icon on hover, not lock 2019-04-05 17:43:14 -04:00
Kris
a1c2181232 UX: Better close button positioning in alerts, some cleanup 2019-04-05 16:21:16 -04:00
Robin Ward
a6f283da30 UX: Show tags on flags too 2019-04-05 14:22:45 -04:00
Régis Hanol
06e3b25d04
FIX: 'currentUser' is a property of the 'widget' 2019-04-05 18:43:04 +02:00
Robin Ward
b005a84530 FIX: decoratorHelper.widget is not always present 2019-04-05 12:07:24 -04:00
Kris
acce7330a3 Typo fix 2019-04-05 11:23:22 -04:00
Kris
43a905279f FIX: Layout was off in single-page user-preferences 2019-04-05 10:59:52 -04:00
Robin Ward
cbc311e4ed UX: Update the reviewable count before the message bus
In certain edge cases, the message bus won't send the message to the
user about the updated review count and it can go out of sync.

This patch synchronizes the review count every time:

1. The user visits the "Needs Review" page

2. Every time the user performs an action
2019-04-05 10:35:38 -04:00
Tarek Khalil
19a1d35f66
fix linting (#7329) 2019-04-05 15:28:41 +01:00
Tarek Khalil
131eba0366 FIX: Hide post replies content for ignored users (#7320) 2019-04-05 16:13:36 +02:00
Maja Komel
ca33d091b3 FIX: don't trigger notifications when changing category/tags of unlisted topics (#7323) 2019-04-05 15:06:38 +02:00
Guo Xiang Tan
a7a5f90e20 Annotate models. 2019-04-05 17:13:12 +08:00
Joffrey JAFFEUX
0bd480c600
UX: displays exact date on title attribute of topic timer info (#7326) 2019-04-05 09:44:10 +02:00
Saurabh Patel
9b288613ae DEV: remove span from inside <tr> and move meta info to a td (#7324) 2019-04-05 09:32:11 +02:00
Angus McLeod
6f1652bb53 add header cloak after all panels are added (#7325) 2019-04-04 22:54:05 -07:00
Sam Saffron
81a1bafe54 PERF: Speed up home page unread+new query
restructure query so it avoids ORs

It appears postgres is picking suboptimal indexes if too many ORs exist
despite how trivial the condition is.

This bypasses conditional in the query and evals them upfront.

On meta for my user this made a 10x perf difference.

This boils down to either having `OR u.admin` or not having `OR u.admin` in
the query.
2019-04-05 15:25:19 +11:00
Sam Saffron
5b837f620b correct unread resetting to handle nulls
Note, to avoid race conditions we are setting last_unread to 10 minutes ago
if there is nothing unread.

This is safer in case of in progress transactions
we don't want to lose unread for any window of time.
2019-04-05 13:42:41 +11:00
Sam Saffron
5f896ae8f7 PERF: Keep track of when a users first unread is
This optimisation avoids large scans joining the topics table with the
topic_users table.

Previously when a user carried a lot of read state we would have to join
the entire read state with the topics table. This operation would slow down
home page and every topic page. The more read state you accumulated the
larger the impact.

The optimisation helps people who clean up unread, however if you carry
unread from years ago it will only have minimal impact.
2019-04-05 12:44:45 +11:00
Robin Ward
c9ddc6ce30 FIX: Make sure the site setting works and fix build 2019-04-04 17:44:10 -04:00
Robin Ward
aa4a38b08a FIX: computed is not used 2019-04-04 17:38:27 -04:00
Robin Ward
8af7237092 FIX: Only perform logic on create commits 2019-04-04 17:01:47 -04:00
Vinoth Kannan
2c7a50860f DEV: disable missing post uploads check by default. 2019-04-05 02:29:10 +05:30
Neil Lalonde
83996fc8ea FEATURE: ability to restrict some tags to a category while allowing all others
A new checkbox has been added to the Tags tab of the category settings modal
which is used when some tags and/or tag groups are restricted to the category,
and all other unrestricted tags should also be allowed.
Default is the same as the previous behaviour: only allow the specified set of
tags and tag groups in the category.
2019-04-04 16:40:15 -04:00
Kris
9faebfcfe0 UX: Adjust layout, allow additional responsiveness 2019-04-04 16:20:25 -04:00
Robin Ward
df48c657fd FIX: Reviewable counts were not updating properly
Sometimes sidekiq is so fast that it starts jobs before transactions
have comitted. This patch moves the message bus stuff until after things
have comitted.
2019-04-04 16:07:34 -04:00
Robin Ward
2055804e95 FIX: The option to delete replies was missing from the new review queue 2019-04-04 15:51:36 -04:00
Robin Ward
dd5b8bd85e FIX: Show replies to the post, not the topic
This makes more sense when reviewing. How many people replied to this
objectionable thing?
2019-04-04 15:13:59 -04:00
Robin Ward
9c8cc73c39 UX: Show user fields when reviewing a user 2019-04-04 14:45:40 -04:00
Vinoth Kannan
a385f6c48a REFACTOR: create custom field even when missing post uploads not found 2019-04-04 21:49:44 +05:30
Vinoth Kannan
44e87372da FEATURE: Add scheduled job to ensure s3 uploads existence 2019-04-04 20:37:44 +05:30
Robin Ward
a5182b0d6c FIX: Rewrite old /admin/flags links to use the review queue
Such links might be in present in old PMs. For example, a notification of
outstanding flags.

New PMs should receive the correct link but this prevents 404s in the
other case.
2019-04-04 10:15:23 -04:00
Saurabh Patel
90fc2d15c4 FEATURE: change layout when default page is category to tabular for _… (#7270) 2019-04-04 15:57:18 +02:00
Arpit Jalan
f87b35e6f4 FIX: do not raise exception if the file is missing 2019-04-04 15:36:51 +05:30
Bianca Nenciu
63fcd445f4 FIX: Use unfiltered URL when viewing all badges. 2019-04-04 12:35:03 +03:00
Maja Komel
b0053f3a1c FEATURE: bump onebox version, add styling for new reddit image onebox 2019-04-04 11:24:30 +02:00
Guo Xiang Tan
6815f777f9 DEV: Remove unused method. 2019-04-04 14:19:39 +08:00
Robin Ward
588f61f717 FIX: Linting 2019-04-03 18:08:07 -04:00
Robin Ward
a4ff593506 UX: Slightly improved reviewable user display, plus link to admin if possible 2019-04-03 17:07:48 -04:00
Vinoth Kannan
3b581de3b8 remove unrelated code
already added in a separate job
2019-04-04 02:26:28 +05:30
Vinoth Kannan
b3fb0a7039 FEATURE: ensure consistency of post uploads in cooked content 2019-04-04 02:23:28 +05:30
Kris
14952a9cbc UX: Reduce specificity of reviewable item styles 2019-04-03 16:49:57 -04:00
Robin Ward
111a502231 FIX: Deleting Users should work nicely with Reviewable Users
"Rejecting" a user in the queue is equivalent to deleting them, which
would then making it impossible to review rejected users. Now we store
information about the user in the payload so if they are deleted things
still display in the Rejected view.

Secondly, if a user is destroyed outside of the review queue, it will
now automatically "Reject" that queue item.
2019-04-03 16:42:39 -04:00
Kris
88a46981a8 UX: Remove extra border on old mobile post notices 2019-04-03 16:10:54 -04:00
Robin Ward
828cdf3fea FIX: Protected method called, I'll fire myself now 2019-04-03 16:10:36 -04:00
Robin Ward
82bddcbe51 FIX: Don't create two reviewable scores for a user 2019-04-03 16:03:32 -04:00
Robin Ward
c1ea63bdc1 FIX: Reviewables should not be created for users until they are active
Conversely, if a user is deactivated the reviewable should automatically
be rejected.

Before this fix, if a user was not active they'd still show in the
review queue but without an "Approve" button which was confusing.
2019-04-03 15:25:00 -04:00
Joffrey JAFFEUX
974007a3cc
FIX: reverts href removal from user/group cards links (#7318) 2019-04-03 19:16:48 +02:00
Robin Ward
1bce97a596 FIX: Allow queued posts from deleted users to be rejected 2019-04-03 11:40:46 -04:00
Bianca Nenciu
bb2005d466 FIX: Add more links to bandge cards. 2019-04-03 18:37:11 +03:00
Robin Ward
62956003c3 FEATURE: Allow users to customize bonuses for reviewable types
A new settings section in the review queue allows admins to specify that
certain types of flags should be weighted higher than others.
2019-04-03 11:18:34 -04:00
Saurabh Patel
da2f659635 UX: Improve posts layout for crawler (#7286) 2019-04-03 11:58:00 +02:00
Bianca Nenciu
1e1adb1afa FIX: Links in badge summary were not clickable. (#7303) 2019-04-03 11:35:27 +02:00
Maja Komel
d32aaf374e UX: add awaiting-approval class to login modal
when local logins are disabled and account is awaiting approval
2019-04-03 11:30:43 +02:00
Arpit Jalan
7b194743d7
FIX: clean up user export csv upload records in scheduled job (#7309) 2019-04-03 13:31:19 +05:30
Guo Xiang Tan
d1fa2b71cf FIX: Letters between words incorrectly highlighted within post. 2019-04-03 15:57:51 +08:00
Sam Saffron
b2dc65f953 FIX: on rebakes should not recreate quoted_posts records
Previously every rebake would remove and recreate records in this table
This caused created_at and updated_at to keep changing

Yes, I know the SQL is somewhat complex, but this makes quote extraction
more efficient cause we do everything in 2 round trips.

This also removes some concurrency protection we should no longer need
2019-04-03 16:17:15 +11:00
Guo Xiang Tan
52c4711e80 DEV: Fix method that was incorrectly made private. 2019-04-03 12:37:50 +08:00
Guo Xiang Tan
4037a2fd0b FIX: Restrict scope of old scheme upload migration.
Some sites have external URLs that don't even match `%/uploads/%' and
some sites surprise me with URLs that contains the default path when it
is a site in a multisite cluster. We can't do anything about those.
2019-04-03 11:56:41 +08:00
Guo Xiang Tan
d151425353
PERF: Delete search data of posts from trashed topics periodically. (#7302)
This keeps both the index and table smaller.
2019-04-03 10:10:41 +08:00
Guo Xiang Tan
feb731bffd FIX: Regenerate optimized images instead of migrating from old scheme.
`OptimizedImage.migrate_to_new_scheme` was optimizing optimized images
which we don't need to do. Regnerating the optimized image is way easier.
2019-04-03 09:45:02 +08:00
Kris
c3047a903d UX: Reviewable spacing adjustments 2019-04-02 17:22:22 -04:00
Kris
14cbbc5e13 UX: Reviewables fixes 2019-04-02 16:25:53 -04:00
Penar Musaraj
44fe2eec03 Better fix for Safari user card position
Better than a2c6683e3b
2019-04-02 15:36:47 -04:00
Kris
ba727b2875 UX: Restructure queued posts to match flags, fix text 2019-04-02 14:54:55 -04:00
Kris
2ab6eb58c5 UX: Reviewable layout improvements 2019-04-02 13:51:03 -04:00
Penar Musaraj
15e27d9e2c Prettier fix 2019-04-02 11:56:21 -04:00
Joffrey JAFFEUX
40e1ba9d9a
FIX: ensures click on emoji in picker doesnt propagate (#7308) 2019-04-02 17:40:13 +02:00
Joffrey JAFFEUX
d8dd130477
UX: gives aria-label to topics count in category-row (#7307) 2019-04-02 17:38:21 +02:00
Joffrey JAFFEUX
e77b1cf7ff
UX: ensures only <li> are used as top level in breadcrumb (#7306) 2019-04-02 17:37:53 +02:00
venarius
c185109380 FIX: Restricted site text better error 2019-04-02 11:16:27 -04:00
Penar Musaraj
a2c6683e3b FIX: inconsistent user card position in Safari
User cards triggered in header were incorrectly positioned in Safari desktop.

Using `position()` instead of `offset()` is more consistent, since header is a fixed element in this scenario.
2019-04-02 10:32:50 -04:00
Robin Ward
af04318aff FIX: Allow us to serialize reviewables with deleted topics 2019-04-02 09:36:49 -04:00
Joffrey JAFFEUX
02d8931425
UX: more compact local-dates preview (#7305) 2019-04-02 14:39:20 +02:00
Arpit Jalan
d68d29f37a FIX: only staff can banner topics 2019-04-02 12:46:55 +05:30
Guo Xiang Tan
d85240335b Annotate models. 2019-04-02 13:19:14 +08:00
Tim Lange
a9a35d2c19 FIX: Uncategorized pm not allowing edit (#7276) 2019-04-02 12:54:53 +08:00
Guo Xiang Tan
4175de5071 UX: Wrap title on search log term page with a proper div.
Search log filter selector was not floating right as it should.
2019-04-02 11:55:57 +08:00
Guo Xiang Tan
1a9452f24d UX: Pass period params when looking at search logs for a given term. 2019-04-02 11:51:41 +08:00
Kris
cdce9c97bb minor margin fix 2019-04-01 23:50:47 -04:00
Penar Musaraj
1c0f885a5b FIX: double render error with delegated authentication
Makes sure delegated authentication is checked before other login redirects

Updates specs to cover login_required = true cases
2019-04-01 22:13:53 -04:00
Kris
254de64df7 UX: Consistent profile image positioning on desktop and mobile 2019-04-01 22:04:11 -04:00
Guo Xiang Tan
d8704c11ca PERF: Better use of index when queueing a topci for search reindex.
Also move `Search::INDEX_VERSION` to `SearchIndexer` which is where the
version is actually being used.
2019-04-02 09:53:37 +08:00
Kris
9603c906ec Moving staff counters back to the top of profiles 2019-04-01 21:04:37 -04:00
Guo Xiang Tan
aa2311a7b0 FIX: Don't reindex posts belonging to a deleted topic for search.
Posts belonging to a deleted topic can't be index for search so we need
to avoid loading those post ids.
2019-04-02 07:36:53 +08:00
Guo Xiang Tan
3fc5dbb045 FIX: Don't attempt to reindex posts that have an empty raw.
If the post ids keep loading, we might end up in a situations where
we're always loading the same post ids over and over again without
indexing anything new.

Follow up to daeda80ada.
2019-04-02 07:13:33 +08:00
Robin Ward
d5a61ab167 FIX: Don't log a second pending action
If two people flagged the same post you'd get a "Pending" history event
logged which looked bad.
2019-04-01 17:07:47 -04:00
Robin Ward
76669bb5a6 FIX: Don't refer to pending review items as flags
They could be queued posts or users, and the notice should reflect that
properly.
2019-04-01 14:46:56 -04:00
Robin Ward
6470c85fda UX: Link directly to the post, not to the topic 2019-04-01 14:29:14 -04:00
Penar Musaraj
fdf4145d4b
FEATURE: Delegated authentication via user api keys (#7272) 2019-04-01 13:18:53 -04:00
David Taylor
b375dcb14a DEV: Introduce parallel rspec testing
Adds the parallel_tests gem, and redis/postgres configuration for running rspec tests in parallel. To use:

```
rake parallel:rake[db:create]
rake parallel:rake[db:migrate]
rake parallel:spec
```

This brings the test suite from 12m20s to 3m11s on my macOS machine
2019-04-01 11:06:47 -04:00
Joffrey JAFFEUX
13a6a04cad
FIX: ensures popover is hidden when changing route (#7300) 2019-04-01 16:23:57 +02:00
Joffrey JAFFEUX
4b1b135ede
FIX: handles boolean with popupMenuOption (#7299)
Handle the case of https://github.com/discourse/DiscoTOC doing this kind of setup:

```
return {
    action: "insertDtoc",
    icon: "align-left",
    label: themePrefix("insert_table_of_contents"),
    condition: !composerController.get("model.canCategorize")
  };
```

In this case there's no function to call, it's already set.
2019-04-01 16:08:14 +02:00
Régis Hanol
a6596662dc FIX: don't enqueue TruncateUserFlagStats job when not needed 2019-04-01 15:53:55 +02:00
Joffrey JAFFEUX
6e0e36f790
fix spec (#7298) 2019-04-01 14:35:09 +02:00
Joffrey JAFFEUX
e986e96227
DEV: removes old dashboard (#7295) 2019-04-01 12:39:49 +02:00
Guo Xiang Tan
3cba10b9ca DEV: Don't warn when trying to reindex a post with a deleted topic. 2019-04-01 17:04:32 +08:00
Joe
541a15e357 UX: user-card adjustments for users with hidden profiles (#7293)
* adds styles for profile hidden message

* Disable profile links for hidden profiles and add message to indicate the profile is hidden
2019-04-01 10:50:48 +02:00
Guo Xiang Tan
8794d940d3 Revert update_columns -> update! when rebaking/post-processing post.
`update!` goes through validation which means old posts that doesn't
adhere to the existing validations will raise an error.
2019-04-01 16:29:00 +08:00
Guo Xiang Tan
2a69ab4a4c FIX: Keep alt and title in lightbox when indexing for search.
Follow up to cfd507822f
2019-04-01 16:20:33 +08:00
Maja Komel
88128f1ced UX: show which groups are missing permissions for parent category (#7252) 2019-04-01 15:34:52 +11:00
Guo Xiang Tan
cfd507822f
PERF: Improve quality of PostSearchData#raw_data. (#7275)
This commit fixes the follow quality issue with `PostSearchData#raw_data`:

1. URLs are being tokenized and links with similar href and characters
are being duplicated in the raw data.

`Post#cooked`:

```
<p><a href=\"https://meta.discourse.org/some.png\" class=\"onebox\" target=\"_blank\" rel=\"nofollow noopener\">https://meta.discourse.org/some.png</a></p>
```

`PostSearchData#raw_data` Before:

```
This is a test topic 0 Uncategorized https://meta.discourse.org/some.png discourse org/some png https://meta.discourse.org/some.png discourse org/some png
```

`PostSearchData#raw_data` After:

```
This is a test topic 0 Uncategorized https://meta.discourse.org/some.png meta discourse org
```

2. Ligthbox being included in search pollutes the
`PostSearchData#raw_data` unncessarily.

From 28 March 2018 to 28 March 2019, searches for the term `image` on
`meta.discourse.org` had a click through rate of 2.1%. Non-lightboxed images are not included in indexing for search yet we were indexing content within a lightbox. Also, search for terms like `image` was affected we were using `Pasted image` as the filename for
uploads that were pasted.

`Post#cooked`

```
<p>Let me see how I can fix this image<br>\n<div class=\"lightbox-wrapper\"><a class=\"lightbox\" href=\"https://meta.discourse.org/some.png\" title=\"some.png\" rel=\"nofollow noopener\"><img src=\"https://meta.discourse.org/some.png\" width=\"275\" height=\"299\"><div class=\"meta\">\n<svg class=\"fa d-icon d-icon-far-image svg-icon\" aria-hidden=\"true\"><use xlink:href=\"#far-image\"></use></svg><span class=\"filename\">some.png</span><span class=\"informations\">1750×2000</span><svg class=\"fa d-icon d-icon-discourse-expand svg-icon\" aria-hidden=\"true\"><use xlink:href=\"#discourse-expand\"></use></svg>\n</div></a></div></p>
```

`PostSearchData#raw_data` Before:

```
This is a test topic 0 Uncategorized Let me see how I can fix this image some.png png https://meta.discourse.org/some.png discourse org/some png some.png png 1750×2000
```

`PostSearchData#raw_data` After:

```
This is a test topic 0 Uncategorized Let me see how I can fix this image
```

In terms of indexing performance, we now have to parse the given HTML
through nokogiri twice. However performance is not a huge worry here since a string length of 194170 takes only 30ms
to scrub plus the indexing takes place in a background job.
2019-04-01 10:14:29 +08:00
Guo Xiang Tan
7ac76fe935 DEV: Remove warning.
Library has already been loaded in application.rb.
2019-04-01 10:11:08 +08:00
Guo Xiang Tan
daeda80ada
FIX: Don't index posts with empty Post#raw for search. (#7263)
* DEV: Remove unnecessary join in `Jobs::ReindexSearch`.

* FIX: Don't index posts with empty `Post#raw` for search.
2019-04-01 10:06:27 +08:00
Dan Ungureanu
d59abff2d8
UX: Always use relative age for post notices. 2019-03-31 18:07:05 +03:00
Joe
8b8d528b88 Hide mobile cards when user scrolls (#7291) 2019-03-31 11:16:52 +02:00
Joe
9510f3d737 card buttons should truncate if there isn't enough space (#7290) 2019-03-31 11:16:40 +02:00
Robin Ward
c0780434f8 FIX: Better display if the topic is deleted 2019-03-29 16:59:00 -04:00
Robin Ward
a55e7ebe8f UX: Better display for deleted users in the review queue 2019-03-29 16:52:58 -04:00
Robin Ward
86349abfea FIX: Apply min_score_default_visibility to reviewable topics list 2019-03-29 15:42:49 -04:00
Kris
4e6d4531e8 UX: Improve ignore button alignment on user profiles 2019-03-29 15:34:48 -04:00
Robin Ward
67454c71c9 FIX: Missing translations for agree/disagree details 2019-03-29 14:14:59 -04:00
Robin Ward
370355d754 FIX: Allow users with posts to be rejected 2019-03-29 13:53:46 -04:00
Kris
814aee343b UX: Minor profile page restructure 2019-03-29 12:52:42 -04:00
Tim Lange
2c4b3c21a9 UX: Unified emoji escape regex 2019-03-29 12:17:11 -04:00
Bianca Nenciu
31053f30de FEATURE: Let users delete their own topics. (#7267) 2019-03-29 17:10:05 +01:00
Maja Komel
4a3daacb1b FIX: reset embedding settings when no embeddable host, log host changes (#7264) 2019-03-29 17:05:51 +01:00
Maja Komel
9b00ca30ed FIX: check if user is already allowed before adding to topic allowed users (#7242) 2019-03-29 17:03:33 +01:00
Tarek Khalil
d26d1b387e
FEATURE: Add ignore duration selection for user notifications preferences page (#7269)
* FEATURE: Introducing new UI for tracking User's ignored or muted states
2019-03-29 13:33:08 +00:00
Tarek Khalil
b1cb95fc23
FEATURE: Introduce ignore duration selection (#7266)
* FEATURE: Introducing new UI for tracking User's ignored or muted states
2019-03-29 10:14:53 +00:00
Joffrey JAFFEUX
961fb2c70e
DEV: moves each report in its own file (#7277) 2019-03-29 10:54:56 +01:00
Guo Xiang Tan
a6d93f6317 FIX: Avoid error on ajax.abort() when client has not opened the request. 2019-03-29 15:38:38 +08:00
Guo Xiang Tan
8cfd887f33 Make eslint happy. 2019-03-29 12:59:40 +08:00
Kris
2064223fbd FIX: Safari needs a max-width to prevent modal overflow 2019-03-29 00:38:44 -04:00
Guo Xiang Tan
1b3165d217 Make rubocop happy. 2019-03-29 12:15:39 +08:00
Guo Xiang Tan
4fa8fe575b UX: Use a step size of 1.
Follow up to 634a213e6d.
2019-03-29 12:14:11 +08:00
Guo Xiang Tan
634a213e6d FIX: Admin chart y axis labels being rounded up/down when value is small. 2019-03-29 12:03:41 +08:00
Guo Xiang Tan
e2ad374e5b UX: USe bar chart for admin search logs details page.
A bar chart is better when comparing the values across the X axis.
2019-03-29 11:54:49 +08:00
Guo Xiang Tan
f458cba4cb FIX: Admin search logs should filter by date instead of timestamp.
The client side filters by date so it is confusion when the data changes as each second passes.
2019-03-29 11:50:25 +08:00
Guo Xiang Tan
d8faf5f79e FIX: SearcLog.term_details generating incorrect data because of case.
Also match on equality rather than "LIKE ?" which is quite strange.
2019-03-29 11:31:01 +08:00
Guo Xiang Tan
947495e70d Follow up to 8c2fa99f78.
`/search_logs/term?term` is alittle weird looking but unless we add
proper slug support to term, we're going to have to live with this
first.
2019-03-29 10:39:44 +08:00
Guo Xiang Tan
c42df7ddd7 UX: Use the same default period for search logs index and term.
If the period is different, clicking through to view a term is confusing
because a different period will show a different set of stats.
2019-03-29 09:59:28 +08:00
Guo Xiang Tan
8c2fa99f78 FIX: Remove :term from admin/search_logs/term/:term route.
Search log terms is a string that can contain characters like `/` which
messes with the route.
2019-03-29 09:48:20 +08:00
Guo Xiang Tan
c836d67cac UX: Collapse advanced search on mobile when searching.
On smaller mobile devices, the height of the advanced search filters takes up
the whole real estate that it requires the user to scroll down
significantly in order to view the results.
2019-03-29 08:59:02 +08:00
Kris
1a403337c9 UX: Prevent mobile nav from collapsing while content loads 2019-03-28 19:23:23 -04:00
Kris
d9eed924f5 minor box-shadow adjustment 2019-03-28 15:13:53 -04:00
Kris
2b5e16fbec Minor icon spacing fix for input labels 2019-03-28 15:10:31 -04:00
Robin Ward
3660b85614 FIX: Regressions in JS test suite 2019-03-28 14:15:52 -04:00
Robin Ward
8c98c18c2b FIX: Remove old flagging scss, fix more linting 2019-03-28 13:48:35 -04:00
Robin Ward
7ec74afc43 FIX: Lint on JS 2019-03-28 13:36:30 -04:00
Robin Ward
b58867b6e9 FEATURE: New 'Reviewable' model to make reviewable items generic
Includes support for flags, reviewable users and queued posts, with REST API
backwards compatibility.

Co-Authored-By: romanrizzi <romanalejandro@gmail.com>
Co-Authored-By: jjaffeux <j.jaffeux@gmail.com>
2019-03-28 12:45:10 -04:00
Gerhard Schlager
d43f4206c7 FEATURE: Add Armenian language 2019-03-28 14:24:14 +01:00
Guo Xiang Tan
d0a1922ad9 FIX: Upload.migrate_to_new_scheme undefined error when external image fails to download. 2019-03-28 16:00:13 +08:00
Tim Lange
1b0267b077 FIX: Switching composer action shouldn't trigger abandon popup (#7261) 2019-03-27 21:55:09 +01:00
Saurabh Patel
4a47ec791f * FEATURE: change layout of escaped_fragment_ topic page to table one like live discourse (#7250) 2019-03-27 21:32:56 +01:00
David Taylor
95d5819218 FIX: Re-download hotlinked optimized images (#7249)
* FIX: Download local images, even if download remote is disabled
2019-03-27 21:31:12 +01:00
Tim Lange
12181599db FIX: Staff action records now also accepts action_name as filter (#7256) 2019-03-27 21:29:15 +01:00
David Taylor
0d3531c2f1 FEATURE: Allow auth providers to define specific icons
Previously we relied on the provider name matching the name of the icon. Now icon names are explicitly set. Plugin providers which do not define an icon will get the default "sign-in-alt" icon
2019-03-27 13:25:04 +00:00
Bianca Nenciu
a9798f0c47
FEATURE: Add page for all group membership requests. (#6909) 2019-03-27 13:30:59 +02:00
Tarek Khalil
ef2362a30f
FEATURE: Introducing new UI for changing User's notification levels (#7248)
* FEATURE: Introducing new UI for tracking User's ignored or muted states
2019-03-27 09:41:50 +00:00
Joffrey JAFFEUX
675d950eab
FIX: corrects link to moderators_activity report (#7265) 2019-03-27 10:14:42 +01:00
Kris
f177567cee Clean up style when both oAuth2 and account approval are enabled 2019-03-26 20:47:06 -04:00
Joe
095ee6ac96
UX: prevent images and lightboxes from extending outside blockquotes (#7262) 2019-03-27 01:51:21 +08:00
Gerhard Schlager
4f04ae5692 FIX: Failed to show details about some bounced emails
Bounces sent to reply_by_email_address could not be found.
2019-03-26 18:00:27 +01:00
Gerhard Schlager
de011b53b5 UX: Hide link to incoming email when there is no bounce key
For example, webhooks mark email log entries as bounced without there ever being an incoming email.
2019-03-26 18:00:27 +01:00
Joe
02f2ce8b05
target panel children instead of targeting the panel (#7257) 2019-03-26 23:54:37 +08:00
Joffrey JAFFEUX
b2cacc5b0e
FIX: check can_create_tags on mini-tag-chooser as tag-chooser (#7260) 2019-03-26 16:45:38 +01:00
Joffrey JAFFEUX
4874cf742b
FIX: better styling with popover (#7259) 2019-03-26 16:34:27 +01:00
Joffrey JAFFEUX
8fb63b2706
FEATURE: unified popover implementation (#7244) 2019-03-26 15:43:27 +01:00
Kris
4a1096f14a IE11 profile fix 2019-03-26 10:13:09 -04:00
Maja Komel
3aa32c3170 FIX: send only one post request when changing topic notification level (#7254) 2019-03-26 12:04:33 +01:00
Guo Xiang Tan
e0cb2a434a Fix regression introduced in dae0bb4c67.
Add tests so it doesn't bite me again.
2019-03-26 17:52:37 +08:00
Guo Xiang Tan
dae0bb4c67 FIX: Post blurb incorrect when search contains a phrase match.
If the blurb generated is not around the search term, we will not be
able to highlight it on the client side.
2019-03-26 17:01:52 +08:00
Guo Xiang Tan
161a3c3870 DEV: Don't optimize image when migrating to new scheme.
The image has already been uploaded, the migrate to new scheme job's is
just to correct the scheme and not the content of the upload.
2019-03-26 15:12:10 +08:00
Sam Saffron
5a8451bf89 PERF: no need to select entire group just to find name
Note, this is a very good candidate for some cache longer term to cut
the query out
2019-03-26 17:59:05 +11:00
Sam Saffron
3cfedc6c71 PERF: no need to select the full theme just to get color scheme 2019-03-26 17:53:18 +11:00
Guo Xiang Tan
b58c965aad FIX: Destroy optimized image if attempting to migrate to new scheme fails. 2019-03-26 14:37:34 +08:00
Guo Xiang Tan
0ac6a58b09 FIX: Skip validation when saving in Upload#migrate_to_new_scheme. 2019-03-26 14:28:39 +08:00
Kris
b1d707b3bb FIX: More explicit grid layout 2019-03-25 16:41:38 -04:00
Kris
fc81358714 prettier 2019-03-25 14:48:14 -04:00
Penar Musaraj
47a0e4b906 UX: improve mobile search
Improves usability of header search icon while user is already in full page search in mobile.

Currently, hitting search icon a second time empties input and does not scroll up to show search form.

This commit scrolls up to show form and sets focus on input.
2019-03-25 14:42:54 -04:00
Kris
df279251b7 REFACTOR: More consistent user/group page layouts 2019-03-25 14:40:22 -04:00
Gerhard Schlager
60e6070c27 UX: Show spinner during text replacement 2019-03-25 16:47:55 +01:00
Penar Musaraj
8d098df289 UX: Inherit badge icon color
Fixes issue with icon color differing from text color in select-kit box category style
2019-03-25 09:29:38 -04:00
Joe
ec2123809f FEATURE: user and group cards on mobile (#7246) 2019-03-25 13:37:17 +01:00
Bianca Nenciu
f072da1bfe
FEATURE: Add every month / 6 months options to email digest. (#7247) 2019-03-25 12:45:01 +02:00
Tim Lange
dcd56cf593 FIX: Fixed changing composer mode escaping title (#7191) 2019-03-25 13:14:26 +05:30
Guo Xiang Tan
ac661e856a
FEATURE: Allow categories to be prioritized/deprioritized in search. (#7209) 2019-03-25 10:59:55 +08:00
Guo Xiang Tan
ce75e30bf5 UX: Indent category badges to indicate sub-categories. 2019-03-25 10:36:29 +08:00
Vinoth Kannan
b8bd031648 FIX: Always include custom fields in CategorySerializer
even if it is empty
2019-03-25 07:59:56 +05:30
Sam Saffron
40ac895ef7 SECURITY: properly validate return URL for SSO
Previously carefully crafted URLs could redirect off site
2019-03-25 09:02:42 +11:00
Neil Lalonde
399e937a38 FIX: prevent sending multiple summary emails due to Sidekiq delays 2019-03-22 12:34:34 -04:00
Penar Musaraj
51e08feb7e DEV: Refactor icons used in lightbox HTML
Uses <svg> elements instead of hacky CSS pseudoelements

Adds a migration to mark posts with lightboxes as needing a rebake
2019-03-22 11:52:06 -04:00