no issue
- There was a need to make the experience of adding a first member(s) as frictionless as possible, which lead to adding some actionable controls to the "no-members" screen.
- Adds the ability to make yourself a member
- Adds the ability to import CSV member
- Link to add a member manually
no issue
- We have a need to create a member manually, this changeset solves this problem.
- Added new member button to the member's screen
- Needed to be able to perform add member action
- Fixed inconsistent `createAt` naming. All models use consistent `createdAtUTC`, fixed it up so that members model follows the same pattern. If we want to change this pattern should probably happen for all models at once
- Fixed member avatar when creating a new member. If the values are completely empty the screen ends up being filled with empty space. Added some dummy initials which are recalculated once the member enters the name or an email
- Refactored DS naming for consistency. Nowhere else in the codebase 'DS' name is ever used, made this consistent
- Added missing validations in members form
- Simplified if conditions in the member list template. When using the if/esle statements unnecessary new-line symbols were inserted which made it hard to test. Also by using computed property view is much cleaner
- Updated member's model default value for `subscribed` to "true". It is turned on by default in the model layer on the backend (ref: https://github.com/TryGhost/Ghost/blob/3.1.0/core/server/data/schema/schema.js#L330), this behavior is intended and should be the same on the frontend
no issue
- the members count used to disable the email toggle and shown in the confirm modal was incorrect as it didn't take into account subscribed vs non-subscribed members
- adjusts the filter in the count query to only fetch subscribed members
no issue
- adds a `.retry()` method to the email model+adapter
- adds a retry email task to the publishmenu that follows the same retry-then-poll behaviour as the regular email confirmation
- show a retry button in the confirm email modal if the original send failed
- increases max "immediate failure" poll timeout to 15sec (an 8sec retry-to-failure time has been seen locally)
no issue
- the toast notification occurs before polling for a successful email occurs so it was confusing to have different states represented in the UI simultaneously
no issue
- when confirming email send, after initial save in, poll every second for a maximum of 10 seconds and check the status of the email
- if it's `'success'` close the modal immediately
- if it's `'failure'` switch the confirm modal to an error state
- if the save fails for some other reason (validation, server error) close the modal immediately and let the normal editor error handling do it's thing
- fixed confirm modal not appearing when retrying a save after a post validation failed
- show email status in post status area
- `"and sending to x members"` when email is pending or submitting
- `"and sent to x members"` once email is fully submitted
no issue
- Mailgun makes it really difficult to find your baseUrl from their UI if you've previously sent emails on a domain
- use a dropdown with flag and region name instead to better match what you can see in their UI
refs 5fd2b7fed1
- sends `?send_email_when_published=true` query param when scheduling/publishing a post with the toggle turned on
- adds support to the posts adapter for handling the `adapterOptions` option
- updates the editor `save` task to pass through the required adapter option when a post is being published or scheduled with the toggle checked
- moves state for the email toggle into the publish menu so that we don't try to toggle the model attribute which should only be fetched from the API
- prevent `post.send_email_when_published` being sent to the API via the serializer as it's now a read-only attribute
no issue
- refactored `renderEmailPreview` into separate fetch and render functions
- grab email info from an existing email resource if it exists on the post rather than fetching a preview
- added "View email" button the the email-sent state of the newsletter settings PSM section
no issue
- changed `disabled=deliveredAction` to `disabled=mailgunError` so that it's switching on the correct property
- removed all references to the unused `deliveredAction` property
no issue
- removed unnecessary scratch value handling for a non-model property
- use [`oneWay`](https://api.emberjs.com/ember/release/functions/@ember%2Fobject%2Fcomputed/oneWay) to bind the logged in user's email address to the `testEmailAddress` property on the component - this allows for the default value to always be the logged in users email but changing the property value only changes the value on the component, not upstream on the user model
- use default two-way binding of the `<Input>` helper to avoid unnecessary boilerplate
- removed unnecessary usage of the `truncate` helper for the placeholder