Commit Graph

185 Commits

Author SHA1 Message Date
Sanne de Vries
47903962cc Updated post list layouts
Refs https://github.com/TryGhost/Team/issues/1895
2022-09-15 12:50:53 +01:00
Kevin Ansfield
4ad040b4aa Improved display of recipient filter posts list sends column tooltip
refs https://github.com/TryGhost/Team/issues/1025

- added `{{humanize-recipient-filter}}` helper that converts an NQL recipient filter into a more readable format
- updated posts list to use the new helper in the sends column tooltip shown when hovering with the mouse
2022-09-08 11:03:20 +01:00
Daniel Lockyer
b226b03f09
Renamed Audit Log to History
refs https://github.com/TryGhost/Toolbox/issues/356

- this commit updates the route to `/settings/history` and moves all the
  files to their new name so we can avoid further cleanup down the line
2022-09-06 11:49:29 +01:00
Peter Zimon
a27342c8ae Added link to membership for tiers in Audit log
refs. https://github.com/TryGhost/Toolbox/issues/356

- link to Membership settings was missing for tier related events
2022-09-05 16:20:26 +02:00
Peter Zimon
5a83b77202 Updated copy in Audit log
refs. https://github.com/TryGhost/Toolbox/issues/356

- the term 'products' was used in the Audit log list which was inconsistent with the rest of the UI ('tiers')
2022-09-05 16:09:10 +02:00
Peter Zimon
0e156d2d68 Refined Audit log
refs. https://github.com/TryGhost/Toolbox/issues/356

- member label was too granular and small piece of information to justify a complete "Member" category, so we ignored to fetch the member label related events for now and removed the "Member" category from the filter list
- the term "users" wasn't consistent with the rest of the UI, changed it to "staff"
2022-09-05 16:01:36 +02:00
Sanne de Vries
a2fc31aa0a Cleaned up icon styles
Refs https://www.notion.so/ghost/Unify-icons-across-Admin-7e3d124d5db34c63beccca029af595e7

- Reduced duplicate plus icons
- Replaced fill trash, info and pen icons by stroke icons
- Removed fill styles from default button classes
- Removed launch-wizard css
2022-09-02 16:56:02 +01:00
Daniel Lockyer
1a955dceb4
Fixed showing default image for staff users
refs https://github.com/TryGhost/Toolbox/issues/356

- without this, users who have an account but no profile image will just
  show an empty background
2022-09-01 16:58:07 +01:00
Daniel Lockyer
874c696893
Fixed showing actor icons for deleted actors
refs https://github.com/TryGhost/Toolbox/issues/356

- if an actor has been deleted, their icon would just be blank
- we want to show the default user icon
- to accommodate this, and to improve some code along the way, I've also
  added `include=actor` to the API request so we get the actor inline in
  the response instead of sending off another request
- I should really switch to using models + the store at some point to
  cleanup parsing all the API responses manually
2022-08-31 14:57:41 +01:00
James Morris
22b0586667 Tweaks to column sizes for events and a way to show new event icons for feature flag
- Has better column widths and fixed a bug with the time one
- Now allows to show alternative icons for feature flag

refs https://github.com/TryGhost/Team/issues/1851
2022-08-25 16:01:53 +01:00
Simon Backx
38ce6ee66e Fixed blank line linting issue 2022-08-25 16:47:52 +02:00
Simon Backx
6e2579ec9d Moved parse-member-event helper to class syntax
no issue

- Added feature service in it
2022-08-25 16:42:19 +02:00
Peter Zimon
a94e9b2e74 Updated Audit log table view
refs. https://github.com/TryGhost/Toolbox/issues/356

- the readability of the Audit log table wasn't great as the very repetitive "actor" was the primary info
- the link to the actor (staff user) was missing
2022-08-25 13:09:38 +02:00
James Morris
b51d81843b Move back away from membership to subscription wording for events
refs https://github.com/TryGhost/Team/issues/1847
2022-08-25 10:58:58 +01:00
James Morris
0142b4535a Update the event output to be less verbose
- Some events take up quite a bit of space and so want to be less verbose
- Playing with where to add joins in the interface
- Remove references of subscription unless it's for email

refs https://github.com/TryGhost/Team/issues/1840
2022-08-24 17:06:14 +01:00
Simon Backx
f124d142c9 Added member attributions to activity feed (#15283)
refs https://github.com/TryGhost/Team/issues/1833
refs https://github.com/TryGhost/Team/issues/1834

We've added the attribution property to subscription and signup events when the
flag is enabled. The attributions resource is fetched by creating multiple relations
on the model, rather than polymorphic as we ran into issues with that as they can't
be nullable/optional.

The parse-member-event structure has been updated to make it easier to work with,
specifically `getObject` is only used when the event is clickable, and there is now a 
join property which makes it easier to join the action and the object.
2022-08-24 11:17:28 -04:00
Daniel Lockyer
05e32b3ea5
Improved Audit log filtering UI
refs https://github.com/TryGhost/Toolbox/issues/356

- the existing structure of 1 checkbox per resource was becoming unsustainable
  as we added events for more resources
- instead, we're going to group resources together into categories so
  they can be disabled/enabled together
- this implements that, and also enables showing Tier and Offer events
  now we have something that works nicely
2022-08-24 17:03:12 +02:00
Fabien "egg" O'Carroll
3c431bd8da Revert "Added member attributions to activity feed (#15283)"
This reverts commit e986b78458.

The tests were not passing for the PR and it was erroneously
merged into main
2022-08-24 11:01:47 -04:00
Simon Backx
e986b78458
Added member attributions to activity feed (#15283)
refs https://github.com/TryGhost/Team/issues/1833
refs https://github.com/TryGhost/Team/issues/1834

We've added the attribution property to subscription and signup events when the
flag is enabled. The attributions resource is fetched by creating multiple relations
on the model, rather than polymorphic as we ran into issues with that as they can't
be nullable/optional.

The parse-member-event structure has been updated to make it easier to work with,
specifically `getObject` is only used when the event is clickable, and there is now a 
join property which makes it easier to join the action and the object.
2022-08-24 10:11:25 -04:00
Daniel Lockyer
9bdba0250a
Collected Offer CRUD actions
refs https://github.com/TryGhost/Toolbox/issues/356

- this allows collection of CRUD events for Offers but we currently don't
  show them in the UI until it's overhauled to avoid being monotonously
  long
2022-08-24 13:24:13 +02:00
Daniel Lockyer
74e6b4bcf7
Collected Tier CRUD actions
refs https://github.com/TryGhost/Toolbox/issues/356

- this allows collection of CRUD events for Tiers but we currently don't
  show them in the UI until it's overhauled to avoid being monotonously
  long
2022-08-24 12:54:56 +02:00
Daniel Lockyer
46cca8364d
Added integration resource linking
refs https://github.com/TryGhost/Toolbox/issues/356

- now we have an easy way to do it, linking the integration resource in
  is trivial
2022-08-23 18:06:12 +02:00
Daniel Lockyer
7f0996d986
Implemented resource linking in Audit Log
refs https://github.com/TryGhost/Toolbox/issues/356

- we have a very crude version of this before but it just wasn't
  maintainable
- one of the first things I did here was to add `include=resource` on
  the API call, so it returns the fields we need without extra API
  requests
- after we have the id/slug, I could build a route and model array
  dynamically, or return null if we can't redirect to the object (it
  doesn't exist)
2022-08-23 17:48:11 +02:00
Daniel Lockyer
9effa119c6 Implemented context on Actions events
refs https://github.com/TryGhost/Toolbox/issues/356

- in order to show data that we might not necessarily still have around
  (ie. when you delete a post, you might want the title), we're going to
  start utilizing the `context` column
- right now, we store the `primary_name` for deleted events, and we also
  store the `setting` `key` and `group` so we can reference it in the
  audit log
2022-08-23 14:58:41 +02:00
Peter Zimon
c82627be60 Added reset functions to Audit log
refs. https://github.com/TryGhost/Toolbox/issues/356

- The page title in Audit log didn't reset the filters and the search value
- Also, the button on the empty list screen didn't work
2022-08-23 11:37:45 +02:00
Daniel Lockyer
43ad4ff814
Removed unused services
- these are not needed
2022-08-22 21:15:21 +02:00
Daniel Lockyer
c459807f9a
Stored action events for settings
refs https://github.com/TryGhost/Toolbox/issues/356

- this enables us to store and filter on actions affecting Settings,
  which will usually be `edited`
2022-08-22 21:12:32 +02:00
Peter Zimon
122ba10114 Updated Activity log list design
refs. https://github.com/TryGhost/Toolbox/issues/356

- The Audit log list had a temporary (POC) design, it needed refinements
2022-08-22 19:15:37 +02:00
Daniel Lockyer
3831d8d479
Fixed pagination in audit log table
- the `created_at` key is stored directly under the object we fetch as
  the last event, rather than a subkey
- this meant we weren't checking the date of the last event correctly,
  which broke pagination
2022-08-22 17:51:34 +02:00
Daniel Lockyer
adaecde430
Split event and resource filtering apart
refs https://github.com/TryGhost/Toolbox/issues/356

- events and resources needed to be filtered and sent to the API
  differently
- this commit splits them apart and wires up the toggles to query params
  and therefore API requests
2022-08-22 17:14:34 +02:00
Daniel Lockyer
30d211fcab
Restricted linking to posts and pages
refs https://github.com/TryGhost/Toolbox/issues/356

- linking is a bit hit-or-miss right now so it's best to only link to
  the resources we can
- this implements a `linkable` attribute on an event to indicate if we
  can link to its page or not
2022-08-22 16:09:56 +02:00
Daniel Lockyer
68030d4d52
Added basic filtering and searching to audit log
refs https://github.com/TryGhost/Toolbox/issues/356

- this adds some basic filtering and search across the audit log events
- not all of it works, but filtering by objects and searching for users
  should work
2022-08-22 15:41:04 +02:00
Daniel Lockyer
66438ff4ed
Fixed capitalization of API key
- using the resource type verbatim wasn't going to work with `api_key`
  because it needs splitting and capitalizing
2022-08-22 15:41:04 +02:00
Daniel Lockyer
7b160493db
Added support for integration actors in Audit Log UI
refs https://github.com/TryGhost/Toolbox/issues/356

- this enables showing when an integration is the actor doing something
- still need to add a fallback for missing icons
2022-08-18 17:00:56 +02:00
Simon Backx
d01557cdf8 🐛 Fixed comments not visible in activity feed
refs https://ghost.slack.com/archives/C02G9E68C/p1660830163171599?thread_ts=1660829884.159749&cid=C02G9E68C

- Feature flag was still used, causing comment events to get filtered out
2022-08-18 15:46:21 +02:00
Daniel Lockyer
3ce7e241a1
Added fallback icon to audit log
- in the event we don't have a specific icon, I've just chosen to show
  an `info` one for now
2022-08-17 14:54:54 +02:00
Daniel Lockyer
83702c7e86
Added resource to data available to audit log
- this allows us to hydrate the post title into the UI
- needs work to support non-post and missing resources
2022-08-17 14:43:01 +02:00
Kevin Ansfield
2d1d810198 Fetched actor record to display real name when listing audit log events
no issue

- switched `parse-audit-log-event` to a class helper to get access to dependency injection
- added `get actor()` to the parsed event object
  - uses the store to find the related user record, returning an already loaded record if it exists otherwise fetches the record
  - allows use of `event.actor.*` in templates because they are promise-aware and will be filled in once the record is loaded
2022-08-17 14:14:47 +02:00
Daniel Lockyer
714611b9fd
Added resource ID to action row
refs https://github.com/TryGhost/Toolbox/issues/356

- this will soon be populated with the actual resource name, if present
2022-08-17 10:53:21 +02:00
Daniel Lockyer
6c2aebbf0c
Added first version of Audit Log UI
refs https://github.com/TryGhost/Toolbox/issues/356

- skateboard version w/ loading data from API, settings button guarded
  by labs, and a basic UI populating a table with info
2022-08-17 10:16:47 +02:00
Simon Backx
407760e1cd Fixed clicking on member in dashboard activity feed comment events
refs https://github.com/TryGhost/Team/issues/1731#issuecomment-1203007918

- The memberId property was not parsed correctly for comment events
- Updated code to fallback on member.id instead of member_id
2022-08-03 13:40:51 +02:00
Simon Backx
235ede719c Updated comment activity feed text and styles
refs https://github.com/TryGhost/Team/issues/1731
2022-08-03 13:35:24 +02:00
Simon Backx
2d5c9ff5d7 Added POC for activity feed comment post name
refs https://github.com/TryGhost/Team/issues/1731

- Includes the post title and url in the activity feed
- For now only implemented on the member page (not yet in remaining 2 activity feeds)
- No styling added
2022-08-02 17:02:42 +02:00
tatsuya-ogawa
3feee8b816 Added missing schedule events to webhook dropdown (#2082)
- these webhook events are not available to choose from in Ghost admin, even though they exist and work
2022-08-02 12:34:30 +01:00
Simon Backx
c9a3211032 Updated comment events to use parent instead of parent_id 2022-07-22 14:34:43 +02:00
Simon Backx
0963da7a2e Added support for comment activity feed events
refs https://github.com/TryGhost/Team/issues/1709

- Hides comment events if lab flag is disabled
- Hides comment events if comments are disabled
2022-07-22 11:52:11 +02:00
Peter Zimon
4d89ddf5bf Added 2 digit pad to fraction prices 2022-05-31 17:38:43 +02:00
Kevin Ansfield
473831ac2b Added image fallback and site icon/title to <GhPostBookmark> (#2401)
no issue

- adds `{{get-setting "key"}}` helper to make settings available in templates without needing a backing class
- updated `<GhPostBookmark>` component
  - if post feature image isn't present, fall back to site cover image
  - add site icon (if present) and title to the details line
  - removed author image

Co-authored-by: Sanne de Vries <sannedv@protonmail.com>
2022-05-18 19:05:27 +01:00
Kevin Ansfield
89f089e439 Fixed incorrect member count and capitalisation in publish options for editors/authors
no issue

- `{{format-number}}` was showing "0" when passed in an empty/nullish string when it should have been showing nothing
- used `{{if-empty}}` to fix capitalisation when the member count is missing
  - previously attempted a CSS-only fix with `:first-letter` and `text-transform: uppercase` but that broke the layout in Safari
2022-05-18 09:42:44 +01:00
Kevin Ansfield
6c079daafa Improved handling of missing member counts in publish flow
no issue

Only Admins/Owners can browse members to get member counts but Editors/Authors are allowed to send email. This means we need to account for the count figures being missing.

- added guard to the total member count fetch in `PublishOptions`
  - guard needed because the failed API request would abort setup
  - when the current user isn't an admin, set the total member count to 1 to avoid email options being disabled
- added guard in the `{{members-count-fetcher}}` resource so we're not triggering API errors and the count is kept as `null` so it's handled automatically if passed to `{{gh-pluralize}}`
- updated `<GhMembersRecipientSelect>` to not show counts (or the surrounding `()`) when the count is `null`
2022-05-11 18:56:29 +01:00