Commit Graph

19306 Commits

Author SHA1 Message Date
Sam Saffron f8be43644b DEV: allow nonce expiry time to be extended cleanly from a plugin
Previously one would have to redefine a constant
2019-03-19 17:33:38 +11:00
Guo Xiang Tan 4020c87680 DEV: Refactor tests for `Jobs::CleanUpInactiveUsers`.
* Remove use of 0 in favor of `TrustLevel.levels[:newuser]`.
* Consolidate two tests into a single one.
* Test that disabling the feature works.
* Avoid loading full ActiveRecord object in test when we only need to
know the existence of the record.
2019-03-19 09:57:21 +08:00
Gerhard Schlager 8a99d59422 FIX: seed data classes couldn't always be found 2019-03-18 23:13:47 +01:00
Gerhard Schlager 3fd04df781
FEATURE: Locale support for seeded categories and topics (#7110) 2019-03-18 21:09:13 +01:00
Joffrey JAFFEUX d91b47064e
FIX: windows has no country flags (#7199) 2019-03-18 19:28:49 +01:00
Maja Komel 5d20d02ffc UX: add tag classes to topics in topics list view (#7198) 2019-03-18 13:58:29 -04:00
David Taylor e2d6edd5ff DEV: Correct email disabled banner tests
Followup to acc121fd27
2019-03-18 17:06:29 +00:00
Dan Ungureanu 976ea160e9
FEATURE: Post notices become old after 14 days. (#7197) 2019-03-18 18:20:49 +02:00
Gerhard Schlager c0a7b06777 Make eslint happy 2019-03-18 16:48:09 +01:00
David Taylor acc121fd27 FIX: Show 'emails disabled' to staff users when disabled for non-staff (#7187) 2019-03-18 16:26:18 +01:00
Bianca Nenciu 2347661a74 FEATURE: Clean up inactive users. (#7172) 2019-03-18 16:25:15 +01:00
Maja Komel 7e9afdace3 FEATURE: custom colors for default letter avatars (#7167) 2019-03-18 16:24:21 +01:00
Tim Lange 22c75e1c04 FIX: Fixed edit category description redirecting without saving (#7192) 2019-03-18 16:14:17 +01:00
Tim Lange 298f18cf70 UX: Enabled pinch to zoom for lightbox (#7161)
* UX: Enabled pinch to zoom for lightbox

* FIX: Prettier for lightbox.js

* FIX: Only change content of meta tag
2019-03-18 10:57:24 -04:00
venarius 3dfa22b55a FIX: Prettified code 2019-03-18 10:54:20 -04:00
venarius 4af0a2f00b FIX: Made reorder more convenient by clamping the entered number 2019-03-18 10:54:20 -04:00
venarius ad363f45f0 FIX: Fixed reorder categories by number not working correctly 2019-03-18 10:54:20 -04:00
Penar Musaraj 2506acae80
FIX: Respect permalinks starting with "/category" (#7171) 2019-03-18 10:24:46 -04:00
David Taylor 4e8c174ee5
FEATURE: Display notification count in title for logged in users (#7184)
This replaces the 'contextual' counters for logged in users. We will still use the old method for anon users
2019-03-18 12:59:47 +00:00
Arpit Jalan 0c01cb2cf3 UX: add instructions to update email when sso_overrides_email is enabled 2019-03-18 16:52:40 +05:30
Guo Xiang Tan 5e410dc5e0
FEATURE: Ability to exclude category from search results. (#7194)
This commit also adds `Category#search_priority` which sets the ground
work to enable prioritizing of posts for certain categories when searching.
2019-03-18 15:25:45 +08:00
Joffrey JAFFEUX 0a8f950281
FIX: bumps emoji cache version (#7195)
Might not be necessary, but might avoid weird results with all the recents emoji changes.
2019-03-18 08:22:36 +01:00
Joffrey JAFFEUX de6a7e32bd
FIX: brings back [+ New Topic] btn from share-popup post action (#7182) 2019-03-18 07:30:10 +01:00
Sam Saffron c47b0a8bee Revert "UX: Added tooltips to topic admin menu (#7146)"
This reverts commit d1c4981f65.

Per discussion with @coding-horror it was decided this change is to
far reaching.

Instead we will make smaller strategic changes to tooltips that add
value.
2019-03-18 11:50:18 +11:00
Vinoth Kannan 4477938ea7 DEV: Option to preload category custom fields for site serializer 2019-03-16 17:18:57 +05:30
Joffrey JAFFEUX bc488c8dc0
FIX: prevents overflow on emoji picker on mobile (#7189) 2019-03-16 10:59:02 +01:00
Kris b12ef793b7 minor button alignment fix 2019-03-15 19:25:51 -04:00
Kris 95e8c935c5 UX: Update brand color, some login adjustments 2019-03-15 17:20:52 -04:00
Rafael dos Santos Silva 8ce20090f7 FEATURE: Allow users to fetch a customized manifest on PWA install
This will allow users installing a Discourse PWA to use their active
theme colors on the generated app. Thanks for @mgiuca for the tip.

Also makes the share_target config explicit to silence Chrome warnings
2019-03-15 17:10:05 -03:00
Joffrey JAFFEUX e76b598e0f
FIX: ensures add/remove btn is shown if you can only invite (#7185) 2019-03-15 20:20:42 +01:00
Bianca Nenciu 5114ef958a FIX: Do not trigger post alerts for empty posts. (#7138) 2019-03-15 17:58:43 +01:00
Joffrey JAFFEUX aa4b84925a FEATURE: updates emoji to latest 12.0 version (#7095)
* improved emoji support

- always optimize images as part of the task
- use the unicode standard ordering/naming for sections

* UX: more height for when there are recently used
2019-03-15 16:12:07 +01:00
Penar Musaraj 9334d2f4f7
FEATURE: add more granular user option levels for email notifications (#7143)
Migrates email user options to a new data structure, where `email_always`, `email_direct` and `email_private_messages` are replace by

* `email_messages_level`, with options: `always`, `only_when_away` and `never` (defaults to `always`)
* `email_level`, with options: `always`, `only_when_away` and `never` (defaults to `only_when_away`)
2019-03-15 10:55:11 -04:00
Régis Hanol a6a52d1523 FIX: images:compress rake task
Optimized a few unoptimized PNGs.
2019-03-15 15:23:57 +01:00
Tarek Khalil f8480ed911
FEATURE: Exposing a way to add a generic report filter (#6816)
* FEATURE: Exposing a way to add a generic report filter

## Why do we need this change?

Part of the work discussed [here](https://meta.discourse.org/t/gain-understanding-of-file-uploads-usage/104994), and implemented a first spike [here](https://github.com/discourse/discourse/pull/6809), I am trying to expose a single generic filter selector per report.

## How does this work?

We basically expose a simple, single generic filter that is computed and displayed based on backend values passed into the report.

This would be a simple contract between the frontend and the backend.

**Backend changes:** we simply need to return a list of dropdown / select options, and enable the report's newly introduced `custom_filtering` property.

For example, for our [Top Uploads](https://github.com/discourse/discourse/pull/6809/files#diff-3f97cbb8726f3310e0b0c386dbe89e22R1423) report, it can look like this on the backend:

```ruby
report.custom_filtering = true
report.custom_filter_options = [{ id: "any", name: "Any" }, { id: "jpg", name: "JPEG" } ]
```

In our javascript report HTTP call, it will look like:

```js
{
  "custom_filtering": true,
  "custom_filter_options": [
    {
      "id": "any",
      "name": "Any"
    },
    {
      "id": "jpg",
      "name": "JPG"
    }
  ]
}
```

**Frontend changes:** We introduced a generic `filter` param and a `combo-box` which hooks up into the existing framework for fetching a report.

This works alright, with the limitation of being a single custom filter per report. If we wanted to add, for an instance a `filesize filter`, this will not work for us. _I went through with this approach because it is hard to predict and build abstractions for requirements or problems we don't have yet, or might not have._

## How does it look like?

![a1ktg1odde](https://user-images.githubusercontent.com/45508821/50485875-f17edb80-09ee-11e9-92dd-1454ab041fbb.gif)

## More on the bigger picture

The major concern here I have is the solution I introduced might serve the `think small` version of the reporting work, but I don't think it serves the `think big`, I will try to shed some light into why.

Within the current design, It is hard to maintain QueryParams for dynamically generated params (based on the idea of introducing more than one custom filter per report).

To allow ourselves to have more than one generic filter, we will need to:

a. Use the Route's model to retrieve the report's payload (we are now dependent on changes of the QueryParams via computed properties)
b. After retrieving the payload, we can use the `setupController` to define our dynamic QueryParams based on the custom filters definitions we received from the backend
c. Load a custom filter specific Ember component based on the definitions we received from the backend
2019-03-15 12:15:38 +00:00
Bianca Nenciu d352baa1a2
FEATURE: Enforce two-factor authentication. (#6348) 2019-03-15 13:09:37 +02:00
Joffrey JAFFEUX e711d3cb3a
FIX: prevents quote shortcut key to show in composer before quote (#7177) 2019-03-15 12:01:38 +01:00
Guo Xiang Tan 6327f36bfd PERF: Avoid loading ActiveRecord objects when checking for second factor.
* Eliminate DB query for sites without local logins and sites that has
SSO enabled.
2019-03-15 15:09:44 +08:00
Guo Xiang Tan c5808a8a25 PERF: N+1 queries admin users pages. 2019-03-15 15:09:44 +08:00
Penar Musaraj d6d4a5ba4a FEATURE: support custom icons in themes (#7155)
* First take

* Add support for sprites in themes

Automatically register any custom icons added via themes or plugins

* Fix theme sprite caching

* Simplify test

* Update lib/svg_sprite/svg_sprite.rb

Co-Authored-By: pmusaraj <pmusaraj@gmail.com>

* Fix /svg-sprite/search request
2019-03-15 17:16:15 +11:00
Maja Komel 32db3ac228 UX: order categories based on recent activity when using categories_and_latest_topics layout (#7166) 2019-03-15 17:14:49 +11:00
Tim Lange 37c613dde2 FIX: Outsourced erb part from emoji.js.es6 (#7168) 2019-03-15 15:44:49 +11:00
Vinoth Kannan bec3956f7f
FIX: Topic filters persist when navigating to home page (#7175)
* FIX: Topic filters persist when navigating to home page

* remove the line which no longer needed
2019-03-15 09:45:17 +05:30
Tarek Khalil bd6d31c9ec
FEATURE: Add `IgnoredUsersSummary` daily job (#7144)
* FEATURE: Add `IgnoredUsersSummary` daily job

## Why?

This is part of the [Ability to ignore a user feature](https://meta.discourse.org/t/ability-to-ignore-a-user/110254/8).

We want to:

1. Send an automatic group PM that goes out to moderators
2. When {x} users have Ignored the same user, threshold defined by a site setting, default of 5
3. Only send this message every X days which is defined by another site setting
2019-03-14 22:51:43 +00:00
Rafael dos Santos Silva fb8bcd7469
FEATURE: Enable experimental Badging API (#7173) 2019-03-14 18:16:16 -03:00
Arpit Jalan d6d71de855 FIX: allow banner topic posts to be moved to regular topic (and vice versa) 2019-03-14 23:41:23 +05:30
Robin Ward 1b65469b64 FIX: Backwards compatibility for `SiteSetting.queue_jobs`
Some plugin specs use this. Let's deprecate it instead.
2019-03-14 11:39:10 -04:00
Robin Ward fa5a158683 REFACTOR: Move `queue_jobs` out of `SiteSetting`
It is not a setting, and only relevant in specs. The new API is:

```
Jobs.run_later!        # jobs will be thrown on the queue
Jobs.run_immediately!  # jobs will run right away, avoid the queue
```
2019-03-14 10:47:38 -04:00
Gerhard Schlager f3c76ad482 FIX: Failed to detect existing category permalink 2019-03-14 13:42:05 +01:00
Gerhard Schlager c34a6ba674 REFACTOR: Rename site settings to make them less confusing 2019-03-14 13:40:14 +01:00
Tarek Khalil 6f6dea87f3
FIX: optimise querying Post's serializer ignored attribute (#7169) 2019-03-14 12:10:53 +00:00
Guo Xiang Tan b9ab393d70 Fix favicon not updating on the client side when changed.
Regression from 1c6a2262b3.

Documented the rational for include the url since we can't really test
this properly.
2019-03-14 15:37:43 +08:00
Guo Xiang Tan 40b03e717b FIX: `Upload#migrate_to_new_scheme` should not migrate system uploads. 2019-03-14 12:45:03 +08:00
Guo Xiang Tan d2a7f29595 Revert "REFACTOR: remove unnecessary parentheses attempt 2 (follow-up on 154f503d)"
This reverts commit 7db2dc717e.

Commit breaks post edits for regular users.
2019-03-14 08:15:40 +08:00
Guo Xiang Tan 1c6a2262b3
FIX: `StaticController#favicon` reads from disk when using local store. (#7160)
Since uploads site settings are now backed by an actual upload, we don't
have to reach over the network just to fetch the favicon. Instead, we
can just read the upload directly from disk.
2019-03-14 04:17:36 +08:00
Neil Lalonde 7db2dc717e REFACTOR: remove unnecessary parentheses attempt 2 (follow-up on 154f503d) 2019-03-13 15:33:46 -04:00
Dan Ungureanu 81bf4df1a5
DEV: Fix lint. 2019-03-13 21:32:28 +02:00
Dan Ungureanu 18ff790e79
FIX: Use prioritize_username_in_ux in post notices. 2019-03-13 21:17:41 +02:00
Roman Rizzi 77931b70c3
Revert "DEV: Upgrade to Ember 3.7.0 (#6977)" (#7165)
This reverts commit 3eebf8be73.
2019-03-13 15:49:47 -03:00
Kris 4178578e09 UX: Adhere to Facebook & Twitter brand guidelines for share icon colors 2019-03-13 13:42:11 -04:00
Maja Komel 65f3ed0689 UX: make name optional for confirmation user field (#7149) 2019-03-13 18:40:43 +01:00
Maja Komel 12c37ada2e UX: focus on search box when emoji picker is opened (#7098) 2019-03-13 17:48:40 +01:00
David Taylor 420c6f8102
FEATURE: Skip sending emails to domains on the `.invalid` TLD (#7162)
This is a reserved TLD which we use when importing users without an email address. https://tools.ietf.org/html/rfc2606
2019-03-13 16:17:59 +00:00
Dan Ungureanu 91bd0becaa DEV: Allow topics to register default topic order criteria. (#7158) 2019-03-13 16:44:08 +01:00
Vinoth Kannan c773f82ba1 DEV: Added qunit test functions and did minor refactoring
135191d1d1
2019-03-13 18:38:27 +05:30
Joffrey JAFFEUX d32557ea32 Revert "FIX: Better emoji escaping for topic title"
This reverts commit 35426b5ad6.
2019-03-13 13:02:56 +01:00
Maja Komel 3eebf8be73
DEV: Upgrade to Ember 3.7.0 (#6977)
* Upgrade to Ember 3.7.0

* use ember source 3.7.0.2

* fix mobile header

* fix navigation
2019-03-13 12:16:06 +01:00
Vinoth Kannan 1b454c73ae FIX: 'topic' can have null value 2019-03-13 16:34:47 +05:30
Tim Lange 35426b5ad6 FIX: Better emoji escaping for topic title
This commit also puts emojiVersion in its own erb file.
2019-03-13 11:17:59 +01:00
Vinoth Kannan 135191d1d1 DEV: Option to add extra topic status icons in its widget and component
and did some refactoring
2019-03-13 15:17:26 +05:30
Guo Xiang Tan b0c8fdd7da FIX: Properly support defaults for upload site settings. 2019-03-13 16:36:57 +08:00
Tim Lange d1c4981f65 UX: Added tooltips to topic admin menu (#7146)
* UX: Added tooltips to topic admin menu

* FIX: Prettyfied code

* FIX: Fixed typo

* Update config/locales/client.en.yml

Co-Authored-By: venarius <tim.lange@online.de>
2019-03-13 17:11:36 +11:00
Joffrey JAFFEUX edc6d87862 FIX: invite-panels regressions on private topics (#7157) 2019-03-13 16:34:23 +11:00
Dan Ungureanu 476d0050ab
FIX: Disable notices for posts by anonymous. 2019-03-13 00:20:19 +02:00
Dan Ungureanu 7310ee3ef1 FEATURE: Add more control over post notices. (#7148) 2019-03-13 08:06:28 +11:00
Neil Lalonde e9ba4c74f7 Revert "REFACTOR: remove unnecessary parentheses"
Specs fail
2019-03-12 15:00:58 -04:00
Bianca Nenciu c6ed86220e FIX: Notify on tag change. (#7119) 2019-03-12 18:09:34 +01:00
Saurabh Patel a901527057 DEV: remove user_profile events added for akismet (#7044) 2019-03-12 17:51:09 +01:00
Régis Hanol 154f503d2e
REFACTOR: remove unnecessary parentheses 2019-03-12 17:13:21 +01:00
Tarek Khalil 28384ba62c
FEATURE: Add `Top Ignored Users` report (#7153)
* FEATURE: Add `Top Ignored Users` report

## Why?

This is part of the [Ability to ignore a user feature](https://meta.discourse.org/t/ability-to-ignore-a-user/110254/8), and also part of [this PR](https://github.com/discourse/discourse/pull/7144).

We want to send a System Message daily when a specific count threshold for an ignored is reached. To make this system message informative, we want to link to a report for the Top Ignored Users too.
2019-03-12 16:01:58 +00:00
Tarek Khalil 4a00772c19
FIX: invite approval `StaffActionLogger` bug (#7151)
* FIX: invite approval `StaffActionLogger` bug
2019-03-12 13:32:25 +00:00
Tarek Khalil db08b59eb2
UX: Change `ignore` button color (#7150) 2019-03-12 11:10:18 +00:00
Joffrey JAFFEUX 90965e1c18
FIX: error with two inputs having the same id (#7147) 2019-03-12 09:46:58 +01:00
Bianca Nenciu e6c2faf186 FIX: Disable 'Create Topic' button if tag is staff-only. (#6984)
* FIX: Disable 'Create Topic' button if tag is staff-only.

* FIX: Staff-only tags should always return 404.
2019-03-12 19:23:36 +11:00
Bianca Nenciu 191e31dccf FEATURE: Log user approvals. (#7121) 2019-03-12 19:16:56 +11:00
Guo Xiang Tan 34b29f62db DEV: Remove the use of stubs and mocks in `Jobs::UserEmail` tests.
We can only be sure that an email is sent when we get a mailer in
`ActionMailer::Deliveries`. A couple of tests were actually incorrect
because it didn't flow through our email sender where there are more
conditions in determining whether an email is sent or not.
2019-03-12 09:39:16 +08:00
Dan Ungureanu 32bae48fd3 DEV: Use User#human? User#bot? (#7140) 2019-03-12 07:58:14 +08:00
venarius 95dc52e15e FIX: Changed warning css class 2019-03-11 12:56:15 -04:00
venarius dc4541a95c FIX: Text content search warning if more than 50 results 2019-03-11 12:56:15 -04:00
Robin Ward da7406e567 Update app/assets/javascripts/discourse/controllers/full-page-search.js.es6
Co-Authored-By: venarius <tim.lange@online.de>
2019-03-11 11:33:24 -04:00
venarius 5f00624814 FIX: Fixed vanishing select boxes on full search as new content loads 2019-03-11 11:33:24 -04:00
Joffrey JAFFEUX 7ae1afa7d9
FIX: ensures tag-groups are used to allow category edit on topics (#7141) 2019-03-11 15:02:27 +01:00
Tarek Khalil d6eb892b04
FEATURE: Account for `ignored_users` when merging two users (#7142)
* FEATURE: Account for `ignored_users` when merging two users

## Why?

This is part of the [Ability to ignore a user feature](https://meta.discourse.org/t/ability-to-ignore-a-user/110254/8).
When we merge two users, we need to account for merging their list of `ignored_users` too.
2019-03-11 13:53:59 +00:00
Dan Ungureanu ceec11a153
FIX: Make post notices invisible to poster. 2019-03-11 12:07:19 +02:00
Dan Ungureanu b28b418363
FIX: Various improvements to post notices.
- Notices are visible only by poster and trust level 2+ users.
- Notices are not generated for non-human or staged users.
- Notices are deleted when post is deleted.
2019-03-11 11:19:58 +02:00
Guo Xiang Tan 88355884c9 Exclude post_notice_* from web hook post payload. 2019-03-11 11:04:17 +08:00
Neil Lalonde cbc8236288 UX: add a paragraph description on the tags tab of the category settings 2019-03-08 16:46:32 -05:00
Kris c29ff3d2d5 UX: style adjustments for post notice feature 2019-03-08 16:02:51 -05:00
Robin Ward 57ee779b1e FIX: Job exception: undefined method `email' for nil:NilClass
It seems that due to jobs being asynchronous and wrapping code in a
DistributedMutex that by the time we run the
`UserAvatar#update_gravatar!` job that the user/user email might be
destroyed.

This patch checks before a call to `user.email_hash` to make sure
the user and primary email exist to prevent the exception. If not
present, the job exits as there's nothing to do because we are
probably running after the user was destroyed for some reason.
2019-03-08 13:39:56 -05:00
Kris e3e681ebf7 UX: better handling of width and overflow for login/signup 2019-03-08 11:14:52 -05:00
Osama Sayegh 5e58cedfbd
FIX: retranspile theme JS when settings YAML changes (#7131) 2019-03-08 17:49:06 +03:00
David Taylor 0a4562253e DEV: Add 'starting' event to sidekiq log when interval logging enabled 2019-03-08 10:56:36 +00:00
David Taylor e2510d79cc DEV: Improve thread-safety of sidekiq logging 2019-03-08 10:31:49 +00:00
Dan Ungureanu ac8425ad30
FIX: Date format and styling for post notices
Follow-up to 35942f7.
2019-03-08 12:25:03 +02:00
Régis Hanol ad12b2a23d
FIX: only call 'unlink' for tempfiles 2019-03-08 11:22:20 +01:00
Régis Hanol 7ff994b6ea
UX: post-notice max width on desktop 2019-03-08 10:52:47 +01:00
Régis Hanol 2434e48d4d
UX: Fix post notice on mobile 2019-03-08 10:50:33 +01:00
David Taylor 9db05a895a DEV: Add job_id to sidkiq log
This makes it easier to correlate 'pending' logs from the same job
2019-03-08 09:16:13 +00:00
Dan Ungureanu 2312caccdc
FEATURE: Skip small actions when counting replies in PMs. (#7108) 2019-03-08 10:49:34 +02:00
Dan Ungureanu 35942f7c7c
FEATURE: Special call-out for new / returning posters. (#7115) 2019-03-08 10:48:35 +02:00
Simon Cossar 65464969cd Change searchTearm to searchTerm (#7130) 2019-03-08 09:24:14 +01:00
Joffrey JAFFEUX 3acf8a95f3
UX: various tweaks to search-menu (#7114) 2019-03-08 09:23:44 +01:00
Joffrey JAFFEUX c90267db52
FIX: do not display add/remove participants if you can’t actually do it (#7125) 2019-03-08 09:23:26 +01:00
Kris cd94ac9453 FIX: remove padding from onebox site icon in composer preview 2019-03-07 22:32:27 -05:00
Kris 6e26358380 REFACTOR: streamline like button styles, clarify for themeing, enable tab focus 2019-03-07 21:09:57 -05:00
Gerhard Schlager f6ef4f8c3f FEATURE: Add missing S3 regions 2019-03-07 22:42:20 +01:00
Kris ccff1d2dbb prettier 2019-03-07 13:30:39 -05:00
Kris 837452794b Target active nav pill with single style 2019-03-07 13:21:42 -05:00
Joffrey JAFFEUX a2fdd4089c
FIX: nav-pills not highlighted on user preferences page (#7126) 2019-03-07 13:40:12 +01:00
David Taylor fc7938f7e0
REFACTOR: Migrate GoogleOAuth2Authenticator to use ManagedAuthenticator (#7120)
https://meta.discourse.org/t/future-social-authentication-improvements/94691/3
2019-03-07 11:31:04 +00:00
Arpit Jalan 2c8e1d3578 FEATURE: remove all expired invitations by default 2019-03-07 15:28:39 +05:30
Arpit Jalan caef0a56d1 FEATURE: create a new message via URL without specifying user or group 2019-03-07 11:30:24 +05:30
Kris 9d3c7d7b25 prettier 2019-03-06 19:52:34 -05:00
Kris e233a69db0 Customize nav pill fix 2019-03-06 19:42:44 -05:00
Kris 7d2cc33013 prettier 2019-03-06 17:37:59 -05:00
Kris a917a93990 fix active class, remove style 2019-03-06 17:29:19 -05:00
Kris 536952f194 adding back active nav pill 2019-03-06 17:14:02 -05:00
Bianca Nenciu 733deba585 FIX: Loading draft also replaces the recipients (#7122) 2019-03-07 08:14:55 +11:00
Kris 078c02cd24 UX: More consistent structure for active nav-pill 2019-03-06 16:10:22 -05:00
Gerhard Schlager 1121514799 UX: Localize date format in "new user of the month" message 2019-03-06 21:58:25 +01:00
Vinoth Kannan 5ba2ef4274 UX: Display error message if no time frame selected in topic status update 2019-03-07 02:17:29 +05:30
Vinoth Kannan 167d85c21f FIX: post & topic destroyed hooks not triggering with tag filter 2019-03-06 22:52:54 +05:30
Kris 2db3652338 UX: Fix redeemed invite table layout 2019-03-06 11:05:45 -05:00
Gerhard Schlager 4000978452 FIX: Failed to save email template with pluralized subject 2019-03-06 16:51:04 +01:00
Kris 5cf63e43c6 FEATURE: Add about-after-description plugin outlet 2019-03-06 10:26:34 -05:00
David Taylor df474bceee DEV: Further sidekiq logging stability improvements
- Open the log file in "append" mode. This avoids issues if the file does not exist (and matches standard rails log behavior)
- Correctly parse the interval logging environment variable
2019-03-06 12:50:15 +00:00
Tarek Khalil 0a9a11094d
FEATURE: Save ignored usernames in user preferences (#7117)
* FEATURE: Save ignored usernames in user preferences
2019-03-06 11:21:58 +00:00
Joffrey JAFFEUX 974e756369
FIX: bugs in safari where select-kit is not expanding on iOS (#7118) 2019-03-06 11:29:45 +01:00
David Taylor fe62de68dd DEV: Correct sidekiq logging to avoid thread leak 2019-03-06 10:11:31 +00:00
Tarek Khalil b58eea1fcb
FEATURE: Hide ignored user's Original Post content (#7113)
* FEATURE: Hide ignored user's Original Post content
2019-03-06 09:20:45 +00:00
Arpit Jalan 05ebb52ec4
FEATURE: defer flags when deleting child replies (#7111) 2019-03-06 14:32:25 +05:30
Sam 8d7c10f7f2 FIX: allow moderators to create categories setting broken
Mods require visibility to everyone group cause category dialogs need to
know about this.

If the site setting `allow moderators to create categories` will not function
without this

Note there is no security expansion of rights here, the group is technically
empty anyway and it always looks exactly the same on all discourse instances
2019-03-06 17:44:18 +11:00
Kris 86f9ace0ea UX: Previous positioning was better for the image resizer 2019-03-05 22:10:12 -05:00
Kris b5804c410e UX: Add slash to mobile category page totals 2019-03-05 20:16:12 -05:00
Kris 2ea77073ae prettier 2019-03-05 15:12:10 -05:00
Kris 84892429ed UX: Improve layout of invite table 2019-03-05 14:50:27 -05:00
Jeff Wong b0d93a38e8 FEATURE: Add plugin html hook to insert html before any other scripts 2019-03-05 10:41:16 -08:00
David Taylor 8b30ed5b7a DEV: Serialize the job parameters in sidekiq logs
Otherwise this can lead to some very large data structures when processing the logs later
2019-03-05 17:44:49 +00:00
Gerhard Schlager 671cec4bd2 DEV: Use Discourse.getURL for creating URL
follow-up to ccb48bef75
2019-03-05 17:52:18 +01:00
Tarek Khalil 190b19f3c2
FEATURE: Add ignored user list to the User's preference page (#7107)
* FEATURE: Add ignored user list to the User's preference page

## Why?

Part of: https://meta.discourse.org/t/ability-to-ignore-a-user/110254

We want to add list of Ignored users under or along with the muted users preferences section.
This way Users can find and update their list of ignored users.

## UI


![gif](https://user-images.githubusercontent.com/45508821/53746179-8e9b3c00-3e98-11e9-9e90-94b8520896a6.gif)

## Open questions

Two of many options to represent a list of ignored users is that we can:

1. We can represent the ignored user list as a table with the ability to `un-ignore` but NOT to add new ignored users.
2. We can keep it functioning as the `muted user list` where you can `un-ignore` or `ignore` users.
2019-03-05 14:47:51 +00:00
Tarek Khalil f19d36cbba
REFACTOR: Change `watch` wording to `unignore` (#7112)
* REFACTOR: Change `watch` wording to `unignore`
2019-03-05 14:40:31 +00:00
Gerhard Schlager ccb48bef75 UX: Make Uncategorized category less confusing
* Adds warnings to the "Edit Category" dialog
* Doesn't hide the "Security" tab on the "Edit Category" dialog anymore. Instead, it shows an explanation why permissions can't be changed.
* Makes the category name translatable
* Hides the category name from the edit dialog (it can be customized by overriding the translation)
* Creates a translation override if the category has been renamed in the past
2019-03-05 14:42:41 +01:00
Gerhard Schlager 68e4aba369 UX: Don't concatenate title on "Edit Category" dialog 2019-03-05 14:42:41 +01:00
David Taylor 35275c137b PERF: Remove final N+1 from theme admin page
The rails bug previously mentioned only causes an issue when using `pluck`, so this controller is not affected.

Followup to a8ffc02d06
2019-03-05 12:10:53 +00:00
David Taylor 8963f1af30
FEATURE: Optional detailed performance logging for Sidekiq jobs (#7091)
By default, this does nothing. Two environment variables are available:

- `DISCOURSE_LOG_SIDEKIQ`

  Set to `"1"` to enable logging. This will log all completed jobs to `log/rails/sidekiq.log`, along with various db/redis/network statistics. This is useful to track down poorly performing jobs.

- `DISCOURSE_LOG_SIDEKIQ_INTERVAL`

  (seconds) Check running jobs periodically, and log their current duration. They will appear in the logs with `status:pending`. This is useful to track down jobs which take a long time, then crash sidekiq before completing.
2019-03-05 11:19:11 +00:00
Kris 73e4204d20 UX: Image preview resizer style 2019-03-04 21:59:58 -05:00
Tarek Khalil 079b0f4bff
FIX: Remove ignore user feature from `user-card-contents` component (#7104)
Based on our discussions, we want to have the `Ignore button will ONLY be on the User’s profile page`.
2019-03-04 15:21:45 +00:00
Arpit Jalan ad5f5b931d DEV: deprecate blank files for static modal pages 2019-03-04 15:05:33 +05:30
Joffrey JAFFEUX 2e881adb6e
FIX: select-kit perf and positioning improvements (#7093) 2019-03-04 10:30:22 +01:00
Joffrey JAFFEUX dc4001370c
FEATURE: displays groups in menu search (#7090) 2019-03-04 10:30:09 +01:00
Joffrey JAFFEUX 075b264338
DEV: replaces DOMNodeInserted by the better MutationObserver (#6884) 2019-03-04 10:28:59 +01:00
Arpit Jalan 824d9402a4 FIX: pending counts were not shown on invites tab 2019-03-04 14:14:13 +05:30
Maja Komel fea5d4f3ec FIX: any subcategory permissions are valid if everyone has access to parent category (#7097) 2019-03-04 14:49:26 +11:00
Joffrey JAFFEUX bb39a6f7d7 REFACTOR: topic-list-header-column (#7099) 2019-03-04 14:45:52 +11:00
Arpit Jalan 01e2180548 FIX: /signup and /password-reset direct links were broken 2019-03-04 09:02:22 +05:30
Jeff Atwood 9585e2dff2 change separator from | to • for editor image sizing 2019-03-03 17:55:21 -08:00
Gerhard Schlager 14f9e55977 FIX: Error when filtering site settings
Happened only when none of the logo settings had an image assigned.
2019-03-03 20:43:22 +01:00
Dan Ungureanu fd9671f7fe
DEV: Minor code improvements. 2019-03-02 19:07:54 +02:00
Sam 03a70ef69c FIX: allow underscore and dash in username search
_ and - are technically punctuations, but we allow them in usernames so
accept them in search
2019-03-01 15:23:45 +11:00
Sam cdf34657f6 FEATURE: focus on composer TEXTAREA when iPad has a physical keyboard
This disables a bunch of hacks that bypassed "focus" on iOS (cause focus
events that involve a virtual keyboard on iOS cause browser havoc unless
a physical keyboard is attached)

Also will focus on title on new topic
2019-03-01 11:31:52 +11:00
Dan Ungureanu 6bc8382555 FEATURE: Use smooth scrolling for J/K keyboard shortcuts. (#7084) 2019-03-01 09:31:40 +11:00
Vinoth Kannan be436066ff FIX: Prevent default event and stop bubbling up when card popup is closed in mobile 2019-03-01 01:42:17 +05:30
Penar Musaraj 64a3d63ddc DEV: Rename some icons with deprecated names 2019-02-28 13:03:14 -05:00
Maja Komel 612a0be085 FIX: don't add bottom padding for avatars in composer preview 2019-02-28 18:03:38 +01:00
David Taylor e67474daf4 UX: Don't link to theme source unless it's http(s) 2019-02-28 17:01:59 +00:00
Joffrey JAFFEUX 1cd64f68f1
FIX: staff/admin shouldn’t be able to create uncategorized topics (#7077) 2019-02-28 15:51:13 +01:00
David Taylor 3517103398 UX: Correct locale key for theme compatibility error 2019-02-28 14:40:33 +00:00
Arpit Jalan c02956e29c
FIX: when posts are moved to a message then small action post should not be publicly visible (#7085)
This fix is inspired from what we do in discourse-assigned plugin.
https://github.com/discourse/discourse-assign/blob/master/lib/topic_assigner.rb#L184
https://github.com/discourse/discourse-assign/blob/master/assets/javascripts/discourse-assign/initializers/extend-for-assigns.js.es6#L125-L133
2019-02-28 19:49:26 +05:30
Maja Komel bb5119b88f FIX: only profile owner can see links to watched/tracked/muted topics (#7083) 2019-02-28 14:58:49 +01:00
Joffrey JAFFEUX 883a18547e
FIX: shows invite panel on mobile from topic footer buttons (#7080) 2019-02-28 14:56:22 +01:00
David Taylor 6296554ed1 DEV: Add additional hook for theme-creator 2019-02-28 10:48:30 +00:00
Vinoth Kannan 0cc636f648 UX: Don't add padding bottom for emojis in composer preview 2019-02-28 15:53:21 +05:30
Maja Komel 97c0fd0909 FIX: styling for resizable image wrapper in editor preview 2019-02-28 10:24:43 +01:00
Sam 06abecdb41 FEATURE: on iPad bluetooth keyboard use ALT-ENTER for post submit
Command and Control can not be properly detected via JavaScript so lean on
Alt that can be detected.
2019-02-28 16:41:31 +11:00
Sam 0b86a99c39 FEATURE: allow iPad users to specify they have a physical keyboard
Sadly there is no clean way of detecting a keyboard is connected to an iPad

If the keyboard is connected we want to disable all the touch related hacks
on iOS

This allows iPad users to specify they have a keyboard connected. Setting
is per device.
2019-02-28 15:59:44 +11:00
Kris cafbb3aea7 UX: Use official Facebook logo 2019-02-27 09:52:06 -05:00
Tarek Khalil 986cc8a0fb FEATURE: Introduce Ignore user (#7072) 2019-02-27 14:49:07 +01:00
Joffrey JAFFEUX 5c476f639c
REFACTOR: user-invited-show (#7078) 2019-02-27 12:59:57 +01:00
Joffrey JAFFEUX 8ff3fc20a6
REFACTOR: tags-show (#7079) 2019-02-27 12:59:39 +01:00
Maja Komel 7d2ea2d4dd FEATURE: image resizing discoverability (#6804) 2019-02-27 11:46:16 +01:00
Dan Ungureanu f68a7a16a4 FIX: Use field name to name files in theme export. (#7009) 2019-02-27 10:45:22 +01:00
Maja Komel 6f427589b2 FIX: make it possible to use backup code everywhere where 2FA required (#7010) 2019-02-27 10:37:33 +01:00
Erick Guan e1d1073273 FIX: use * when apply italics in the editor instead of _ (#7063) 2019-02-27 10:36:14 +01:00
Régis Hanol 326d892f5e Aadd 'secondary_emails' field in users export
FIX: escape_comma wasn't working in CSV exports
FIX: group_names field wasn't properly serialized
2019-02-27 10:12:20 +01:00
Kris ef9b249cd2 UX: More consistent table header styles, removing duplicate styles 2019-02-26 21:40:17 -05:00
Kris 1d4e9b08ad UX: Don't override unset flair color 2019-02-26 12:49:54 -05:00
Vinoth Kannan 59c66fd226
REFACTOR: Improve the readability of code (#7076) 2019-02-26 23:03:49 +05:30
Joffrey JAFFEUX fbedaea5ed
FIX: prevents double network calls and other quirks on admin emails (#7074) 2019-02-26 17:53:52 +01:00
Davide Porrovecchio 75aaae5d5c FEATURE: Allow wildcard in allowed_user_api_auth_redirects setting (#6779) 2019-02-26 17:03:20 +01:00
Joffrey JAFFEUX 8c706b0ff7
fix tests (#7073) 2019-02-26 16:49:29 +01:00
Joffrey JAFFEUX 2a8da03951
FIX: prevents autocomplete from going over search input (#7075) 2019-02-26 15:48:02 +01:00
David Taylor a8ffc02d06 PERF: Reduce N+1s on theme admin page 2019-02-26 14:22:02 +00:00
Joffrey JAFFEUX d04c4bf8e7
UX: puts back share-panel as floating pane on post actions (#7066) 2019-02-26 14:15:25 +01:00
Arpit Jalan 6ea9f5c9c5 FIX: do not update tag name on /tags/intersection 2019-02-26 16:43:39 +05:30
Joffrey JAFFEUX 1cee8a86f6
fix prettier (#7071) 2019-02-26 11:24:02 +01:00
Joffrey JAFFEUX 7ccb0b882f
FIX: ensures topic’s category allows topics tags (#7060) 2019-02-26 11:21:55 +01:00
Joffrey JAFFEUX a206c7f5d5
FIX: attempts to fix an error with EXTEND_PROTOTYPES (#7067) 2019-02-26 11:04:05 +01:00
Joffrey JAFFEUX 71360436ff
FIX: users list show was loading multiple times with different params (#7058)
A first load was happening in route, which was setting properties on controller. These properties were observed on the controller and were triggering a reload of the AdminUser model.

Not only was it doing loading two times it was also sometimes resulting on the controller model refresh end to happen after route has been changed, resulting in a wrong model.
2019-02-26 10:43:24 +01:00
Vinoth Kannan ed0120171c FIX: Hide 'show associated accounts' button if moderators can't see emails
And minor prettier code alignments
2019-02-26 13:49:27 +05:30
Simon Cossar c742d42031 FIX: rtl topic progress wrapper position (#7070)
* Set left/right topic-progress-wrapper CSS from text-direction

* Remove unnecessary CSS rule
2019-02-25 20:56:52 -05:00
Kris d6875a77fb UX: Apply new-user color to full name and username 2019-02-25 17:09:41 -05:00
Kris 34d0cc6ad5 UX: Better alignment of similar topics in composer 2019-02-25 17:04:11 -05:00
Osama Sayegh d5efe2d7ee UX: make composer resize work on touch devices (#7068)
* UX: make composer resize work on touch devices

This also replaces a vendor dependency with a small built-in resize mechanism.

* Make blue bar's larger padding specific to touch devices
2019-02-26 08:04:14 +11:00
Robin Ward 90c09d17b6 FIX: Heisentest - don't memoize on a class variable
Repeated usage of the same class will have the same memoized results
even if the data has changed.
2019-02-25 14:49:01 -05:00
Gerhard Schlager dc961fecb9 FIX: Outgoing emails were not disabled after restoring backup 2019-02-25 16:07:24 +01:00
Joffrey JAFFEUX 5952a6c0ad
DEV: uses find() helper instead of this.$() in js tests (#7062) 2019-02-25 16:04:55 +01:00
Joffrey JAFFEUX c0dd171cf1
REFACTOR: bread-crumbs (#7064) 2019-02-25 14:51:14 +01:00
Joffrey JAFFEUX 6930706830
REFACTOR: new message route (#7061) 2019-02-25 14:01:00 +01:00
Arpit Jalan 91e771ece6 FIX: send test email doesn't show a status 2019-02-25 17:42:58 +05:30
Joffrey JAFFEUX 900e187627
DEV: removing blank files (#7057) 2019-02-25 09:52:44 +01:00
Joffrey JAFFEUX 919839fd97
FIX: allows {{d-button}} to set a form attribute (#7056)
This attribute is used when a submit button is out of a form. It makes it explicit which form this button is submitting.

It's currently used in our login modal form.
2019-02-25 09:49:49 +01:00
Kris 2d031a1beb UX: Improve moderator icon alignment 2019-02-22 21:29:39 -05:00
Joffrey JAFFEUX 87f4ee13ef
UX: puts more emphasis on the shared url on share panel (#7055) 2019-02-22 23:22:11 +01:00
David Taylor 260398d706 FIX: Live refresh parent themes when editing child themes 2019-02-22 21:13:07 +00:00
Jeff Wong 8be7878656 FEATURE: add ability to clear previously set mobile_view with mobile_view=auto 2019-02-22 10:44:49 -08:00
Joffrey JAFFEUX 8aca26cce3
FIX: allows right-click on post-date sharing link (#7054) 2019-02-22 15:18:05 +01:00
Vinoth Kannan d1bad881ea
FEATURE: Allow moderators to change topic timestamps (#7053) 2019-02-22 14:33:52 +05:30
Kris 87b5003453 UX: Increase width of hamburger menu to 320px 2019-02-21 21:52:21 -05:00
Kris f44ef82b53 UX: Better wrapping of group header elements 2019-02-21 21:42:39 -05:00
Sam 667d3a3fd6 PERF: include content-length header for CDN
Attempt to force NGINX to include content length when doing X-SendFile
This does not seem to be required when bypassing NGINX.

Without this header some CDNs may have issues caching
2019-02-22 11:21:07 +11:00
Sam 31d41f532e PERF: do not include suggested topics when loading new posts
When a new post is triggered via message bus post stream will attempt to load
it, previously the `/topic/TOPIC_ID/posts.json` would unconditionally include
suggested topics, this caused excessive load on the server.

New pattern defaults to exclude suggested and related topics from this API
unless people explicitly ask for suggested.
2019-02-22 10:37:18 +11:00
Penar Musaraj 74ed72e825 DEV: Remove `d-checkbox` component
Replaces the last occurrence of `d-checkbox` with a regular input element.

Includes a minor refactor of admin site text search.
2019-02-21 09:54:54 -05:00
Guo Xiang Tan 1dee71d760 UX: Disabled lightbox expand button when loading image meta. 2019-02-21 22:30:57 +08:00
Gerhard Schlager f8e498f6ad DEV: Fix random build error 2019-02-21 14:53:29 +01:00
Joffrey JAFFEUX 090acb5b11
FIX: s/isMessage/isPM (#7048)
Regression due to refactoring
2019-02-21 13:53:50 +01:00
Joffrey JAFFEUX 8d779db270
FIX: allows invite modal from topic-map post-actions (#7047) 2019-02-21 13:48:03 +01:00
Guo Xiang Tan 46e62c0d22
UX: Default user facing routes to `/g` instead of `/groups`. (#7042) 2019-02-21 13:44:25 +08:00
Sam 07b856700d REFACTOR: remove disallowEmails option from user-selector
Negative option was leading to a fair amount of confusion, going forward
if we want to allow selection of emails from user selector it must be
supplied with `allowEmails=true`

This corrects a regression in 1f4ace4f which broke invite by emails and
start PM to email
2019-02-21 16:37:26 +11:00
Sam 79841cf7dd FEATURE: add missing autocomplete suppressions
Following 1f4ace4f add a couple more autocomplete suppressions (in polls
and invite ui)
2019-02-21 16:37:26 +11:00
Guo Xiang Tan d3cd314a98 Make eslint happy. 2019-02-21 10:26:56 +08:00
Guo Xiang Tan 58b0e945bd
UX: Lightbox support for image uploader. (#7034) 2019-02-21 10:13:37 +08:00
Régis Hanol e3a23116d2
FIX: don't update gravatar if the user has no email 2019-02-20 22:34:43 +01:00
Penar Musaraj cc1f9e7be6 Fix share button in post menu 2019-02-20 16:27:59 -05:00
Joffrey JAFFEUX 353eeef72a
fix prettier offense (#7041) 2019-02-20 22:22:38 +01:00
Penar Musaraj cafe637407
UX: List popular themes and components in admin panel (#6997)
Reorganizes theme create/upload flows into one install flow
Adds quick list of popular themes/components with one-click installation
2019-02-20 14:58:31 -05:00
Penar Musaraj 4955ab1689 DEV: add replaceTagRenderer to pluginApi 2019-02-20 14:52:56 -05:00
Joffrey JAFFEUX 18296b4211
FIX: more reliable native sharing (#7039) 2019-02-20 20:43:48 +01:00
Joffrey JAFFEUX 9618300d69
s/share/nativeShare (#7038) 2019-02-20 20:03:30 +01:00
Joffrey JAFFEUX 994a09e5e8
FIX: stricter window.navigator.share check (#7037) 2019-02-20 19:40:51 +01:00
Joffrey JAFFEUX 2e0342dba7
UX: more spacing between social links (#7036) 2019-02-20 19:37:08 +01:00
Joffrey JAFFEUX 28c24631b8
FIX: ensures panel's shareUrl is not erased by topic's shareUrl (#7035) 2019-02-20 19:33:54 +01:00
Gerhard Schlager 66901f67f6 UX: Moderator post wasn't completely translatable 2019-02-20 16:37:47 +01:00
Joffrey JAFFEUX 04a63cfaaa
[WIP] FEATURE: merge share and invite actions together (#7021)
This commit also:
- removes [+ New Topic] behaviour from share, this feature has been duplicated in composer actions, months ago
- introduces our new experimental spacing standard for css: eg: `s(2)`
- introduces a new panel UI for modals
2019-02-20 15:42:44 +01:00
Gerhard Schlager 6a8007e5fb FEATURE: Improve handling of backup storage errors 2019-02-20 15:16:49 +01:00
Sam 33269c4172 FEATURE: do no search for groups unless a term is specified
Do not allow `/u/search/users.json` to list any group matches unless a
specific `term` is specified in the API call.

Adding groups should always be done when an actual search term exists,
blank search is only supported for users within a topic
2019-02-20 17:28:22 +11:00
Guo Xiang Tan 31ffa5f64e
UX: Allow users to see filename in image-uploader component. (#7022)
https://meta.discourse.org/t/downsides-of-the-new-logo-ui-in-site-settings/102247/23?u=tgxworld
2019-02-20 13:55:55 +08:00
Sam 1f4ace4f56 FEATURE: autocomplete usernames early in topic based on participation
Following this change when a user hits `@` and is replying to a topic they
will see usernames of people who were last seen and participated in the topic

This is somewhat experimental, we may tweak this, or make it optional.

Also, a regression in a423a938 where hitting TAB would eat a post you were writing:

Eg this would eat a post:

``` text
@hello, testing 123 <tab>
```
2019-02-20 13:34:43 +11:00
Sam 918a0ea3a4 FIX: use autocomplete="discourse" to disable Chrome address autofill
https://stackoverflow.com/a/47822599/17174

Chrome 63 and up start ignoring `autofill="off"`

Per: https://bugs.chromium.org/p/chromium/issues/detail?id=468153#c164

> The tricky part here is that somewhere along the journey of the web autocomplete=off become a default for many form fields, without any real thought being given as to whether or not that was good for users. This doesn't mean there aren't very valid cases where you don't want the browser autofilling data (e.g. on CRM systems), but by and large, we see those as the minority cases. And as a result, we started ignoring autocomplete=off for Chrome Autofill data

So to work around this decision we now explicitly say: autocomplete="discourse"
when we don't want Chrome to randomly fill in addressed (aka. always)
2019-02-20 10:15:59 +11:00
Jeff Wong 246997dbd9 FIX: an `<a>` with a target of _blank wants a new window 2019-02-19 14:44:30 -08:00
David Taylor 49e7073438 FIX: Hide advanced theme fields behind a flag, pending UI improvement 2019-02-19 22:25:00 +00:00
David Taylor d08939ab05 FIX: Should be possible to save an empty theme_field in the editor
Removing the theme_field JS object when the value was empty caused the server to maintain the previous value, making it impossible to delete the content of a field.
2019-02-19 21:49:31 +00:00
Gerhard Schlager 5d75bd4831 FIX: Don't try to rename group when username is taken
FIX: Always rename groups with the default locale instead of using the user's locale
2019-02-19 22:31:03 +01:00
David Taylor dbcf05d62c DEV: Code style improvements following review
Followup to 05ee1d1aba
2019-02-19 20:02:29 +00:00
David Taylor 7878e5007a
FIX: Refactor to prevent themes affecting core stylesheets (#7029)
If a theme setting contained invalid SCSS, it would cause an error 500 on the site, with no way to recover. This commit stops loading theme settings in the core stylesheets, and instead only loads the color scheme variables. This change also makes `common/foundation/variables.scss` available to themes without an explicit import.
2019-02-19 15:55:59 +00:00
Joffrey JAFFEUX 9ade04b709
FIX: removes legacy browsers-refresh button (#7028) 2019-02-19 16:38:21 +01:00
Gerhard Schlager 84c56e16f9 REFACTOR: Use keyword argument for fallback_to_english flag 2019-02-19 15:28:47 +01:00
David Taylor 05ee1d1aba
FEATURE: Added settings/translations support to theme editor UI (#7026)
- These advanced fields are hidden behind an 'advanced' button, so will not affect normal use
- The editor has been refactored into a component, and styling cleaned up so menu items do not overlap on small screens
- Styling has been added to indicate which fields are in use for a theme
- Icons have been added to identify which fields have errors
2019-02-19 12:56:01 +00:00
Joffrey JAFFEUX 0616837a5d
UX: moves wizard's "Finish" button to the left of back and next (#7027)
This was done to avoid clicking finish when clicking fast on next.
2019-02-19 13:32:01 +01:00
Joffrey JAFFEUX 8a4cd15e46
REFACTOR: topic model (#7020) 2019-02-19 10:13:46 +01:00
Joffrey JAFFEUX 15fd875855
REFACTOR: color-scheme-color model (#7019) 2019-02-19 09:31:26 +01:00
Joffrey JAFFEUX cba0dd33ee
REFACTOR: admin-customize-color (#7018) 2019-02-19 09:31:11 +01:00
Joffrey JAFFEUX 2c6bf184bc
REFACTOR: admin-badge-preview (#7017) 2019-02-19 09:30:52 +01:00
Joffrey JAFFEUX 3bf61fca66
REFACTOR: admin-user-field-item (#7016) 2019-02-19 09:30:38 +01:00
Joffrey JAFFEUX ee692414ce
REFACTORING: admin-edit-badge-groupings (#7015) 2019-02-19 09:30:24 +01:00
Vinoth Kannan 27e7f2bee0 DEV: call 'enqueue_hooks' method only if active webhooks exist 2019-02-19 12:43:08 +05:30
Vinoth Kannan f2c3415548 FIX: Should not generate payload until active webhooks are exist 2019-02-19 12:23:42 +05:30
Kris 4f5aebc338 UX: reduce subcategory badge spacing 2019-02-18 19:04:36 -05:00
Arpit Jalan 50f833def0 fix the build
JsPrettier on Sublime was failing because: https://github.com/jonlabelle/SublimeJsPrettier/issues/157#issuecomment-458175837
2019-02-18 11:52:11 +05:30
Arpit Jalan dc2776bcdd FIX: do not show "move to new PM" option to moderators 2019-02-18 11:35:00 +05:30
Jeff Atwood 052eaed16a lighten embed blockquote style for consistency 2019-02-17 21:00:46 -08:00
Jeff Atwood dfba36fdca remove bgcolor from embed quotes for consistency 2019-02-17 20:57:27 -08:00
Guo Xiang Tan 7da7a30e02 PERF: Restore `exists?` in favor of `blank?`.
Regression from dcd7b92532.
2019-02-18 10:04:21 +08:00
David Taylor f04471e422 REFACTOR: Proxy letter avatars in rails instead of nginx
Co-authored-by: Sam Saffron <sam.saffron@gmail.com>
Co-authored-by: David Taylor <david@taylorhq.com>

This gives more control over the request. In particular we can easily
lookup DNS dynamically, instead of only upon NGINX startup.
Previously, NGINX was looking up IP for the letter avatar service and
caching the CDN IP address, this caused issues if CDN changed IP, in
which letter avatars would be broken till a container restarted.

NGINX config has been updated to add caching. This change will require
a container rebuild.

The proxy will now function in development environments, so the patch
for `letter_avatar_proxy` has been removed.
2019-02-18 08:46:56 +11:00
Gerhard Schlager b0862bd15d FIX: Push notifications could fail with UnauthorizedRegistration
The webpush gem by default sets the expiration date of the JWT token to exactly 24 hours in the future. That's not really needed because the token isn't reused. And it might cause UnauthorizedRegistration if the server's clock isn't 100% correct, because the maximum allowed value is 24 hours.
2019-02-15 21:12:09 +01:00
Gerhard Schlager 17f1a76570 FIX: Delete push subscription on MismatchSenderId error
This should prevent repeated MismatchSenderId warnings when the VAPID keys have changed.
2019-02-15 21:12:09 +01:00
peterlamber 159dd69fcb UX: make adding permissions more visible and intuitive to click. (#6999) 2019-02-15 12:01:10 -05:00
Arpit Jalan 99c6db21e6
FEATURE: allow blocking emojis (#7011)
https://meta.discourse.org/t/blocking-emojis-wont-work/105853
2019-02-15 20:55:48 +05:30
Dan Ungureanu a423a9383f FIX: Stop autocomplete for invalid usernames. (#7005) 2019-02-15 11:29:26 +11:00
Sam f8b70f4ca3 FIX: unable to create new categories
Previous attempt at 70adb940 missed the critical "everyone" group from
staff, leading to a case where staff was no longer able to create categories
2019-02-15 10:24:29 +11:00
Kris 3d11064a33 UX: Reduce font size on about pages 2019-02-14 11:01:17 -05:00
Bianca Nenciu 70adb94008 SECURITY: Do not leak private group names. (#7008) 2019-02-14 15:35:58 +01:00
Régis Hanol fc14847c14 PERF: only require aws-sdk-sns gem when it's being used 2019-02-14 11:08:21 +01:00
Sam ebd4140492 FIX: logspam due to 404s on CSS files
We had a missing formats: string on our render partial that caused logs to
spam when CSS files got 404s.

Due to magic discourse_public_exceptions.rb was actually returning the
correct 404 cause it switched format when rendering the error.
2019-02-14 17:58:16 +11:00
Maja Komel 39522659a6 FIX: validate parent category/subcategories permissions
See: https://meta.discourse.org/t/subcategories-do-not-inherit-permissions-from-parent-category/17174/23 for more details

This ensures users with access to child category can always at least see parent
2019-02-14 16:38:52 +11:00
Penar Musaraj 090e9c8432
FIX: make composer full screen shortcut work when inputs have focus (#6907)
- Uses a Mousetrap plugin for global shortcuts
- Implemented for search `ctrl+alt+f` and composer fullscreen `shift+f11` shortcuts
2019-02-14 00:19:27 -05:00
Saurabh Patel ed6f4dfc40 FEATURE: trigger user profile create and update event (#6958)
Adds `user_profile_created` DiscourseEvent on profile creation and `user_profile_updated` on profile update
2019-02-14 15:45:12 +11:00
Arpit Jalan b651605d6e FIX: tags added while editing a pending approval topic do not show up (#6959) 2019-02-14 15:42:40 +11:00
Kris 37666c3d18 UX: Signup form labels were too constrained, minor cleanup 2019-02-13 21:07:34 -05:00
Vinoth Kannan 484bd82278 FIX: Add onceoff job to remove double quotes from s3 etags 2019-02-14 05:19:41 +05:30
Régis Hanol 0476169692 make prettier happy 2019-02-13 22:16:38 +01:00
Régis Hanol 94fe0af900 FIX: upload emojis sequentially to prevent rate limit 2019-02-13 22:07:37 +01:00
Régis Hanol 4d674acc25 FEATURE: AWS SNS bounce notifications webhooks 2019-02-13 21:26:40 +01:00
Joffrey JAFFEUX 560cc4e73e
FIX: sets categoryId but do not scope when replying as new topic (#7002) 2019-02-13 15:19:58 +01:00
Joffrey JAFFEUX fe4254b8f3
FIX: reverse consolidated pageviews stacked chart order (#7001) 2019-02-13 12:24:18 +01:00
Sam 641b079c78 FIX: add support for missing verbs in user api key
Previously "write" scope was missing put and delete verbs which should be
allowed.

Also closes: #6982
2019-02-13 15:49:43 +11:00
Jeff Wong 1328a127ee FIX: translate bootbox confirmation dialog (#6981) 2019-02-13 14:04:56 +11:00
Jeff Wong 467cfc9e08 FIX: remove extra periods (#6998)
Periods are belong in the translation files not in our templates, if we have them in the templates sentences can not be localized properly.
2019-02-13 12:54:34 +11:00
Joffrey JAFFEUX 47fe34d794 FEATURE: makes create-account userfields using dropdowns accessible (#6991) 2019-02-13 12:52:55 +11:00
Kris 3da35081e5 UX: Embedded post collapse button hover color fix 2019-02-12 17:21:33 -05:00
Robin Ward c23411cc69 FIX: Heisentest - suspicious logins report was not ordered by date
The specs needed an order even though none was supplied.
2019-02-12 13:17:29 -05:00
David Taylor 86fe423f5e FIX: Clear the cache after destroying theme_fields 2019-02-12 16:39:40 +00:00
David Taylor 91f0468f4e FIX: Allow unbaked theme fields to be destroyed
The after_commit hook was attempting to re-bake theme_fields after they were destroyed, which caused an exception to be thrown
2019-02-12 16:14:43 +00:00
David Taylor 59640ef373 DEV: Add additional hooks for theme-creator plugin 2019-02-12 14:17:34 +00:00
Régis Hanol b8b1759de9 UX: show envelope when tag is only used in PM
UX: use regular envelope instead of solid envelope

REFACTOR: %s/enveloppe/envelope/g
2019-02-12 11:34:25 +01:00
Dan Ungureanu 90ce448675 PERF: Cache build_not_found_page 2019-02-12 21:20:33 +11:00
Jeff Wong d997b01a24 FIX: Scale down swipe in detection to 20px from edge of the screen
...and slightly increase velocity required for menu actions
2019-02-11 21:22:50 -08:00
Jeff Wong c3cbff55be FIX: only respond to menu open swipes on Andorid 2019-02-11 20:56:25 -08:00
Vinoth Kannan e0c16d3a8a minor refactoring to improve code readability 2019-02-11 17:24:02 +05:30
Arpit Jalan dcd7b92532 FIX: some posters were not getting added to topic_allowed_users when moving posts to a new PM
If a user posted twice in a topic then subsequent posters were not getting added as topic_allowed_users.
2019-02-11 17:05:21 +05:30
Vinoth Kannan 2c12336c6b FIX: Display post updated date in non-JS view for crawler 2019-02-11 16:48:22 +05:30
Penar Musaraj c50db76f5d FIX: do not treat TIFF, BMP, WEBP as images
Treating TIFF and BMP as images cause us to add them to IMG tags, this is very inconsistent across browsers.

You can still upload these files they will simply not be displayed in IMG tags.
2019-02-11 16:28:43 +11:00
Robin Ward c719658f9f `human?` helper method on a user
This is cleaner than hard coding `id > 0` in ruby code.
2019-02-08 13:34:54 -05:00
David Taylor 60fa4fe692 DEV: Make interface route/controller more resilient to missing values 2019-02-08 16:54:15 +00:00
Kris 0d1fa54957 compensate for border overhang in category list alignment 2019-02-08 11:49:06 -05:00
Robin Ward 72b5ab0454 Don't wrap exceptions in test mode unless specifically requested.
This helps debugging reports with invalid SQL, which would otherwise
return no results instead of a useful error message while running
tests.
2019-02-08 11:26:26 -05:00
Kris 7c55de6e6f UX: Alignment fix for names with emoji 2019-02-08 11:07:04 -05:00
David Taylor 747fea8458 DEV: Remove unused import 2019-02-08 16:05:39 +00:00
David Taylor 95eb4c67f2 FIX: Allow reverting theme/text settings from cookie back to default 2019-02-08 15:39:44 +00:00
Penar Musaraj 62043e6904 UX: Hide branch/private repo options in admin theme import modal 2019-02-08 10:17:29 -05:00
Régis Hanol 7aecd3c2f5 Update app/services/user_silencer.rb
Co-Authored-By: eviltrout <robin.ward@gmail.com>
2019-02-08 08:50:50 -05:00
Robin Ward bc3efab816 FIX: When disagreeing with a flag that silenced a user, unsilence them
Previously it would unhide their post but leave them silenced.

This fix also cleans up some of the helper classes to make it easier
to pass extra data to the silencing code (for example, a link to the
post that caused the user to be silenced.)

This patch also refactors the auto_silence specs to avoid using
stubs.
2019-02-08 08:50:50 -05:00
Joffrey JAFFEUX 44d9bc12c9
FEATURE: color-palettes component (#6992) 2019-02-08 14:01:14 +01:00
David Taylor babd80dfd1 FIX: Allow subexpressions in raw handlebars helpers
Helpers registered via `registerUnbound` did not receive parameters if they were subexpressions.
For example: `{{helper1 key=(helper2 value)}}`
2019-02-08 12:58:10 +00:00
David Taylor 95b5c5898e FIX: Prevent duplicate params for raw template theme handlebars helpers 2019-02-08 12:54:00 +00:00
Joffrey JAFFEUX e3324737ee
FIX: position invite footer button before archive (#6990) 2019-02-08 12:21:51 +01:00
Gerhard Schlager e9ec5238fc DEV: Remove ignored columns 2019-02-08 12:12:38 +01:00
Joffrey JAFFEUX 8a152566e3
FIX: improves positioning of footer buttons on mobile (#6989) 2019-02-08 12:09:56 +01:00
Joffrey JAFFEUX e54612c914
fix tests (#6987) 2019-02-08 11:38:15 +01:00
Kris f849169619 UX: Modifications to admin/customize layout 2019-02-07 22:27:35 -05:00
Gerhard Schlager cbedb6a1ac FEATURE: Hidden site setting to always include topic excerpt 2019-02-07 22:45:21 +01:00
Penar Musaraj 2a007bafa2 FEAT: Allow image resize by width or height
`|150x` resizes to 150px wide + auto-height. `x150` resizes to 150px tall and auto-width.

Resize value can be from 1 to 999 (incl. for percentages).
2019-02-07 15:04:39 -05:00
Joffrey JAFFEUX c0ccf21970
FIX: hides topic-footer-mobile-dropdown when no content (#6985) 2019-02-07 18:37:20 +01:00
Joffrey JAFFEUX 6c195640b9
FEATURE: adds an API to register topic footer buttons 2019-02-07 14:43:33 +01:00
Joffrey JAFFEUX 92c52c0724
FEATURE: displays report description when hovering activity metrics (#6983) 2019-02-07 13:33:05 +01:00
Kris 1cacfddda4 Prevent usercard badge section from overflowing 2019-02-06 22:39:10 -05:00
Kris 984f1d96b0 Add max-width so long badges don't force short badges to truncate 2019-02-06 20:51:54 -05:00
Kris 94f8c4ecac UX: Truncate (don't wrap) badges in user cards if the text is long 2019-02-06 20:18:12 -05:00
Dan Ungureanu fc4c015bee FEATURE: Shortcut 'g s' goes to first suggested topic 2019-02-07 08:43:07 +11:00
Kris 56a9f777cb UX: Turn off autocomplete on composer title 2019-02-06 14:37:29 -05:00
Arpit Jalan ab2c2ea605
FIX: validate Invite email against `EmailValidator.email_regex` (#6975) 2019-02-06 22:38:06 +05:30