Commit Graph

2759 Commits

Author SHA1 Message Date
Hannah Wolfe
dfffa309a8
Improved member importer error handling (#15843)
refs: https://github.com/TryGhost/Team/issues/1121

- This makes several key changes to the way errors are handled in the member importer, to ensure that we only show error messages to users that we wrote.
- Fundamentally, we no longer trust all API errors, and instead only trust a set of very specific API errors. Anything outside of that is replaced with a generic error message.
- Also switches the server-side error generated for email verification (which can throw during member import) to be a HostLimitError, as that is a more appropriate class.
- Note: there are many other parts of Ghost admin that need a similar overhaul, and a similar change we need to introduce server side to fully resolve the underlying issue of bubbling up code errors to the UI.
2022-11-17 19:41:39 +00:00
Peter Zimon
75fea80de6 Fixed screen flicker in content import modal
no refs.

- the "Uploading" step on the content import modal was empty which resulted in a quick flicker during upload.
2022-11-17 18:11:11 +01:00
Rishabh
3c5b523a43 Revert "Updated ember action usage"
This reverts commit 31b4d34b90.
2022-11-17 14:40:24 +00:00
Rishabh
9dea8f13d8 Updated ember action usage 2022-11-17 14:40:24 +00:00
Peter Zimon
4068d8c65c Fixed content importer UI logic and email
- `result` parameter was wrongly passed to email
- email subject condition was reversed
- udpated email copy (still WIP)
- removed console.log from admin file selector
2022-11-17 14:40:24 +00:00
Sam Lord
4fb05ab165 Prevent warnings from being displayed in email after content import
no issue

Warnings that aren't useful shouldn't be displayed, especially when this is likely someone's first experience of Ghost.
2022-11-17 14:40:24 +00:00
Peter Zimon
d0c2af7a15 Fixed API params 2022-11-17 14:40:24 +00:00
Peter Zimon
739efa5a36 Fixed file upload bug 2022-11-17 14:40:24 +00:00
Peter Zimon
3eaa00bddb Restructured modal open logic
no refs.

- Navigating to `/settings/labs/import` opened the modal but also transitioned to a blank page in the background. Restructured content import modal so it's opening on top of the Labs page.
2022-11-17 14:40:24 +00:00
Sam Lord
d5f8a2b59d WIP importer modal
no issue
2022-11-17 14:40:24 +00:00
Ronald Langeveld
e0787b4e83
Added specific newsletter support for bulk unsubscribes (#15742)
closes https://github.com/TryGhost/Team/issues/2013

Added support to bulk unsubscribe a selected (filtered) list on members from specific, selected newsletters.
2022-11-16 14:29:00 +07:00
Simon Backx
cdccf5c46a
Reduced default post relations (#15798)
fixes https://github.com/TryGhost/Team/issues/2085

Don't load relations we don't need anymore for the posts table. And
reload the individual post when we open the analytics page with more
relations that we actually need.
2022-11-15 10:17:26 +01:00
Kevin Ansfield
f92c62b59a Switched API key regeneration modal to new modal pattern
refs https://github.com/TryGhost/Team/issues/1734
refs https://github.com/TryGhost/Team/issues/559
refs https://github.com/TryGhost/Ghost/issues/14101

- switches to newer modal patterns ready for later Ember upgrades
- migrated Zapier controller to native class syntax
- fixed regeneration confirmation text not being visible on Zapier screen
2022-11-14 09:55:34 +00:00
Kevin Ansfield
283babe574 Removed unused early-access modal
no issue

- modal was added when tiers were first introduced as a beta feature but is no longer being used
2022-11-14 09:55:34 +00:00
Kevin Ansfield
332dd4fbf1 Switched editor re-authenticate modal to new modal pattern
refs https://github.com/TryGhost/Team/issues/1734
refs https://github.com/TryGhost/Team/issues/559
refs https://github.com/TryGhost/Ghost/issues/14101

- switches to newer modal patterns ready for later Ember upgrades
- simplified unauthed save behaviour because we now have a promise for the modal enabling us to wait for the modal to close before continuing
2022-11-14 09:55:34 +00:00
Kevin Ansfield
f74913cfb6 Switched snippet update modal to new modal pattern
refs https://github.com/TryGhost/Team/issues/1734
refs https://github.com/TryGhost/Team/issues/559
refs https://github.com/TryGhost/Ghost/issues/14101

- switches to newer modal patterns ready for later Ember upgrades
2022-11-14 09:55:34 +00:00
Kevin Ansfield
d4398cacf7 Switched publish limit upgrade modal to new modal pattern
refs https://github.com/TryGhost/Team/issues/1734
refs https://github.com/TryGhost/Team/issues/559
refs https://github.com/TryGhost/Ghost/issues/14101

- switches to newer modal patterns ready for later Ember upgrades
2022-11-14 09:55:34 +00:00
James Morris
42bf847142 Cleaning up and formalizing how events show across all activity feeds
- There was some formatting problems on the Dashboard with certain events
- There was inconsitencies with how we formatted some events over others
- Removed 'on' and just using '-' for all

refs https://github.com/TryGhost/Team/issues/2243
2022-11-11 15:18:03 +00:00
Simon Backx
28e4eb60ae
🐛 Fixed offer links with an archived tier (#15792)
refs https://github.com/TryGhost/Team/issues/2233

**Problem**
When a user clicks an offer link that has an archived tier, the site
blocks and you are no longer able to scroll. This is because the product
for that offer can't be found. This has been fixed by updating the
`isActiveOffer` helper to also check for the existence of the
corresponding tier.

**Solution**
- You no longer are able to create new offers if there are no active
tiers
- A custom message is shown that instructs the user to create a new tier
if there are not active tiers on the offers page
- Improved detection of changes in tiers by correctly reloading the
members utils service after tier changes
- Portal redirects to the homepage for offers with an archived tier
(same behaviour as invalid offers)
- Offers of an archived tier are no longer visible in the dashboard
2022-11-11 10:11:34 +01:00
Simon Backx
7c3d75ade7
🐛 Fixed pasting newlines in post titles (#15794)
fixes https://github.com/TryGhost/Team/issues/2193

- When pasting a title with a newline, we now trim the string and clear newslines before pasting.
- When sending the slug to the backend to generate a unique slug, we now sluggify it in the frontend before adding it to the URL to prevent issues with unsupported characters (causing possible routing problems in Pro).
2022-11-10 14:43:15 +01:00
Simon Backx
b821c84b9e
Cleaned up member filters (#15784)
fixes https://github.com/TryGhost/Team/issues/2134
fixes https://github.com/TryGhost/Team/issues/2133

- Moved all filters to separate files to make the filter component a lot more readable and easier to maintain.
- Removed long switch style code from hbs for filter column values
- Filters for features that are disabled (such as open tracking, click tracking or member attribution) are now hidden when they are disabled
- The open rate column in the members table is now only visible if open tracking is enabled
2022-11-10 11:05:12 +01:00
Simon Backx
c2dfb2b579
🐛 Fixed link click counts for duplicate links (#15789)
refs https://github.com/TryGhost/Team/issues/2213

When an email contains multiple links to the same destination, that link
is only shown once on the analytics page. The total displayed count is
not summed correctly.
2022-11-10 10:51:26 +01:00
Simon Backx
a5c4091620 Fixed analytics page feedback chart filter button links
no issue

Clicking the 'see members' button in the feedback chart tooltip went to a page with a hardcoded post id instead of the actual post id.
2022-11-10 10:38:09 +01:00
James Morris
2fb6fcabb2 Changed post and page rows go to editor plus code and styles cleanup
- Made the majority of the row go to the editor instead
- Removed illegal nested hyperlinks and cleaned up other markup
- Removed some feature flag code around this page and fixed styles for them
- Improved some dark mode styling
- Lots of refactoring with code and styles

refs https://github.com/TryGhost/Team/issues/2223
2022-11-08 14:29:11 +00:00
Elena Baidakova
a605679bfa
Moved all code for feedback chart to one file (#15774)
closes TryGhost/Team#2143
- All logic for feedback pie chart was spread through multiple files. It
would be difficult to scale it. Now it is encapsulated in one file.
2022-11-08 09:42:32 +04:00
Aileen Nowak
f2c0bff9df Updated <GHBillingIframe> to not leak event listeners
no issue
refs dac5cca899

- added cleanup of the `message` event handler added to `window` when the component is destroyed
- added a guard to the event handler method to abort early if a message is received whilst the component is being destroyed
- updated Billing Service and `<GHBillingIframe>` to not use `@classic` decorator
2022-11-07 11:59:14 +00:00
Kevin Ansfield
91c3c9eece Fixed lexical editor not loading
refs https://github.com/TryGhost/Ghost/pull/15763

- the config service no longer exists, we need to use the object registered at `config:main` instead to grab the editor url
2022-11-04 09:25:52 +00:00
Kevin Ansfield
443867639f Deleted unused modal-whats-new component file
no issue

- backing class still existed for a component that previous had it's template removed
2022-11-03 17:18:37 +00:00
Kevin Ansfield
9bdb25d184
Fixed hosting management screen not loading after sign-in process (#15763)
refs https://github.com/TryGhost/Team/issues/2110

- dynamically defined properties on the config service did not have
autotracking set up properly if they were accessed in any way before the
property was defined, this caused problems in a number of areas because
we have both "unauthed" and "authed" sets of config and when not logged
in we had parts of the app checking for authed config properties that
don't exist until after sign-in and subsequent config re-fetch
- renamed `config` service to `configManager` and updated to only
contain methods for fetching config data
- added a `config` instance initializer that sets up a `TrackedObject`
instance with some custom properties/methods and registers it on
`config:main`
- uses application instance initializer rather than a standard
initializer because standard initializers are only called once when
setting up the test suite so we'd end up with config leaking across
tests
- added an `@inject` decorator that when used takes the property name
and injects whatever is registered at `${propertyName}:main`, this
allows us to use dependency injection for any object rather than just
services or controllers
- using `application.inject()` in the initializer was initially used but
that only works for objects that extend from `EmberObject`, the
injections weren't available in native-class glimmer components so this
decorator keeps the injection syntax consistent
  - swapped all `@service config` uses to `@inject config`
2022-11-03 11:14:36 +00:00
Kevin Ansfield
dac5cca899 Fixed <GhExploreIframe> leaking event listeners and throwing errors in tests
no issue

- added cleanup of the `message` event handler added to `window` when the component is destroyed
- added a guard to the event handler method to abort early if a message is received whilst the component is being destroyed
2022-11-03 10:25:43 +00:00
Kevin Ansfield
86751f902c Fixed "invoking component by passing its name" deprecations for newsletter modals
no issue

- in future Ember build tooling components must be imported directly rather than passing a name at runtime
2022-11-03 10:14:37 +00:00
James Morris
21bf020e4e Moved the audience feedback setting into the footer
refs https://github.com/TryGhost/Team/issues/2191
2022-10-31 12:10:36 +00:00
Rishabh
5a029620fd Updated new analytics page with audience feedback
refs b027ed6378

- analytics page was split between old and new behind the audience feedback flag
- the new page had missing method as we switched the page to new one once the flag was switched on
2022-10-28 12:01:11 +05:30
Rishabh Garg
d10d4390f0
Removed duplicate newsletter tracking settings (#15717)
refs cca0f7d7dc

- newsletter tracking setting has now moved to analytics settings page. the duplicate settings on newsletter settings page is removed.
2022-10-28 02:35:39 +05:30
James Morris
b08500fc32 Updated the copy changes for the Post Analytics tabs
refs https://github.com/TryGhost/Team/issues/2180
2022-10-27 17:17:04 +01:00
James Morris
3d3653b09a Removed links from sources and added a prefix icon
refs https://github.com/TryGhost/Team/issues/2183
2022-10-27 17:07:41 +01:00
Simon Backx
5cb3c43e80 Fixed aggregated click events visible in dashboard
refs https://github.com/TryGhost/Team/issues/2175
2022-10-27 17:29:51 +02:00
Simon Backx
b916300ceb
Added aggregated click events (#15713)
fixes https://github.com/TryGhost/Team/issues/2175

- New event type `aggregated_click_event` that is disabled by default in all the existing activity feeds
- This returns click events, but only the first click events for each member/post combination.
- It includes the total count of unique link clicks for that member on that post combination
- Had to resort to some custom knex queries to make this work easily
- Requires `@tryghost/bookshelf-pagination@0.1.31`, included in `@tryghost/bookshelf-plugins@0.6.1` (this fixes an issue with custom selects breaking the total count query of pages)
- Went a bit overboard with the pagination tests to cover as much unknown edge cases as possible
2022-10-27 17:23:45 +02:00
Elena Baidakova
423314713e
Added total feedback amount to analytics tabs (#15708)
closes TryGhost/Team#2172
2022-10-27 18:30:04 +04:00
Djordje Vlaisavljevic
1f48e728c4 Updated copy
refs https://github.com/TryGhost/Team/issues/2168
2022-10-27 14:27:08 +02:00
Rishabh
9503ca1c7b Wired new analytics settings for tracking email and sources
refs https://github.com/TryGhost/Team/issues/2168

- wires new source tracking setting for members to UI
- splits the new analytics page settings to its own component, cleaned up the files and wired up the settings upstream
2022-10-27 17:29:33 +05:30
Simon Backx
076e3c02b2
Added linking between member and subscription created events (#15693)
fixes https://github.com/TryGhost/Team/issues/2160

- Adds a `batch_id` to both events that contain the same ID if they were created at the same time.
- Removes duplicate signup/conversion events using the batch_id
- Requires an update in mongo-knex to work (refs https://ghost.slack.com/archives/C02G9E68C/p1666773313272409?thread_ts=1666767872.375009&cid=C02G9E68C)
- Some dependencies needed an update to load the latest mongo-knex
- Added tiers to membersUtils, loaded on startup (we can start to use this instead of fetching it every time)
2022-10-27 11:44:19 +02:00
Elena Baidakova
e3ab868b83
Added email feedback column (#15698)
closes TryGhost/Team#2159
- Added column to email table
- Hide the feedback tab on frontend depending on the column value

Co-authored-by: Daniel Lockyer <daniellockyer@fastmail.com>
2022-10-27 11:22:50 +04:00
James Morris
409377476d Fixed the dash bug next to the events in the table
refs https://github.com/TryGhost/Team/issues/2172
2022-10-26 18:20:02 +01:00
James Morris
4f40fb8e12 Updated the post analytics tab design and added in responsiveness
- Changed the tab design to now include icons all across
- Better way of showing positive sentiment
- Much better responsiveness for the whole page

refs https://github.com/TryGhost/Team/issues/2172
2022-10-26 18:04:17 +01:00
Elena Baidakova
f1e476d6af
Add forceRender property to tabs (#15699)
closes TryGhost/Team#2163
- `forceRender` property adds ability to render content of tabs in
advance (even if tab wasn't selected)
2022-10-26 18:03:29 +01:00
Aileen Nowak
8d9b8cf79c Fixed Explore iframe route handling hijacking routes on reload 2022-10-26 17:17:22 +01:00
James Morris
f1565fe92a Updated the copy for the audience feedback in preview and email based on feedback
refs https://github.com/TryGhost/Team/issues/2171
2022-10-26 12:17:07 +01:00
Aileen Nowak
b79006d7f3 Added Ghost Explore app
no issue

- bumps Ghost Explore integrated app  to GA from alpha
2022-10-26 10:05:50 +01:00
James Morris
176af30788 Added in clicks URLs for the members table under clicked tab
refs https://github.com/TryGhost/Team/issues/2149
2022-10-25 17:50:23 +01:00