Commit Graph

1478 Commits

Author SHA1 Message Date
John O'Nolan
275ac3cd0f Fix bugs with uploaded logos and images
- Added cursor events to hover state to indicate possibility of editing images by clicking on them
- Added min-width to images inside image uploader to prevent SVG images from collapsing and being invisible as a result
2017-05-07 19:07:46 +01:00
John O'Nolan
9f2c158dea Fix sizing bug where SVG logos did not display when uploaded 2017-05-07 18:14:29 +01:00
Ryan McCarvill
e604b255af 🔢 Add wordcount feature. (#668)
closes TryGhost/Ghost#8202
-  added wordcount for mobiledoc text and html/markdown cards (cards will only update word count when leaving edit state)
- word count is only displayed on wide screens
2017-04-25 12:32:27 +01:00
Kevin Ansfield
f3dc307e2f 🐛 fix non-clickable editor header actions with wide screens (#662)
closes https://github.com/TryGhost/Ghost/issues/8366

- ensure that header actions are layered above the editor so that they are still clickable
- editor content is still selectable in the header area
2017-04-24 09:26:31 +02:00
Ryan McCarvill
33b2e20927 🐛 place no-content placeholder in the correct position in firefox. (#660)
closes TryGhost/Ghost#8322
- Previously in firefox the no-content psuedo element was placed below the actual on first load (but not subsequent reloads), this update positions it in the correct place in both scenarios.
2017-04-20 11:04:04 +01:00
Kevin Ansfield
4bf2b7bc99 🎨 responsive editor header (#653)
closes https://github.com/TryGhost/Ghost/issues/8271
- adds `gh-editor` wrapper component that checks the editor position and will apply a `.gh-editor-header-small` class if the editor content will overlap the view actions
- adds `.gh-editor-header-small` class that minifies the header and applies a solid background so that there's no conflict between editor content and header elements
- modifies `.gh-editor-header` z-index so that there's no hidden non-selectable area at the top of the screen
2017-04-20 01:20:42 +12:00
Kevin Ansfield
e22eb668c4 💄 refactor setup screens to use ember-concurrency (#644)
refs TryGhost/Ghost#7865

💄 refactor signup to use ember-concurrency

refs https://github.com/TryGhost/Ghost/issues/7865
- moves authentication actions from `signup` route to controller
- refactors authentication and signup logic into EC tasks
- replaces use of `gh-spin-button` with `gh-task-button` in signup template

💄 refactor setup screens to use ember-concurrency

refs https://github.com/TryGhost/Ghost/issues/7865
- moves authentication actions from `setup/two` route to controller
- refactors authentication and setup logic into EC tasks
- replaces use of `gh-spin-button` with `gh-task-button`
- fixes some styling issues with the new SVG icons
- adds `app/styles/patterns/icons.css` back to contain per-icon overrides and animations (some SVGs use fills and others use strokes so we sometimes have conflicting styles)
2017-04-19 12:27:32 +02:00
Aileen Nowak
b8a1036a43 No more icon font: {{inline-svg}} - Part 2 (#642)
closes TryGhost/Ghost#8107
- replaces all icons in Ghost-Admin with SVGs by using our new helper {{inline-svg}}.
- removes all ghosticon fonts.

This is the second and final batch of the refactor.
2017-04-14 17:22:14 +01:00
John O'Nolan
d39afe28c5 Content filter styling 2017-04-10 13:16:19 +02:00
Ryan McCarvill
97590e3ae5 Editor title improvements (#614)
closes: https://github.com/TryGhost/Ghost/issues/8292
- Title improvements:
- Clean up the connection between the editor and title.
- Encapsulate all title related events in the title component.
- Fix tab support.
- Fixed an issue where pressing up from an empty paragraph would select the title
- Ensure the empty content psuedo element is always below the cursor and make sure it always displays when the title is blank.
2017-04-07 21:05:43 +01:00
John O'Nolan
170747339d Editor style updates 2017-04-07 21:25:09 +02:00
Aileen Nowak
f931f27dd4 🎨 No more icon font: {{inline-svg}} (#605)
refs TryGhost/Ghost#8107
- Replaces icon font with `{{inline-svg}}` helper incl. necessary style adjustments.
2017-04-07 16:23:45 +01:00
Aileen Nowak
597dda35b0 🎨 Make blog icon backround transparent (#628)
refs TryGhost/Ghost#7688
2017-04-07 14:29:58 +01:00
Kevin Ansfield
6dabb84e0a 🐛 fix sticky dropdown links (#621)
closes https://github.com/TryGhost/Ghost/issues/8269

- swaps the usage of our custom `gh-dropdown` component in the user menu dropdown for the `ember-wormhole` based `ember-basic-dropdown` that is used elsewhere in the app and will fully replace `gh-dropdown` in the future
- adds `gh-basic-dropdown` component that extends from `ember-basic-dropdown` and hooks into our `dropdown` service so that we can programatically close dropdowns from disparate areas of the app
- modifies the `body-event-listener` mixin to pass the click event through to it's consumers
- modifies the `bodyClick` handler in the `dropdown` service to check if the click actually originated from an ember-basic-dropdown element - this body click handler will go away once we've fully switched to `gh-basic-dropdown`
- adds `ember-native-dom-helpers` to provide consistency between acceptance and integration tests (this is the start of another refactor, eventually this addon will disappear as part of ember's [grand testing unification project](https://github.com/rwjblue/rfcs/blob/42/text/0000-grand-testing-unification.md))
2017-04-05 15:26:01 +01:00
Ryan McCarvill
daad5ab17b Multi line title. (#595)
refs https://github.com/TryGhost/Ghost/issues/7754

The title is now a contenteditable div which stretches and wraps to behave like the editor.

It also tries to seemlessly move the cursor between the editor and title to make one coherent editing experience.
2017-03-21 23:42:14 +00:00
Ryan McCarvill
c3a6792299 🐝 Safari fixes: (#596)
closes: https://github.com/TryGhost/Ghost/issues/8023
- make the editor 100% height in Safari and position toolbars correctly.
2017-03-20 12:33:06 +00:00
Kevin Ansfield
21361df3be Revert "Multi line title (#575)"
This reverts commit 989ad7b9c1.
2017-03-14 16:37:47 +00:00
Ryan McCarvill
989ad7b9c1 Multi line title (#575)
refs https://github.com/TryGhost/Ghost/issues/7754
- The title is now a contenteditable div which stretches and wraps to behave like the editor.
- It also tries to seemlessly move the cursor between the editor and title to make one coherent editing experience.
2017-03-14 13:50:30 +00:00
John O'Nolan
b9c391333e Content filter style updates 2017-03-13 12:48:21 +02:00
John O'Nolan
e39a31656e New publish menu 2017-03-11 19:23:44 +08:00
John O'Nolan
08e6b00048 Minor editor style updates
Refs https://github.com/TryGhost/Ghost/issues/8021
2017-03-02 09:56:52 +00:00
Kevin Ansfield
60dc827e59 🐛 fix unclickable app after closing modal
no issue
- `liquid-wormhole` changed the class of it's default destination element which meant that one of our styles resulted in it overlaying the whole app and preventing anything from being clicked after closing a modal
2017-03-01 17:30:46 +00:00
John O'Nolan
afdc20d31e Update design screen styles, fix login bugs
Refs https://github.com/TryGhost/Ghost/issues/8021
2017-02-27 13:31:01 +07:00
John O'Nolan
54486af893 Colour updates 2017-02-21 13:03:44 +00:00
John O'Nolan
73ddd59367 New settings/general styles 2017-02-21 13:03:44 +00:00
John O'Nolan
2a300e0410 Prototype nightshift 🌆 2017-02-17 12:31:12 -06:00
John O'Nolan
639264166a Labs UI update 2017-02-17 12:31:12 -06:00
John O'Nolan
981bfd6633 Prototype mobile navbar 2017-02-17 12:31:12 -06:00
John O'Nolan
38315ffab1 Style updates to new app frame for all other screens 2017-02-17 10:14:16 +00:00
John O'Nolan
87e48b2f45 Team / Apps app frame style update 2017-02-17 10:14:16 +00:00
Kevin Ansfield
db74744d2b Update styles for content screen, buttons, and app frame
* Updates styling on content management screen, replaces button styles, tweaks application frame style
2017-02-16 19:50:05 +00:00
John O'Nolan
f7fe91ceac WIP: New content (#528)
* Initial style updates
* First pass content management design overhaul
2017-02-15 12:43:49 +00:00
Kevin Ansfield
7eaa7170ec clean up content screen prototype
refs https://github.com/TryGhost/Ghost/issues/7860
- load 30 posts per page
- clean up unnecessary styles, match class name to component name
- start moving towards desired content/styles end goal
2017-02-04 09:01:52 -06:00
Kevin Ansfield
8620daab52 deps: ghost-editor@0.1.6 (#515)
no issue
- adds Ghost-Editor 0.1.6
  - Improves markdown parsing speed
  - Shows toolbar on mouseup now (still freezes on loading unfortunately)
  - Makes Ghost-Editor full height for easy selection
- temporarily pull from a branch that fixes dependency issues
- remove unused module-for-acceptance.js file
2017-02-03 22:51:18 +00:00
Kevin Ansfield
c16d633d4b New content screen prototype (#503)
refs https://github.com/TryGhost/Ghost/issues/7860

- remove preview pane from content screen
- add basic post status filters
- replace custom infinite scroll with ember-infinity and increase trigger threshold for improved scroll behaviour

Commits:
* basic content list + filter using existing infinite scroll and pagination
* swap our custom pagination + infinite loader for `ember-infinity`
* minor cleanups
* reset scroll position when changing filter
* fix tests
* remove client-side sorting step as we no longer have a live collection
* remove unused `mobile-index-route`
* add acceptance tests for content screen filters
2017-01-25 21:05:28 +01:00
Aileen Nowak
683dbaa376 AMP app integration (#483)
refs TryGhost/Ghost#7769
- adds Google AMP to `apps` in order to disable and enable it on request.
2017-01-20 09:33:54 +00:00
Kenneth Ashley
a1621d65a4 Long theme names break themes table layout (#304)
closes #274
- Removed “white-space: nowrap” property to allow word breaks.
- Added “flex: 1” to “.theme-list-item-body” and
“.theme-list-item-aside”.
- Aligned links inside “.theme-list-item-aside” to right.
2017-01-11 13:11:55 +00:00
John O'Nolan
838e16a1d3 Editor and 1.0 style updates 2016-11-14 16:55:08 +07:00
Ryan McCarvill
13eefe0243 Removed local markdown editor within ghost (#379) 2016-11-07 15:59:48 +00:00
Ryan McCarvill
ec597f0296 New editor layout (#355)
- the title is now part of the content
- new ways to navigate from the title to the content
- the new editor contains updated toolbar behavior
- the new editor contains markdown like commands
2016-10-24 11:55:55 +01:00
Aileen Nowak
ce5ed95604 ✍ Change contributors on about page to be manually (#330)
refs TryGhost/Ghost#7427

Removes `-contributors.hbs` and `public/assets/img/contributors` from `.gitignore`.
Removes `buildAboutPage` from `grunt init` task.
Updates `contributors.hbs` and adds images for each contributor.
Changes the `max-width` of `.gh-credits` wrapper to be 700px instead of 650px, so we'll fit them all in two rows.
2016-10-17 09:58:44 +01:00
Kevin Ansfield
7c7f869bc1 deps: ember-light-table@1.4.2 (#307)
no issue

- update `ember-light-table` to 1.4.2
- remove `gh-light-table` override component as scrolling has been fixed
- disable the infinite scroll acceptance test for now because Chrome has issues detecting the position of the scroll trigger when the app is rendered into the zoomed container during testing
2016-10-07 13:58:53 +01:00
Aileen Nowak
e906432dd2 💄 Set max-width for theme uploader table
no issue

Theme uploader form in settings/general is now `max-width: 500px`, which is the same than any other form in settings.
2016-08-26 11:11:47 +02:00
Kevin Ansfield
926f0283b5 detailed theme validation errors (#226)
no issue
- display the detailed validation errors that we get back from gscan so that users know how to fix their themes
2016-08-24 20:22:20 +02:00
Kevin Ansfield
0abe447551 theme management UI
refs https://github.com/TryGhost/Ghost/issues/7204, requires https://github.com/TryGhost/Ghost/pull/7209

- replaces theme dropdown with a table
- adds theme upload modal
    - validates theme mime type
    - prevents upload of `casper.zip` (default Casper theme can't be overwritten)
    - warns if an upload will overwrite an existing theme
    - gives option of immediately activating the uploaded theme or closing after successful upload
- adds theme activation link/action
- adds theme download link/action
- adds theme deletion modal
    - warns about no undo possibility
    - offers possibility to download theme
- modifies mirage config to handle theme changes
2016-08-23 12:42:38 +01:00
John O'Nolan
52e34b530c Minor visual bug fixes (#212)
- Fix positioning bug introduced in #211
- Adjust search results max-height to be based on viewport height
2016-08-18 09:57:19 -06:00
Aileen Nowak
e4fd6b71d6 🐛 Fix position of arrow in Apps UI
closes TryGhost/Ghost#7222

Adds `right: 0` to `.apps-configured > i`, so the arrow doesn't overlap with the letters.
2016-08-18 16:30:19 +02:00
John O'Nolan
22ef644463 Switch to new native system font stack (#211) 2016-08-18 12:42:42 +01:00
David Balderston
8f5d91f0c2 Add User Role to Invited Users (#173)
Closes #7130

* Adds the user role to the invited users template
* Adjusts some css to keep the role on the right side
2016-08-06 08:55:01 +02:00
David Balderston
6080d235b1 Fix subscriber height being too tall for viewport (#168)
Closes #7163

* With flex-column, setting height to 100% will make the child the same
as the full height of the flex container, not fill up the remaining
space, so it was bleeding down below the viewport
2016-08-01 17:49:12 -06:00
Austin Burdine
c0907d0867 fix upgrade notification font size (#138) 2016-07-22 15:03:41 +01:00
Vijay Kandy
b4e812db54 Added upgrade notification component to About page. (#102)
- Picked some fixes https://github.com/TryGhost/Ghost/pull/5670/files
- Destructured Ember properties
- Removed unused imports and fixed unit test errors.
2016-07-15 16:58:35 -06:00
Kevin Ansfield
ebb36a317e Merge pull request #25 from AileenCGN/scheduler-ui
Scheduler UI
2016-06-14 13:06:00 +01:00
Austin Burdine
8b07f934e3 internal-tags style followup
no issue
- improves internal-tags display on content page
- fix typo in settings/labs
2016-06-13 09:40:16 -06:00
Aileen Nowak
9a28e5d7d5 Scheduler UI
refs TryGhost/Ghost#6413 and TryGhost/Ghost#6870

needs TryGhost/Ghost#6861

- **Post Settings Menu (PSM)**:'Publish Date' input accepts a date from now, min. 2 minutes to allow scheduler processing on the server. Also, there will always be some delay between typing the date and clicking on the 'Schedule Post' button. If the user types a future date for an already published post, the date will be reseted and he sees the message, that the post needs to be unpublished first. Once, the date is accepted, the label will change to 'Scheduled Date'.

- adds a CP 'timeScheduled' to post model, which will return `true` if the publish time is currently in the future.

- **Changes to the button flow in editor**:
- if the the CP `timeScheduled` returns true, a different drop-down-menu will be shown: 'Schedule Post' replaces 'Publish Now' and 'Unschedule' replaces 'Unpublish'.

- Covering the _edge cases_, especially when a scheduled post is about to be published, while the user is in the editor.
	- First, a new CP `scheduleCountdown` will return the remaining time, when the estimated publish time is 15 minutes from now. A notification with this live-ticker is shown next to the save button. Once, we reach a 2 minutes limit, another CP `statusFreeze` will return true and causes the save button to only show `Unschedule` in a red state, until we reach the publish time
	- Once the publish time is reached, a CP `scheduledWillPublish` causes the buttons and the existing code to pretend we're already dealing with a publish post. At the moment, there's no way to make a background-fetch of the now serverside-scheduled post model from the server, so Ember doesn't know about the changed state at that time.
	- Changes in the editor, which are done during this 'status freeze'-process will be saved back correctly, once the user hits 'Update Post' after the buttons changed back. A click on 'Unpublish' will change the status back to a draft.
	- The user will get a regular 'toaster' notification that the post has been published.

- adds CP `isScheduled` for scheduled posts
- adds CP `offset` to component `gh-posts-list-item` and helper `gh-format-time-scheduled` to show schedule date in content overview.
- sets timeout in `gh-spin-button` to 10ms for `Ember.testing`
- changes error message in `gh-editor-base-controller` to be in one line, seperated with a `:`

TODOs:
- [x] new sort order for posts (1. scheduled, 2. draft, 3. published) (refs TryGhost/Ghost#6932)
- [ ] Move posts sorting from posts controller to model and refactor to use `Ember.comparable` mixin
- [x] Flows for draft -> scheduled -> published like described in TryGhost/Ghost#6870 incl. edge cases and button behaviour
- [x] Tests
- [x] new PSM behaviour for time/date in future
- [x] display publishedAt date with timezone offset on posts overview
2016-06-13 17:01:42 +02:00
Kevin Ansfield
3e1087f80f Remove outline from search input
no issue
- remove the outline that is shown on the search input once the dropdown box has closed
- remove unused styles for the old selectize-based search input
2016-05-25 10:52:21 +01:00
Kevin Ansfield
755e048f98 Subscribers: Admin UI updates & fixes
Update for synchronous feature service

Add client-side handling of server-side errors when adding subscribers
- display server-provided error message when we get a server error
- fix the ajax util's `getRequestErrorMessage` method so that it works correctly with Ember's `InvalidError` object instead of the previous request object that it was receiving (*TODO:* this really needs looking at properly so we aren't losing details and Ember Data can do it's stuff)

Styling updates
- proper icon for ascending/descending
- change hover colour to green for "Import CSV" button

Delete subscriber button with confirm modal
- display delete button when hovering over a subscriber row (WARN: really ugly button, styles definitely want looking at)
- show confirm modal when clicking the delete button
- delete subscriber, remove from table, and update total on confirm
2016-05-11 11:22:35 +02:00
Kevin Ansfield
83c9270682 Subscribers: Admin User Interface v1
Initial Subscribers screen
- set up mocked api endpoints
- basic subscribers screen with data loading, infinite scroll

"Add Subscriber" screen
- uses modal to display a new subscriber form
- validates subscriber e-mail address
- moves pagination from route into controller to use filtered/sorted CPs on top of a live-query so that new subscribers are added to the list and the total can be properly managed

TODO:
- there is currently a pretty serious performance issue where the whole table is re-rendered when the live-query is updated. `ember-light-table` doesn't allow for live-binding and has no options to easily manipulate it's rows using an external interface - it's possible to move the page loading into the component so we only render new rows but that leaves it difficult to react to new subscribers being added through the UI. I believe the number of components used within the table is also adding to the performance problems.
  - most likely solution is to drop `ember-light-table` in favour of rendering the table directly - glimmer should do a good job of fast updates even though the underlying array will be completely swapped out

"Import subscribers" screen
- uses modal to display an import subscribers CSV file upload form
- displays upload progress
- displays import stats and reloads subscribers table once import has completed
- adds `gh-file-uploader` component (NB. pared down copy of `gh-image-uploader`, ripe for some refactoring)
- fixes subscribers acceptance test failing because fixtures did not have the labs flag enabled

Unfortunately this doesn't have 100% test coverage as we're limited in how we can simulate file uploads 😞

Fix performance issues with subscribers table
- moves the table definition from the component up to the controller
- switches back to manually manipulating table rows instead of using a live-query

This is a quick-fix in that it allows us to continue using the `ember-light-table` component but it does mean that we lose some flexibility that the live-query gave us. For now it's not much of an issue and it allows us to defer deeper performance/flexibility work until we have a concrete need and requirements.

Hook up Export CSV button
- use a hidden iFrame to trigger the browser to hit the CSV export endpoint and download the file

Re-order subscribers table by clicking column headers
- displays currently sorted column and sort direction
- clicking a column header re-fetches the data from the server with the appropriate query params

Fix scroll triggers for infinite pagination + icon change
- adds a debounce as well as the throttle so that we always get a final scroll trigger once scrolling has stopped
- changes the subscribers icon from the temporary team icon to the mail icon
2016-05-11 10:28:11 +02:00
Aileen Nowak
753f307382 Slack integration
closes #6584
- Frontend Changes:
	- adds 'Apps' to Navigation Menu
	- adds 'Slack' as nested page to Apps
	- adds `apps.css`
	- adds `slack-integration` model and uses `slack-settings` custom transform to parse JSON file
	- adds validation for `slack` model
	- adds fixtures and `slack/test` API endpoint to Mirage
	- adds acceptance tests for `apps-test` and `slack-test`
	- adds unit tests for `slack-settings` and `slack-integration`
- Backend Changes:
	- adds API endpoint `slack/test` to send Test Notification
	- adds default-values for slack model
	- sends payload to slack:
		- text: the url of the blogpost / test message
		- icon_url: url to ghost logo
		- username: Ghost
	- adds `slack/index.js` to send webhook to slack if
		- a new post is published (if slack webhook url is saved in settings)
		- user clicks on 'Send Test Notification' in UI
	- adds `slack.init()` to `server.index.js` to add event listener
	- adds unit test for `slack/index`
2016-05-08 12:49:15 +02:00
David Balderston
f208892d87 Remove Nav Item Placeholder and Set as Base Url Value
Closes #6440

* Removed the `.fake-placeholder`class from the input, test, and css
* On adding a nav item, if the url value has not been set by the user,
then set it to the base url as shown in the input
* If url has been set by the user, just do what it has always done
2016-03-22 07:11:20 -07:00
quangtt
1ef8ce9225 Fix preview icon position in editor (updated) 2016-02-19 21:55:04 +07:00
Kevin Ansfield
e0230adae6 Replace jquery-ui.sortable with ember-sortable for nav items
refs #6458, closes #6457
- replaces jquery-ui.sortable with ember-sortable for drag-n-drop handling
- moves the "new/blank" nav item out of the nav items list
  - allows it to be excluded from the draggable list
  - cleans up handling of the `navigationItems` array as there's no longer a need to ignore/exclude this extra item
- clears validation errors when typing in the respective field
- adds acceptance test for adding/removing nav items
- improves acceptance test for saving nav items to cover more edge cases
2016-02-09 22:08:21 +00:00
Kevin Ansfield
10b8ea48bd Fix stretched team image on setup/three
closes #6380
- wraps `<img>` element with a `<div>` to workaround buggy browser behaviour (https://github.com/philipwalton/flexbugs/issues/14)
- adds explicit `width: 100%` to `img` element to fix Firefox not scaling down to mobile sizes
2016-02-02 15:08:28 +00:00
James Seymour-Lock
633f224ab5 UI/CSS Improvements
Remove shadow on last tag item hover, was an inconsistent style addition thats not used elsewhere such as the content list
- Remove box-shadow on last of type settings tag hover state
- http://g.recordit.co/CEglFT7Hlr.gif

Remove * selector and specify user-select on individual classes for performance.
- remove * selector
- update classes that benefit from user-select none

Having different visuals based around if a radio/checkbox uses a label or not is weird and style changes should use a class modifier.
- Merged the two together as I was unable to find an example checkbox/radio in use that did not use the label tag

Improved UI for radio/checkboxes
- Added cursor pointer to radio/checkboxes
- Added hover state to radio/checkboxes

Add cursor to select boxes for usability
- cursor: pointer; added to select boxes

Add hover state to post edit icon
- add dark grey hover state to post edit icon

Add visual hover to nav user menu dropdown
- Move dropdown icon to visually indicate hover
2016-01-28 08:35:43 -05:00
Kevin Ansfield
9d67980a7e Refactor modals
refs #5798, closes #5018
- adds new `gh-fullscreen-modal` component - modals are now specified in-context so that they can have deeper interaction with their surrounding components/controller/route, i.e. a modal component can be a thin confirm/deny wrapper over the underlying controller action keeping all context-sensitive logic in one place
- adds spin-buttons to all modals with async behaviour
- adds/improves behaviour of inline-validation in modals
- improves re-authenticate modal to properly handle validation and authentication errors
2016-01-12 20:53:08 +00:00
AileenCGN
9b6d1c7a36 Minor usability improvements for editor screen
closes #6318
2016-01-11 20:34:04 +02:00
Kevin Ansfield
706b9ac669 Mobile fixes for tag management UI
refs #5845, #5969
- when on mobile devices tag management UI will only display a list and when a tag is accessed the tag settings form will slide in from the right
- tag settings form header has a 'back' button when on mobile to go back to tags list
- switching from mobile to standard modes will auto load the first tag as per standard tags screen on desktop
- if no tags are present then the blank-slate template will be shown when on mobile
2015-11-02 13:18:10 +00:00
Kevin Ansfield
89b7ff3320 Routable tags
refs #5845
- Updates tag settings screen to match content screen behaviour. Each now tag has it's own route that is link-able from other areas of the app
- Updates a number of places where jQuery event handler code was not wrapped in Ember's run loop
2015-10-27 12:48:41 +00:00
Kevin Ansfield
56de42b280 Remove unused tags search CSS
no issue
- delete old/unused CSS that was used for an old tag component
2015-10-23 18:18:58 +01:00
John O'Nolan
cce722efa0 Fix broken active state on password reset button 2015-10-16 11:32:02 +02:00
Austin Burdine
7f4f5dc71d add tag description validation to tag settings menu
refs #5845

- adds validation to description field
- fixes css to word-wrap on words that are too long
2015-10-08 23:01:59 -05:00
Hannah Wolfe
84eefa4e89 Merge pull request #5843 from kevinansfield/fix-nav-regressions
Fix nav regressions in admin client
2015-09-27 13:36:04 +01:00
Kevin Ansfield
55e4376be7 Fix over-sized editor pane widths
closes #5804, supersedes and closes #5820
- adds a fixed width that flexbox can expand from to prevent flexbox content dictating the width (see https://github.com/TryGhost/Ghost/issues/5804#issuecomment-141416812)
- adds a hack to the casperjs tests reverting the CSS change because phantomjs and flexbox don't get along
2015-09-24 18:46:13 +01:00
Kevin Ansfield
d8728aad57 Fix nav regressions in admin client
issue #5841

- fix relative link checks in navlink url input component
- fix navlink url input component sending absolute URLs instead of relative URLs to action handler
- remove URL manipulation in navigation settings controller (url input handles URL manipulation, validator flags anything that's still incorrect)
- capture cmd-s in url input to ensure changes are actioned before save
- automatically add mailto: to e-mail addresses
- add gh-validation-state-container component so .error/.success validation classes can be applied to any container element
- add validation-state mixin that can be mixed in to any other component to give it access to validation status (used in gh-navitem component to keep alignment when inline error message elements are added)
- validate and display inline errors on save
- improve ember test coverage for navigation settings related controller and components
2015-09-23 17:05:41 +01:00
Kevin Ansfield
cbd6395b1e Merge pull request #5788 from ErisDS/search-timeout
Reduce search refresh timeout & forgotten link fix
2015-09-02 22:12:55 +01:00
Hannah Wolfe
16d7790a19 Merge pull request #5791 from kevinansfield/autohide-nav-translate3d
Better flickering auto-nav fix
2015-09-02 18:36:28 +01:00
Kevin Ansfield
909e038e63 Better flickering auto-nav fix
refs #5652
- reverts previous fix (#5698) to return translate3d smoothness
- add separate open-autonav toggle element and style it to always stick to the viewport edge to avoid wandering hover hit areas
2015-09-02 17:41:50 +01:00
Hannah Wolfe
4b760fccfb Reduce search refresh timeout & forgotten link fix
no issue

- Change timeout from 60secs to 10secs for refreshing search results
- Remove white background from forgotten password link
2015-09-02 17:41:28 +01:00
John O'Nolan
e99670db65 Search mobile fixes 2015-09-02 16:13:18 +02:00
John O'Nolan
e7f1af2e6d Search styling 2015-09-02 12:07:47 +02:00
Kevin Ansfield
353dc512bb Mobile markdown/preview tabs
refs #5652
- on mobile, add Markdown/Preview links to the editor footer that switch between the respective views
- temporary resolution to the inability to upload on mobile without access to the preview
2015-09-01 18:14:40 +01:00
Kevin Ansfield
a91cd2210e Basic post/user search
refs #5343, #5652
- implements basic post and user search using selectize input
- queries minimal API endpoint and refreshes results on search input focus if results are older than 60 seconds
2015-08-31 22:47:26 +01:00
Kevin Ansfield
a1f8a5f81c Merge pull request #5766 from JohnONolan/colourrrr
Minor colour update
2015-08-31 09:06:22 +01:00
John O'Nolan
c22d23d355 Minor colour update 2015-08-31 08:04:09 +02:00
Kevin Ansfield
2682e47478 Fix broken content mgmt -> editor links on mobile
refs #5652
- add `ember-resize` addon that registers a single resize event handler and exposes it as a service and mixin
- add a component that wraps the posts list and content preview and exposes a `previewIsHidden` property
- use the `previewIsHidden` property in `gh-posts-list-item` to switch the item's link between the editor and the preview
- add `display: none` to the preview pane when in mobile so that we can test it's visibility
2015-08-28 11:52:38 +01:00
John O'Nolan
b8934f7a8a Consolidation of dropdown sizes 2015-08-27 13:27:49 +02:00
John O'Nolan
bdfd972bad Minor visual bugfixes
- Line height on forgotten password butotn
- Regresson in button display mode
2015-08-27 12:14:59 +02:00
John O'Nolan
cd6289ba0a Minor visual edits
- Adjust edit post button position
- Increase hit area on post settings cog
2015-08-26 15:12:04 +02:00
John O'Nolan
58a86d17be Optimise mobile navigation
Make everything a little bit larger on small screens
2015-08-25 18:01:26 +02:00
John O'Nolan
9d5ea5d9be Add white bg to forgotten password link
Lastpass injects its password-fill icon into password inputs, this shows up awkwardly with the forgot-password button. Adding a white BG hides this.

Followup on #5641
2015-08-25 10:20:34 +02:00
Kevin Ansfield
045e5054a0 Fixes for sign-in error handling
issue #5652, closes #5641
- removes inline errors for empty fields
- separate validation routines for sign-in and forgot password
- highlight fields with errors when trying to submit
2015-08-21 19:38:44 +01:00
Kevin Ansfield
3d3c6f8bbe Fix flickering autonav animation
- use `transition: left` instead of `transform: translate3d`
- fixes issue where translate3d moves the element immediately then animates resulting in invisible hit areas that cause unexpected hover behaviour whilst animation is in progress
- translate3d is sometimes faster as it doesn't need to constantly re-calculate layout, however in this case the element is positon:absolute and we're only animating opaque elements so the benefit is marginal. Tested on Late-2012 13" retina MBP and framerate was consistently 100fps or higher.
2015-08-20 13:04:26 +01:00
John O'Nolan
8dd69ddaef Variety of style fixes
- Modal button position tweaked, removed extraneous margin
- Fix user profile full name field and mobile profile-picture
- Added chevron to tag settings men, corrected chevron colour
- Fixed regression in delete-tag button caused by removing flexbox from buttons
- Fixed regression in button positioning on about-ghost page caused by removing flexbox from buttons

See #5652
2015-08-13 10:04:45 +02:00
John O'Nolan
495536fbe3 Fixed publish menu positioning, cleaned up dropdown component
See #5652
2015-08-13 09:09:07 +02:00
John O'Nolan
0c2e6b617c Kill old tag styles 2015-08-13 08:55:41 +02:00
John O'Nolan
eb08826f3e Multiple minor visual style fixes
- Lighter dropdown shadow
- Removed display:flex from .btn because safari can't handle it on <button> elements, where it will immediately set all text-alignment to "left" with no way to change. I haven't been able to find any regressions for this change so far. Can't remember why buttons were supposed to be flexbox anyway. Maybe for icon alignment within buttons, but I can't find any such examples within the app.
- Safari thinks that user-select: all; means a single click should SELECT ALL THE THINGS. Removed/replaced with user-select: text; which makes it behave like Chrome; click and drag to select.
- Increased hit area for "?" button
- Removed :active style for post-edit button on content management screen, adjusted position
- Increased contrast on tag description, tag count, and view blog links

See #5652
2015-08-12 10:29:40 +02:00
Austin Burdine
16d0965a9e reimplement tag editing component for posts
refs #3800
- remove old tag editor code
- reimplement tag editor as an ember component
- add tag editor component to PSM
2015-08-10 07:22:37 -06:00
Kevin Ansfield
7ab232e770 Replace validation notifications with inline validations
issue #5409 & #5336

- update settings/general
- update signin
- update signup
- update edit user
- update reset password
- update setup/three
- remove `formatErrors` function from validationEngine mixin (it's no longer needed as inline validations should handle this instead)
2015-07-28 12:26:34 +01:00
Fabian Becker
37235413e8 Fix team/index screen
- Incorrect message was shown (Invitation sent instead of Invitation not sent)
- Correct colouring of message (new .description-error class)
- Correctly display lastLogin time
- Add colour classes
2015-07-14 18:21:08 +02:00
Austin Burdine
39b7630a6d added profile image component
closes #5334
- adds component for profile images (with optional gravatar)
- integrates image profile component into setup form
2015-07-05 17:37:22 -04:00
Łukasz Kliś
8bc8dc0532 Added multiline "placeholder" to 3rd step of setup
Closes #5459
- added a PNG background with 2 emails addresses as a "placeholder"
- added a `required` attribute for textarea in 3rd step of the setup
- taking an advantage of `:valid` pseudo-class to hide the background
  picture with email addresses
2015-07-01 23:14:27 +02:00
John O'Nolan
e912bc0cde Fix mobile display bugs on user list
See #5483
2015-06-24 19:53:01 +01:00
John O'Nolan
4b5fc201a2 Main colour audit
Clean up grey colours by mixing in slightly more blue, standardise appearance across different parts of the app and move closer to brand  colours.
2015-06-24 13:37:37 +01:00
John O'Nolan
f57c0c672a Firefucks
Firefox can't do flexbox, because why would a modern browser be able to do flexbox? Cray.
Closes #5438, Closes #5401 - same fix but vh unit because % unit is hella unreliable.
2015-06-24 12:17:49 +01:00
John O'Nolan
38a5797211 Fight fire with overflow.
Prevents firefox from allowing blog title to overflow. This is an incredibly stupid fix for an incredibly stupid browser bug. Firefox is the worst modern browser in the world at basic layout rendering. Could someone let them know please? Closes #5430 as replacement.
2015-06-24 12:16:58 +01:00
John O'Nolan
061f3171ee First pass colour audit
This gets rid of old and un-used, or lesser-used colour variables.
2015-06-24 12:15:48 +01:00
John O'Nolan
90426f4784 Fixes alignment bug on content management empty state
When buttons changed to flexbox they lost some alignment properties. This change makes the container for the empty content state use a flexbox container and align its containing items correctly. Also removes some old media queries which are no longer needed.
2015-06-17 14:41:29 +01:00
John O'Nolan
33bcaeff66 Fix signin form width bug
No issue. Fixes bug where signin form was not expanding to its full width as a result of some earlier global changes. This sets an explicit fluid width with a max-width fallback so that it's always the correct size.
2015-06-16 09:58:56 +01:00
Jason Williams
3448dcc8c5 Merge pull request #5408 from novaugust/cleanup-mobile-views
Remove legacy mobile view code
2015-06-14 17:59:44 -05:00
Jason Williams
ee23c87df9 Merge pull request #5414 from novaugust/zelda-menu-continued
Zelda menu z-index and viewport transition finishes
2015-06-14 17:57:35 -05:00
Matt Enlow
e7e30a67ea Remove legacy mobile view logic
No issue
- Move editor-base-view mixin into editor/edit view
- Also deletes mobile views and modifies files that were using it
- Helps pave the way for Ember 2.0, where views do not exist
2015-06-14 14:42:21 -07:00
Matt Enlow
d37a51fb90 Zelda menu z-index and viewport transition finishes
- [x] Mobilemenu button is missing from `content` and `editor` views
- [x] Mobilemenu pane slides entire content over, should expand over-top-of-content
- [x] Mobilemenu can't be closed
- [x] gh-view-title no longer generates an extra div; it is the h2.
- [x] gh-autonav-toggle closes the mobile menu on mobile. renamed `gh-menu-toggle`
- [ ] There is weird behaviour with mobile menu when changing from big=>small=>big viewport sizes
- ~~[ ] (Future issue) Ghost should remember (localstorage?) whether desktop menu is expanded or collapsed~~
2015-06-14 13:57:09 -07:00
John O'Nolan
f86ff53a84 Fix a wholelotta setup-screen bullshit
Merging setup screen into the new app wrapper had some knock-on effects due to new flexbox parent elements. As a result things were vertically collapsing in unexpected ways on narrow viewports. This is cleaned up here, with some other minor visual bugfixes.
2015-06-10 19:49:50 +01:00
Joe Wegner
22bbc3bd75 invite users after signing up during setup
closes #5338
- moves skip link to below the submit button
- makes the submit button better represent form status
- posts notifications based on success/failure of notifications
- goes to the invite page after user creation
- actually sends invites!

functional tests passing for onboarding invitations

cleanup for linitng

remove unreachable return

access the notifications service better

use link-to instead of an anchor with an action

failed user creations get caught, and bubble as errors

a slew of other cleanup stuff via jason
2015-06-09 11:50:24 -07:00
John O'Nolan
044d61745c Refactor Zelda dropdown styles
- New styles for dropdowns
- Fix minor tag-delete button bug
- Fix minor alignment bug on invite-user modal
- Update "about ghost" icon
2015-06-09 11:06:35 +01:00
Matt Enlow
753da0231f Add mobile menu open button and close on click outside nav
- Adds gh-view-title component to implement mobile menu button for titles on any page
- Refactors the `content-cover` out into the application template
- Fix various z-index issues with content-cover and gh-alert
- Move `.settings-menu-expanded` application view state from body to `.gh-viewport`
- Unify nav menu / mobile menu actions and code
2015-06-08 22:13:34 +02:00
John O'Nolan
f1621d7144 New mobilemenu prototype 2015-06-08 22:13:34 +02:00
Hannah Wolfe
fff349a6be Merge pull request #5384 from JohnONolan/zelditor
Content management & editor refactor
2015-06-08 16:22:29 +01:00
Hannah Wolfe
2deb36f428 Merge pull request #5404 from JohnONolan/zerrors
Fixup broken error page styles
2015-06-08 14:57:56 +01:00
Hannah Wolfe
70b983e167 Merge pull request #5374 from JohnONolan/betterflex
Better flexbox grids
2015-06-08 12:33:06 +01:00
John O'Nolan
8a98e1c337 Fixup broken error page styles 2015-06-08 12:14:58 +01:00
John O'Nolan
636390b58e Content management & editor refactor 2015-06-05 13:58:00 +01:00
John O'Nolan
73d3bf53c7 Merge pull request #5318 from acburdine/private-form
Rewrite default private.hbs for new zelda styles
2015-06-02 10:54:59 +01:00
John O'Nolan
9a5515133b Better flexbox grids 2015-06-02 10:19:35 +01:00
John O'Nolan
901837764c Add theme selector, update package mgmt styles 2015-05-30 23:12:40 +01:00
Austin Burdine
806ec5213c rewrites default private.hbs for new zelda styles
closes #5073
- changes format to match new zelda layout
- modifies the input_password helper to allow customization of class & placeholder
2015-05-29 06:25:32 -06:00
John O'Nolan
85de7b48c7 First pass theme management page 2015-05-29 13:01:28 +01:00
Sebastian Gierlinger
3c2a625e07 Merge pull request #5316 from ErisDS/onboarding-zelda
First pass at user onboarding screens
2015-05-27 17:23:40 +02:00
John O'Nolan
8aa68b2acf First pass on app management UI 2015-05-25 17:48:14 +01:00
Hannah Wolfe
3ad2115b40 First pass at user onboarding screens
refs #5315

- split setup into 3 screens
- add gravatar fetching
- add download counter
- add button handling for invite users
2015-05-25 17:43:12 +01:00
John O'Nolan
79f90c1d27 Refactor blog-navigation settings screen
- Better markup
- Cleaner CSS
- Fixed icon implementation
- New grab handle icon
- Better mobile styles
2015-05-25 14:23:49 +01:00
John O'Nolan
bc9a44eaf6 Fix up gh flow icons
- check
- back button
- various minor fixes
2015-05-24 20:44:09 +01:00
John O'Nolan
b92314904b Minor visual fixes 2015-05-22 19:05:16 +01:00
John O'Nolan
ac24592855 Implement autonav 2015-05-22 19:05:16 +01:00
Joe Wegner
19ccc32b9a setup the basic css structure for the slider nav menu
- toggles the persistent sidenav under the open-nav class
- adds a toggle/hover bar to the side of the sidenav that shows the nav
  on hover
2015-05-22 19:05:16 +01:00
John O'Nolan
5592d5bb0d Refactor about page 2015-05-22 19:05:15 +01:00
John O'Nolan
179d71f0e1 Remove extra ember container 2015-05-22 19:05:14 +01:00
John O'Nolan
44a14ea22d Fix splitbuttons, add more icons 2015-05-22 19:05:13 +01:00
John O'Nolan
cd8b62a7fa Introduce new notification and alerts components 2015-05-22 19:05:13 +01:00
John O'Nolan
c172df0320 Properly scope editor title, fix bug overriding content mgmt 2015-05-22 19:05:13 +01:00
John O'Nolan
711d5e9851 Strip old MQs 2015-05-22 19:05:12 +01:00
John O'Nolan
7b29d81636 Remove double border 2015-05-22 19:05:12 +01:00
John O'Nolan
24a90947d5 Integrate new auth styles into core 2015-05-22 19:05:11 +01:00
John O'Nolan
21d598b6e0 Introduce CSScomb 2015-05-22 19:05:10 +01:00
John O'Nolan
8f9f7a9b5e Cleanup CSS code style 2015-05-22 19:05:10 +01:00
John O'Nolan
a80796e4bf New button component 2015-05-22 19:05:10 +01:00
John O'Nolan
040593ab3b Disable user selection by default 2015-05-22 19:05:09 +01:00
John O'Nolan
a03c7df599 Convert Sass to Myth 2015-05-22 19:05:09 +01:00
John O'Nolan
e7b07895e2 First pass - strip mixins 2015-05-22 19:02:09 +01:00
John O'Nolan
6972271dd6 Move in new icons 2015-05-22 19:02:09 +01:00
John O'Nolan
2adba97086 Dem colours 2015-05-22 19:02:08 +01:00
John O'Nolan
c8686491f6 Much fix 2015-05-22 19:02:08 +01:00
John O'Nolan
94876633b8 Clean up borders 2015-05-22 19:02:08 +01:00
John O'Nolan
d208d51fcf Lighten up publish bar 2015-05-22 19:02:07 +01:00
John O'Nolan
3d996e037d Cleanup 2015-05-22 19:02:07 +01:00
John O'Nolan
3e668f5125 Content view 2015-05-22 19:02:06 +01:00
John O'Nolan
13a96605d4 New settings headers 2015-05-22 19:02:06 +01:00
John O'Nolan
1802442d40 Integrate new admin frame 2015-05-22 19:02:05 +01:00
John O'Nolan
1d3a0366c2 New onboarding markup and styles 2015-05-22 17:50:13 +01:00
David Balderston
19bdb64efc Fix up Labs Styling
No Issue

- Fixes import button not same height as upload button
- Fixes no space between import and upload on mobile
2015-05-11 23:12:31 -07:00
John O'Nolan
c4cc5d5b8d First styles for private blog login 2015-05-11 13:11:59 +01:00
John O'Nolan
e9dbf972af Merge pull request #5196 from PaulAdamDavis/minor-code-injection-fixes
Code injection syntax colour change
2015-05-01 15:50:14 +02:00
John O'Nolan
bd44e464a7 Update preview post link styling, add view post link 2015-05-01 12:19:25 +02:00
Matt Enlow
e50a1157fa Add post preview via uuid (/p/:uuid)
Refs #5097

- All drafts will show a preview link (this needs real css)
- Published posts will redirect
- prev/next post helpers only activate on published posts
- Powered by ~10 pints between the two of us (@ErisDS, @novaugust)
2015-04-30 11:57:37 +01:00
Paul Adam Davis
d83b8c7b55 Code injection syntax colour change
Closes #5179

- Overwrites the yellow code injection syntax highlighting (such as vendor prefixes in CSS) to be black, to match the rest of the property
- Adds rounded corners to the code injection CodeMorror wrapper to match its parents rounded corners (inherits the same value)
2015-04-28 16:35:14 +01:00
Hannah Wolfe
1162b72acb Merge pull request #5122 from JohnONolan/settings-cleanup
Cleaned up some derpy settings padding and widths
2015-04-09 16:17:43 +01:00
John O'Nolan
d6ef8bcc4a Cleaned up some derpy settings padding and widths 2015-04-09 15:59:17 +02:00
Paul Adam Davis
d5715549f0 Re-implement top notification position styles
References #5071

- Re-implements the previously broken top notification styles
- Moves the top notification outlet outside the `<main>` to ease styling (we have several nested position fixed/absolute boxes that make this tough - moving the outlet makes it easier)
2015-04-07 18:36:03 +01:00
Hannah Wolfe
703906e983 Merge pull request #5106 from acburdine/ghost-cm-editor
Added code editor to injection interface: the sequel (this time, with CodeMirror!)
2015-04-06 19:33:18 +01:00
Austin Burdine
ee685e448a add code editor component
closes #4995
- adds code mirror editor component
- converted code-injection editor fields to gh-cm-editor component
2015-04-05 11:57:18 -05:00
Hannah Wolfe
dc69d28404 Merge pull request #5098 from novaugust/view-post-link
Add link to published posts preview on content page
2015-04-05 14:41:07 +01:00
Hannah Wolfe
60937e8ccc Improve the forgotten password flow
- if the user has filled out their email already when they hit 'forgotten password' then automatically  fill out and submit the form
- this will look better when we have spinners on the buttons
2015-04-03 17:32:18 +01:00
Matt Enlow
cd41fdd653 Add link to published posts preview on content page
Ref #1756
- the word "Published" in "Published by {{author}}" now links to the post's front page
2015-04-03 09:51:53 -06:00
John O'Nolan
bf1d9c872b Font feature settings are incompatible with Open Sans 2015-03-27 12:26:16 +02:00
Pascal Borreli
f17dbfc6f0 Fixed typos 2015-03-17 17:43:53 +00:00
Paul Adam Davis
c5ffd408c2 Textarea Editor CSS Improvements
References https://github.com/TryGhost/Ghost/pull/4373

* Consistent line-height & padding cross-browser
* Remove drag handle from textarea
* Partially clean up the CSS to more closely match the new standard
2015-03-17 14:32:55 +00:00
Hannah Wolfe
2f8de51d67 No more CodeMirror
closes #4368, fixes #1240 (spellcheck), fixes #4974 & fixes #4983 (caret positioning bugs)

- Drop CodeMirror in favour of a plain text area
- Use rangyinputs to handle selections cross-browser
- Create an API for interacting with the textarea
- Replace marker manager with a much simpler image manager
- Reimplement shortcuts, including some bug fixes
2015-03-17 14:32:55 +00:00
Matt Enlow
589a563b30 The great migration (EAK -> ember-cli) 2015-03-11 12:37:41 -06:00