Commit Graph

2386 Commits

Author SHA1 Message Date
Sanne de Vries
27cc99c907 Fixed issues for member details mobile view (#1807)
* Fixed issues for member details mobile view

No-ref

- Changed order to display feed at the bottom
- Displayed heading and value vertically between 1400px and 1160px
- Displayed "Complementary plan" copy and switch vertically between 1400px and 1160px
- Added margin below "Continue subscription" button
- Prevented date in feed to wrap

* fixed tests

Co-authored-by: Kevin Ansfield <kevin@lookingsideways.co.uk>
2020-12-16 10:04:33 +01:00
Kevin Ansfield
a3b2f2072a 🐛 Fixed clipped tooltips in member activity feed after showing all
no issue

- liquid-fire containers (inserted by `{{#liquid-if}}`) have `overflow: hidden` applied which means the absolutely positioned tooltips that leave the container are clipped or in some cases not visible at all
- adding `class="show-overflow"` to `{{#liquid-if}}` adds the class to the top-level `.liquid-container` element allowing us to alter the behaviour slightly in CSS by making use of the `.liquid-animating` class that is added whilst the animation is in progress. By only applying `overflow: hidden` whilst animating we can keep the reveal whilst eliminating the clipping when the animation finishes
  - does not work in all cases and can introduce jankiness in others where the visible overflow causes positioning changes
2020-12-11 11:04:18 +00:00
Sanne de Vries
20d0ef2fe7 Changed tooltip on hovering schedule state in post list from uppercase to capitalised 2020-12-11 09:49:07 +01:00
Sanne de Vries
c53363586c Fixed date alignment in activity feed on mobile 2020-12-11 09:41:10 +01:00
Kevin Ansfield
ca956981c3 Fixed open rate appearing twice in posts ordering dropdown
no issue

- sometimes the controller's init method can be triggered twice so a guard was added to ensure we're not re-adding the same option
2020-12-10 15:14:13 +00:00
Sanne de Vries
e4c4237365 Fixed overflow issue for ID and email in member Stripe info 2020-12-10 15:33:12 +01:00
Sanne de Vries
57dc3ca115 Changed icon color for received emails in member feed 2020-12-10 15:06:45 +01:00
Kevin Ansfield
c84282d5da Added member activity feed icon color classes
no issue

- use green for normal activities and red for failed/undesireable activities
2020-12-10 14:01:11 +00:00
Sanne de Vries
2453f6afbd Added activity feed to member details screen (#1796)
closes https://github.com/TryGhost/Ghost/issues/12461

Design changes:
- added activity feed to member details page
- rearranged Stripe info to display on the right
- added toggle buttons for Stripe subscription and customer info
- added box to display activity feed for received and opened emails

Functionality changes:
- added `queryRecord()` to member adapter so `queryRecord('member', {id: x})` will hit `/members/:id/?query` instead of `/members/?id=x&query`
- updated member route to query member with `?include=email_recipients`
- added `EmailRecipient` model for access to event timestamps and email relationship setup
- added `<GhMemberActivityFeed>` component that accepts an `EmailRecipient` array and converts that into an activity list
- added support for `@model=emailInstance` to the email preview modal
- fixed a timing issue with email preview that could result in it showing blank content until the mobile/desktop toggle is used
- fixed sometimes blank member location

Co-authored-by: Kevin Ansfield <kevin@lookingsideways.co.uk>
2020-12-10 11:38:38 +00:00
Peter Zimon
be0ad730e0 Copy fix for member import errors
no refs.
- removed full stops from member import error messages
2020-12-10 12:15:07 +01:00
Rishabh Garg
69782e7aca Updated UI for empty member import (#1801)
no issue

- Disabled import button if mapping screen has 0 members to be imported
- Updated UI logic for no-member upload case
- Used bullet list for email summary
2020-12-10 16:33:56 +05:30
Kevin Ansfield
65129a0d9f Fixed missing email received/opened count when creating new member
no issue

- adds default value of 0 for `member.{email_count,opened_email_count}` to match server-side behaviour and allow consistency in the UI
2020-12-10 10:15:42 +00:00
Rishabh Garg
f068e40723 Added new members CSV importer (#1797)
no refs
depends on https://github.com/TryGhost/Ghost/pull/12472

The members CSV importer gets an overhaul and works with new importer module in members service, performing the import in a background job when the import will take too long to complete in a reasonable time and send an email with data on completion. Also includes updated CSV mapping UI and error handling to allow easier import from different type of exports.

Co-authored-by: Fabien O'Carroll <fabien@allou.is>
Co-authored-by: Peter Zimon <zimo@ghost.org>
2020-12-10 01:02:31 +05:30
Sanne de Vries
4b51ae8705 Fixed responsive layout for members list 2020-12-09 19:10:12 +01:00
Sanne de Vries
3adcf2b5d8 Fixed font color bug for email on member details page 2020-12-09 17:23:25 +01:00
Sanne de Vries
ecfb77b980 Added email stats overview to member details page (#1795)
refs https://github.com/TryGhost/Ghost/issues/12461

- Added "Emails received", "Emails opened", and "Avg. open rate" to member details
- Adjusted visual display of avatar, name and email. Made email a mailto link
- Rearranged Name and Email fields to reduce height
- Changed height of the notes textarea

Co-authored-by: Kevin Ansfield <kevin@lookingsideways.co.uk>
2020-12-09 13:26:00 +00:00
Sanne de Vries
ffe0f84700 Added open-rate column and ordering to the members list (#1790)
closes https://github.com/TryGhost/Ghost/issues/12421

- added `emailOpenRate` property to member model
- added open-rate column to the members list
  - hidden when email analytics is disabled
- added `{{feature "flag"}}` helper so feature flags can be checked in templates without injecting the feature service into the backing class
- added `order` query param to the members controller/route and wired it into the data fetching routine
- added order dropdown to the filter bar with "Newest" (default) and "Open rate" as the two options
  - whole dropdown is hidden if email analytics is disabled

Co-authored-by: Kevin Ansfield <kevin@lookingsideways.co.uk>
2020-12-08 19:23:57 +00:00
Kevin Ansfield
84aaa5224c Moved email open rate ordering behind analytics flag
refs https://github.com/TryGhost/Ghost/issues/12420

- email analytics can be disabled, when that's the case it doesn't make sense to allow posts to be sorted by open rate
2020-12-04 14:08:48 +00:00
Kevin Ansfield
439ba03053 Added open rate order option to posts list
closes https://github.com/TryGhost/Ghost/issues/12420

- adds "Open rate" to the available ordering options in the posts list order dropdown
- amends pages controller to have it's own order list because pages can't be ordered by open rate
2020-12-04 10:30:03 +00:00
Sanne de Vries
70b34432c8 Fixed copy for open-tracking settings 2020-12-02 21:31:11 +01:00
Peter Zimon
b616a839a9 Email settings preview refinements (#1788)
- fixed sizes for email preview area
- replaced static values with dynamic ones
- replaced radio button with font selector
- fixed footer textarea styles
- refined styles
- refined copy
2020-12-02 13:12:41 +01:00
Kevin Ansfield
ca97f84cad Added emailAnalytics feature flag
no issue

- email analytics feature has a potential to be resource-intensive so it may be switched off via config, when this is the case we don't want to show stats in the admin that are out of date or won't be added/updated
- fixed page link titles saying "Edit this post" instead of "Edit this page"
2020-12-02 11:47:34 +00:00
Kukhyeon Heo
8e219f35c9 🐛 Fixed infinite spinner when admin login attempt fails (#1755)
closes TryGhost/Ghost#12189

- This bug happened because authenticate function always returned success(true) even when it is failed.
2020-12-01 14:32:59 +00:00
Sanne de Vries
8467bf025b Changed font styling for email stats in posts list 2020-11-30 10:14:27 +01:00
Sanne de Vries
a2a98b575f Added email open rate to posts list in admin (#1772)
no issue

- added "Sends" and "Opens" columns to the posts list to see newsletter performance at a glance
- "Sends" will show the type of members sent to (free, paid, all) as a tooltip
- "Opens" shows open rate by default and total opens on hover
2020-11-26 17:19:05 +00:00
Rishabh Garg
1dd2b33499 Updated Stripe Subscription status label handling (#1784)
refs https://github.com/TryGhost/Ghost/issues/12256

* Replace `_` in stripe's status with space to setup proper status label for subscriptions
* Displayed subscription status for cancelled subscriptions

Co-authored-by: Fabien O'Carroll <fabien@allou.is>
2020-11-25 10:45:18 +00:00
Peter Zimon
f476c268b5 Zapier templates update (#1783)
- updated Zapier templates page to show the most relevant Zaps instead of the latest
- fixed design regression in Slack, Amp and Unsplash integration pages
2020-11-25 11:31:15 +01:00
Fabien 'egg' O'Carroll
9cd6ed06a7 Added cancellation reason to Members UI (#1782)
refs https://github.com/TryGhost/Ghost/issues/12403

This is only displayed when it is present, so as not to clutter the UI
unless it's required.
2020-11-24 10:20:21 +00:00
Sanne de Vries
50a423ed2b Added toggle in settings to enable open-tracking configuration (#1777)
closes https://github.com/TryGhost/Ghost/issues/12390
requires https://github.com/TryGhost/Ghost/pull/12404

- Added toggle for open-tracking in settings (Labs > Members > Email section)

Co-authored-by: Kevin Ansfield <kevin@lookingsideways.co.uk>
2020-11-23 18:36:57 +00:00
Daniel Lockyer
0ed99dd0a1 Merged 3.38.3 into master
v3.38.3

* tag '3.38.3':
  v3.38.3
  🐛 Fixed editor unable to handle non-latin IME languages
  🐛 Fixed authors failing to publish post with newsletters
2020-11-23 17:37:19 +00:00
Rish
aec4ee21bc 🐛 Fixed authors failing to publish post with newsletters
no refs

With last release, by default a post has newsletter sending option enabled by default based on default visibility. Since authors don't have permission to see or toggle the email newsletter options, if the newsletter was enabled for them the post publish failed as they lacked permissions to send newsletter. This patches the option by switching off newsletter option when publishing post as an author.
2020-11-23 21:07:34 +05:30
Rishabh Garg
487724e0fe Added support for external urls for redirect (#1778)
refs https://github.com/TryGhost/Ghost/issues/12366

Adds support for saving external URL's for custom redirects and improves error handling to validate on blur/before saving

Co-authored-by: Fabien O'Carroll <fabien@allou.is>
2020-11-23 09:38:29 +00:00
Peter Zimon
660762e100 Added scrolling for Portal settings links
no refs.
2020-11-20 12:02:35 +01:00
Rish
d8dec01edd Added new portal link for free plan
refs TryGhost/Ghost#12365

Portal allows direct free signup link or data attributes, allowing members to directly share or link to only free plan in Portal popup if available

- A new portal signup link for free plan - `/signup/free`
2020-11-20 15:48:18 +05:30
Fabien 'egg' O'Carroll
b6dfa54b07 Improved UI for custom redirect settings (#1775)
refs https://github.com/TryGhost/Ghost/issues/12366

* Displays URL as absolute, but still stores the path relative to the site 
* Allows pasting absolute URL's or relative
* Does not support external URL's
* Removed redundant "Links" section in Portal settings sidebar

Co-authored-by: Peter Zimon <zimo@ghost.org>
2020-11-20 09:53:08 +00:00
Thibaut Patel
b16b4bcdc7 Added staff personal tokens
refs TryGhost/Ghost#12373
2020-11-20 10:23:19 +01:00
Peter Zimon
3cdb63006a Supported custom redirects for member signup (#1768)
refs https://github.com/TryGhost/Ghost/issues/12366

- added form fields for redirects
- updated CSS to handle scrolling

Co-authored-by: Fabien O'Carroll <fabien@allou.is>
2020-11-19 09:59:51 +00:00
Rishabh Garg
7a0defab17 Added new portal links for plan checkout (#1770)
refs TryGhost/Ghost#12365

Portal now allows direct checkout links for monthly/yearly plans via Portal links or data attributes, allowing members to directly signup to a paid plan. This PR adds -

- A new portal signup link for monthly plan - `/signup/monthly`
- A new portal signup link for yearly plan - `/signup/yearly`

Co-authored-by: Peter Zimon <zimo@ghost.org>
2020-11-18 00:00:46 +05:30
Peter Zimon
b3354c5f67 Fixed copy in newsletter settings
no refs.
2020-11-16 18:44:39 +01:00
Peter Zimon
d03f0f56fb Fixed extra padding in Members settings
no refs.
- removed extra padding when mailgun configuration is not displayed on Members screen
2020-11-16 18:43:38 +01:00
Sanne de Vries
c71413b0f7 Added descriptive line to each menu item in cardmenu 2020-11-16 17:34:40 +01:00
Peter Zimon
7970917872 Updated email recipient checkbox design
no refs.
- changed email recipient checkboxes to switches in the publish menu so that it's nicely balanced
2020-11-16 16:48:42 +01:00
Peter Zimon
c46198f728 Update post email preview design (#1767)
Made post email preview design consistent with the new email settings design preview.

* changed background

* added fake container windows and faux sender/recipient content

* updated mobile and dark mode
2020-11-16 12:16:51 +01:00
Fabien 'egg' O'Carroll
96f096a839 Added support for basic HTML newsletter footer (#1765)
no-issue

This allows users to use basic HTML to customise their newsletter
footer, meaning they can use links, and bold/italic text.
2020-11-16 10:29:32 +00:00
Peter Zimon
8d8a5d8bc3 Updated scroll area for email settings
no refs.
- updated email settings preview scroll area so that now only the content is scrolling not the whole screen
2020-11-13 16:31:21 +01:00
Peter Zimon
44bcf3b46f Updated dark style for email settings
no refs.
2020-11-13 16:05:00 +01:00
Fabien O'Carroll
65b310d500 Renamed footer setting to newsletterFooterContent
no-issue

This is more generic and matches the setting in the backend.
2020-11-13 13:32:31 +00:00
Fabien 'egg' O'Carroll
fafe7d7b74 Added newsletter footer customisation (#1764)
no-issue

This adds support for customising the newsletter footer with plaintext.
Updates the new modal to use Octane, rather than legacy components.
2020-11-13 13:21:42 +00:00
Peter Zimon
b9ae1f6e95 Updated email address in email settings preview
no refs.
- set actual (dynamic) from address in email settings preview
2020-11-13 12:35:56 +01:00
Peter Zimon
37c5f0ce08 Refined newsletter settings modal
no refs.
- set fake sender, site icon and title dynamic
- removed scrollbar for preview window
2020-11-13 12:18:19 +01:00
Peter Zimon
94581a87f8 Added newsletter customisation options (#1756)
no-issue

This adds three initial customisation options for newsletters:
  1. Show/Hide site title and logo
  2. Set font to serif/sans serif
  3. Display a publish with Ghost badge

This is the first step in allowing customisation of the look and feel of newsletters.

Co-authored-by: Rish <zrishabhgarg@gmail.com>
Co-authored-by: Peter Zimon <zimo@ghost.org>
2020-11-12 14:45:22 +00:00
Peter Zimon
28888be650 Updated publishmenu copy
no refs.
- updated newsletter recepient checkbox label
2020-11-12 11:00:10 +01:00
Rishabh Garg
7191fe1558 Added member counts to newsletter publish menu (#1760)
refs 6140a98351

- Adds free/paid member counts to newsletter option in publish menu
- Updates default state for newsletter sending option based on number of members for free/paid
- Updates styling for checkboxes based on enabled/disabled state
2020-11-11 22:38:43 +05:30
Sanne de Vries
38a8a13e4b Fixed border-radius bug in bookmark cards 2020-11-09 13:37:37 +01:00
Rishabh Garg
49b86b466a Allowed sending newsletter to free members only (#1751)
refs 6140a98351

This officially decouples the newsletter recipients from the post visibility allowing us to send emails to free members only.
2020-11-07 00:24:27 +05:30
Peter Zimon
74c008fbb3 Fixed setting buttons alignment regression
refs https://github.com/TryGhost/Ghost-Admin/pull/1736 where a style change caused regression in the action button's alignment on settings screens.

- fixed alignment issues
2020-11-05 10:55:43 +01:00
Rishabh Garg
d534bba348 Enabled Portal settings for all sites (#1748)
refs 8ad11fe082

- Removes Portal settings access from behind flag and includes it by default.

Portal script is now enabled as default, the change here allows Site owners to access Portal settings via Ghost-Admin
2020-11-03 14:38:53 +05:30
Peter Zimon
cf9534f31c Fixed truncated label names in members list
no refs.
- fixed Import related labels being truncated in the label filter dropdown list on the Members screen
2020-10-29 18:31:59 +01:00
Sanne de Vries
64e1f74033 Adjusted cardmenu styling for dark mode
No issue

- Changed snippet icon fill
- Changed section border color
- Deleted white corners on bookmark icon
2020-10-28 14:55:34 +01:00
Sanne de Vries
8b26a2ae7e Changed "Delete snippet" button to sentence case 2020-10-28 13:45:13 +01:00
Sanne de Vries
22050954df Changed copy for snippet deletion modal 2020-10-28 13:30:26 +01:00
Sanne de Vries
ce674169e6 Improved hover state styling of snippets in cardmenu
No issue

- Changed delete icon colour and padding
- Changed fill of snippet icon on hover
2020-10-28 13:14:25 +01:00
Kevin Ansfield
7f537f8ba4 Fixed error when closing delete snippet confirmation dialog 2020-10-27 18:33:31 +00:00
Kevin Ansfield
581b195e12 Truncated long card menu labels 2020-10-27 14:48:39 +00:00
Kevin Ansfield
c6753a0efd Hid snippet management UI from staff users without permissions
no issue

- snippets can only be created and deleted by owners/admins/editors
- added a property in the editor controller to determine if the logged in user has sufficient permissions, then only pass the appropriate save/delete snippet actions to the editor component if the check is passed
- updates koenig menus and toolbars to skip rendering of buttons if the associated action function is not available
2020-10-27 14:42:59 +00:00
Rishabh Garg
2edb7226e1 Added past_due and unpaid subscriptions for members (#1740)
refs https://github.com/TryGhost/Ghost/issues/12256, https://github.com/TryGhost/Ghost/issues/12255

Currently when listing subscriptions for Members in both the Admin and the Theme, we only show the subscriptions which have a status of trialing or active.

Based on discussion, the `unpaid` and `past_due` states on Stripe also represent owner's intention of considering a subscription as active instead of `cancelled`, so we allow any subscriptions under these 2 states to be also listed for a member and consider them as `paid`. This updates Admin to consider those subscriptions as active as well.

- Subscriptions will go into a past_due state if the payment is missed, this should be considered a grace period where the member still has access.

- After this the subscriptions will either go to the unpaid or the cancelled state - this can be configured on an account by account basis in the Stripe dashboard. `unpaid` is considered as an intention to keep the subscription to allow for re-activation later.
2020-10-27 15:27:31 +05:30
Sanne de Vries
c0f7cbcd40 Added a "Sent to xxx members" message in content management screen for posts that have been sent out to members 2020-10-27 09:33:38 +01:00
Kevin Ansfield
1bd4b5cda7 Added delete button with confirmation to snippets in card menus
no issue

- show a delete icon when a snippet is hovered in plus/slash menus
- show a confirmation dialog when the delete icon is clicked
- keep menus open whilst displaying the delete confirmation dialog
2020-10-26 17:09:39 +00:00
Sanne de Vries
0ab0100567 Fixed bottom padding for card menu in Firefox 2020-10-23 11:55:41 +02:00
Kevin Ansfield
5d97c1710f Update dependency eslint-plugin-ghost to v2.0.0
no issue

- bumps eslint and eslint-plugin-ember versions
- octane rules are enabled by default
  - disabled them in our eslintrc.json so we can switch to warn/error whilst migrating to octane
- fixed a couple of linting errors from new/updated rules
2020-10-23 09:59:09 +01:00
Sanne de Vries
36dbb35eb5 Styled new row layout of the cardmenu
No issue

- Adjusted menu width and height
- Improved spacing cards
- Changed font styling
- Added snippet icons
2020-10-23 10:36:31 +02:00
Peter Zimon
6ecba355eb Moved members settings to new page (#1736)
no refs

Moves members related settings in Labs to its own page to improve the overall UX and make it more consistent with the rest of the Admin.
2020-10-22 16:09:00 +05:30
Kevin Ansfield
f1bab33296 Fixed member's location sometimes showing as ", US"
no issue

- geolocation.region is not always available but we had assumed it was. Adjusted the logic to only show "region, US" if region is available
2020-10-22 09:15:03 +01:00
Kevin Ansfield
96bcf99332 Added Ctrl/Cmd+P shortcut in editor to open preview in new tab
no issue

- allows quick access to the preview without having to open post settings menu and click the preview link or hit Ctrl/Cmd+S and click the link in the success notification
2020-10-19 08:25:26 +01:00
Kevin Ansfield
95aa341468 Added max length validation to snippet's name field 2020-10-16 19:22:09 +01:00
Kevin Ansfield
3d48ce6bc4 Fixed snippets not loading in background when accessing editor
no issue

- add the missing snippets API query to the editor's background loaded
2020-10-16 19:22:09 +01:00
Peter Zimon
94077449b3 Update portal settings (#1731)
* Added auto focusing preview on the signup page while being on links and clicking on any setting in the sidebar

* Refine upload custom portal icon button

* Updated copy for sidebar and links screen

* Added grouping to links list
2020-10-16 15:34:22 +02:00
Kevin Ansfield
7e169a2a86 Renamed snippet.title to snippet.name for consistency
no issue

- all of our models which allow users to name something use `name` as the field descriptor rather than `title` so `snippet.title` was renamed for consistency
- also fixes typo in the plus-menu component that stopped clicking on snippets from working
2020-10-16 10:15:07 +01:00
Kevin Ansfield
b590ce1b95 Implemented first iteration of content snippets
closes https://github.com/TryGhost/Team/issues/411

- adds "Create snippet" icon to the editor toolbar
- uses the same link input component design for specifying snippet titles
- snippets are loaded in the background when the editor is accessed
- snippets are listed at the bottom of the card menus of the + and / menus
- clicking a snippet inserts the snippet's contents in place of the current blank section
2020-10-15 18:03:35 +01:00
Peter Zimon
bc779bb3e7 Fixed 'null' portal button text
no refs.
- fixing portal button displaying 'null' if the portal button text input field is empty
2020-10-14 14:47:08 +02:00
Peter Zimon
eede9e1141 Updated Portal links design
no refs.
- in Portal settings domain and the path are separated visually so that it conveys the concept of using the relative URL instead of absolute
- for similar reasons, copy link copies only the path part
2020-10-12 13:56:37 +02:00
Peter Zimon
d567e975d2 Removed full stop from scheduling text in editor
no refs.
2020-10-09 16:56:37 +02:00
Peter Zimon
a7c0dc7469 Fixed account menu margin
no refs.
- fixes account menu dropdown button margins disappearing on Firefox for smaller screensizes
2020-10-09 16:56:13 +02:00
Kevin Ansfield
a8f63f9343 Fixed usage of {{enable-developer-experiments}} without sub-expression syntax 2020-10-09 15:52:23 +01:00
Kevin Ansfield
a3d3632e97 Added developer experiments indication to about page
no issue

- without this there's no indication the config flag is set when you have no access to the config file or you don't know which features are currently behind the flag
2020-10-09 11:38:47 +01:00
Kevin Ansfield
235d5f1b8b Added {{enable-developer-experiments}} helper
no issue

- removes the need to have component backing classes with the `config` service injected
2020-10-09 11:10:39 +01:00
Peter Zimon
47a045a935 Updated scheduling copy
no refs.
- updated moment locale to display '1 minute' instead of 'a minute' to be more explicit about scheduled time
- removed full stop from the scheduler message in editor header
2020-10-02 10:45:49 +02:00
Kevin Ansfield
fa240cae53 Fixed content jiggle when selecting cards and card code background position
no issue

- borders are necessary on selected cards to keep consistent spacing between selected/non-selected cards
  - use transparent borders in dark mode rather than eliminating borders
- moved transparent card background style to `_koenig-dark.css` so it only affects dark mode - we want to keep the background colour for light mode so that we don't get mis-aligned backgrounds in certain cards
2020-10-01 16:56:30 +01:00
Kevin Ansfield
171cec2b4e 🐛 Fixed first set of members appearing twice in members list
closes https://github.com/TryGhost/Ghost/issues/12241

- `ella-sparse` exposes a `range.page` property which we can use instead of trying to calculate the page number ourselves
2020-10-01 11:21:34 +01:00
Kevin Ansfield
db68f0248b Update dependency ember-in-viewport to v3.8.0
no issue

- now that we no longer have the `ember-sticky-element` dependency we're free to upgrade `ember-in-viewport`
- remove package.json resolution so latest version gets installed
- remove ember-in-viewport from renovate ignore config
- update `<GhScrollTrigger>` to match latest `ember-in-viewport` usage and convert to a glimmer component
  - ensure `scrollableArea` is always set so that the trigger doesn't stop working after the first trigger
2020-10-01 10:06:53 +01:00
Rish
245dbef994 Allowed empty accent color in portal preview
no issue

- Current logic was not setting empty accent color in portal preview which was misleading when no accent color is set
- Updated preview url to contain empty accent color which is picked by Portal preview
2020-10-01 12:28:24 +05:30
Fabien O'Carroll
a93c9bebe9 Updated magic link expiry information to 24 hours
no-issue

Since https://github.com/TryGhost/Ghost/commit/fd5194ea magic links have
a 24 hour expiry
2020-09-30 10:56:12 +01:00
Fabien 'egg' O'Carroll
177d6f773d 🐛 Fixed tag metadata fields not being populated when editing in admin (#1714)
closes #12190

The "scratch" concept was being used incorrectly for codeinjection fields and was not initialised with all the required fields.
2020-09-28 16:20:53 +01:00
Peter Zimon
da81765bd9 Fixed publication logo display proportions
no refs.
- fixed the styles for publication logo in general settings so that the logo is displayed with correct ratio regardless of its proportions
2020-09-28 14:14:16 +02:00
Peter Zimon
4142b98cdf Fixed loading spinner size for Portal icons
no refs.
- fixed oversized loading spinner for Portal icons
2020-09-24 10:00:22 +02:00
Rish
c7696ca03b Renamed members-modal naming to portal
no issue

- Updated naming for members modal to portal in sync with rest of the codebase
2020-09-24 12:19:35 +05:30
Fabien 'egg' O'Carroll
6ecb38eaa5 Added support for filtering the exported Members CSV (#1716)
no-issue

Co-authored-by: Peter Zimon <zimo@ghost.org>
2020-09-23 14:29:47 +01:00
Rishabh Garg
f1fbbe4685 🐛 Fixed social settings not saved on keyboard shortcut (#1633)
no issue

- Social account(twitter/facebook) values in general settings were only updated to settings upstream on focus out
- Uses `notifyPropertyChange` to avoid multiple `.set()` workarounds

Co-authored-by: Kevin Ansfield <kevin@lookingsideways.co.uk>
2020-09-23 16:58:48 +05:30
Umur Dinçer
2051b65e51 🐛 Fixed missing start date in members chart (#1644)
closes https://github.com/TryGhost/Ghost/issues/12014

- `startDateLabel` was never populated after refactoring the members chart to use the members stats service
- use the first date that's returned as part of the members stats days array so that we can account for any potential time period being selected

Co-authored-by: Kevin Ansfield <kevin@lookingsideways.co.uk>
2020-09-22 08:51:29 +01:00
Paul Davis
8062fa8994 Added margin to bottom of Admin when installed as PWA on newer iOS devices (#1667)
no issue

On newer iOS devices with no home button, we have this bar at the bottom of the screen instead. When installed as a PWA, the mobile nav sits under that bar. I'm unsure how much Ghost is used this way, but this is a small QOL improvement for those who do.

This PR uses the native `env` CSS custom properties Safari has to add a propriety amount of `padding-bottom` to the mobile nav bar, and also the global container to prevent anything in the iframe from being hidden by the taller nav bar. If the device does not support these `env` vars, is has no adverse affect. In order for this to work, the `<meta name="viewport" />` tag needs `viewport-fit=cover` added to it.

MDN docs for reference: https://developer.mozilla.org/en-US/docs/Web/CSS/env
2020-09-22 07:43:17 +01:00
Kukhyeon Heo
c38ca94683 🐛 Fixed Ctrl/Cmd+S triggering browser save when tags or authors input has focus (#1707)
closes https://github.com/TryGhost/Ghost/issues/11786

`GhTokenInput` uses `PowerSelect` component of `ember-power-select` internally in `app/components/gh-token-input/select-multiple`. 

When you open that component, [you can find](d36f38f39e/addon/components/power-select.ts (L262-L278)) that it calls `stopImmediatePropagation` when ctrl/cmd or meta key is down.

```js
  handleTriggerKeydown(e: KeyboardEvent) {
    if (this.args.onKeydown && this.args.onKeydown(this.storedAPI, e) === false) {
      e.stopImmediatePropagation();
      return;
    }
    if (e.ctrlKey || e.metaKey) {
      e.stopImmediatePropagation();
      return;
    }
    if ((e.keyCode >= 48 && e.keyCode <= 90) || isNumpadKeyEvent(e)) { // Keys 0-9, a-z or numpad keys
      (this.triggerTypingTask as unknown as Performable).perform(e);
    } else if (e.keyCode === 32) {  // Space
      this._handleKeySpace(this.storedAPI, e);
    } else {
      return this._routeKeydown(this.storedAPI, e);
    }
  }
```

Because of that, I had to dispatch event directly to the root of the Ghost admin app.
2020-09-21 18:14:57 +01:00
Fabien 'egg' O'Carroll
213434c389 Updated magic link expiry information to 4 hours (#1715)
no-issue

Since https://github.com/TryGhost/Ghost/pull/12218 magic links now have
an expiry of 4 hours.
2020-09-21 16:08:10 +01:00
Rish
ede24fec24 Moved Portal settings behind dedicated flag
no issue
depends on https://github.com/TryGhost/Ghost/pull/12211

- Other than dev flag, the Portal is now also enabled behind a dedicated `portal` flag
- Shows/hides Portal settings based on dev or Portal flag
2020-09-17 19:50:41 +05:30
Peter Zimon
6dc0489b7b Updated Portal icons
no refs.

- updated Portal icons so that it matches the one on members.js
2020-09-16 16:04:38 +02:00
Sanne de Vries
710d6178c1 Added message box on Staff user page that indicates user is locked, and improved boxes naming and styling 2020-09-16 15:37:33 +02:00
Peter Zimon
fc3d83e869 Fixed date format in member Stripe details
no refs.
2020-09-15 07:33:58 +02:00
Sanne de Vries
3c6923989e Changed locked state badge into lock icon and clarified its meaning with tooltip on hover. This commit builds on top of PR #1668 2020-09-14 12:34:18 +02:00
Sanne de Vries
6a7745c9a8 Adjusted dark mode styling of top menu dropdowns on the members page for consistency 2020-09-08 17:56:50 +02:00
Sanne de Vries
7898e22e82 Removed white background and border in code editor in dark mode 2020-09-04 22:17:43 +02:00
Sanne de Vries
5cbd9f0f78 Adjusted code injection fields in settings to dark mode 2020-09-04 21:41:19 +02:00
Peter Zimon
ed1433b809 Added logic to custom portal icon delete
no refs.
- fixed issue that users can't reselect custom icon in portal by making the delete button only visible when the custom icon is selected
2020-09-04 16:10:46 +02:00
Peter Zimon
d65195aba4 Portal custom icon style refinement
no refs.
- refined delete icon style for portal
- refined icon sizes
2020-09-04 15:59:13 +02:00
Sanne de Vries
11699d5172 Fixed transparent background pattern for blog logo and icon in dark mode 2020-09-04 15:25:32 +02:00
Sanne de Vries
0b27a366ff Adjusted styling for user role badges in light and dark mode for improved consistency 2020-09-04 15:25:32 +02:00
Daniel Lockyer
a8ce77b1f7 Removed warning banner for mobile/tablet devices
closes https://github.com/TryGhost/Team/issues/347

- removes the warning banner directing users to use Ghost Desktop/a
  desktop browser because users are happy with the experience of editing
  on mobile/tablets
2020-09-03 17:55:45 +01:00
Daniel Lockyer
47f428b9af Removed suggestion to use Ghost-Desktop
- Ghost-Desktop is now deprecated and so we shouldn't suggest it to
  users
2020-09-03 13:16:44 +01:00
Peter Zimon
4ec6aa3d3e Success button fixes in member email settings
no refs.
- fixed checkmark being too small on support or newsletter success button
- fixed case style for success button
2020-09-02 20:45:52 +02:00
Sanne de Vries
53c2879838 Improved calendar styling in publish and schedule datepickers 2020-09-02 10:32:45 +02:00
Rish
4fa2912bc3 Fixed missing signup text value in Portal preview
closes https://github.com/TryGhost/members.js/issues/91

- Fixes the missing signup text value in input box as it was incorrectly reading from wrong place
2020-09-02 13:28:51 +05:30
Sanne de Vries
03da71cfde Improved date-picker spacing in post publish menu and settings menu 2020-09-01 16:43:22 +02:00
Sanne de Vries
bf6e37f2dd Fixed account menu spacing issue (#1693)
* Fixed spacing issue with account menu by changing verticalPosition of the Ember dropdown component to 'above' and adjusted the top attribute as needed.
2020-09-01 12:44:50 +02:00
Rish
eefbb55d84 Added new support and reply-to address for members
no issue

- Adds 2 new email address fields for members in email settings section - support address and reply-to address
- Support address - Is used for member auth emails as well as in themes and Portal for allowing members to contact support.
- Reply-to address - Is used to set `reply-to` address for newsletter emails that allows configuring where member's reply to emails will go
- Disabled from address update for empty value
- Updated success toast message and copy for from/support address update
- Changed section title + description for email addresses
- Added "public" to support email description
2020-08-31 18:10:26 +05:30
Sanne de Vries
f068f85e38 Improved spacing for account menu 2020-08-31 12:25:55 +02:00
Peter Zimon
bd8807b18d Refined Portal maintabs style 2020-08-27 16:08:03 +02:00
Peter Zimon
5b8ccabee2 Refined Portal links page 2020-08-27 16:06:00 +02:00
Peter Zimon
18cc1a2b91 Fixed case style for Portal accent color 2020-08-27 15:57:15 +02:00
Peter Zimon
d1df165aa9 Refined Portal color picker 2020-08-27 15:55:02 +02:00
Nazar Gargol
0c673f280f Fixed linter error 2020-08-28 00:37:18 +12:00
Nazar Gargol
5faa18743f Replaced progress bar with spinner for members import uploader
no issue

- When an import is in progress showing completed progress bar is unusefull and confusing. For large imports it takes a lot longer to process the import itself than to upload the file, that's why it made sense to show a generic spinner untill a better solution is worked on (probably with introduction of jobs)
2020-08-28 00:32:26 +12:00
Rish
01c19fb672 Updated color picker sync in Portal settings
no refs

- Syncs the new color picker for accent color to the input field
- Updating color through new color picker or input field updates the portal preview
2020-08-26 21:38:53 +05:30
Peter Zimon
1902e0b659 Removed border from selected Portal tab
no refs.
2020-08-26 17:30:34 +02:00
Peter Zimon
2030681acf Refined toggle border
no refs.
- refined toggle border color and shadows
2020-08-26 17:21:47 +02:00
Peter Zimon
8674e8f32b Updated Portal links page
no refs.
- refined copy and design for Portal links page
2020-08-26 17:10:19 +02:00
Peter Zimon
20bcfd4839 Added color picker to Portal settings
no refs.
- added CSS color picker for accent color Portal settings. Note: sync between the input field and the color picker is to be done
2020-08-26 16:00:17 +02:00
Scott Cabot
73c87de243 🐛 Changed caret color to white in code editor on Night Shift
closes #12154
Adds a new css class selector to app-dark.css to mimic the same effect as created in the gh-markdown-editor. The class keonig-card-html--editor is applied conditionally when the card is in edit mode, as per its template file. This now makes the cursor the same color as the text and easier to read.
2020-08-24 16:24:03 +01:00
Peter Zimon
2ef41dc852 Fixed copy in members upgrade message
no refs.
- fixed pluralisation in members upgrade message
- added decimal point to limit and total numbers in members upgrade message
2020-08-24 17:16:31 +02:00
Rishabh Garg
9da88937d7 Added subscription cancellation button to member page (#1683)
closes TryGhost/Ghost#12127

* Added cancel/continue button for individual subscriptions on member page

Co-authored-by: Peter Zimon <zimo@ghost.org>
2020-08-21 17:05:45 +05:30
Sanne de Vries
e271486c8b Changed order and font color of author and publisher on bookmark card 2020-08-21 11:40:52 +02:00
Sanne de Vries
a7c3255060 Change input field border color in settings menu 2020-08-20 16:10:44 +02:00
Nazar Gargol
240edf89aa Added automatic 'first_name' column mapping for members CSV importer
no issue

- When columns which match /name/ patter are present in imported CSV they should detect the mapping to 'name' column automatically
2020-08-20 15:04:35 +12:00
Rishabh Garg
c47593891c Refined portal custom icon flow (#1675)
refs https://github.com/TryGhost/members.js/issues/79

- Updated interaction for custom icon flow as per design spec in issue
2020-08-19 20:30:06 +05:30
Rishabh Garg
6d4bcb205e Allowed Admin users to impersonate members (#1679)
closes TryGhost/Ghost#12126
depends on https://github.com/TryGhost/Ghost/pull/12132#pullrequestreview-469092171

- Previously, only Owner user was shown option to impersonate a member
- Grants Administrator user ability to impersonate a member
2020-08-18 14:19:12 +05:30
Rish
59e49bb541 Fixed typo in portal preview signup options
no issue

- Pretty sure its supposed to be Signup and not Singup
2020-08-14 21:29:16 +05:30
Rish
d4cf0602e5 Updated background flicker for portal preview
refs https://github.com/TryGhost/members.js/issues/77

- There was a quick flicker before the portal popup appears due to the site theme being visible in background till portal loads
- Adds the constant background with slight delay to show the frame which ensures the portal script is successfully loaded to minimise the visible flicker
2020-08-11 12:27:34 +05:30
Rish
b796bf74fc Added close confirmation for Portal settings
refs https://github.com/TryGhost/members.js/issues/77

- Adds close confirmation when closing Portal settings for unsaved changes
2020-08-11 12:27:34 +05:30
Nazar Gargol
36e1dd6f2a Fixed members importer state after unknown API error
no issue

- Members importer returns to first state of uploader with file selection when unknown error happens during the upload. If the upload fails and 'summary' state is set, it leads to showing summary stas during 'customizing' state.
2020-08-11 00:08:12 +12:00
Kevin Ansfield
63070673d2 Added explicit count of paid members to email confirmation modal
closes https://github.com/TryGhost/Ghost/issues/12112

- perform a paid members list query with a limit of 1 when the modal is displayed if the post is set to members only, then use the pagination meta data to get a total number of members
- display a spinner and disable the confirm button whilst the count query is in progress
- does not display any counts for users with the Editor role as they do not have permission to list members
2020-08-10 12:27:16 +01:00
Kevin Ansfield
45a857c951 Fixed {{gh-pluralize}} errors
refs fd91b593a5

- fixed incorrect call `pluralize(undefined, {withoutCount: true})` when number is undefined - `pluralize()` expects only one argument when no number is provided
- fixed destructuring in ghPluralize
- fixed linting error for undefined method after removal of `formatNumber` import
- fixed typo of import path in members controller
2020-08-10 11:37:21 +01:00
Kevin Ansfield
fd91b593a5 Added number formatting to all pluralized counts
closes https://github.com/TryGhost/Ghost/issues/12110

- adds `{{gh-pluralize}}` helper that wraps the `{{pluralize}}` helper from `ember-inflector` but formats the number using our `{{format-number}}` helper
- updates all uses of `{{pluralize}}` to `{{gh-pluralize}}`
2020-08-10 11:16:03 +01:00
Rish
6df368ed3b Updated portal preview to use default icon
refs https://github.com/TryGhost/members.js/issues/77

- By default, if there is no icon button selected, we fallback to show the first icon in list as selected in both preview and portal
2020-08-06 16:21:27 +05:30