Commit Graph

4334 Commits

Author SHA1 Message Date
Kevin Ansfield
23ab934db4 Version bump to 2.6.0 2018-11-13 12:51:06 +00:00
John O'Nolan
c287c2b016 Fixed display bug on integration icons (#1071)
no issue
- Resolves error with integration background icon images being tiled
2018-11-13 11:42:44 +00:00
Kevin Ansfield
065182c586 Fixed sticky validation errors when editing webhooks
refs https://github.com/TryGhost/Ghost/issues/10137
- when closing the edit webhook modal we were rolling back the changed attributes of the webhook model but not clearing the errors object which meant a validation error was shown when re-opening the edit webhook modal
- add `reset()` method to the webhook edit controller and call that when leaving the edit route instead of only rolling back the changed attributes
2018-11-13 11:40:24 +00:00
Kevin Ansfield
89440a30be Fixed linting 2018-11-13 09:56:59 +00:00
John O'Nolan
59ce575e69 Highlight new integrations directory (#1070)
no issue
- we have a new integrations directory in our docs so we’ve highlighted the most common directly on the integrations screen
2018-11-13 09:18:31 +00:00
Kevin Ansfield
ef551b6061 Improve handling of non-validation errors in webhook modal
no issue
- display the error message of any API-provided error
2018-11-12 21:27:42 +00:00
Kevin Ansfield
c33edbac08 Fixed webhook modal title showing "New webhook" when editing a webhook
refs https://github.com/TryGhost/Ghost/issues/10137
- adjust modal title depending on `webhook.isNew` state
- add acceptance tests for modal creation
- add missing mirage webhook factory
- mock integrations/api-keys/webhooks in test env rather than development
2018-11-12 16:31:47 +00:00
Rishabh Garg
032fba8f7b Added active navigation state for all integrations related routes (#1069)
closes https://github.com/TryGhost/Ghost/issues/10136
- use a CP and `{{#link-to current-when}}` to add the `.active` class any time the current route name starts with `settings.integration` which covers built-in and custom integration screens
2018-11-12 13:10:33 +00:00
Kevin Ansfield
e802b06b77 Fixed error in stories list if plaintext is not a string
no issue
- `gh-posts-list-item`'s excerpt CP attempts to use `.slice` on whichever value is given to it, if it's `null` or `undefined` (as is the case when using mirage) then it would error with ".slice is not a function"
2018-11-08 14:02:01 +00:00
Kevin Ansfield
9abadd57c4 Automatically update count.posts when serialising tags in mirage
no issue
- add a new mirage serialiser for tags that updates the count.posts for each tag that gets serialised
- better matches real API behaviour
2018-11-08 13:49:00 +00:00
Kevin Ansfield
ae0cb45d8c Fixed saving of posts with tags using mirage
no issue
- similar to the previous fix for authors, tags also need to be converted from POJOs to mirage Model objects when creating/saving records in the mirage route handlers
- refactored the code so that the POJO->Model transform can be shared across post and update requests
2018-11-08 13:43:58 +00:00
Kevin Ansfield
f015eeb430 Fixed mirage not respecting ?limit=all queries
no issue
- the `paginatedResponse` helper util tries to convert strings to integers but had no logic for handling `'all'` so it would always default to 15 in that case
2018-11-07 17:07:55 +00:00
kirrg001
731d2a9a2e Version bump to 2.5.0 2018-11-07 16:19:43 +01:00
Kevin Ansfield
d88e7efd04 🎨 Changed tags list, filter dropdown, and select input to sort alphabetically (#1066)
no issue
- switch tags sorting from ID based to alphabetical
- pre-requisite to nested tags sorting
2018-11-07 15:06:28 +00:00
Kevin Ansfield
0d08c639fe 🐛 Fixed editor undo states for card contents (#1064)
refs https://github.com/TryGhost/Ghost/issues/10049
- update `{{koenig-card}}` component to compare payload values and create a snapshot when exiting edit mode for container cards (markdown, html, code)
- update image card to trigger snapshots on image upload/selection and width change
2018-11-06 14:43:19 +00:00
Kevin Ansfield
ac17053863 Added custom integrations - Content API Keys and "Site rebuild" webhooks (#1063)
closes TryGhost/Ghost#9942
- move custom integrations UI out from behind the developer experiments flag
- put Admin API key and web hook secret fields behind the developer experiments flag
- do not show "unsaved changes" modal when adding/editing a webhook
- fixed all webhooks showing for each custom integration
2018-11-06 10:59:47 +00:00
Fabien O'Carroll
7308fcba79 Version bump to 2.4.0 2018-10-30 19:26:40 +07:00
Rishabh Garg
bd0fb88a52 Fixed sanitization of user invited emails for notification message (#1060)
no issue

- Escaped email ids string sent to notification message during blog setup

Credits: Antony Garand
2018-10-29 12:19:46 +00:00
Peter Zimon
3f7a036905 Integration UI refinements (#1059)
no issue
* Integration detail page design refinements
* Fixing error message layout on integration detail screen
* Heading details
* Margin refinements
* Refine webhooks modal
* Lines and font sizes
* Replace integrations icon
2018-10-24 14:04:17 +01:00
Kevin Ansfield
e7a8be81ef Cleaned up class and :contains based test selectors
no issue
- nav menu had many unused CSS classes that were sometimes used for test selectors
- `:contains` is not a native CSS selector so will cause issues when we switch to native test helpers
2018-10-23 18:11:48 +01:00
Kevin Ansfield
fce4aa9176 Added ability to upload integration icons (#1058)
no issue
- add `{{aspect-ratio-box}}` to make it easier to adjust box sizes at a fixed ratio based on container height which isn't possible with CSS directly
- used `{{gh-uploader}}` to add upload facility to the icon shown on the integration screen
2018-10-23 10:29:49 +01:00
Kevin Ansfield
513cddfaa3 Minor cleanups
no issue
- replace unnecessary destructuring with direct import
- remove unused action
2018-10-22 21:00:02 +01:00
Rish
02d95c3974 Version bump to 2.3.0 2018-10-22 15:41:19 +05:30
Fabien O'Carroll
0d38df0f74 Added ability to delete integrations (#1057)
no issue
- adds delete integration modal, and delete button on the integration page to trigger it
2018-10-19 17:37:27 +01:00
Kevin Ansfield
296e35493d Added edit webhook modal (#1056)
requires https://github.com/TryGhost/Ghost/pull/10033
- added `settings.integration.webhooks.edit` route
  - `/integrations/:integration_id/webhooks/:webhook_id`
- added error handling to the webhook form modal that copes with the actual errors we get back from the server
- added `event-name` helper to display humanised event names in the webhooks list
- added delete button to the webhooks list and associated confirmation modal
2018-10-19 17:34:53 +01:00
Kevin Ansfield
832968d4a5 Improved api key clipboard copy behaviour
no issue
- display "last seen" time if available for API keys
- use CSS to for hover behaviour instead of JS toggle
- add background to "copy" button so it's visible when on top of key data
- use ember-concurrency tasks instead of actions and used the derived state to show a temporary "copied to clipboard" message in place of the "last seen at" time
2018-10-19 00:09:05 +01:00
Kevin Ansfield
9684e5e347 Changed "new-webhook" modal to generic "webhook-form" modal
no issue
- the webhook form needs to be re-usable for the "edit webhook" modal
- renamed modal
- added logic to adjust the confirm button's text depending on the state of the passed in webhook model
2018-10-18 18:43:34 +01:00
Kevin Ansfield
18c75ac670 Fixed serialisation of belongsTo relationships
no issue
- `belongsTo` relationships were failing to save on the server correctly because they did not contain the `_id` suffix
  - became noticeable when the first standalone `belongsTo` relationship was added to webhooks
  - added conditional for special-case `_by` relationships which don't require an additional `_id` when saving to the API
2018-10-18 18:23:19 +01:00
Kevin Ansfield
8400892dbd Version bump to 2.2.4 2018-10-18 12:29:27 +01:00
Kevin Ansfield
5047b9f3d7 Added initial custom integrations UI (#1051)
refs https://github.com/TryGhost/Ghost/issues/9865, https://github.com/TryGhost/Ghost/issues/9942

- `integration`, `api-key`, and `webhook` models and respective mirage mocks
- moves integration routes around to match ember's concept of nested routes (nested routes reflect nested UI not nested URLs)
- adds custom integrations list to integrations screen
- adds custom integration screen
  - allow editing of integration details
  - show list of webhooks
  - webhook creation modal

NB: the `enableDeveloperExperiments` flag needs to be enabled in the `config.development.json` file for the custom integrations UI to be displayed until it's out of development.
2018-10-18 00:18:29 +01:00
Kevin Ansfield
faf489fcd9 Version bump to 2.2.3 2018-10-16 17:38:23 +01:00
Kevin Ansfield
e04f3b6312 Adjust post URL handling for API v2's absolute URLs (#1055)
no issue
- API v2 outputs absolute URLs so we no longer need to construct full URLs ourselves
2018-10-16 16:54:15 +01:00
Kevin Ansfield
8a43351d8e 🐛 Fixed theme download links (#1053)
closes https://github.com/TryGhost/Ghost/issues/10011
- theme download URLs were missing the `/download/` portion
2018-10-15 13:18:44 +02:00
Fabien O'Carroll
dddf196c55 Version bump to 2.2.2 2018-10-11 14:20:35 +07:00
Nazar Gargol
a8e3fcbe32 Version bump to 2.2.1 2018-10-09 16:34:36 +02:00
Kevin Ansfield
0a41799b2e Fixed linting 2018-10-08 09:55:05 +01:00
Fabien O'Carroll
3e5a62309f Use Admin API v2 with session auth (#1046)
refs #9865
- removed all `oauth2` and token-based ESA auth
- added new `cookie` authenticator which handles session creation
- updated the session store to extend from the `ephemeral` in-memory store and to restore by fetching the currently logged in user and using the success/failure state to indicate authentication state
  - ESA automatically calls this `.restore()` method on app boot
  - the `session` service caches the current-user query so there's no unnecessary requests being made for the "logged in" state
- removed the now-unnecessary token refresh and logout routines from the `application` route
- removed the now-unnecessary token refresh routines from the `ajax` service
- removed `access_token` query param from iframe file downloaders
- changed Ember Data adapters and `ghost-paths` to use the `/ghost/api/v2/admin/` namespace
2018-10-05 19:46:33 +01:00
Kevin Ansfield
656a20272a Fixed non-admin redirects on integration routes
no issue
- after un-nesting the built-in integration routes they no longer had the automatic redirect for non-admins
- added our non-admin redirect behaviour to all of the integration routes
- added our non-admin redirect behaviour to the Zapier route which didn't even have an authenticated redirect previously
- added acceptance test for Zapier route so verify the new behaviour
- wrapped the Zapier widget `<script>` tag in an "is testing" conditional so that the external script doesn't get loaded during tests
2018-10-04 12:16:41 +01:00
Kevin Ansfield
a23bbf2368 Clean up integrations routes loading states
no issue
- integrations index screen no longer needs to reload the settings cache
- individual built-in integration routes should handle their own reloading if necessary (eg, zapier doesn't need any settings so doesn't need a delay or loading template)
- built-in integration routes are no longer nested and so need their own loading templates
2018-10-04 11:41:11 +01:00
Kevin Ansfield
01ef03a430 Fixed cherry-pick mixup
no issue
- 🙈
2018-10-04 11:14:38 +01:00
Kevin Ansfield
b167f0afd5 Re-jigged integrations routes to support nested modal route
no issue
- moves integration routes around to match ember's concept of nested routes (nested routes reflect nested UI not nested URLs)
- sets us up for having a `settings.integrations.new` modal route that sits on top of the index screen
2018-10-04 11:10:17 +01:00
Kevin Ansfield
6dfafdc801 Renamed Apps to Integrations (#1050)
refs https://github.com/TryGhost/Ghost/issues/9865, https://github.com/TryGhost/Ghost/issues/9942
- Apps are becoming Integrations that cover the existing built-in integrations as well as new custom integrations
- custom Integrations will comprise of API keys for the Admin and Content APIs and custom-registered webhooks
2018-10-04 11:02:36 +01:00
Kevin Ansfield
14633d085c Removed unnecessary save button from Zapier screen
no issue
- save button is not needed and wasn't hooked up to any functionality (it errored if clicked)
2018-10-03 23:25:38 +01:00
Kevin Ansfield
53cbb092ab Removed outdated static html files
no issue
- old static html design files no longer work because they haven't kept up with changes in app and css structure and no longer represent directions that Ghost is moving towards
- removed in a single commit so that it's still possible to retrieve later if needed
2018-10-03 18:25:24 +01:00
kirrg001
c6d9951a93 Version bump to 2.2.0 2018-10-02 22:57:14 +02:00
Kevin Ansfield
a15496ad76 Regenerated yarn.lock
no issue
- `yarn` v1.10.0 adds an integrity hash to each dependency
2018-09-27 11:53:50 +01:00
Fabien O'Carroll
160e013aea Version bump to 2.1.4 2018-09-25 18:04:57 +07:00
Fabien O'Carroll
598c776522 Version bump to 2.1.4-beta.1 2018-09-25 17:34:37 +07:00
Rish
49c5afb2e3 🎨 Forced uploaded profile image to be square
Refs https://github.com/TryGhost/Ghost/issues/8576

- updated profile image upload url to `/uploads/profile-image`, allows only square images to be uploaded
2018-09-25 15:22:01 +07:00
Kevin Ansfield
874ae6078b Fixed 'set on destroyed object' error in tests
no issue
- we were throttling word count updates but not taking into consideration the editor components could have been destroyed by the time the throttle timeout occurred
2018-09-24 11:09:19 +01:00