Commit Graph

7188 Commits

Author SHA1 Message Date
Kevin Ansfield
2f828137ab 🐛 Fixed Enter key not working in send email confirmation modal
no issue

- the modal wasn't overriding the default `confirm` action so an error was thrown and the confirm action not triggered when pressing <kbd>Enter</kbd> whilst the modal is shown
- resolves Sentry error `ADMIN-M`
2021-06-01 17:02:31 +01:00
Kevin Ansfield
194cf296e5 Fixed "this.args is undefined" error when pressing Escape to close roles modal
no issue

- the modal component is using a native class but with the `@classic` decorator so it's still using pre-Glimmer component syntax where `this.args` doesn't exist
- fixes Sentry error `ADMIN-4C`
2021-06-01 16:50:02 +01:00
Kevin Ansfield
66f6d25d4b 🐛 Fixed blank branding preview on split front-end/admin domain setups
no issue

- the POST request made to fetch the preview was going to the non-trailing-slash version of the site URL which was resulting in a redirect to the trailing-slash version which then failed due to CORS
2021-06-01 10:46:28 +01:00
renovate[bot]
167a18deaf Lock file maintenance (#1986)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-06-01 09:43:20 +01:00
renovate[bot]
d3c0e6d0b4 Update dependency markdown-it-footnote to v3.0.3 (#1971)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-06-01 09:22:09 +01:00
renovate[bot]
21c365b039 Update dependency @sentry/ember to v6.5.0 (#1985)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-06-01 09:20:54 +01:00
renovate[bot]
848d6b0785 Update dependency ember-modifier to v2.1.2 (#1983)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-06-01 09:20:40 +01:00
renovate[bot]
bcd71a29a4 Update dependency testem to v3.4.2 (#1984)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-06-01 09:08:21 +01:00
renovate[bot]
7f2c7ca1fb Update dependency papaparse to v5.3.1 (#1982)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-06-01 09:07:49 +01:00
renovate[bot]
7d6908ef6a Update dependency ember-keyboard to v6.0.3 (#1981)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-06-01 09:06:54 +01:00
renovate[bot]
a11b1d0f70 Update dependency broccoli-funnel to v3.0.6 (#1979)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-06-01 09:06:34 +01:00
Sanne de Vries
098f5b9d06 Added icon to staff user role dropdown field 2021-06-01 09:29:37 +02:00
Daniel Lockyer
b8ec55a380 Merged v4.6.4 into main
v4.6.4
2021-05-27 19:20:16 +01:00
Daniel Lockyer
c961a89cad v4.6.4 2021-05-27 19:19:14 +01:00
Kevin Ansfield
04f3a4ae41 Enabled sourcemap build output in production
no issue

- production sourcemaps are needed to have reasonably readable stack traces in error reporting
- will be excluded from Ghost release zips by `.npmignore` rules
2021-05-27 18:54:25 +01:00
Kevin Ansfield
fb17b41c05 Fixed tests expecting '(Untitled') in editor title input
refs a5dd92f1b8

- updated to reflect changed behaviour
2021-05-27 18:52:35 +01:00
Kevin Ansfield
a5dd92f1b8 Changed editor title input to treat '(Untitled)' as blank
refs https://github.com/TryGhost/Team/issues/707

- the switch to a hard `'(Untitled)'` when you start typing is jarring and pulls you away from writing to want to set a title
- by changing the input to treat '(Untitled)' as a blank value the placeholder continues to be shown so flow isn't broken. Post validation and title display elsewhere in the app is unaffected because we're still setting `'(Untitled')` under the hood, it's only the editor display that changes
2021-05-27 18:18:51 +01:00
Kevin Ansfield
6d66c2cc73 Converted <GhKoenigEditor> to glimmer component
no issue

- switched to Ember Octane patterns
  - use native class instead of EmberObject syntax
  - moved container element into template
2021-05-27 18:18:51 +01:00
Daniel Lockyer
5f582c0d16 v4.6.3 2021-05-27 17:25:35 +01:00
Kevin Ansfield
3d43964bcd 🐛 Fixed portal preview resize when using split front-end/admin URLs (#1980)
no issue

- switched to listening to Portal's `message` events that now include a height
- removes need to reach into Portal preview iframe contents which is blocked by browser security when working cross-origin
2021-05-27 13:20:37 +01:00
Kevin Ansfield
c8f1fb5b45 🐛 Fixed error on membership screen when using split front-end/admin URLs
no issue

- when the preview iframe origin does not match the admin origin (ie, front-end and admin live on different URLs) we would hit browser security restrictions for accessing contents of a cross-origin iframe
- added a guard around the preview resize code so we abort resizing when we hit a security error
2021-05-27 11:00:10 +01:00
Daniel Lockyer
987a6d9c29 v4.6.2 2021-05-27 08:17:23 +01:00
Kevin Ansfield
f45f250a1d Sorted snippets alphabetically in card menus
no issue

- more logical ordering
2021-05-26 20:29:41 +01:00
Daniel Lockyer
28d9a4e6c4 v4.6.1 2021-05-26 18:46:08 +01:00
ceecko
0b31be4c90 🎨 Added error message from limit service to theme upload
no issue

- Addresses 634d2daa13 (r49241896)
- Uses limit service to display the configured error message
2021-05-26 19:05:19 +02:00
Kevin Ansfield
09716646b0 Switched from Sentry.captureMessage to captureException for better logging
no issue

- `Sentry.captureMessage` is used for plain text messages rather than errors or objects
2021-05-26 17:18:02 +01:00
Kevin Ansfield
5b2194d5e8 Added Sentry error tracking for unhandled exceptions and API errors
refs https://github.com/TryGhost/Team/issues/723

- if the `/site/` API returns a `sentry_dsn` then we configure Sentry for error reporting as soon as we've loaded the initial unauthenticated data
- once we're authenticated and we have the full Ghost version available, override the Sentry event processor to use the full release
- updated `notifications.showAlert()` which is our fallback for API errors that shows the red banner at the top - these are the errors we're most interested in getting visibility for and reducing
2021-05-26 17:01:32 +01:00
Rishabh
7630b5f3ae Fixed member details not loading
refs https://github.com/TryGhost/Team/issues/660

We added a guard to not send price object in a subscription when the data is missing from DB. This can cause the member details page to fail with the missing price object, so this change adds a guard against subscriptions with missing price.

Note: This is only a short-term fix till we add a proper fix to cleanup the DB in the subsequent release.
2021-05-26 19:53:41 +05:30
Daniel Lockyer
7714431d39 v4.6.0 2021-05-25 15:11:56 +01:00
Peter Zimon
efb036f9f1 Refined icon color 2021-05-25 14:00:22 +02:00
renovate[bot]
c2ebf91365 Update dependency ember-test-selectors to v5.3.0 (#1978)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-05-25 11:08:14 +01:00
renovate[bot]
e28fc4255c Update dependency grunt to v1.4.1 (#1976)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-05-25 11:07:17 +01:00
Kevin Ansfield
2a4dc849d0 Disabled "Customise portal" button when signup access is disabled
no issue

- when signup access is set to "none" the portal preview will be blank and the settings not available so it doesn't make sense to make the customise portal modal available
2021-05-25 10:09:13 +01:00
Kevin Ansfield
2f39953917 Fixed preview background flash when switching from none -> all/invite
no issue

- flash was occurring because as soon as the setting was changed we switched to showing the portal preview but at that time the preview URL is still set to an old url value. The url doesn't get changed until the settings save completes which gives enough time for a non-portal page to load before being replaced
- added a `switchFromNoneTask` that is triggered when switching away from a saved none value and updated the template to stay on the "disabled" view until the save has completed so we don't trigger multiple page loads
2021-05-25 09:40:17 +01:00
Kevin Ansfield
2bd118eef9 Attempted fix of portal background flash going from nobody->anybody/invite
no issue

- dropped use of `@guid` tracked param in favour of adding query param to URL in `updatePortalPreview()` and making sure we only update it when necessary
2021-05-24 19:29:18 +01:00
Kevin Ansfield
28de12c7eb Added scrolling="no" back in correct position
no issue

- property is specific to the membership portal preview rather than all site iframes
- fixes page-height scrollbar appearing on portal preview height animation
2021-05-24 19:14:47 +01:00
Peter Zimon
5cf7a29d2c Portal preview iframe refinements 2021-05-24 20:06:39 +02:00
Kevin Ansfield
b06a351538 Removed errant scrolling="no" on <GhSiteIframe> 2021-05-24 18:59:21 +01:00
Kevin Ansfield
956ec8f302 Added animation to portal preview height (#1977)
no issue

- add CSS transition for height attribute of portal preview container
- before adjusting height of container, apply styles to portal preview nested iframe to prevent scrollbars from showing
2021-05-24 18:55:18 +01:00
Kevin Ansfield
baafe011a2 Fixed portal preview resize and cached page bugs
no issue

- moved `@onLoad` trigger from `load` event to the `makeVisible()` task so that consumer code isn't called before load has fully finished
  - fixes issue with portal sometimes not being ready when we perform the resize on the membership screen
- added guid as a cache-busting `?v={guid}` query param
  - fixes issue where preview iframe can load stale data after a settings change resulting in a blank preview after going from "nobody" to "invite/anybody" because the loaded homepage is stale and doesn't have the portal script injected
2021-05-24 17:28:01 +01:00
Rishabh
757f061362 Added stripe connect guard for saving product
no refs

While saving on membership screen, we also try and save the product with any prices that have changed. In case Stripe is not connected, saving Product doesn't make sense as we should not edit prices for the default product without Stripe connection.
2021-05-24 21:17:40 +05:30
Rishabh
1b491aa083 Fixed price reset when no monthly/yearly prices
no refs

When we reset the prices on leaving the membership settings screen, its possible we don't have the prices created already and not able to read any monthly/yearly price.
2021-05-24 20:02:49 +05:30
Kevin Ansfield
b8e6107c6a Fixed portal previews flashing background (#1975)
refs https://github.com/TryGhost/Team/issues/701
requires Portal@1.4.2 or later

- changed `<GhSiteIframe @invisibleUntilLoaded>` to accept a string in place of a `true/false` value
    - if a string is passed then we'll set up a message event listener than listens for a `postMessage` from the iframe with data that matches the supplied string
- updated `<GhSiteIframe>` usage for portal previews to use `@invisibleUntilLoaded="portal-ready"` so they listen for a message event rather than displaying as soon as we get a load event
2021-05-24 14:03:08 +01:00
Rishabh
6f9cd593a7 🐛 Fixed retry email not timing out on poll
no refs

Fixes a small bug in email retry logic meant we never timeout on polling for email retry while listening for the email status to see if it failed or submitted.
2021-05-24 18:29:13 +05:30
Rishabh
740a304bf0 Handled product save failure on Stripe connect
refs https://github.com/TryGhost/Team/issues/704

We try and create new default prices soon after Stripe Connect is completed, but it might take couple of seconds for backend to have Stripe config ready and in the meanwhile saving a product with new prices will fail with 409 Conflict error as it will be unable to create prices on Stripe. This change allows re-attempting saving a product with new prices soon after connect in case of a STRIPE_NOT_CONFIGURED error so that the default prices can be created properly.
2021-05-24 18:29:13 +05:30
renovate[bot]
8862960974 Fixed indescribable error in theme limit
refs f51c640fb0

- This should not affect any of the current code but should improve edge case errors related to "allowlist" types of limits
2021-05-24 22:07:48 +12:00
Kevin Ansfield
2826ebfac4 Added timeout to help prevent site background flashes in portal previews
refs https://github.com/TryGhost/Team/issues/701

- `onload` event fires once the page has loaded but scripts may still be processing that would render an overlay. Wait for 100ms for renders to occur before making the iframe contents visible to allow for renders to occur
2021-05-24 11:02:26 +01:00
Renovate Bot
eb5536d8a4 Update dependency eslint to v7.27.0 2021-05-24 01:11:19 +00:00
renovate[bot]
e1f1732db3 Pin dependency tracked-built-ins to 1.1.1 (#1973)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2021-05-21 18:23:08 +01:00
Kevin Ansfield
495e435daf Brought checkboxes back to publish menu recipient selection (#1972)
no issue

Free and Paid are by far the two most common options for email recipients so it makes more sense to have them as very clear options which we felt was not the case with the single token/segment select.

- created a new `<GhMembersRecipientSelect>` component that has individual checkboxes for free/paid/segment and when segment is selected an additional token input for specific labels
- updated draft and scheduled publish menu components to use the `<GhMembersRecipientSelect>`

Co-authored-by: Sanne de Vries <sannedv@protonmail.com>
2021-05-21 18:22:01 +01:00