Martin Brennan
0d63eb4124
FEATURE: Add detection of post date to use in bookmark modal ( #10981 )
...
This PR introduces a feature that will detect a date inside the post that a user is bookmarking, and offer that date as an option in the bookmark modal.
The logic is that we get the first date/time detected in the post. If it does not have a time, just a date, then we default to 8:00am for the time.
2020-10-22 16:23:46 +10:00
Sam Saffron
906ec87d26
DEV: Add more debugging context to onebox generation
...
Previously if a onebox timed out we would not present the users in the log
with any information regarding the onebox. This makes it very difficult to
debug.
This adds url/topic/user in the debugging output.
2020-10-22 12:50:22 +08:00
Krzysztof Kotlarek
b2481adb40
FIX: persist secure image width and height if is given ( #10994 )
...
`max-width: 50%; max-height: 400px;` is a good fallback, however, if width and height are given and are smaller than fallback - we should persist that smaller size.
2020-10-22 13:25:09 +11:00
Martin Brennan
64b0b50ac0
FIX: Pass user to Email::Sender to avoid broken reply key for group_smtp email ( #10978 )
...
Our Email::Sender class accepts an optional user argument, which is used to create a PostReplyKey record when present. This record is used to sub out the %{reply_key} placeholder in the Reply-To mail header, so if we do not pass in the user we get a broken Reply-To header.
This is especially problematic in the IMAP group SMTP situation, because these emails go to customers that we are replying to, and when they reply to us the email bounces! This fixes the issue by passing user to the Email::Sender when sending a group_smtp email but there is still more to do in another PR.
This Email::Sender optional user is a bit of a footgun IMO, especially because most of the time we use it there is a user we can source. I would like to do another PR for this after this one to make the parameter not optional, so we don't end up with these reply issues down the line again.
2020-10-22 10:49:08 +10:00
David Taylor
abb00c3780
FIX: Restore users#topic_tracking_state route to api session_info scope ( #10992 )
...
This route was inadvertently removed in 1cec333f
, and is required for showing new/unread counts in Discourse mobile apps
2020-10-21 19:44:34 +01:00
Osama Sayegh
a04c300495
DEV: Add optional ENV variables for MiniProfiler snapshots transporter ( #10985 )
2020-10-21 19:37:28 +03:00
Joffrey JAFFEUX
6811902a70
FIX: converts “ and ” to " in local dates ( #10987 )
2020-10-21 17:16:36 +02:00
Joffrey JAFFEUX
f4842ae283
FIX: attempts to convert french quotes to regular quotes in dates ( #10986 )
2020-10-21 16:36:51 +02:00
dependabot-preview[bot]
a8d03e428d
Build(deps): Bump onebox from 2.1.3 to 2.1.4 ( #10983 )
...
Bumps [onebox](https://github.com/discourse/onebox ) from 2.1.3 to 2.1.4.
- [Release notes](https://github.com/discourse/onebox/releases )
- [Changelog](https://github.com/discourse/onebox/blob/master/CHANGELOG.md )
- [Commits](https://github.com/discourse/onebox/compare/v2.1.3...v2.1.4 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-10-21 13:40:08 +05:30
Kris
08104e058a
UX: Fix mobile padding-top on mobile, follow up to da5841d
( #10982 )
2020-10-21 17:52:35 +11:00
Martin Brennan
3ae1f98dc8
DEV: Add env var to disable ActiveRecord logging in development ( #10979 )
...
If RAILS_DISABLE_ACTIVERECORD_LOGS=1 is passed when starting Rails, none of the query log output will show. This is very useful for debugging with breakpoints because logs are not flooding in constantly.
2020-10-21 12:06:12 +10:00
Angus McLeod
516e7e392b
FEATURE: Add non_automatic group type param to groups index API
2020-10-21 09:46:45 +11:00
Alessandro Bertacco
dc2f5064e2
DEV: support for relative symlinks for plugins in docker dev ( #10955 )
...
These changes gives the possibility to use relative symlinks for plugins. Previously only absolute symlinks was supported.
2020-10-21 09:39:53 +11:00
Kris
a6befcd86c
FIX: include font import for embedded comments ( #10967 )
2020-10-21 09:35:52 +11:00
Kris
3d9f127228
FIX: Remove need for overflow hidden, follow-up to da5841d
( #10971 )
2020-10-21 09:35:07 +11:00
Sam
7b3b05f229
FEATURE: CTRL-SHIFT-ENTER and SHIFT-Click do not scroll on post ( #10965 )
...
This allows for an advanced feature where hitting control on click or
CTRL-SHIFT-ENTER will lead to a post being made but the browser not to
scroll to the end.
2020-10-21 08:55:58 +11:00
dependabot-preview[bot]
fa4ca4cbd0
Build(deps): Bump rubocop-rspec from 1.44.0 to 1.44.1 ( #10972 )
...
Bumps [rubocop-rspec](https://github.com/rubocop-hq/rubocop-rspec ) from 1.44.0 to 1.44.1.
- [Release notes](https://github.com/rubocop-hq/rubocop-rspec/releases )
- [Changelog](https://github.com/rubocop-hq/rubocop-rspec/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rubocop-hq/rubocop-rspec/compare/v1.44.0...v1.44.1 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-10-21 08:54:56 +11:00
Bianca Nenciu
be5efc9410
FIX: Ensure old uploads can have animated field updated ( #10963 )
...
If admins decreased the maximum filesize limit the ActiveRecord
validations would fail.
2020-10-20 19:11:43 +03:00
Bianca Nenciu
94cbfa92e1
FEATURE: Show a placeholder instead of videos in preview ( #10962 )
...
Adding a video in composer and then continuing to type into it will make the
video element flicker and restart playback on every keystroke, as the preview
is rendered. In certain configurations, this can lead to some performance
problems too.
Onebox already does the same for external videos.
2020-10-20 19:01:32 +03:00
Robin Ward
a65b426b8a
REFACTOR: Convert many more acceptance tests to the new format
2020-10-20 11:08:12 -04:00
Robin Ward
b3b9cf7c5d
REFACTOR: New format for acceptance tests
...
This gets us closer to how newer Ember versions want to do things, but
with a bit of Discourse flair.
`acceptance` now takes a function as a parameter, and tests need to be
declared in that new function context.
A new helper, `needs`, is passed as a parameter. You can use it to set
up the test the way you want.
2020-10-20 11:08:12 -04:00
Discourse Translator Bot
b5933e2b49
Update translations ( #10970 )
2020-10-20 15:34:57 +02:00
dependabot-preview[bot]
cffda509ce
Build(deps): Bump rack-mini-profiler from 2.1.0 to 2.2.0
...
Bumps [rack-mini-profiler](https://github.com/MiniProfiler/rack-mini-profiler ) from 2.1.0 to 2.2.0.
- [Release notes](https://github.com/MiniProfiler/rack-mini-profiler/releases )
- [Changelog](https://github.com/MiniProfiler/rack-mini-profiler/blob/master/CHANGELOG.md )
- [Commits](https://github.com/MiniProfiler/rack-mini-profiler/compare/v2.1.0...v2.2.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-20 09:16:34 -04:00
dependabot-preview[bot]
e4d90c14dc
Build(deps): Bump rubocop-rspec from 1.43.2 to 1.44.0 ( #10969 )
...
Bumps [rubocop-rspec](https://github.com/rubocop-hq/rubocop-rspec ) from 1.43.2 to 1.44.0.
- [Release notes](https://github.com/rubocop-hq/rubocop-rspec/releases )
- [Changelog](https://github.com/rubocop-hq/rubocop-rspec/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rubocop-hq/rubocop-rspec/compare/v1.43.2...v1.44.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-10-20 13:35:04 +02:00
dependabot-preview[bot]
21613baa65
Build(deps): Bump omniauth-facebook from 7.0.0 to 8.0.0 ( #10964 )
...
Bumps [omniauth-facebook](https://github.com/simi/omniauth-facebook ) from 7.0.0 to 8.0.0.
- [Release notes](https://github.com/simi/omniauth-facebook/releases )
- [Changelog](https://github.com/simi/omniauth-facebook/blob/master/CHANGELOG.md )
- [Commits](https://github.com/simi/omniauth-facebook/compare/v7.0.0...v8.0.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-10-20 12:03:59 +02:00
Roman Rizzi
fbb1fb9270
FIX: Ensure slow mode duration is correctly edited and displayed. ( #10945 )
...
* FIX: Ensure slow mode duration is correctly edited and displayed.
This commit fixes a bug where you were forced to set hours, minutes, and seconds or you won't be able to set the slow mode. Also, the duration was not displayed correctly due to the seconds not being truncated.
Additionally, we'll always display the hours, minutes, and seconds inputs for clarity and remove the blue banner.
* Set slow mode modal tweaks.
Uses labels instead of placeholders.
Input fields only visible when custom option selected.
Replace "Custom Duration" with "Pick Duration".
Additionally, place the `Set slow mode` button at the bottom of the topic actions menu.
* Perform the slow_mode validation also on the client-side before saving trying to save the post. This way, the post won't be staged.
2020-10-20 06:52:03 -03:00
Kris
1946fa3c53
FIX: Loading container needs same width as posts, follow up to da5841d
( #10966 )
2020-10-20 19:09:12 +11:00
Kris
da5841de0b
REFACTOR: Remove position fixed from the header and use sticky instead ( #10781 )
...
This removes fixed positioning from d-header and the topic timeline.
Plugins, themes and components that use the above/below header plugin outlet will likely need some margin/padding adjustments.
2020-10-19 17:26:38 -04:00
jbrw
a74805d3f8
FIX: moderators can add/remove group owners ( #10960 )
...
If `SiteSetting.moderators_manage_categories_and_groups` is enabled, a moderator shoud be able to add/remove group owners.
2020-10-19 16:30:21 -04:00
Robin Ward
5597aeb1b9
Revert "FEATURE: CTRL-SHIFT-ENTER and SHIFT-Click do not scroll on post ( #10939 )"
...
This broke "composePrivateMessage" (and possibly others) because `d-button` now passes the event as a
second argument, and that action has an optional second argument.
2020-10-19 14:07:35 -04:00
Arpit Jalan
6051a3da68
FIX: enable "remove tags" button only when tagging is enabled ( #10957 )
...
UX: remove tags button does not qualify to be a danger button
2020-10-19 22:08:11 +05:30
dependabot-preview[bot]
501f64d859
Build(deps): Bump exifr from 1.3.8 to 1.3.9 ( #10958 )
...
Bumps [exifr](https://github.com/remvee/exifr ) from 1.3.8 to 1.3.9.
- [Release notes](https://github.com/remvee/exifr/releases )
- [Changelog](https://github.com/remvee/exifr/blob/master/CHANGELOG )
- [Commits](https://github.com/remvee/exifr/compare/release-1.3.8...release-1.3.9 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-10-19 17:48:33 +02:00
Daniel Waterworth
48c3172913
DEV: Remove preserve_email_structure_when_styling setting ( #10956 )
...
This was made adjustable to allow rolling back quickly if problems came
up. The new behaviour was made default in 93137066
and no problems with
this have been reported.
2020-10-19 12:19:30 +01:00
David Taylor
b7c680853d
DEV: Introduce plugin API to contribute user api key scopes
2020-10-19 10:40:55 +01:00
David Taylor
23e5c605f6
DEV: Add support for allowed parameters in user api key scopes
...
Initially, this feature is only intended for use in core/plugins, so there is no API for requesting a parameter-scoped key. That may change in future.
2020-10-19 10:40:55 +01:00
David Taylor
1cec333f48
REFACTOR: Introduce RouteMatcher class
...
This consolidates logic used to match routes in ApiKey, UserApiKey and DefaultCurrentUserProvider. This reduces duplicated logic, and will allow UserApiKeysScope to easily re-use the parameter matching logic from ApiKeyScope
2020-10-19 10:40:55 +01:00
Sam
c8e0547bcc
FEATURE: CTRL-SHIFT-ENTER and SHIFT-Click do not scroll on post ( #10939 )
...
* FEATURE: CTRL-SHIFT-ENTER and SHIFT-Click do not scroll on post
This allows for an advanced feature where hitting control on click or
CTRL-SHIFT-ENTER will lead to a post being made but the browser not to
scroll to the end.
2020-10-19 17:21:50 +11:00
Krzysztof Kotlarek
2ad4fc39b6
FIX: calculate page if page param is not given to TopicView ( #10953 )
...
Currently, when page param is not given to TopicView we calculate page for canonical_path, however, it is skipped for next_path.
We should use the same calculation to define page, so next page URL will be accurate. Currently if you [view source of meta post](view-source:https://meta.discourse.org/t/post-rate-limit-trigger-for-a-topic-thats-heating-up/98294/46 ) you will see:
```
<link rel="canonical" href="https://meta.discourse.org/t/post-rate-limit-trigger-for-a-topic-thats-heating-up/98294?page=3 " />
<link rel="next" href="/t/post-rate-limit-trigger-for-a-topic-thats-heating-up/98294?page=2">
```
2020-10-19 17:11:49 +11:00
dependabot-preview[bot]
f84261b530
Build(deps): Bump faraday from 1.0.1 to 1.1.0 ( #10950 )
...
Bumps [faraday](https://github.com/lostisland/faraday ) from 1.0.1 to 1.1.0.
- [Release notes](https://github.com/lostisland/faraday/releases )
- [Changelog](https://github.com/lostisland/faraday/blob/master/CHANGELOG.md )
- [Commits](https://github.com/lostisland/faraday/compare/v1.0.1...v1.1.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-10-19 02:00:40 +02:00
dependabot-preview[bot]
75b5a0830e
Build(deps): Bump excon from 0.76.0 to 0.78.0 ( #10949 )
...
Bumps [excon](https://github.com/excon/excon ) from 0.76.0 to 0.78.0.
- [Release notes](https://github.com/excon/excon/releases )
- [Changelog](https://github.com/excon/excon/blob/master/changelog.txt )
- [Commits](https://github.com/excon/excon/compare/v0.76.0...v0.78.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-10-19 01:56:45 +02:00
dependabot-preview[bot]
487dbca8d5
Build(deps-dev): Bump webmock from 3.9.2 to 3.9.3 ( #10951 )
...
Bumps [webmock](https://github.com/bblimke/webmock ) from 3.9.2 to 3.9.3.
- [Release notes](https://github.com/bblimke/webmock/releases )
- [Changelog](https://github.com/bblimke/webmock/blob/master/CHANGELOG.md )
- [Commits](https://github.com/bblimke/webmock/compare/v3.9.2...v3.9.3 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-10-19 01:55:27 +02:00
Gerhard Schlager
1ac010db3c
FIX: "Sorry an error has occurred" was shown when flagging a post ( #10948 )
2020-10-18 13:47:54 +02:00
Gerhard Schlager
918d1d8363
DEV: Fix heisentest ( #10946 )
...
This should fix the following sporadic spec failure:
```
1) JsLocaleHelper performs fallbacks to English if a translation is not available
Failure/Error: expect(ctx.eval('I18n.translations.uk.js').keys).to contain_exactly("all_three", "english_and_user", "only_user", "site_and_user")
expected collection contained: ["all_three", "english_and_user", "only_user", "site_and_user"]
actual collection contained: ["about", "action_codes", "activity", "admin", "admin_title", "adplugin", "age", "akismet", "all_time..."voting", "week", "week_desc", "weekly", "wizard_required", "year", "year_desc", "yes_value", "you"]
the missing elements were: ["all_three", "english_and_user", "only_user", "site_and_user"]
the extra elements were: ["about", "action_codes", "activity", "admin", "admin_title", "adplugin", "age", "akismet", "all_time..."voting", "week", "week_desc", "weekly", "wizard_required", "year", "year_desc", "yes_value", "you"]
# ./spec/components/js_locale_helper_spec.rb:182:in `block (2 levels) in <main>'
# ./bundle/ruby/2.6.0/gems/webmock-3.9.2/lib/webmock/rspec.rb:37:in `block (2 levels) in <top (required)>'
```
2020-10-18 12:00:35 +02:00
dependabot-preview[bot]
8c43b48064
Build(deps): Bump oj from 3.10.14 to 3.10.15 ( #10947 )
...
Bumps [oj](https://github.com/ohler55/oj ) from 3.10.14 to 3.10.15.
- [Release notes](https://github.com/ohler55/oj/releases )
- [Changelog](https://github.com/ohler55/oj/blob/develop/CHANGELOG.md )
- [Commits](https://github.com/ohler55/oj/compare/v3.10.14...v3.10.15 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-10-17 16:22:59 +02:00
Discourse Translator Bot
7eef10c6d7
Update translations ( #10944 )
2020-10-17 00:07:21 +02:00
Roman Rizzi
1ff45dc194
FIX: Only TL4 users and staff should be able to see the disable slow mode button ( #10942 )
2020-10-16 17:52:31 -03:00
Roman Rizzi
21c53ed249
FEATURE: Topic slow mode. ( #10904 )
...
Adds a new slow mode for topics that are heating up. Users will have to wait for a period of time before being able to post again.
We store this interval inside the topics table and track the last time a user posted using the last_posted_at datetime in the TopicUser relation.
2020-10-16 16:24:38 -03:00
Robin Ward
4669e60ce5
FEATURE: Use "no-referrer-when-downgrade" as our embed policy
...
This allows our iframes to pass through the proper referer so that
embedding continues to work in modern browsers with different security
models.
2020-10-16 13:23:06 -04:00
Robin Ward
b460a6d059
REFACTOR: Continue to converge on what Ember CLI wants us to do
...
* The creation of a testing div is specific to Rails, so that is
moved back out of setupTests();
* We've removed the `Discourse` globals from the acceptance helpers in favor of
`setApplication`/`getApplication`.
* We pass the container to setupTests because there is no
`__container__` in later Ember versions.
* `App` is now `app` because it's not a constant or class, it's an
instance of an application.
2020-10-16 10:53:13 -04:00
Gerhard Schlager
7adf71a203
Fix i18n issues reported on Crowdin ( #10925 )
...
* Pluralize `discourse_narrative_bot.dice.not_enough_dice`
The number of dice requires a pluralized string.
Fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/278/en-ar#51346
* Always use "two-factor" instead of "second factor" or "two factor"
Using different terms for the same thing is quite confusing.
Fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-nl#40096
* Remove whitespace before ellipsis for consistency
Fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-nl#53978
* Remove unused strings from locale file
* Correct grammar in `site_settings.review_media_unless_trust_level`
Fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/248/en-nl#54018
* Correct grammar in `reviewables.reasons.contains_media`
Fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/248/en-nl#54020
* Correct grammar in user notifications
It also adds a link to the /about page in order to give the user a clue who the site admins are.
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/248/en-nl#54084
* Use "log in" instead of "login" when it's a verb
This fixes multiple issues:
* https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-nl#40940
* https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/248/en-nl#47858
* https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/248/en-nl#49458
* Replace "Github" with "GitHub"
* Remove "discourse.org" from title of 503 error page
* Replace weirdly formatted multi line string
* Pluralize `js.composer.group_mentioned_limit`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#41158
* Remove unused string and pluralize `js.topic.feature_topic.confirm_pin_globally`
This kinda fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#42114 as `js.topic.feature_topic.confirm_pin` wasn't used anymore.
* Pluralize `js.user.second_factor_backup.remaining_codes`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#40054
* Pluralize `js.composer.error.tags_missing`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#41184
* Pluralize `js.post.errors.too_many_dragged_and_dropped_files`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#42408
* Remove unused `js.posts_long` and `js.likes_long`
This fixes the following issues in an unexpected way:
* https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#42974
* https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#42994
* Pluralize `js.bootstrap_mode_enabled`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#38726
* Remove unused `long_form` from `post_action_types`
This more or less fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/248/en-ar#47158
* Pluralize `js.presence.replying` and `js.presence.replying`
This fixes the following issues:
* https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/282/en-ar#51588
* https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/282/en-ar#51590
* Pluralize `js.user.second_factor_backup.manage`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#40044
* Stop using concatenated strings for "Recently Used Devices"
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#40308
* Pluralize `js.category_row.topic_count`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#41056
* Pluralize `js.select_kit.invalid_selection_length`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#41072
* Pluralize `js.notifications.membership_request_consolidated`
This fixes https://discourse.crowdin.com/translate/f3230e7607a36bb0a2f97fd90605a44e/246/en-ar#41416
2020-10-16 15:24:58 +02:00