Commit Graph

1926 Commits

Author SHA1 Message Date
Joffrey JAFFEUX 731f61a818
UX: modifies admin email template to have more space for the form (#7993) 2019-08-12 10:27:25 +02:00
Joffrey JAFFEUX d8dfa87f24
UX: improves dates on reports export UI (#7971)
- show it's UTC
- allows future
- shows date in more human readable format
2019-08-06 08:41:21 +02:00
David Taylor 06e757245f FEATURE: Add a test facility to the watched words admin interface 2019-08-02 15:29:12 +01:00
Joe 8531056ad5
UX: style fixes for admin digest email preview page (#7959)
* code formatting: Nothing changed in this commit except code formatting

* adds classes to digest refresh button

* adds margins to digest refresh button

* removes line break tags and uses CSS margins instead
2019-08-01 14:37:42 +08:00
Neil Lalonde 9656a21fdb
FEATURE: customization of html emails (#7934)
This feature adds the ability to customize the HTML part of all emails using a custom HTML template and optionally some CSS to style it. The CSS will be parsed and converted into inline styles because CSS is poorly supported by email clients. When writing the custom HTML and CSS, be aware of what email clients support. Keep customizations very simple.

Customizations can be added and edited in Admin > Customize > Email Style.

Since the summary email is already heavily styled, there is a setting to disable custom styles for summary emails called "apply custom styles to digest" found in Admin > Settings > Email.

As part of this work, RTL locales are now rendered correctly for all emails.
2019-07-30 15:05:08 -04:00
Joffrey JAFFEUX fe7f0982af
DEV: attemps to limit Discourse.User.current() usage (#7943) 2019-07-26 11:20:11 +02:00
Osama Sayegh f14c6d81f4
FEATURE: Watched words improvements (#7899)
This commit contains 3 features:

- FEATURE: Allow downloading watched words
This introduces a button that allows admins to download watched words per action in a `.txt` file.

- FEATURE: Allow clearing watched words in bulk
This adds a "Clear All" button that clears all deleted words per action (e.g. block, flag etc.)

- FEATURE: List all blocked words contained in the post when it's blocked
When a post is rejected because it contains one or more blocked words, the error message now lists all the blocked words contained in the post.

-------

This also changes the format of the file for importing watched words from `.csv` to `.txt` so it becomes inconsistent with the extension of the file when watched words are exported.
2019-07-22 14:59:56 +03:00
Roman Rizzi eb26bee046
DEV: group_list site settings should store IDs instead of group names (#7860)
* DEV: group_list site settings should store IDs instead of group names

* Ship site setting to know when we should migrate group_list settings

* Migrate existing group_list site settings

* Bump migration timestamp and don't set null when migrating is not possible.
2019-07-19 15:17:58 -03:00
Joffrey JAFFEUX 8dfd0e0374 DEV: uses private API for currentPath (#7911)
* DEV: uses with private API for currentPath

router.currentRouteName as a slightly different API and application.currentPath is deprecated

* another fix
2019-07-18 17:00:39 -04:00
Joffrey JAFFEUX 9cdc059a99
fix tests (#7908) 2019-07-18 19:48:12 +02:00
Joffrey JAFFEUX f9c7d5a4bd DEV: removes application.currentPath deprecation (#7905)
See https://deprecations.emberjs.com/v3.x#toc_application-controller-router-properties for more context
2019-07-18 13:29:37 -04:00
Joffrey JAFFEUX 617c74bc79 DEV: remove .property() deprecations (#7906)
More context at https://deprecations.emberjs.com/v3.x#toc_function-prototype-extensions-property
2019-07-18 13:28:23 -04:00
Neil Lalonde 194a2b612f FIX: string that can't be translated in watched words UI 2019-07-18 11:07:02 -04:00
Roman Rizzi f5c707c97a
FEATURE: Gz to zip for exports (#7889)
* Revert "Revert "FEATURE: admin/user exports are compressed using the zip format (#7784)""

This reverts commit f89bd55576.

* Replace .tar.zip with .zip
2019-07-18 09:34:48 -03:00
Penar Musaraj a571efba35
FIX: Rename deprecated icons, allow custom icons in badges
- adds a migration renaming FA4 icon names in badges
- allows all icons to be used in badges (previously was limited to icons prefixed with fa-)
- renames remaining FA 4.7 icons equivalents
2019-07-16 11:13:44 -04:00
Joffrey JAFFEUX b3eb67976d
DEV: Upgrades to Ember 3.10 (#7871)
Co-Authored-By: majakomel <maja.komel@gmail.com>
2019-07-16 12:45:15 +02:00
Osama Sayegh 6515ff19e5
FEATURE: Allow customization of robots.txt (#7884)
* FEATURE: Allow customization of robots.txt

This allows admins to customize/override the content of the robots.txt
file at /admin/customize/robots. That page is not linked to anywhere in
the UI -- admins have to manually type the URL to access that page.

* use Ember.computed.not

* Jeff feedback

* Feedback

* Remove unused import
2019-07-15 20:47:44 +03:00
Guo Xiang Tan 4b0cf7f6dd SECURITY: XSS when displaying watched words in admin panel.
The XSS here is only possible if CSP is disabled. Low impact since CSP
is enabled by default in SiteSettings.
2019-07-15 10:55:50 +08:00
romanrizzi f89bd55576 Revert "FEATURE: admin/user exports are compressed using the zip format (#7784)"
This reverts commit 8b2580e20f.
2019-07-10 11:38:51 -03:00
Roman Rizzi 8b2580e20f
FEATURE: admin/user exports are compressed using the zip format (#7784)
* FEATURE: admin/user exports are compressed using the zip format

* Update translations. Theme exporter now exports .zip file. Theme importer supports .zip and .gz files

* Fix controller test, updated locale and skip saving the csv export to disk
2019-07-10 11:13:03 -03:00
Penar Musaraj f4dc6de9f1 FIX: Clear theme editor content on switching tabs
Issue happens when sending a null value to ACE Editor.
Fixed by sending an empty string to ACE instead of null.
2019-07-08 20:06:56 -04:00
Arpit Jalan bd084b2147 FIX: do not show invite button if local logins are disabled 2019-07-05 15:16:20 +05:30
Joffrey JAFFEUX f9f1df7611
DEV: prevents reports key to be time dependant when testing (#7850) 2019-07-03 15:43:01 +02:00
Bianca Nenciu bfdf740a05 FIX: Show 'Export' button for all tabular reports. (#7838) 2019-07-03 14:47:36 +02:00
Osama Sayegh 3d64532273 FEATURE: allow disabling theme components (#7812)
This allows you to temporarily disable components without having to remove them from a theme. 

This feature is very handy when doing quick fix engineering.
2019-07-03 18:18:11 +10:00
Joffrey JAFFEUX 72441e2c7c
FIX: page starts at 1 (#7844) 2019-07-02 17:26:23 +02:00
Arpit Jalan ccb3ba509d
FIX: creating new badge is failing on empty SQL query (#7837) 2019-07-02 15:12:53 +05:30
Osama Sayegh f1c67729de Different fix (#7815) 2019-07-02 11:53:16 +10:00
Joffrey JAFFEUX 11ae5c78db
FEATURE: adds infite scroll on admin users list page (#7821) 2019-07-01 11:00:06 +02:00
Joffrey JAFFEUX 61438c825a
fix prettier (#7823) 2019-06-28 09:36:38 +02:00
Bianca Nenciu b2eb0f4ad6 FEATURE: Export any type of report supporting table mode. (#7662) 2019-06-28 08:50:31 +02:00
Joffrey JAFFEUX c63268467e
DEV: prettier 1.18.2 (#7810) 2019-06-26 17:09:52 +02:00
Joffrey JAFFEUX 7c9d62c280
FIX: prevents failure when TL was mutated on internal object (#7808) 2019-06-26 14:51:45 +02:00
Penar Musaraj e51de4cc25
FEATURE: Add endpoint to individually update a theme setting (#7789)
- also adds a new staff action type called "change theme setting" for easier logging of staff changes to theme settings
2019-06-21 13:49:14 -04:00
Penar Musaraj 0e26c57afa FIX: Do not refresh all settings on save for all settings, limit to only a few
- Followup to 0e303c7f5d

- Automatically reloads site settings after saving only for the logo, logo_small and large_icon settings.
2019-06-20 10:57:31 -04:00
Guo Xiang Tan 2265c5102f DEV: Remove unnecessary condition.
Follow up to 21876d46d6.
2019-06-06 15:55:49 +08:00
Guo Xiang Tan 21876d46d6 DEV: Missing loading spinner for staff action logs.
Follow up to e0c821ebb0.
2019-06-06 15:41:55 +08:00
Bianca Nenciu e0c821ebb0 FEATURE: Make staff action logs page support infinite loading 2019-06-06 13:02:53 +10:00
Joffrey JAFFEUX 9585a16264
FIX: ensures correct i18n key is used (#7686) 2019-06-04 11:22:44 +02:00
Joffrey JAFFEUX 4283281397
FIX: ensures we have data to compute average (#7685) 2019-06-04 11:21:55 +02:00
Joffrey JAFFEUX b79d02ff48
FEATURE: displays average for 2 columns tables which support average 2019-06-04 11:08:26 +02:00
Penar Musaraj 16982d2a69
Update UI for wizard themes further reading step (#7669) 2019-06-03 10:47:17 -04:00
Joffrey JAFFEUX 6decdfce5c
DEV: reduces memory footprint of tests - step 1 (#7591) 2019-05-28 12:15:12 +02:00
Robin Ward d95a68b837 FEATURE: When suspending a user, allow the Delete + Replies action
Previously you could only delete the post
2019-05-27 12:27:16 -04:00
Joffrey JAFFEUX 395f0ca126
FIX: attempts to prevent stacked-chart from being cut off (#7608) 2019-05-27 15:43:27 +02:00
Joffrey JAFFEUX d93f753b17
apply prettier on gigantic find and replace (#7604) 2019-05-27 10:42:53 +02:00
Joffrey JAFFEUX bfea922167
DEV: global s/this.get\("(\w+)"\)/this.$1 (#7592) 2019-05-27 10:15:39 +02:00
Kris dbd14a805c UX: Wrap long names on user admin page 2019-05-24 13:39:16 -04:00
David Taylor 5666316285 FEATURE: Display 'last updated' on dashboard, improve release notes link (#7560) 2019-05-17 15:42:45 +10:00
Régis Hanol a5a4f9dc1a
DEV: make prettier happy
(cc @jjaffeux)
2019-05-16 11:38:47 +02:00
Joffrey JAFFEUX d47bf8b6c4
SECURITY: updates lodash from 1.3.0 to 4.17.5 (#7546) 2019-05-16 10:34:19 +02:00
Régis Hanol 501bee56b7 Make prettier happy 2019-05-15 23:46:50 +02:00
Régis Hanol db89722a98 UX: ignore leading/trailing whitespaces in site settings search 2019-05-15 22:22:20 +02:00
Joffrey JAFFEUX b8db702a02
REFACTOR: admin-user-index route (#7534) 2019-05-13 17:04:41 +02:00
Joffrey JAFFEUX df18243827
FIX: prevents exception if report doest define filters (#7532) 2019-05-13 13:34:28 +02:00
Penar Musaraj a859ddc77e Improve theme/component delete modal warning 2019-05-10 14:14:12 -04:00
Arpit Jalan ed70595314 UX: add information about the use of permalinks 2019-05-07 17:13:26 +05:30
Joffrey JAFFEUX 4bbb34f7cb
REFACTOR: admin-user (#7475) 2019-05-07 10:53:21 +02:00
Joffrey JAFFEUX f73ed45429
REFACTOR: color-scheme model (#7477) 2019-05-07 10:51:52 +02:00
Joffrey JAFFEUX 9507eff927
REFACTOR: resumable-upload (#7474) 2019-05-07 10:51:11 +02:00
Guo Xiang Tan abbc639e0d FIX: Only unregister service workers that belongs to Discourse. 2019-05-07 13:08:06 +08:00
Penar Musaraj b948d97c8f
FEATURE: Show diff of local changes before updating remote theme (#7443) 2019-05-02 21:43:54 -04:00
Joffrey JAFFEUX 75591664e7
FIX: better handling of category filter deselection (#7468) 2019-05-02 10:03:12 +02:00
David Taylor 0e303c7f5d
FEATURE: Automatically generate optimized site metadata icons (#7372)
This change automatically resizes icons for various purposes. Admins can now upload `logo` and `logo_small`, and everything else will be auto-generated. Specific icons can still be uploaded separately if required.

## Core

- Adds an SiteIconManager module which manages automatic resizing and fallback

- Icons are looked up in the OptimizedImage table at runtime, and then cached in Redis. If the resized version is missing for some reason, then most icons will fall back to the original files. Some icons (e.g. PWA Manifest) will return `nil` (because an incorrectly sized icon is worse than a missing icon). 

- `SiteSetting.site_large_icon_url` will return the optimized version, including any fallback. `SiteSetting.large_icon` continues to return the upload object. This means that (almost) no changes are required in core/plugins to support this new system.

- Icons are resized whenever a relevant site setting is changed, and during post-deploy migrations

## Wizard

- Allows `requiresRefresh` wizard steps to reload data via AJAX instead of a full page reload

- Add placeholders to the **icons** step of the wizard, which automatically update from the "Square Logo"

- Various copy updates to support the changes

- Remove the "upload-time" resizing for `large_icon`. This is no longer required.

## Site Settings UX

- Move logo/icon settings under a new "Branding" tab

- Various copy changes to support the changes

- Adds placeholder support to the `image-uploader` component

- Automatically reloads site settings after saving. This allows setting placeholders to change based on changes to other settings

- Upload site settings will be assigned a placeholder if SiteIconManager `responds_to?` an icon of the same name

## Dashboard Warnings

- Remove PWA icon and PWA title warnings. Both are now handled automatically.

## Bonus

- Updated the sketch logos to use @awesomerobot's new high-res designs
2019-05-01 14:44:45 +01:00
Arpit Jalan c6409fd2cc FIX: pass correct date arguments to server when exporting CSV 2019-05-01 10:46:30 +05:30
Arpit Jalan 002e1f560a FIX: initialize empty object if no custom filters are present 2019-05-01 10:27:19 +05:30
Neil Lalonde a00354f11f Prettier site-settings/group-list.js.es6 2019-04-29 16:26:13 -04:00
Neil Lalonde 1ba72ccab8 DEV: add site setting type group_list for a list of groups
Add a js test
2019-04-29 16:15:22 -04:00
Joffrey JAFFEUX 286f2abc65
FIX: prevents exception when clicking directly on site text 2019-04-29 12:07:30 +02:00
Joffrey JAFFEUX bcca2b5d73
FEATURE: initial implementation of generic filters for reports 2019-04-26 12:17:10 +02:00
Maja Komel 4b455e741e DEV: Ember 3.8.0
Co-Authored-By: majakomel <maja.komel@gmail.com>
2019-04-26 12:16:21 +02:00
Guo Xiang Tan 3ac18b92b3 UX: Editing theme name stays active when switching themes.
* Also fix length of input field.
2019-04-23 14:57:14 +08:00
Dannii Willis 16bfc29164 Move the trend icons on the admin dashboard inside the span (#7367)
so that it will have the tooltip as well
2019-04-17 18:11:01 +10:00
Guo Xiang Tan 347663e852 UX: Switch ellipsis direction when expanding web hook event details. 2019-04-16 14:28:23 +08:00
David Taylor 268d4d4c82
FEATURE: Multiple SCSS file support for themes (#7351)
Theme developers can include any number of scss files within the /scss/ directory of a theme. These can then be imported from the main common/desktop/mobile scss.
2019-04-12 11:36:08 +01:00
Roman Rizzi 536b90e0ef
FEATURE: Support searching custom staff actions (#7346) 2019-04-10 09:53:17 -03:00
Kris df85d4593e UX: Unify admin intro styles for badges/customize, improve mobile 2019-04-09 20:32:24 -04:00
Joffrey JAFFEUX a89c90ed5d
FIX: removes link to old dashboard (#7341) 2019-04-09 09:24:41 +02: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
Robin Ward 9c8cc73c39 UX: Show user fields when reviewing a user 2019-04-04 14:45:40 -04: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
Joffrey JAFFEUX e986e96227
DEV: removes old dashboard (#7295) 2019-04-01 12:39:49 +02:00
Robin Ward 67454c71c9 FIX: Missing translations for agree/disagree details 2019-03-29 14:14:59 -04:00
Guo Xiang Tan 8cfd887f33 Make eslint happy. 2019-03-29 12:59:40 +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 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
Robin Ward 8c98c18c2b FIX: Remove old flagging scss, fix more linting 2019-03-28 13:48:35 -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
Joffrey JAFFEUX 675d950eab
FIX: corrects link to moderators_activity report (#7265) 2019-03-27 10:14:42 +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
Joffrey JAFFEUX 8fb63b2706
FEATURE: unified popover implementation (#7244) 2019-03-26 15:43:27 +01:00
Gerhard Schlager 60e6070c27 UX: Show spinner during text replacement 2019-03-25 16:47:55 +01:00
Tim Lange da187f0967 FIX: Clear unsaved groups when switching user (#7236) 2019-03-22 12:46:36 +01:00
Maja Komel 34730a0b16 UX: show if webhook is disabled (#7217)
+ show in staff logs when webhook is created/updated/destroyed
2019-03-21 16:13:09 +01:00
Tim Lange d16a0db4e1 UX: Enabled sorting for more columns in admin user list (#7208) 2019-03-21 17:16:58 +08:00
Gerhard Schlager 41c7423985 UX: Use a less technical term ("replace") for reseeding (#7223) 2019-03-21 16:22:07 +11:00
Maja Komel f3d0d8fe7d Upgrade to Ember 3.7.0 2019-03-20 14:43:25 +01:00
Gerhard Schlager 3fd04df781
FEATURE: Locale support for seeded categories and topics (#7110) 2019-03-18 21:09:13 +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
Gerhard Schlager c34a6ba674 REFACTOR: Rename site settings to make them less confusing 2019-03-14 13:40:14 +01: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
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
venarius dc4541a95c FIX: Text content search warning if more than 50 results 2019-03-11 12:56:15 -04:00
Arpit Jalan 05ebb52ec4
FEATURE: defer flags when deleting child replies (#7111) 2019-03-06 14:32:25 +05:30
Penar Musaraj 64a3d63ddc DEV: Rename some icons with deprecated names 2019-02-28 13:03:14 -05:00
David Taylor e67474daf4 UX: Don't link to theme source unless it's http(s) 2019-02-28 17:01:59 +00:00
David Taylor 3517103398 UX: Correct locale key for theme compatibility error 2019-02-28 14:40:33 +00:00
David Taylor 6296554ed1 DEV: Add additional hook for theme-creator 2019-02-28 10:48:30 +00:00
Joffrey JAFFEUX fbedaea5ed
FIX: prevents double network calls and other quirks on admin emails (#7074) 2019-02-26 17:53:52 +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
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
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 46e62c0d22
UX: Default user facing routes to `/g` instead of `/groups`. (#7042) 2019-02-21 13:44:25 +08: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
Gerhard Schlager 6a8007e5fb FEATURE: Improve handling of backup storage errors 2019-02-20 15:16:49 +01: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
David Taylor dbcf05d62c DEV: Code style improvements following review
Followup to 05ee1d1aba
2019-02-19 20:02:29 +00:00
Joffrey JAFFEUX 9ade04b709
FIX: removes legacy browsers-refresh button (#7028) 2019-02-19 16:38:21 +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 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
David Taylor 59640ef373 DEV: Add additional hooks for theme-creator plugin 2019-02-12 14:17:34 +00:00
Penar Musaraj 62043e6904 UX: Hide branch/private repo options in admin theme import modal 2019-02-08 10:17:29 -05:00
Joffrey JAFFEUX 44d9bc12c9
FEATURE: color-palettes component (#6992) 2019-02-08 14:01:14 +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
Joffrey JAFFEUX 92c52c0724
FEATURE: displays report description when hovering activity metrics (#6983) 2019-02-07 13:33:05 +01:00
Kris a52b2c9625 UX: Moving the create theme buttons, adding buttons to theme index 2019-02-05 21:40:17 -05:00
David Taylor eb617dea4b DEV: Run prettier on `report.js.es6`
The prettier version I was running was different to the CI pipeline
2019-02-01 13:22:31 +00:00
David Taylor 5c9426be48 SECURITY: Escape HTML in dashboard report tables 2019-02-01 13:10:59 +00:00
Penar Musaraj 3500acf2f6 FIX: refresh admin/customize/themes route after import
Fixes an issue where the imported color schemes of a theme were not available immediately in the UI.
2019-01-31 14:29:09 -05:00
Kris 94f16ba931 UX: Make button icons use lighter color instead of opacity 2019-01-31 13:59:49 -05:00
Kris f7deb52c90 FIX: Class name for external-link on customize page 2019-01-28 17:15:36 -05:00
David Taylor a48731e359
FEATURE: Support additional metadata in theme about.json (#6944)
New `about.json` fields (all optional):
 - `authors`: An arbitrary string describing the theme authors
 - `theme_version`: An arbitrary string describing the theme version
 - `minimum_discourse_version`: Theme will be auto-disabled for lower versions. Must be a valid version descriptor.
 - `maximum_discourse_version`: Theme will be auto-disabled for lower versions. Must be a valid version descriptor.

A localized description for a theme can be provided in the language files under the `theme_metadata.description` key

The admin UI has been re-arranged to display this new information, and give more prominence to the remote theme options.
2019-01-25 14:19:01 +00:00
Vinoth Kannan c88fd49591 DEV: refactor user preferences path method 2019-01-24 18:39:13 +05:30
Vinoth Kannan b9bf751b88 FIX: link to the user preferences page is incorrect in user admin page 2019-01-24 18:31:00 +05:30
Joffrey JAFFEUX bd31423137
DEV: refactoring admin-logs-screened-ip-addresses (#6932) 2019-01-23 17:40:37 +01:00
Joffrey JAFFEUX 0aa049791e
DEV: refactoring admin-backups-index (#6933) 2019-01-23 17:40:24 +01:00
Joffrey JAFFEUX 60974932c4
DEV: refactoring api-keys (#6931) 2019-01-23 17:40:05 +01:00
David Taylor afd449089f
FEATURE: Import and export themes in a .tar.gz format (#6916) 2019-01-23 14:40:21 +00:00
Joe d720215183 UX: admin badge page improvements 2019-01-23 11:29:51 +01:00
David Taylor 2e59a37687
FEATURE: List unused theme components (#6924) 2019-01-23 09:20:13 +00:00
Penar Musaraj 9886934ef5 DEV: fix some deprecated SVG icon refs 2019-01-22 14:42:00 -05:00
Kris 66f6382090 FIX: Icon missing due to typo 2019-01-22 13:01:21 -05:00
Joffrey JAFFEUX fc710de3ab
DEV: refactoring admin user index (#6927) 2019-01-22 16:44:55 +01:00
Joffrey JAFFEUX bce9c37f15
DEV: refactoring permalink-form (#6925) 2019-01-22 15:09:21 +01:00
Joffrey JAFFEUX ea8373351b
DEV: refactoring ip-lookup (#6923) 2019-01-22 15:09:04 +01:00
Joffrey JAFFEUX 80d42b4ea2
icons deprecations fixes (#6920) 2019-01-22 12:02:02 +01:00
Joffrey JAFFEUX 9148f7675b
FIX: better handling of resizing in stacked charts (#6921) 2019-01-22 11:20:50 +01:00
Joffrey JAFFEUX 7161304842
minor cosmetic improvements to charts (#6919) 2019-01-22 10:22:41 +01:00
Joffrey JAFFEUX b1b27d9f7b
FEATURE: add total on stacked-chart tooltip (#6917) 2019-01-22 09:57:34 +01:00
Joffrey JAFFEUX 3e1e9fce7e
FIX: better legend labels for stacked-charts (#6914) 2019-01-21 17:10:10 +01:00
Joffrey JAFFEUX a9edcb2e10
fixes few icons deprecations warnings (#6915) 2019-01-21 16:56:05 +01:00
Joffrey JAFFEUX b95165b838
FEATURE: adds a new chart report to track pageviews (#6913) 2019-01-21 15:17:04 +01:00
Joffrey JAFFEUX 52f2e0d6b9
SECURITY: fix possible XSS with badges (#6912) 2019-01-21 13:08:26 +01:00
Joffrey JAFFEUX 502b1316d0
DEV: s/this._super()/this._super(...arguments) (#6908) 2019-01-19 10:05:51 +01:00
Joffrey JAFFEUX 7908a522a0
FIX: postLabel was not working for totals (#6904) 2019-01-18 17:06:43 +01:00
Penar Musaraj 3501533a2b DEV: unpin Prettier version, apply to YAML files
We had Prettier pinned because of https://github.com/prettier/prettier/issues/5529. Since that bug is fixed, unpinning.

Prettier now supports YAML, so this applies Prettier to all .yml except for translations, which should not be edited directly anyway.
2019-01-17 13:05:39 -05:00
David Taylor 880311dd4d
FEATURE: Support for localized themes (#6848)
- Themes can supply translation files in a format like `/locales/{locale}.yml`. These files should be valid YAML, with a single top level key equal to the locale being defined. For now these can only be defined using the `discourse_theme` CLI, importing a `.tar.gz`, or from a GIT repository.

- Fallback is handled on a global level (if the locale is not defined in the theme), as well as on individual keys (if some keys are missing from the selected interface language).

- Administrators can override individual keys on a per-theme basis in the /admin/customize/themes user interface.

- Theme developers should access defined translations using the new theme prefix variables:
  JavaScript: `I18n.t(themePrefix("my_translation_key"))`
  Handlebars: `{{theme-i18n "my_translation_key"}}` or `{{i18n (theme-prefix "my_translation_key")}}`

- To design for backwards compatibility, theme developers can check for the presence of the `themePrefix` variable in JavaScript

- As part of this, the old `{{themeSetting.setting_name}}` syntax is deprecated in favour of `{{theme-setting "setting_name"}}`
2019-01-17 11:46:11 +00:00
Jeff Atwood 1d4d4b81e6 remove stray chars 2019-01-16 15:05:43 -08:00
Jeff Atwood f0999f27a7 UX: soften the "problems" alert on dashboard 2019-01-16 14:58:19 -08:00
Robin Ward 16a7102dad FIX: `Ember.warn` needs an `id`
This way errors can be customized/silenced in the console.
2019-01-16 14:53:13 -05:00
Penar Musaraj 18055f5e37 DEV: show remote theme repository URL 2019-01-16 11:09:16 -05:00
Arpit Jalan 1591c42a06 FIX: profile picture not showing up on user admin page 2019-01-16 09:21:11 +05:30
Kris 8176d26dbd UX: Reducing usage of btn-small, simplifying styles 2019-01-11 19:41:09 -05:00
Joffrey JAFFEUX 1a3655b787
DEV: s/Em/Ember (#6874) 2019-01-11 17:54:23 +01:00
Guo Xiang Tan 0fa92699e2 UX: Don't save automatically when resetting site settings in admin page. 2019-01-11 16:39:21 +08:00
Joffrey JAFFEUX 9f39ac8366
FIX: ember3 regression, uses model as bufferedProperty for badges (#6875) 2019-01-11 00:46:03 +01:00
Joffrey JAFFEUX f9648de897
DEV: upgrades from Ember 2.13 to Ember 3.5.1 (#6808)
Co-Authored-By: Bianca Nenciu <nbianca@users.noreply.github.com>
Co-Authored-By: David Taylor <david@taylorhq.com>
2019-01-10 11:06:01 +01:00
Robin Ward 8b3ddcf646 FIX: Add topic status to flagged topics list
Previously at a glance it was impossible to tell if a topic was closed
before digging deeper.
2019-01-09 10:59:35 -05:00
Guo Xiang Tan ef72a9a1fe UX: Default search log index to yearly. 2019-01-08 13:40:38 +08:00
Saurabh Patel 0fca3205b5 FIX: show error msg on grant badge if message available from backend (#6801) 2018-12-31 10:46:39 +01:00
Joffrey JAFFEUX f1269fa807
FEATURE: Add `Top Uploads` report (#6825)
Co-Authored-By: I am very Pro-Grammer. <khalilovcmded@users.noreply.github.com>
2018-12-28 20:48:54 +01:00
Joffrey JAFFEUX 0f09cb50e9
FIX: less fancy pages computation for browser compatibility (#6823) 2018-12-28 19:07:29 +01:00
Joffrey JAFFEUX 0402f0f357
UX: new site setting to define activity metrics displayed on dashboard 2018-12-26 10:29:07 +01:00
Rishabh 3d2c72dd33 UX: Switch placeholder to an SSH url if importing a private theme 2018-12-20 17:01:50 +05:30
Joffrey JAFFEUX e655e1863f
UX: Adding reports dashboard tab, new layout, report descriptions (#6790)
Co-Authored-By: Kris  <shout@k-ris.com>
2018-12-19 14:44:43 +01:00
Maja Komel 0ce5f05b2a FIX: hide emails on admin user list for moderators (#6781) 2018-12-19 10:24:57 +01:00
Gerhard Schlager 081aa6ad2b UX: Use new FA5 icons on Backups tab 2018-12-18 16:01:14 +01:00
Vinoth Kannan 341a6bd78a
REFACTOR: Calculate CTR in SearchLog model and hide unique column (#6791) 2018-12-18 19:13:46 +05:30
Vinoth Kannan ece44a44f8 UX: Change default date range of dashboard trending search report to a month 2018-12-18 03:00:30 +05:30
Bianca Nenciu f0027961c7 FIX: Properly reset controller of admin-user-index. (#6760) 2018-12-17 15:28:29 +01:00
Gerhard Schlager 1a8ca68ea3 FEATURE: Improve backup stats on admin dashboard
* Dashboard doesn't timeout anymore when Amazon S3 is used for backups
* Storage stats are now a proper report with the same caching rules
* Changing the backup_location, s3_backup_bucket or creating and deleting backups removes the report from the cache
* It shows the number of backups and the backup location
* It shows the used space for the correct backup location instead of always showing used space on local storage
* It shows the date of the last backup as relative date
2018-12-17 11:35:11 +01:00
Joffrey JAFFEUX 03014b0d05
FEATURE: adds security tab to dashboard (#6768)
This commit also includes the new staff_logins report
2018-12-14 13:47:59 +01:00
Maja Komel 9f89aadd33 FIX: delete all posts in batches without hijack (#6747) 2018-12-14 11:04:18 +01:00
Guo Xiang Tan 05104600ea FIX: Incorrect translation key on admin search logs. 2018-12-14 17:12:33 +08:00
Kyle Zhao 92df7b212c rename `visible` to `visibleSiteSettings` 2018-12-13 13:00:13 +11:00
Kyle Zhao c9279a118e FIX: always show filtered site settings 2018-12-13 13:00:13 +11:00
Joffrey JAFFEUX 793f1274d1
FIX: makes charts more resilient to resizing (#6758) 2018-12-12 11:11:56 +01:00
Bianca Nenciu 0c88052641 UX: Wrap pre element. 2018-12-05 21:56:18 +01:00
Bianca Nenciu b585f7f336 DEV: Apply code review. 2018-12-05 21:56:18 +01:00
Bianca Nenciu 56890efd7a FEATURE: Add 'Advanced Test' for admin panel. 2018-12-05 21:56:18 +01:00
Vinoth Kannan d33d031742
FEATURE: Filter topic and post web hook events by tags (#6726)
* FEATURE: Filter topic and post web hook events by tags

* Add a spec test with unmatched tags
2018-12-05 14:44:06 +05:30
Penar Musaraj 56948896ff UX: replace FA5 compress/expand icons
Adds a new SVG sprite file that contains non-FontAwesome 5 icons to our subset.

Adds the FontAwesome 4.7.0 icons for expand / collapse.
2018-12-03 22:29:20 -05:00
Arpit Jalan 40f10855c6
FIX: defer flags (only) when handling a flag and deleting replies (#6702) 2018-11-29 22:44:18 +05:30
David Taylor f993aca363 FIX: Fix editing built-in badges after removing `_.include`
We want to send the unprotected fields to the server. Corrects 4c8cfe0f
2018-11-27 15:01:02 +00:00
Maja Komel a2bff038e8 FIX: set overridden param for customize site text query only when checkbox value changes 2018-11-27 14:29:48 +01:00
Penar Musaraj 03deda2147
Upgrade to FontAwesome 5 (take two) (#6673)
* Add missing icons to set

* Revert FA5 revert

 This reverts commit 42572ff

* use new SVG syntax in locales

* Noscript page changes (remove login button, center "powered by" footer text)

* Cast wider net for SVG icons in settings

- include any _icon setting for SVG registry (offers better support for plugin settings)

- let themes store multiple pipe-delimited icons in a setting

- also replaces broken onebox image icon with SVG reference in cooked post processor

* interpolate icons in locales

* Fix composer whisper icon alignment

* Add support for stacked icons

* SECURITY: enforce hostname to match discourse hostname

This ensures that the hostname rails uses for various helpers always matches
the Discourse hostname

* load SVG sprite with pre-initializers

* FIX: enable caching on SVG sprites

* PERF: use JSONP for SVG sprites so they are served from CDN

This avoids needing to deal with CORS for loading of the SVG

Note, added the svg- prefix to the filename so we can quickly tell in
dev tools what the file is

* Add missing SVG sprite JSONP script to CSP

* Upgrade to FA 5.5.0

* Add support for all FA4.7 icons

- adds complete frontend and backend for renamed FA4.7 icons

- improves performance of SvgSprite.bundle and SvgSprite.all_icons

* Fix group avatar flair preview

- adds an endpoint at /svg-sprites/search/:keyword

- adds frontend ajax call that pulls icon in avatar flair preview even when it is not in subset

* Remove FA 4.7 font files
2018-11-26 16:49:57 -05:00
Penar Musaraj 2e4706b787 FIX: bug and typo in admin user badges 2018-11-26 10:24:46 -05:00
Joffrey JAFFEUX e47b478b83
DEV: removes _.toArray from codebase (#6654) 2018-11-26 11:15:05 +01:00
Joffrey JAFFEUX 7e20a0b917
DEV: removes _.indexOf from codebase (#6652) 2018-11-22 17:38:58 +01:00
Joffrey JAFFEUX 56478166e5
FIX: broken badge groupings modal UI (#6653) 2018-11-22 17:09:45 +01:00
Joffrey JAFFEUX 2843944315
FIX: better alignment of badge selector and edit btn (#6651)
Input located at /admin/badges/new
2018-11-22 16:21:15 +01:00
Kris 0381e99b71 UX: improving theme upload modal alignment, markup 2018-11-21 16:50:49 -05:00
Joffrey JAFFEUX 9672c92045
DEV: removes _.each from codebase (#6629) 2018-11-20 14:46:58 +01:00
Joffrey JAFFEUX 86dafc1f25
DEV: removes _.reduce from codebase (#6628) 2018-11-19 13:04:57 +01:00
Joffrey JAFFEUX 0a8227d19c
DEV: removes _.some from codebase (#6627) 2018-11-19 12:32:51 +01:00
Joffrey JAFFEUX 4c8cfe0f29
DEV: removes _.include from codebase (#6620) 2018-11-19 12:08:54 +01:00
Joffrey JAFFEUX c4ed353fae DEV: removes _.map from codebase (#6616) 2018-11-19 10:46:46 +01:00
Joffrey JAFFEUX 907cf3ee2f DEV: replaces setTimeout by Ember.run.later (#6618) 2018-11-19 10:46:38 +01:00
Régis Hanol 0f5aeab003 DEV: enable no-alert & no-console eslint rules 2018-11-14 23:17:56 +01:00
Guo Xiang Tan 44391ee8ab
FEATURE: Upload Site Settings. (#6573) 2018-11-14 15:03:02 +08:00
Joffrey JAFFEUX 7fa21ce199
UX: minor tweaks to theme components selection UI (#6596) 2018-11-13 14:57:50 +01:00
Robin Ward 0cb33d2b52 UX: Rename Most Disagreed Flaggers report to "User Flagging Ratio" 2018-11-12 16:23:37 -05:00
Joffrey JAFFEUX 599ab4e966
UX: inform users old dashboard is going to b removed (#6592) 2018-11-12 15:20:00 +01:00
Joffrey JAFFEUX 9c616e0679
FIX: handles not found reports in bulk loading (#6582) 2018-11-12 13:47:24 +01:00
Gerhard Schlager 7c4d4331bc FEATURE: Better handling of quotation marks in site text search
It also matches 3 dots with the ellipsis symbol.
2018-11-12 13:26:41 +01:00
Joffrey JAFFEUX f8838ac9cd
FIX: fix/removes broken elements of old dashboard 2018-11-09 17:18:19 +01:00
Gerhard Schlager 24e5be3f0c FIX: Relative links in translations should work with subfolder 2018-11-08 23:31:05 +00:00
Gerhard Schlager 6b60646330 FIX: Relative links in templates should work with subfolders 2018-11-07 11:35:04 +01:00
Maja Komel ae9eddb002 FIX: don't allow adding a value containing vertical bar char to the secret list 2018-11-05 12:14:56 +01:00
Robin Ward c4ca5ed50b FIX: Translation error 2018-11-01 17:44:55 -04:00
Robin Ward ec91450aae FEATURE: Track how many user flags are agreed/disagreed/ignored
Display the percentage when reviewing flags.
2018-11-01 09:59:50 -04:00
Bianca Nenciu e1e392f15b DEV: Use DiscourseIpInfo for all IP queries. (#6482)
* DEV: Use DiscourseIpInfo for all IP queries.

* UX: Use latitude and longitude for more precision.
2018-10-30 22:08:57 +00:00
Gerhard Schlager 5b14f713a0 Use class instead of inline style 2018-10-30 11:25:51 +01:00
Joffrey JAFFEUX af465effef
FIX: prevents y-axis labels to show useless/wrong values 2018-10-30 09:58:03 +01:00
Kris fb15e04e48 Fixing broken badge grant layout 2018-10-26 11:06:31 -04:00
Joffrey JAFFEUX b2585524a9
FEATURE: adds a most disagreed flaggers report 2018-10-26 15:59:04 +02:00
Joffrey JAFFEUX 398f98c568
FIX: ensures reports links are correct on subfolder installs 2018-10-26 12:32:02 +02:00
Penar Musaraj 3c92202654 Set individual future-date-input components as clearable, fixes admin Safari bug (#6522) 2018-10-26 11:34:55 +11:00
Kris c219a5fb1e
Add btn-default class to all default buttons (#6521) 2018-10-24 16:09:36 -04:00
Joffrey JAFFEUX 7d2e582b28 FIX: validates import theme form (#6513) 2018-10-23 12:09:06 +11:00
Guto Foletto 0abc932056 add styles so permalinks admin could fit mobile screen (#6496) 2018-10-17 17:37:14 +02:00
Maja Komel c104256991 FIX: SSO provider secrets - check wildcard domains last, toggle secrets visibility 2018-10-15 16:18:29 +02:00
David Taylor 7ac08f936e
FEATURE: Upload tags from CSV (#6484) 2018-10-15 09:12:54 +01:00
Maja Komel 27e732a58d FEATURE: allow multiple secrets for Discourse SSO provider
This splits off the logic between SSO keys used incoming vs outgoing, it allows to far better restrict who is allowed to log in using a site.

This allows for better auditing of the SSO provider feature
2018-10-15 16:03:53 +11:00
Guo Xiang Tan 84d4c81a26 FEATURE: Support backup uploads/downloads directly to/from S3.
This reverts commit 3c59106bac.
2018-10-15 09:43:31 +08:00
Bianca Nenciu e68ecf1f1d UX: Add link to Groups in admin dashboard. (#6480)
* UX: Add link to Groups in admin dashboard.

* UX: Site settings have immediate effect.
2018-10-12 10:34:47 +11:00
David Taylor 1b0fbc4d30 FIX: Allow theme edit route name to be overridden
This is required for the theme-creator plugin, this change won't have
any effect on regular Discourse installations
2018-10-11 13:20:04 +01:00