Commit Graph

298 Commits

Author SHA1 Message Date
Robert Rhoades
3635fa1c1d Resets the scroll position on controller content change
When scrolling through the preview of a long article, if the
post was changed the scroll position of the preview would
remain the same.
2014-09-02 13:13:32 +01:00
John O'Nolan
6e119567c5 Settings nav overhaul 2014-08-17 15:01:35 +03:00
John O'Nolan
d323b495a7 Implement new button markup 2014-08-17 14:57:07 +03:00
John O'Nolan
fe7805c0cf New publish button markup implementation 2014-08-17 14:53:47 +03:00
Hannah Wolfe
fcdbfbcc17 Merge pull request #3769 from novaugust/iss3764
Hide role dropdown on user page if user is owner
2014-08-15 17:53:46 +01:00
Matt Enlow
150ce6c9b9 Hide role dropdown on user page if user is owner
Closes #3764
2014-08-12 18:06:34 -06:00
Matt Enlow
8fb6555df5 Update ghost-logo, death to jQuery
Amends #3740 (which amended #3736), ref #3623
- Removed futzy jquery for setting href on logo; binding to ApplicationView property
- Killed dead code
2014-08-11 09:52:55 -06:00
Paul Adam Davis
15285c1593 Add ghost logo anchor tag
Amends #3736, references #3623

With `button.ghost-logo`, there's no `href`, so cannot be opened in a new window. This changes it back to an anchor and appends the blog URL to a href attribute. Win!

Bumps Ghost-UI version to 0.8.13 bring in related CSS changes.
2014-08-11 12:08:08 +01:00
Matt Enlow
0a2034f7e4 Fix -navbar events attachment
Closes #3623
- Move hamburger logic to action with terrible name, "toggleSidebarOrGoHome"
- Move ".js-close-sidebar" events to a document.on(event, *selector*, f) to make sure they attach even when the js-close-sidebars aren't on page (ie, hidenav)
2014-08-10 15:31:47 -06:00
Sebastian Gierlinger
2f1a55fa66 Fix Ghost icon is not clickable
closes #3623
- Initialization of the link was done on login page where the ‚burger‘
did not exist.
- initialization in application needs to be done to make it work on
refresh
2014-08-08 13:53:56 +02:00
Robert Jackson
0a9bde7702 Restore original display after window resizing.
fixes #3597
2014-08-06 09:04:43 +01:00
Felix Rieseberg
39c3127bac Ghost Logo navigation responds correctly to mobile
closes #3522
- Previously, the logo had a href attribute which was manually kept
from executing on mobile. Slow mobile devices that didn’t fully load
the JS would therefore navigate “desktop style”
- The href attribute is now set after the event handler has been loaded, ensuring correct navigation behaviour.
2014-08-05 10:05:32 -07:00
Hannah Wolfe
05ce783bd5 Merge pull request #3535 from rwjblue/properly-transition-on-mobile
Handle toggleing the content screen on mobile.
2014-08-03 17:23:25 +01:00
Felix Rieseberg
8fd05ca1de Show "Make Owner" only if displayed user is admin
closes #3570
- Added ‘controller.user.isAdmin’ as an condition for displaying the
“make owner” option
2014-08-02 07:02:50 -07:00
Felix Rieseberg
8841623469 Admin isn't shown "make owner" option
closes #3558
- Replaced canAssignRoles as "show user" conditional with new
"canMakeOwner"
2014-08-01 13:03:26 -07:00
Robert Jackson
9912c2bfed Handle toggleing the content screen on mobile.
Closes #3520.

Move the custom jQuery animation into an action on the controller so
that we can trigger it from within the route if needed.
2014-08-01 02:47:29 -04:00
Felix Rieseberg
43fe63d956 User Settings: Display cog based on rights
closes #3400
- The user view has been extended to have properties indicating whether
the user has rights to make the displayed user an owner or delete
him/her
- Handlebar conditionals decide whether or not to display the cog
2014-07-31 01:03:03 -07:00
Matt Enlow
975f925561 Add User Role Dropdown
Closes #3402, Closes #3428

-------------------

 ### Components
- Added GhostSelectComponent to handle async select creation (h/t @rwjblue)
- Added GhostRolesSelector (extends GhostSelect) for displaying user role options
- Created StoreInjector for surgically inserting the store into things that normally wouldn't have them.

 ### Users Settings
- InviteNewUserModal now uses GhostRolesSelector & defaults to Author
- The role dropdown for user settings has permissions set per 3402

 ### User Model
- Added `role` property as an interface to getting and setting `roles`
- Refactored anything that set `roles` to set `role`
- isAdmin, isAuthor, isOwner and isEditor are all keyed off of `role` now

 ### Tests
- Added functional tests for Settings.Users
- updated settings.users and settings.users.user screens
- fix spacing on screens

 ### Server Fixtures
- Fixed owner fixture's roles
2014-07-30 17:59:14 -06:00
Maurice Williams
fb170d1725 Pagination for Users Management screen
closes #3222
- implementing server-side pagination for /users API
- passing /users?limit=none will return all users
- passing /users?status=invited will filter base on user status
- creating 3 mixins (route, controller and view) to keep pagination logic DRY
- updating route, controller and view for Posts to use new mixing
- implementing infinite scrolling for Users Management screen (using new mixins)
- Users Management screen displays all invited users, but paginates active users
2014-07-21 14:03:26 -04:00
Hannah Wolfe
c9357b8937 Merge pull request #3278 from jaswilli/prod-prep
Move inline templates to standalone template file
2014-07-15 17:00:01 +01:00
Jason Williams
3d3b999995 Move inline templates to standalone template file
Refs #3161
- Move two inline template snippets from the post tags input
  component into the .hbs template file so they can be
  pre-compiled.  Needed when shipping only the handlebars runtime
  in production mode.
2014-07-15 15:21:44 +00:00
Matt Enlow
14f29f5139 Refactor settings routing and mobile interactions
Closes #3254, closes #3138, closes #3245
 ### Settings Routing and View refactoring
- Refactored `SettingsView` to handle transitions between mobile and desktop layouts
- `SettingsRoute` will only transition to `settings.general` if the screen is large enough to show both the menu and the content
- Added `SettingsIndexView` to handle showing the settings menu on mobile screens
- Added `SettingsContentBaseView` to be inherited by any settings view that is not index.
- Updated Settings templates appropriately to work with new views
- Removed extraneous `active` class from `settings-content`
- Changed settings menu to use `gh-activating-list-item`
- Retooled settings tests

 ### Mobile Utils
- Renamed file to `mobile.js`, since it's inside of `utils/`
- Added `mobileQuery` MediaQueryList to help detect layout changes
- Removed unused `hasTouchScreen`, `device.js` should be used instead.
- Removed unused `smallScreen` function
- Moved FastClickInit to codemirror-mobile
2014-07-14 17:36:48 -06:00
Matt Enlow
1089cdb036 Fix mobile sidebar menu
Closes #3110
- Created `ApplicationView`
- Added `js-close-sidebar` classes to navbar navigation links
- Clicking on a navigation link in the sidebar will close it
2014-07-07 08:55:22 -06:00
Paul Adam Davis
d6cb4bd48c New edit user UI 2014-07-01 18:42:13 +01:00
David Arvelo
54eda5c03c Mobile Interactions
closes #3018
- split clientold mobile interactions into their respective Ember routes/views
- create PostsView and SettingsView with mobile interactions
- place interactions for the publish bar into ApplicationRoute on init
2014-06-24 18:33:59 -04:00
Kevin Ansfield
48f6567835 Fixes incomplete tags showing when switching to edit a different post
closes #3065
- send 'reset' action to PostTagsInputController when associated view is destroyed
2014-06-24 15:09:11 +02:00
Kevin Ansfield
07e18dac86 Ensure incomplete tags aren't lost on save
closes #2991, references #2172, references #2453
- moved and separated tags logic from EditorTagsView into PostTagsInputController/View
- call out to PostTagsInputController when saving post to ensure an incomplete tag is completed before save
- added Tab key support for suggestion selection / tag completion
- don't show suggestions list when input field doesn't have focus
- added code for #2172 but left commented-out as it causes side effects with completion on save
- updated suggestion highlighting so it doesn't bork on html/regex chars (#2453)
2014-06-24 12:14:27 +02:00
Matt Enlow
3cae5a55dd Better editor entry
Ref #2308

- Double clicking a PostItemView on the content screen will open that post
  in the editor.
- Added `'ctrl+e, command+e': 'openEditor'` shortcut will open editor as well
2014-06-23 10:15:06 -06:00
Matt Enlow
6972902adb Cleanup Misc Ember Code
No issue

Misc Places
- Removed expired, irrelevant, and fixed todos

FloatingHeaderPartial
- Fixed "Written" vs "Published" text logic

SettingsGeneralController
- Removed single quotes from property names

EditorBaseController, MarkerManagerMixin
- Aligned var declarations

PostItemView
- Commented out unfunctional code for feature request #2398
- Switched `isPage`, `isFeatured` to be computed properties in `Po
- use `toggleProperty` in `PostController.action.toggleFeatured`
2014-06-17 14:59:15 -06:00
Fabian Becker
6deb206e84 Implements page class toggling.
- Toggles page class when post is marked as static/non-static
2014-06-16 17:08:58 +03:00
Fabian Becker
a7daeecbf2 Content screen: Featured posts
fixes #2748
- Properly handle marking post as featured/non-featured
- Show correct notifications
2014-06-16 09:32:40 +00:00
David Arvelo
2151d8a49f Reach Editor parity with Ember
closes #2426, closes #2781, closes #2913
- Concatenate vendor files on change of js in core/shared/
- Add all the markerManager stuff to its own mixin
- make markers a shared object for all that mix it in. makes it easier to use helper functions in different modules
- add getMarkdown method, returns object with two keys holding the markdown: one with markers, the other without
- Clear markers when codemirror is destroyed
- make Editor subcomponents communicate through the Editor Controller
- Set Codemirror and html preview shared scrolling
- Set CodeMirror, html preview css scroll class with util
- Create 'scratch' property in Editor controller; prevents a model save wiping image markers due to markdown bindings
- Add editor and html preview actions to handle img upload start/finish
- disable codemirror when an image is being uploaded, enables on success or failure
- Fix editor wordcount when there are 0 words
- Add modal dialog when transitioning out of the editor with an unsaved post
- Add window.onbeforeunload handling with `.unloadDirtyMessage()` on editor controller
- and various other things
2014-06-13 18:12:03 -04:00
Matt Enlow
f0283ddb5a Refactored Editor Routing
- Moved `new` route into `editor` resource (`editor.new`)
- Moved the current editor controller, view, and route to `editor.edit`
- Added `editor.index`, which automatically transitions into `editor.new`
- Moved controllers, views, templates, and routes to match new router config. Also changed links to `editor` into `editor.new` and `editor.edit` as appropriate.
2014-06-11 12:18:44 -06:00
Robert Jackson
a9608d77ae Make exports consitent.
Previously, the exports were somewhat random with some files declaring
local variables then immediately exporting them, and others simply
doing the work needed in the export itself.
2014-06-09 13:58:35 -04:00
Hannah Wolfe
dcb8d45594 Merge pull request #2907 from appleYaks/shadows
Add shadows to PostsListView and the adjacent HTML Preview; Fix preview
2014-06-09 09:38:10 +02:00
David Arvelo
f1a02b88a9 Split PostController amongst new Editor/PostSettingsMenu Controllers
closes #2910
- create EditorController, PostSettingsMenuController
- remove `posts.post` controllerName dependency on EditorRoute/NewRoute
- `{{render}}` the PostSettingsMenuView with its own controller
- break up properties/methods from PostsPostController into all three controllers
- fix EditorRoute pagination options to now be comparable to PostsRoute
- add NewController to force NewRoute to refresh editor with blank model. Identical to Editor's
- EditorController and NewController are based on a shared mixin
- NewView created, templateName is 'editor'
2014-06-08 14:01:32 -04:00
David Arvelo
e88519613f Add shadows to PostsListView and the adjacent HTML Preview; Fix preview render
closes #2906
- add a utility function to add classnames to targets, retrofitted from clientold to accommodate `Ember.run.bind`
- create a content-preview view that tracks its scrolling
- add a scroll handler to the existing PostsListView
- The `posts/post` template now takes its HTML from the post model instead of using the editor's markdown component
2014-06-08 12:53:54 -04:00
Harry Wolff
1818f631bd Implement the Tag Editor view
closes #2425

- creates custom view for the tag editor
2014-06-06 23:02:56 -04:00
Hannah Wolfe
78088820d6 Ember cleanup: single quotes for JS
- All JS should use single quotes
2014-06-01 21:53:16 +01:00
Hannah Wolfe
3181dbe9bc Merge pull request #2840 from novaugust/popover-service
Added popover component
2014-06-01 11:10:00 +01:00
Matt Enlow
78643344e4 Added popover component
Closes #2418, #2714
Ref #2446, #2565

- Added and injected `popover` service to globally control popovers
- Added `gh-popover-button` component
- Added `popover-mixin` for popover and popover-buttons to mixin
- Added body-event-listener mixin for popover service to watch for body
  clicks with
- Post settings and post save button both now use `gh-popover`
- Added hacks to `ember-hacks.css` to make popovers work until ghost-ui
  consolidates functionality
2014-05-31 17:23:41 -06:00
Hannah Wolfe
699111b01a Ember: correct editor layout and other niggles
no issue
- Fixes the editor view so that the layout is correct
- Remove default title
- Fixes a couple of scoping issues with notifications
2014-05-31 19:32:22 +01:00
David Arvelo
6ab475860d Infinite Scroll on Posts List
closes #2414
- Add PostsController with loadNextPage action
- Collect and store pagination info from PostsRoute into PostsController
- Use `store.filter` on PostsRoute model hook to auto-update posts list template as post models are added to the store
- Add content list view and use it to check for scroll event
- Make PostRoute only load a post that's already in the store, until we figure how to load multiple pages on refresh
- Add util function from clientold that concats error messages from server response
2014-05-30 22:14:45 -04:00
Matt Enlow
2cf81164f7 Ember editor save and publish button functionality
Closes #2747
- Added new 'editor-save-button' view and template.
- Added save action to post controller.
- Set a new post as the default model for the /editor/ route.
- Set the `posts/post` controller as the controller for the /editor/
  route.
- Needs ghost-popover #2418 component for full pop-up functionality
2014-05-24 07:47:55 -06:00
Matt Enlow
e7f5dd3204 Create Post Settings Menu and its functionality on the Post controller.
closes #2419
- Added blur-text-field component, which fires actions on focusOut
- Added utils/date-formatting for moment & date functionality  consolidation
- Added functionality to PostsPostController
- Added fixtures: posts/3 & posts/4, posts/slug/test%20title/
- Added Post model saving
- Set posts.post as controller for EditorRoute
- Added PostSettingsMenuView and template
- Added "showErrors" convenience method to notifications
2014-04-20 13:28:43 -06:00
Erik Bryn
152ab286b5 Specify itemView on the each helper rather than nesting a view helper.
This avoids the creation of two views per row, which will make a big difference for large blogs.
2014-03-09 14:20:15 -07:00
Manuel Mitasch
275f623278 Amend fixtures & put body classes in styleBody mixin
- Change fixture response of posts route to actual format.
- Extracted classNames logic of routes into style-body mixin.
- Additionally replaced all double-quotes with single-quotes for style conformance.
2014-03-09 15:30:54 +00:00
Manuel Mitasch
a9a69fa441 Add admin prototype
issue #2270

- from https://github.com/manuelmitasch/ghost-admin-ember-demo
- Not working properly: added ic-ajax mock in app.js but promise not resolving => loading route always active
2014-03-07 14:01:26 +00:00
Taras Mankovski
988a127a3e Added directory structure 2014-02-27 07:20:30 -05:00
Hannah Wolfe
3c25d4aaed Rename client -> clientold
issue #2271

- should allow development of new admin UI whilst still having access to the old ui
2014-02-27 00:52:04 +00:00