Commit Graph

1978 Commits

Author SHA1 Message Date
renovate[bot]
fe96ce7915 Update dependency ember-infinity to v2.1.2 (#1573)
* Update dependency ember-infinity to v2.1.2
* updated gh-infinity-loader template to match ember-infinity default template

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Kevin Ansfield <kevin@lookingsideways.co.uk>
2020-05-18 09:06:04 +01:00
renovate[bot]
654d373655 Update dependency ember-power-select to v4 (#1528)
* Update dependency ember-power-select to v4
* Fixed trigger component override collision when building

- move the "override" into our own namespace
- update all `<PowerSelect>` usage to explicitly reference our customised trigger component

* Bumped ember-power-datepicker

- bumps `ember-basic-dropdown` sub-dependency
- resolves "Error: Could not find module `ember-compatibility-helpers` imported from `@glimmer/component/index`"
- https://github.com/cibernox/ember-basic-dropdown/issues/551

* Updated trigger to use class syntax

- it's not possible to use `.extend()` on an imported class

* Updated <GhBasicDropdown>

- match updated ember-basic-dropdown code

* Added `autofocus` modifier

- added `ember-modifier` dependency so that we can create our own render modifiers

* Updated <GhSearchInputTrigger> to a glimmer component

* Updated gh-token-input components

* Fixed tests

- wrap `<PowerSelect>` with `<div>` to maintain test selectors
- fixed `<GhBasicDropdown>` not rendering anything due to not having a local template

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Kevin Ansfield <kevin@lookingsideways.co.uk>
2020-05-17 22:35:53 +01:00
renovate[bot]
29a388ad27 Update dependency ember-infinity to v2.1.1 (#1484)
no issue

- fixed template reference
- updated template to match upstream's use of render-modifiers
- removed silencing of `isVisible` deprecation

Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-05-12 09:05:17 +01:00
Kevin Ansfield
59a15a0895 Fixed incorrect validation when member's name is too long
no issue

- the email length validation was conditional on `member.name` rather than `member.email` so if the name was too long both name and email were marked as invalid
2020-05-11 11:40:38 +01:00
Kevin Ansfield
07f24e69f6 Reduced unnecessary waiting in tests
no issue

- fixed `<GhTaskButton>` not resetting after an externally triggered task run such as when pressing Cmd+S
- cleaned up manual timeouts/resets where button reset is now fully handled by `<GhTaskButton>` (these were causing 2.5s waits each time a save occurred in acceptance tests)
- where manual timeouts were required, reduce testing time from >2.5s to 50ms
2020-05-11 11:37:35 +01:00
Liam Williams
06531daf85 🐛 Fixed unselectable routes files in macOS Safari (#1472)
closes TryGhost/Ghost#11472

- adds an explicit `.yaml` to the `accepts` attribute of the routes file uploader to work around Safari only allowing `.yml` to be selected when given the yaml mime type
2020-05-08 12:05:55 +01:00
Kevin Ansfield
a30f0b2851 💄 Adjusted email previews to better represent email behaviour of embed cards (#1554)
no issue

- added `sandbox` attribute which blocks scripts from running inside the iframe
- results in better representation of how embeds will render in emails where scripts are not allowed
2020-05-08 11:54:18 +01:00
Kevin Ansfield
b5e5469410 🐛 Fixed autofocus on password reset screen
no issue

- autofocus was running on both inputs so the "confirm" input was winning out
- updated copy
2020-05-07 10:33:27 +01:00
Kevin Ansfield
5b17a70e8b Update dependency eslint-plugin-ghost to v1.4.0
no issue

- applies fixes for new/updated rules
- disables `ember/no-mixins` rule as we're not able to migrate away yet
2020-05-06 18:07:01 +01:00
Rish
141be13315 Fixed typo in regenerate modal
no issue
2020-05-06 12:48:20 +05:30
Rish
0daf5c1883 Cleaned key regeneration message for Zapier on route change
no issue

- After a successful key regeneration, the success message stayed in Zapier integration even on navigating away to different page, this clears up any message state on away transition
2020-05-06 12:43:29 +05:30
Rish
6b90aafd20 Added regenerate copy tweak for internal Zapier integration
no issue

- Updates dialog copy for confirmation of regenerating internal Zapier integration admin key
2020-05-06 12:36:43 +05:30
Peter Zimon
ae1afac049 Added tooltips for regenerate buttons
no issues.
- added tooltip for icon-only regenerate button in custom integrations and Zapier details screen so that users understand what the button does
2020-05-06 09:02:39 +02:00
Rishabh Garg
2b961df4cb Added regenerate button to integration api keys (#1562)
no issue

- Adds new regenerate button for refreshing custom integration's admin and content api keys
- Adds new regenerate button for refreshing internal Zapier integration's admin key
- Regenerates content or admin API key after confirmation and shows user new key
2020-05-05 23:44:45 +05:30
Peter Zimon
b6aa2ff41f Fixed copy for password reset instructions
no issues.
2020-05-05 15:58:56 +02:00
Nazar Gargol
47a4b9c433 Refactored check with regexp to error type checking
- Changed as per review here: https://github.com/TryGhost/Ghost-Admin/pull/1560#discussion_r420040384
2020-05-06 00:05:19 +12:00
Peter Zimon
39addff34f Added special view for "locked" users when they fail signin (#1561)
refs https://github.com/TryGhost/Ghost/pull/11790

- After user fails to signin due to "locked" being locked a new view with automatic email message and more instructions will be shown to make the password reset process easier.
- Refined instructions screen
- Added icon + animation
- Refined copy

Co-authored-by: Nazar Gargol <nazargargol@gmail.com>
2020-05-05 23:27:19 +12:00
Kevin Ansfield
76cbdbaee7 🐛 Improved scrolling of members screen in Firefox
refs https://github.com/TryGhost/Ghost/issues/11755

- adjusted estimated height to match actual rendered size and enabled `staticHeight` to switch to a simpler algorithm inside vertical-collection
- prevents some jank seen when scrolling where rows jump
2020-05-01 18:17:47 +01:00
Nazar Gargol
14122fdb39 Added response parameter to postMessage data
no issue

- The 'response' property is needed to make the receiving client generic in regards of what data format has to be returned as a result of the call. For example with this change the 'response: subscription' meant there should be an incoming 'message' event as a response to this call with 'subscription' key into it's data
2020-05-01 17:34:55 +12:00
Peter Zimon
be99251f7f 💄 Improved members chart Y range
no issue.

- improved the Y axis of members list chart to only take the visible range into consideration. This way the change in a period is more understandable
- added labels to Y axis so that the range is clearer
2020-04-28 13:59:45 +02:00
Peter Zimon
21f7013c38 Set auto reset for impersonate copy link button
no issue.
- updated copy link button in member impersonate modal to auto reset after clicked so that people understand they can click the button again plus it's consistent with all other task buttons
2020-04-27 16:49:15 +02:00
Rish
08458f74a9 💄 Added reset behavior for test email newsletter button
no issue

This change adds auto-reset behavior to test email newsletter button by resetting it to default state - "Send test email" - after sending an email newsletter. Previously the button stayed in "Email sent" state after sending email which can be misleading when trying to send another test mail.
2020-04-27 11:39:18 +05:30
Kevin Ansfield
837753e225 Sped up tests by reducing reset button timeout whilst testing
no issue

- tests will wait for everything to settle before continuing or ending so the 2.5sec timeout on task button resets was adding a lot of extra time
- use Ember's environment to see if we're testing and reduce the reset timeout from 2500ms to 50ms
2020-04-23 20:20:19 +01:00
Kevin Ansfield
9074181461 Fixed publish menu button state not reverting
closes https://github.com/TryGhost/Ghost/issues/11757

- add `autoReset=true` option to task button so that success buttons after switching publish menu state will reset after a few seconds
2020-04-23 19:51:19 +01:00
Kevin Ansfield
e887af36d7 🐛 Fixed ability to schedule emailed post when date is incorrect
refs https://github.com/TryGhost/Ghost/issues/11757

- moved schedule date validation to occur before we short-circuit for display of the email confirmation modal
2020-04-23 19:43:10 +01:00
Peter Zimon
274babc6e3 Refined email card help styles
no issue

- refine email card help copy, icon and container styles
2020-04-23 14:46:44 +02:00
Kevin Ansfield
625dd9a471 Added help text to email card
no issue

- show help at bottom of email card in edit mode with text explaining that the email card will only be included in emails
- set default content of the email card that includes the `{first_name}` replacement string
- changed behaviour to place cursor at end of the card contents when entering edit mode
2020-04-23 12:11:23 +01:00
Nazar Gargol
f1986b443b Fixed default BMA iframe state
- Upgrade flow should only be set to truthy through a direct setter
2020-04-22 18:14:58 +12:00
Nazar Gargol
e5ff5c2869 Added billing controller for explicitness
refs d691b15

- Additionally removed redundant super call
2020-04-22 16:44:34 +12:00
Naz
d691b15f82 Added handling for /billing route with query param passing to BMA (#1551)
no issue

- This change allows to open BMA popup using external link and pass in information using query parameters. Main use case being redirects from external sites
2020-04-22 15:35:56 +12:00
Rish
cd832a15bb Fixed members loading spinner alignment
refs https://github.com/TryGhost/Ghost/issues/11755

Loading spinner on members screen was not vertically centered, this updates the spinner position.
2020-04-21 13:42:34 +05:30
Nazar Gargol
4d23d0f0ca Added billing "update" CTA button
no issue

- Added billing update button to navigation menu. Ghost-Admin communicates with billing iframe and displays this button based on the plan data that iframe returns
- Ghost-Admin communicates with an iframe using same mechanism as with token exchange - throu `window.postMessage` API
2020-04-21 18:54:29 +12:00
Peter Zimon
e6998afb40 Icon fixes on integrations night shift
refs. https://github.com/TryGhost/Ghost/issues/11342

- replaced Zapier and Amp logos for SVGs with transparent background so that there's no white background in night shift
- inverted Unsplash icon in night shift (similarly to Mailchimp, Typeform etc.)
- replaced ellipsis icon for SVG and handled night shift color change
- removed unnecessary icon container drop shadow in integration detail pages for night shift
2020-04-20 17:51:56 +02:00
Nazar Gargol
11e59e1f7e Moved billing page to a popup
no issue

- To simplify styling and give a better separation feeling from UI perspective
2020-04-09 17:26:11 +12:00
Peter Zimon
48bbb23174 Added email indicator icon, card menu style bugfix
no refs.
- added indicator icon to appropriately show which card is a newsletter email one
- fixed bug of card menu staying the same height when triggered via "/" menu
2020-04-08 14:01:04 +02:00
Peter Zimon
9ecc808c3a Added email icon to Koenig card menu
no refs.
- added appropriate icon to Koenig menu to support newsletter email cards
2020-04-08 13:52:48 +02:00
Rishabh Garg
c3883d4c6f 💄Updated save buttons to reset state (#1522)
* Updated save buttons to reset state

no issue

Currently the save buttons across Admin don't auto-reset to idle state after success/failure on run which can give false impression once user changes any value. This PR auto-resets the button to idle state after a fixed timeout if no subsequent action is performed as a short term UX improvement.

* Fixed success check for auto reset

* Updated timeout value

* Added explicit save button reset for pages

* Updated save buttons to reset via shortcut

Auto-reset for save buttons wasn't working if not done through manual click on task button previously, this handles by splitting the original save task in controller to handle shortcut saves.

* Updated reset check for only successful tasks

* Added save reset to code-injection and design settings

Co-authored-by: Peter Zimon <peter.zimon@gmail.com>
2020-04-06 16:17:28 +05:30
Kevin Ansfield
a9b9b2f3ae Added first draft of email-only card
no issue

- adds "Email" card to the card menus when developer experiments is turned on
- adds `<KoenigTextReplacementHtmlInput>` implementing most of Koenig except:
  - uses html as it's input/output format
  - replaces backtick "code" formatting with `{replacement}`
  - no headings
  - no cards at all
  - minimal toolbar but all formatting is still available using markdown text expansions or keyboard shortcuts
2020-04-06 10:56:40 +01:00
Peter Zimon
44e0376792 Fixed toaster content spacing
no issue
- fixed spacing for title, description and actions on toasters
2020-03-18 13:43:11 +01:00
Nazar Gargol
cfa766c4e4 Cleaned up use of members isPaid flag
refs https://github.com/TryGhost/Ghost/pull/11651

- The flag is being removed from the backend, so can be safely removed on client as well
2020-03-16 13:44:14 +08:00
Nazar Gargol
ecf718b028 🐛 Fixed complimentary plan currency change when yearly currency was changed
refs https://github.com/TryGhost/Ghost/issues/11649

- The bug was changing all complimentary plan prices to the value of yearly.
- This is another point to putting in place validation of plan setting object on the server side so we don't accidentally allow values like this to slip through
2020-03-13 11:59:18 +08:00
Fabien O'Carroll
da3f92fac4 Updated URL and response handling for identity token
no-issue

This just keeps the admin in line with the changes made in
https://github.com/TryGhost/Ghost/pull/11559/files
2020-03-12 13:35:57 +01:00
Nazar Gargol
c341cf4638 🐛 Fixed complimentary plan creation when there was none in plans collection
closes https://github.com/TryGhost/Ghost/issues/11649
closes https://github.com/TryGhost/Ghost/issues/11648

- When complimentary plan with new currency is created for the first time it doesn't have a reference to a previously default "Complimentary USD" plan which caused problems when switching currencies for the first time.
- Value for complimentary plan taken from  https://github.com/TryGhost/Ghost/blob/3.10.0/core/server/services/members/config.js#L8-L13
2020-03-10 13:39:38 +08:00
Peter Zimon
7678c410f5 Updated suspended badge for staff list
Displaying the role of suspended staff users is misleading, giving the false impression that those users still have access to the publication.

no refs.
- updated label to "Suspended" for all suspended staff user
2020-03-05 12:12:09 +01:00
Peter Zimon
0b5b93376e Fixed arrow position bug on tags list
no refs.
- fixed size issue for arrow cell on tags list screen in Firefox
2020-03-05 11:36:35 +01:00
Nazar Gargol
1c9a4399e0 Added support for setting custom currency on member's plans
refs c0512e30bb

- Adds a dropdown allowing to select and set custom currency.
- At the moment we don't have a specific way to interface with the members configuration API so all values are set directly on existing "config JSON". Ideally we should add more validations and be more precise what values can be set for the `stripeProcessor.config.*` values.
- Saves selected currency in `stripeProcessor.config.currency` variable.
2020-03-04 13:31:39 +08:00
Fabien O'Carroll
ee4c1fc927 Added billing route and iframe behind config
no-issue

* Updated the iframe src

* Moved billing behind config

* Transition to home route for missing billing config

* Replaced jquery element selection with native
2020-03-02 10:36:54 +05:30
Peter Zimon
95fed28028 Refined members list mobile styles
no refs.
- fixed mobile styles for members list to comply with locaiton info
2020-02-27 16:32:32 +01:00
André Borud
377084a60d 🐛 Fixed redirect to posts list when deleting a page (#1486)
no issue

- success routine when deleting a post/page was not taking into consideration the type of record being deleted
  - deleting a post should keep previous behaviour of redirecting to posts list
  - deleting a page should redirect to the pages list
2020-02-27 15:19:31 +00:00
Peter Zimon
74b5327dbe Member geolocation design refinements
no refs.
- refined copy and styles for member list
- added geolocation data for member detail screen
2020-02-27 15:14:26 +01:00
Kevin Ansfield
de70ef1e25 Fixed template error 2020-02-27 13:00:57 +00:00
Kevin Ansfield
13a9a2802b Added member's geographic location to admin
no issue

- added `geolocation` attribute to member model with json-string transform
- prevent geolocation from being sent back to the API in member serializer
- add "Location" column to members list
  - if country is "US" then display "{State}, US" otherwise show full country name such as "United Kingdom"
  - displays "-" if no geolocation data has been collected for the member
2020-02-27 12:56:26 +00:00
Kevin Ansfield
b5d560750f Refactored <GhMemberAvatar> to glimmer component
no issue

- cleaned up property access in template to differentiate between passed-in args and component-defined properties
- tidied up logic in `backgroundStyle` and `initials` getters
2020-02-27 12:33:33 +00:00
Kevin Ansfield
ab8334dae2 Refactored <GhMembersListItem>
no issue

- switched to using a glimmer component
  - cleaned up property access in the template
  - used helpers for basic display logic in the template
- removed unused computed properties, aliases, and injected services
2020-02-27 12:17:48 +00:00
Peter Zimon
4b5f538552 Updated notifications design (#1498)
no issue

- updating toaster design for better discoverability
2020-02-27 09:19:29 +00:00
Naz
ff4fd2fc9a Added member impersonation (#1497)
refs b0ff1e7cac

- Adds "impersonate" button which would be triggering a popup window with "login url" that allows to log in as a member
2020-02-27 11:50:15 +08:00
Nazar Gargol
ed14ffed02 Hidden subscriptions section on member profile when no connected Stripe
no issue

- There is no way to turn on "Complimentary" subscription when Stripe is not connected
- There is no constructiove information that can be shown about subscriptions
2020-02-24 17:08:47 +08:00
Rish
7f465278c6 Fixed lint
no issue
2020-02-24 13:39:59 +05:30
Rishabh Garg
fa577adcdb Updated send email messaging for Editors (#1505)
no issue

Fixes incorrect member count for Editors when trying to publish/schedule post with send email.

Note: This is a short-term fix till we fix fetching member data for Editors for proper count.
2020-02-24 13:22:39 +05:30
Rishabh Garg
491c5abdc9 Allowed editors to send email on publish (#1504)
no issue

So far, only owners or Admins were allowed to control the send email setting while publishing/scheduling a post. This change allows Editors to see the setting as well and toggle as needed.

No changes on the API side were needed.
2020-02-24 12:20:29 +08:00
Peter Zimon
b0b01acd03 Updated style definition for staff dropdowns
no refs.
- updated style for staff dropdown to make it generic for reuse
2020-02-21 10:20:08 +01:00
Nazar Gargol
13d9611b4c Enabled editing email field on member profile page
refs b9db9fa15e

- Now that Admin API allows to edit email, there is no reason to keep this field disabled
2020-02-21 16:12:35 +08:00
Peter Zimon
64e4ea16e4 🐛 Fixed visual bug for members label dropdowns
no refs.
- fixed spacing issue for member label dropdown edit icon
- added max width to member label dropdown
2020-02-14 12:39:36 +01:00
Rishabh Garg
d115204d9f Added labels for Members (#1477)
no issue

refs TryGhost/Ghost#11538

* Added members label handling v1

* Added members label dropdown in list screen

* Updated selected labels and member list UI refactor

* Added v1 label add/delete modal

* Added add label modal v1

* Fixed disabled check for new label save

* First stab at member filters layout

* Updated member detail screen design

* Member detail refinements

* Added basic editing for member labels

* Fixed label deletion from members list

* Updated filtered list header

* Refinements for dropdown and empty filter state

* Refined label modal

* Updated member labels fetch logic

* Added custom dropdown component for labels

* Refined style for dropdown

* Refined dropdown button

* Restructure and refine members dropdown styles

* Added selected indication to dropdown

* Fixed dropdown footer style

* Removed member label placeholder

* Removed add label from member list actions

* New label refinements

* Added confirmation modal for label delete

* Added duplicate validation check for labels

* Updated validation check with slug

* Updated copy

* Updated actions dropdown copy

* Fixed visual glitch of dropdown on FF

* Hide scrollbar for labels dropdown

Co-authored-by: Peter Zimon <peter.zimon@gmail.com>
2020-02-14 15:04:01 +05:30
Peter Zimon
a376219453 🐛 Fixed visual bugs on integration details screen
no refs.
- fixed misalignment of icon container and icon
- fixed icon color for "Copied" link status indication
2020-02-12 09:33:27 +01:00
Peter Zimon
441146d316 🐛 Style fix for custom views
no refs.
- fixed misalignment of expand button for site custom views
2020-02-10 16:05:57 +01:00
Peter Zimon
4ce559a169 Updated staff delete modal copy 2020-02-10 12:41:35 +00:00
Peter Zimon
fc46a97b18 Updated copy 2020-02-10 12:41:35 +00:00
Peter Zimon
0382ea7336 Added note about site backup to delete popup 2020-02-10 12:41:35 +00:00
Kevin Ansfield
9186280ac9 updated to use new model._meta
- use model._meta to access the meta object in the delete response
- removed unused `_deleteUser` method
- move the success/failure method bodies into the main `deleteUser` task to improve readability
- added a timeout after calling `_exportDb()` so that the iframe is not removed from the DOM immediately after it's `src` value is set due to a transition away from the member screen
2020-02-10 12:41:35 +00:00
Kevin Ansfield
7bb24df7b9 Added hacky method for accessing meta value of single-record requests
no issue

- Ember Data does not support accessing meta data included in the response to single-record requests such as save/delete
- approach to allow it taken from https://github.com/emberjs/data/pull/4077#issuecomment-200780097
2020-02-10 12:41:35 +00:00
Nazar Gargol
f42f2a29a3 Rewrote delete into generator function
- Wasn't necessary, but thought this might fix the problem when there's no 'meta' in the reponse object
2020-02-10 12:41:35 +00:00
Nazar Gargol
70524c55a4 Basic flow for triggering db export on user deletion 2020-02-10 12:41:35 +00:00
Nazar Gargol
21aaf7a46a Renamed members subscribed flag label
no issue

- This change comes to keep the name consistent to the naming used in the CSV import file - `subscribed_to_emails`
2020-02-04 13:27:51 +08:00
Peter Zimon
767ce72212 💄Added shadow to What's new footer
no refs.
- improved discoverability of having more content/scrollable area by adding a small shadow to the footer
2020-02-03 20:58:20 +01:00
Peter Zimon
1756180025 🐛 Fixed mobile style bug for sidebar views
no refs.
- fixed the size of the expand/collapse chevron in sidebar for mobile
2020-02-03 20:18:51 +01:00
Kevin Ansfield
a3c71b8ba8 Fixed query params not resetting when deleting a custom view
no issue

- added a `transitionTo` after deleting a custom view that transitions to the `posts` route with default query params
- refactored `reset-posts-query` helper to a more generic `reset-query-params` helper
  - moved default query params definitions to this helper and expose them so we have a single source of truth
  - exposed `resetQueryParams()` function from the helper for use outside of templates
  - adjust the function and helper behaviour to accept the route name as the first param so that `router.currentRouteName` can be used as a generic reset
2020-02-03 16:38:14 +00:00
Peter Zimon
2c137f0b38 Refined sidebar view icons
no refs.
- replaced icons for custom views for circles so it's more scannable
2020-02-03 14:45:18 +01:00
Kevin Ansfield
1adae0d041 Fixed missing default views when user.accessibility is null
no issue

- removed an old guard that was exiting early when `user.accessibility` was null which meant that the default views were never being inserted into the custom views list
2020-02-03 12:34:23 +00:00
Kevin Ansfield
7c205c1a55 Fixed "Authorization failed" errors during setup and signin
no issue

- the `custom-views` and `navigation` services would trigger their observers immediately when `this.session.user` changed but that would occur before authentication had fully finished which was resulting in the `this.session.user` access triggering a request with no cookie/an old cookie set and causing a 403 error that interrupted the setup and authentication flows
2020-02-03 12:27:18 +00:00
Kevin Ansfield
2226861e17 🐛 Fixed deletion of custom integrations
no issue

- the named arguments for the `<GhTaskButton>` in the integration deletion modal were missing the `@` prefix
2020-01-30 16:48:37 +00:00
Kevin Ansfield
2a77c0fe51 Added default and custom post views (filters) to the admin sidebar (#1474)
no issue

- list custom post views in collapsable sidebar navigation
  - default views: Draft, Scheduled, Published (except for contributors)
  - record expanded/collapsed state of the navigation menus in user settings via new `navigation` service
- adds `customViews` service that manages custom views
  - provides list of default views
  - gives access to "active" custom view based on current route and query params
  - manages loading/saving of custom views to user settings
- show "Add view" button in the content filter when the posts list has been filtered
- show "Edit view" button in the content filter when the posts list filter matches a saved view

Co-authored-by: Peter Zimon <peter.zimon@gmail.com>
2020-01-30 15:35:36 +00:00
Naz Gargol
76c1341666 Added "Complimentary" plan toggle (#1476)
refs TryGhost/Ghost#11537

- Adds support for "Complimentary" plan toggle only when editing an existing member. The same functionality for adding a new member was left out intentionally for simplicity sake. 

Co-authored-by: Peter Zimon <peter.zimon@gmail.com>
2020-01-28 11:27:19 +07:00
Kevin Ansfield
1e77a4c915 Removed <GhDownloadCount>
no issue

- the count.ghost.org service is being shut down
- replaced the fetch+poll component with a hardcoded figure
2020-01-27 09:51:45 +00:00
Rish
32cceb8a54 Fixed members chart dropdown style
no issue

We switched to angle bracket syntax and some PowerSelect properties were not properly auto configured here which enabled search box on members chart range dropdown
2020-01-23 13:46:37 +05:30
Peter Zimon
397e18c7c0 🐛 Fixed dark mode link input bug
no refs.
- fixed style bug for link input in Koenig having no blue border in dark mode
2020-01-21 12:27:30 +01:00
Peter Zimon
d2ac367371 🐛 Fixed button style for staff creation
no refs.
- Fixed Create button being visually detached and incorrect size on the Create (staff) account screen
2020-01-21 12:14:35 +01:00
Kevin Ansfield
d873f929e1 Changed content filters to show "unknown" if a deleted tag/author is selected
refs https://github.com/TryGhost/Ghost-Admin/pull/1474

- show some indicitive text rather than a blank dropdown button when type/author/tag/order query param is present but doesn't match something in our data sets (eg, if a tag/author has been deleted or a query param has been incorrectly typed)
2020-01-20 15:40:32 +00:00
Kevin Ansfield
9cad64cd76 Fixed toaster notification not clearing
no issue

- we switched to using native event listeners rather than jQuery but were still looking for the jQuery-specific `event.originalEvent`
2020-01-20 15:30:24 +00:00
Kevin Ansfield
ba4c53134f Upgraded eslint-plugin-ghost and fixed new linter errors
no issue

- update imports for `@ember-data` package (https://github.com/emberjs/rfcs/blob/master/text/0395-ember-data-packages.md)
- use `computed.reads` where applicable (https://github.com/ember-cli/eslint-plugin-ember/blob/master/docs/rules/require-computed-macros.md)
- fix usage of `scheduleOnce` so that functions are only scheduled once (https://github.com/ember-cli/eslint-plugin-ember/blob/master/docs/rules/no-incorrect-calls-with-inline-anonymous-functions.md)
2020-01-16 17:01:12 +00:00
Kevin Ansfield
2231dd84c2 Migrated to <AngleBracketSyntax /> (#1460)
no issue

Ember is migrating to `<AngleBracketSyntax />` for component invocation, see https://github.com/emberjs/rfcs/blob/master/text/0311-angle-bracket-invocation.md

We were in a half-way situation where some templates used angle bracket syntax in some places, this PR updates templates to use the syntax everywhere.

This simplifies the rules for what template code is referring to...

`<Component>` = a component
`{{helper}}` = a helper (or locally assigned handlebars variable)
`{{this.foo}}` = data on the template backing context (a component/controller)
`{{@foo}}` = a named argument passed into the component that the component backing class has not modified (note: this commit does not introduce any named arguments)

- ran codemod https://github.com/ember-codemods/ember-angle-brackets-codemod on the following directories:
  - `app/templates`
  - `lib/koenig-editor/addon/templates`
- removed positional params from components as angle bracket syntax does not support them
  - `gh-feature-flag`
  - `gh-tour-item`
  - `gh-cm-editor`
  - `gh-fullscreen-modal`
  - `gh-task-button`
- updates some code that was missed in 3c851293c1 to use explicit this
2020-01-16 15:14:03 +00:00
Kevin Ansfield
0f8610a6e9 Extracted duplicated posts/pages filter into a component
no issue

- posts and pages (and their corresponding `-loading` counterparts) templates were all duplicating a lengthy section of handlebars
- extracted the duplicated handlebars into a template for easier design changes or upgrading of `ember-power-select`
- moved generation of the "selected" CSS classes into the template to clean up code in the controller
2020-01-15 15:15:20 +00:00
Kevin Ansfield
7c7c4962f9 Upgraded ember-power-* addons (#1459)
no issue

- bump deps
- adjust usage for breaking changes... 
  - https://github.com/cibernox/ember-power-select/blob/master/CHANGELOG.md#300-beta1
  - https://github.com/cibernox/ember-basic-dropdown/blob/master/CHANGELOG.md#200-beta3
  - https://github.com/cibernox/ember-power-datepicker/blob/master/CHANGELOG.md#070
- update overridden component and template files to match latest addon code
  - switch to class syntax w/decorators
  - adjust for angle bracket syntax
2020-01-15 13:53:51 +00:00
Kevin Ansfield
4d5c43305b Removed deprecated usage of this.$() in components
no issue

- converted remaining uses of `this.$()` that I could find over to native DOM
- deprecation is still silenced for now because both `liquid-fire` and `liquid-wormhole` trigger it
2020-01-10 15:12:39 +00:00
Kevin Ansfield
3ac4de6747 Cleaned up more unused code in <GhTagSettingsForm>
refs 704cbcfb4d

- `reset()` method was previously removed as it's no longer needed
- supporting code for calling that method was missed in the previous cleanup
2020-01-10 14:56:43 +00:00
Kevin Ansfield
f271415626 Enabled manual typing of post publish dates (#1431)
*  Enabled manual typing of post publish dates

closes https://github.com/TryGhost/Ghost/issues/9256

- stores the typed date internally to the component until
  - Enter is pressed whilst focused
  - Ctrl/Cmd+S is pressed whilst focused
  - the input loses focus
- shows an error message if the typed date is not in the correct format or is invalid
- stops Ctrl/Cmd+S propagating if the typed date is not in the correct format or is invalid
- as long as the date is valid it calls the `setDate` action when the input loses focus, Ctrl/Cmd+S or Enter is pressed
- prevents publish being triggered in the publish menu if an invalid date is entered
- resets any invalid state in the PSM when it's closed
- manages focus when using <kbd>Tab</kbd>
2020-01-10 14:25:59 +00:00
Kevin Ansfield
704cbcfb4d Cleaned up unused code in <GhTagSettingsForm>
no issue

- the tag screen is now separate from the index so the code needed for handling switches between main/meta panes and scroll resets is not used and no longer needed
- tidies up indentation in the template
2020-01-10 14:14:55 +00:00
Kevin Ansfield
190f2e905d Fixed Ember Data error when navigating to Staff screen
no issue

- if only some roles have been loaded, such as from embedded user records in posts, navigating to the Staff screen when invites exist for roles that have not yet been loaded would result in an Ember Data error
- the error occurs because we use `invite.role.*` in the template but we've specified `{async: false}` in the `belongsTo` relationship for `invite.role` which prevents Ember Data automatically querying the API
- by always fetching the roles list before fetching the invites list we prevent the error but we do introduce an extra API request in some circumstances
2020-01-10 13:53:58 +00:00
Kevin Ansfield
a862cb6b6a Unsilenced deprecations that are no longer triggered
no issue

- cleaned up the `deprecation-workflow.js` file by removing deprecations that are no longer being triggered by our test suite or general app usage (if they are still triggered in untested areas it will be useful to see the logs)
- updated usages of `{{gh-text-field}}` to use it's `shouldFocus` attribute rather than directly overriding it's `autofocus` computed property
2020-01-09 17:20:13 +00:00
Kevin Ansfield
3c30e73701 Fixed typo in email confirmation modal 2020-01-08 16:44:43 +00:00