Commit Graph

2737 Commits

Author SHA1 Message Date
Kevin Ansfield
cf7a763199 Removed usage of deprecated EmberSimpleAuth mixins (#1910)
refs https://github.com/TryGhost/Admin/pull/1901

Ember has deprecated mixins in preparation for 4.0 and `ember-simple-auth` has now done the same in 3.1.0.

- removed all imports of Ember Simple Auth mixins
- moved authenticated and invalidated handling from application route to session service
- moved server-notification loading from application route to session service
- updated `AuthenticatedRoute` to use the session service directly rather than authenticated route mixin
- added `UnauthenticatedRoute` that incorporates the behaviour from our overridden `UnauthenticatedRouteMixin` and switches to using the session service directly
2021-04-12 13:21:57 +01:00
Sanne de Vries
eb28e42ad4 Updated styles for change-user-role modal 2021-04-12 14:09:24 +02:00
Kevin Ansfield
ffe5416b77 Swapped staff role selector from <select> to new role selection modal
closes https://github.com/TryGhost/Team/issues/572

Role selection when inviting users was updated to show information about each staff role. This change updates the staff edit screen to use the same UI for changing the role of an existing user.

- added `select-user-role` modal which uses `<GhRoleSelection>` to allow role selection
- replaced the `<select>` input for changing a user's role with a button that triggers the role selection modal
  - role is not set unless the "Set role" button is clicked after making a selection, cancel or close will leave the original role selected
2021-04-12 11:35:50 +01:00
Kevin Ansfield
824953d162 Fixed initial role selection and layout shift in <GhRoleSelection>
no issue

- initial role was always being set to Contributor due to incorrect argument being used when checking if the default role should be applied
- there was considerable layout shift of the `<GhRoleSelection>` container after role loading was finished, quick-fix applied by specifying a width and height to the loading spinner container that matches the final width/height
2021-04-12 11:27:37 +01:00
Kevin Ansfield
c3c383ae69 Fixed role validation when inviting new users
no issue

- the `role` argument was not being passed to the `validateRole` method when changing roles
2021-04-12 11:15:09 +01:00
Kevin Ansfield
e7ac8731b0 Extracted role selector to <GhRoleSelection> component
refs https://github.com/TryGhost/Team/issues/572

- preparation for re-using the new role selector in a model when changing an existing user's role
2021-04-10 08:16:16 +01:00
Peter Zimon
80357855aa Added mock product price modal
no refs.
- added static price modal to product detail page
2021-04-09 13:01:28 +02:00
Thibaut Patel
7b99c555c5 Fix the limit service when querying an empty config
commit d350a58769
2021-04-09 11:16:37 +02:00
Thibaut Patel
47f0969ac2 Fix customThemes flag
commit f65c5a7f8b

 - disabled = true means that the feature is disabled
2021-04-08 20:23:21 +02:00
Thibaut Patel
f65c5a7f8b Fix UploadThemeController to support disable:true customThemes flag
no issue
2021-04-08 19:32:46 +02:00
Peter Zimon
f172fedb58 Updated settings icon colors 2021-04-08 17:25:32 +02:00
Peter Zimon
c6bb423a26 Updated product detail page mockup
- updated layout for static product detail page
2021-04-08 17:20:32 +02:00
Kevin Ansfield
733f76d571 Added automatic CSV export when bulk deleting members
refs https://github.com/TryGhost/Team/issues/585

- updated bulk destroy task to first use the current query params to fetch from the appropriate CSV export endpoint and trigger a download
  - fetches via JS and triggers download from a blob URL link instead of an iframe so that we can be sure the download is successful before we hit the bulk delete endpoint
  - works differently to user deletion download because the server is not generating an export file and saving it meaning the client has to be sure we don't delete data before it's exported
- updated copy in the confirmation modal to reflect the download behaviour
2021-04-08 16:06:00 +01:00
Kevin Ansfield
51b0cfb199 Fixed members list query not always matching route params
refs e25e36352d

- referenced refactor accidentally removed direct usage of `params` in `fetchMembersTask()`
- because it's called from the `model()` hook the query param properties on `this` have not yet been updated to the new params meaning we were querying the API with stale params
2021-04-08 16:00:43 +01:00
Sanne de Vries
ee5da7a5d2 Updated members deleted info-box style 2021-04-08 16:14:06 +02:00
Kevin Ansfield
e25e36352d Refactored duplicated members query generation
no issue

- code for generating a members API query was duplicated across listing, export, and bulk delete
- extracted the duplicated code into a reusable method
- removed `?all=true` param generation for bulk members delete because we don't provide that option in the UI
2021-04-08 15:12:14 +01:00
Peter Zimon
6ee31e206b Added static components for custom products
- added link to Products in Settings main screen
- added product list page with static content
- added product detail page with static content
2021-04-08 14:40:13 +02:00
Thibaut Patel
d350a58769 Revert "Replaced the config service by the limiter service"
This reverts commit fc30aebd21.
2021-04-08 13:53:52 +02:00
Kevin Ansfield
72590083f3 Added ability to bulk delete members by label or status (#1883)
refs https://github.com/TryGhost/Team/issues/585
requires https://github.com/TryGhost/Ghost/pull/12082

When a label or status filter is selected on the members screen show a "Delete selected" option in the actions dropdown. Bulk deleted members will _not_ have any subscription data modified in Stripe, if a member should be deleted and have their subscription cancelled it's necessary to do that on a per-member basis.

- updated bulk delete handling to match API
- added link to bulk delete confirmation modal in members actions dropdown (only shown when label, status, or search is used)
- updated testing framework for members
  - added label factory for easier test setup
  - updated `GET /members` and `DEL /members` endpoints to work with label filters
  - updated test selectors for easier reference in tests
2021-04-08 12:06:27 +01:00
Sanne de Vries
556141d613 Styled staff limit notification in invite-modal 2021-04-08 11:53:15 +02:00
Naz
8756ddac53 Fixed staff limit check to filter out "Contributors"
refs https://github.com/TryGhost/Team/issues/587

- Invites and users with "Contributor" roles should not be counted towards the limit
2021-04-08 21:11:16 +12:00
Thibaut Patel
fc30aebd21 Replaced the config service by the limiter service
comment 634d2daa13 (r49241858)
2021-04-08 10:56:00 +02:00
Naz
de97328c42 Fixed staff limit check query to take into account inactive users
refs https://github.com/TryGhost/Team/issues/587

- Users with 'inactive' status should not be counted towards the "staff" limit
2021-04-08 20:07:24 +12:00
Naz
25debab71d Added staff limit check to invite people modal
refs https://github.com/TryGhost/Team/issues/587

- When user's instance reaches a "staff" limit we need a way to proactively notify them about reached limit and give enough information about why it was reached and what the next action would be to unblock them
- The implementeation uses a frontend implementation of the limit-service which allows to do preventative checks for the reached limits
2021-04-08 17:28:37 +12:00
Naz
40cedb84ff Added integration with limit service
refs https://github.com/TryGhost/Team/issues/587

- This is first pass on the frontend limit-service integration. Max count queries are substituted with HTTP requests to mimick backend checks. Note, they are not meant to substitute backend checks only to suplment them.
2021-04-08 16:59:56 +12:00
Sanne de Vries
2e8109d05f Clarified staff user roles in Admin (#1874)
refs https://github.com/TryGhost/Team/issues/572

- Replaced dropdown in invite-user modal with radio buttons
- Added description for each user role
- Added icon to provide more info on hover for each role
- Got rid of unused box styling
2021-04-07 15:20:30 +01:00
Thibaut Patel
634d2daa13 Added configurable limit on custom themes
issue https://github.com/TryGhost/Team/issues/590
2021-04-07 15:51:22 +02:00
Rish
6932d826f8 Updated member stats refresh to new counts endpoint
refs 72e8894eac

Switches the stats refresh method to use new `/members/stats/counts` endpoint instead of the old one at `/members/stats`
2021-04-06 14:13:01 +05:30
naz
238632402c 🐛 Fixed host limit error when resending a pending invite (#1881)
refs https://github.com/TryGhost/Team/issues/587
refs e30b9735fa

- It was not possible to invite a new Contributor to a site that has reached its limit
- This fix divides the resend invite action into two separate steps: 1. Deleting existing invite 2. Creating a new one for the same data
- It was hitting the limit because the permissions were correctly checking for "add" action being executed when the limit of invites/staff users was already used up. By removing existing invite we mimic the behavior the server would do for us anyway (2111992dd4/core/server/services/invites/invites.js (L18-L22))

Co-authored-by: Rish <zrishabhgarg@gmail.com>
2021-04-06 15:10:03 +12:00
Kevin Ansfield
15561efd48 Fixed url formatting in search engine result previews
no issue

- `config.blogDomain` includes subdirectory and `config.ghostPaths.subdir` includes a leading `/` which resulted in the search engine result preview url incorrectly showing as `mysite.com/subdir > /subdir > slug`
- replaced the in-template construction of the url previews with a getter on the backing class that constructs the preview url based on parsing the configured url
2021-03-30 10:10:34 +01:00
Sanne de Vries
d3ace95ff6 Fixed PSM seo preview title overflowing bug 2021-03-30 10:41:36 +02:00
Sanne de Vries
c41a1f77f8 Reverted color updates 2021-03-29 16:21:54 +02:00
Sanne de Vries
7e92306a77 Updated icon/color access screen in settings 2021-03-29 16:09:58 +02:00
Kevin Ansfield
c1904d7d84 Added blank members access settings screen behind dev flag
refs https://github.com/TryGhost/Team/issues/579

- empty screen ready for signup access and default post access level settings to be moved to
- has unsaved settings changes modal ready
2021-03-29 12:49:09 +01:00
Kevin Ansfield
ae4d15d237 Removed empty init() calls
no issue

- `init()` methods that do nothing but call `super()` aren't adding anything but add noise to class/object definitions
2021-03-29 10:32:03 +01:00
Kevin Ansfield
65e07109a9 Updated test selectors on settings screen
no issue

- navigation test selectors were duplicated and did not match the respective link destinations
2021-03-29 10:19:33 +01:00
Thibaut Patel
0944fb39ba Updated the staff access token to use the existing patterns
issue https://github.com/TryGhost/Team/issues/497
2021-03-25 15:08:29 +01:00
Rish
e91e8f73fd Removed www subdomain from default newsletter/support address
closes https://github.com/TryGhost/Team/issues/397

The default newsletter/support email address for a site is currently setup as noreply@DOMAIN , which means for a custom domain setup with www the email address becomes noreply@www.somesite.com which is not the expected behavior.

Note: This fix only removes `www` subdomain from addresses and no other subdomains
2021-03-24 23:51:13 +05:30
Rish
803523c31d 🐛 Fixed incorrect member count on dashboard
closes https://github.com/TryGhost/Team/issues/561

In case the last event for a new member on site was before 30 day period, the count for members was showing 0 instead of the actual value. The change fixes the count to show the correct value even if there is no new recent member activity.
2021-03-24 21:56:35 +05:30
Rish
43c83c77f2 Updated MRR display value on dashboard
closes https://github.com/TryGhost/Team/issues/568

Displaying amount in cents in context of overall MRR forecast/estimate doesn't add much value, the change rounds MRR value to nearest whole number on dashboard
2021-03-24 21:56:35 +05:30
Rish
fde76becc4 Updated default MRR currency from settings
closes https://github.com/TryGhost/Team/issues/550

The MRR chart relied on first currency from the list in case of data for multiple currencies, falling back to USD in case of no MRR data for the site. This can be misleading, specially when the active currency set in payment settings is different from one picked to show on MRR chart.

The change updates dashboard to always pick the currency from Payment settings as default for showing chart data.
2021-03-24 21:56:35 +05:30
Sanne de Vries
6213587ad9 Fixed editor text selection bug in Safari dark mode 2021-03-24 15:12:40 +01:00
Rishabh Garg
4148db6fd6 Removed hardcoded accent color fallbacks (#1875)
refs TryGhost/Team#536

From 4.0, we ensure and require that accent colour is always set. This change removes hardcoded accent color fallbacks to avoid confusion as well as cause accidental fallback that is undesired.
2021-03-24 18:26:09 +05:30
Aileen Nowak
d2dd33411a Changed /billing route to /pro (#1871)
no issue

The current `/billing` route needs to be renamed into `/pro`, so we can use sub-routes like `/pro/billing` and `/pro/domain` in the billing app.
2021-03-23 11:59:52 +00:00
Sanne de Vries
abbb5cb314 Updated info box styles 2021-03-23 12:17:47 +01:00
Sanne de Vries
e0b9d64875 Fixed dashboard graphs responsive issue 2021-03-22 15:59:18 +01:00
Peter Zimon
50c41c18f8 Fixed box alignment on Dashboard 2021-03-22 15:42:16 +01:00
Peter Zimon
6cdd79e0b5 Updated settings button copy on Dashboard 2021-03-22 15:37:46 +01:00
Peter Zimon
48f44b9093 Fixed placeholder of tag color 2021-03-22 15:16:09 +01:00
Sanne de Vries
6f3ae6e4ed Fixed arrow widths for avatar and canvas title 2021-03-22 10:53:39 +01:00