Commit Graph

78 Commits

Author SHA1 Message Date
Matt Enlow
c30ed85c80 Fix navigation deletion
Closes #4928
2015-02-23 17:02:48 -07:00
Paul Adam Davis
337ff59888 Add order property when parsing Navigation JSON
Closes #4927

- Add `order` property when parsing Navigation JSON
- Fixes CSS issue where the placeholder nav item drag handle was still visible
2015-02-21 14:07:13 +00:00
Hannah Wolfe
d35291259b Ensure internal nav items have a trailing slash
refs #4535

- all internal urls in ghost have a trailing slash, missing it out will cause nav-current to not work
2015-02-16 19:08:41 +00:00
Paul Adam Davis
97506a53f6 Drag & Drop Navigation Reordering
Closes #4540

- Implements drag & drop to reorder navigation items
- Adds a `sort` property to navigation items
- Adds a tiny library to enable touch events for drag & drop. It hooks onto jQuery UI.
- Sort nav items before being saved
- Adds `settings-view-navigation` to route for body class
2015-02-12 17:02:46 +00:00
Jason Williams
5ea14118c8 Update Ember to 1.10.0
No issue.
- Ember@1.10.0
- Update grunt-ember-templates to version that supports HTMLBars.
- Update Gruntfile.js to compile templates with HTMLBars.
- Convert Handlebars code to its HTMLBars equivalent.
2015-02-09 16:20:16 +00:00
Jason Williams
245b0bea12 Implement Navigation item input behaviors
Closes #4807
2015-01-18 23:08:03 -06:00
Jason Williams
d87994aa35 Connect Navigation page to live data
Closes #4539
2015-01-14 21:24:08 +00:00
Paul Adam Davis
804d058ab1 Navigation UI Ember Integration
Closes #4537

- Adds Navigation to the Settings menu
- Adds a `navigationUI` config flag (redirects if not an editor or author)
2015-01-11 20:04:01 +00:00
Hannah Wolfe
d81bb926e0 Reset the store after import
no issue

- without this, the content screen doesn't update properly after an import
2015-01-08 13:42:45 +00:00
Hannah Wolfe
5b9ff9e58f Move tag management from behind config/labs flags
issue #4248

- tag management is ready for release, this takes the training wheels off :)
- remove config flag
- remove labs checkbox and related code
2015-01-06 18:56:42 +00:00
Jason Williams
b869342a86 Rework Labs feature toggling
Refs #4750
- Make "Feature" a Controller with promise support.
- Use via 'needs' instead of injecting from an initializer because
  we need authenticated access to the API.
- Check whether feature is enabled when entering Code Injection route.
2015-01-04 20:05:25 +00:00
Jason Williams
bf7a32abbc Merge pull request #4750 from ErisDS/labs-thing
Labs page checkboxes
2015-01-04 13:44:47 -06:00
Hannah Wolfe
37b994e036 Adds global feature manager
closes #4409
2015-01-03 14:25:04 +00:00
Paul Adam Davis
ed6e7f16dd Start of labs
issue #4409
2015-01-02 15:58:36 +00:00
Robert Jackson
d8da21520f Remove ObjectController proxying behavior.
Ember.ObjectController (and Ember.ArrayController) will be deprecated in
Ember 1.11 (and removed from core in Ember 2.0). The reasoning is
detailed in the Ember 2.0 RFC.

This PR does the following:

* Updates templates/controllers/views to explicitly reference model
  properties (instead of relying on proxying behavior).
* Clearly delineate where certain properties are being set or retrieved
  from (for example it was not clear exactly where `scratch` and
  `titleScratch` were stored).
* Remove usage of `Ember.ObjectController`.
* Add JSCS rule to prevent future PR's from adding regressions.
2015-01-01 21:51:20 -05:00
Jason Williams
c922821c7a Finish tag post count UI. Misc tag related fixes
Issue #4683
- Finish setting up pagination in tag management page.
- Add post count warning to delete tag modal.  Fix styling.
- Make sure tag input menu is loading all tags.
- Only include saved tags in tag input suggestion list.
- Unload tag records from store when entering tag route so that
  we get accurate post count.
- Add a resetPagination action to pagination-controller-mixin for
  cases where we want to start fresh.
- Include tag.id when sending tag payload to API.
2014-12-22 02:17:18 +00:00
Hannah Wolfe
f3362f81af Merge pull request #4643 from novaugust/settings-menu-mixin
Create settings-menu-mixin for subview state tracking
2014-12-18 16:34:39 +00:00
Felix Rieseberg
8f6b23f3ab Tag Management: Delete Flow
Closes #4633
- The ‘delete’ button is now a smaller plain text link, opening a
confirmation modal analog to the delete user/post flow
- Adding a post count is dependent on #4654, but the modal is already a
neat step up from the immediate, warning-less deletion.
2014-12-17 08:38:14 -08:00
Matt Enlow
0d95ce4b8a Create settings-menu-mixin for subview state tracking
Ref #4642
- Move duplicate code from PSM and SettingsTags to a mixin
2014-12-13 20:37:36 -07:00
Hannah Wolfe
1518c41478 Merge pull request #4613 from felixrieseberg/iss4506-2
Tag Cover Images
2014-12-12 10:46:58 +00:00
Hannah Wolfe
1223e3237c Labs page bug fixes
- clear import errors on new attempt
- clear posts and tags from store after delete all
2014-12-11 19:53:56 +00:00
Felix Rieseberg
fd0e66a773 Tag Cover Images
Closes #4506

Works just like the Post Cover Images (and uses the same component)
Tiny changes to the component ensures that we can reuse it across Ghost
2014-12-10 17:48:18 -08:00
Paul Adam Davis
58b0eb701c Add Tag Meta View
Closes #4509, Closes #4615

- Adds meta title & meta description input fields
- Autosaves meta data
- Shows SEO preview (falling back to tag name & description if meta not supplied)
- Adds `type="button"` to delete button (which closes 4651)
2014-12-10 18:12:30 +00:00
Matt Enlow
5cfebb3e50 Dry up tag saving behavior
Ref #4248
2014-12-09 07:38:32 -07:00
Stefan Baumgartner
895fe26bc9 adds code injection admin frontend implementation, handlebar helpers + settings
escaping handlebars
2014-12-04 04:16:08 +00:00
Matt Enlow
e66e012cae Merge pull request #4564 from Gargol/issue-4517
Tag Settings Menu Autosave
2014-12-03 14:29:42 -07:00
Nazar Gargol
a31902024b Tag Settings Menu Autosave
closes #4517

- adds autosave to name/slug/description fields in TMS
- adds nprogress indicator when saving
2014-12-03 19:15:59 +01:00
cobbspur
920e36f8e0 Move ugly debug to Settings Labs
closes #4534

- Adds new Labs route
- Wires route in settings page
- Move and rename debug templates and logic to labs
- Redirect /debug to settings/labs
2014-12-01 19:19:08 +00:00
Matt Enlow
26268d7667 Tags management api hookup
Ref #4248
- Added tags settings menu
- Added basic new, edit, delete, and save actions
- Show actionable edit buttons dynamically based on tag state
- Infinite scroll
- Closing the tag settings menu rollbacks your changes
- Removed not-yet-implementable code
2014-11-21 16:24:28 -07:00
Felix Rieseberg
543cb4dac3 Reset slugValue when the user changes
Closes #4411
- Previously, saving the user’s slug would lead to the slug value being
‘stuck’ on that saved value, even if one navigated to a different
user’s profile settings.
2014-11-10 13:31:11 -08:00
Jason Williams
0e9d4e6792 Enable JSCS checking on client.
Refs #4001
- grunt-jscs@0.8.1 which provides ES6 support.
2014-10-25 16:13:04 +00:00
Robert Jackson
936acdb693 Remove lodash from admin client.
* Adds `bind`, `isFinite`, and `isNumber` utility functions from lodash.
* Use new util funtions instead of lodash throughout the codebase.
* Remove lodash from vendor builds.
2014-10-23 18:27:09 +00:00
Gabor Javorszky
0c984e0efd Adds (Never) for users who haven't been seen
Closes #3970
2014-09-05 16:45:34 +01:00
Paul Adam Davis
9ed5bf87a1 Fix user cover images
No issue

The cover image method in the settings/user controller returned the correct asset URL, but not the corresponding CSS which is needed to show it correctly.
2014-09-02 15:19:23 +01:00
Hannah Wolfe
71e97a20e6 Merge pull request #3816 from felixrieseberg/iss3671
'Autocorrect' for posts per page setting
2014-08-20 13:44:29 +01:00
Matt Enlow
fb6c3c6b56 Change Ember function.property() to Ember.computed
Closes #3417
2014-08-19 10:01:17 -06:00
Felix Rieseberg
9e3820e1ef 'Autocorrect' for posts per page setting
See #3671
- As @JohnONolan’s suggestion, if the user enters an invalid value for
the ‘posts per page’ setting, the number autocorrects to 5, iOS
autocorrect-style
2014-08-18 23:24:59 -06:00
Jason Williams
bb50791dce Correct behavior on updating user slug.
No Issue
- Defer save until after slug is checked.
- If new slug is empty or all whitespace, reset to previous value.
- If new slug is the same as existing slug except for an increment
  value (e.g. ghost-user-2), use the original slug.
- If the slug has changed, change the URL path to reflect the
  change so that the browser refresh and back button still work.
- Added tests.
2014-08-15 04:00:19 +00:00
Robert Jackson
970ccff961 Ensure that slug is always synced for User form. 2014-08-11 11:42:53 +01:00
Jason Williams
3242c5b4a9 Cleanup from notifications refactor.
Refs #3521
2014-08-06 00:13:56 +00:00
Maurice Williams
bac71559f3 prevent revoking invite for already active users
closes #3563
- before attempting to revoke an invitation, get updated model info
- reload route and show warning if user info has changed
2014-08-05 00:35:46 -04:00
Jason Williams
1c6216777c Refactor notifications to prevent stacking.
Closes #3511, Closes #3512, Closes #3526
- show* methods now close existing passive notifications by
  default.  They also now take an optional options object where
  existing parameters such as "delayed" and "defaultErrorText"
  can be passed in as well as the new "doNotClosePassive" flag.
- Removed all explicit calls to notifications.closePassive except
  for the few places where it makes sense to call it separately.
2014-08-01 16:57:29 +00:00
Maurice Williams
e6115c4126 custom slugging capabilities for individual user pages
closes #3401
- modifying slug-generator to be more generic
- adding slugging capabilities for /settings/users/:slug
- modified posts to use the updated slug-generator
2014-07-31 08:14:22 -04: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
Sebastian Gierlinger
bb5ca7c272 Fix Invitations
no issue
- added `invited-pending` when resending invitation
- promise chain was missing a return statement
- email error was masked and front end showed success notification
2014-07-29 15:35:48 +02:00
Maurice Williams
3397790204 Removing "author" role-label
closes #3427
- adding conditional statement to now display users with role "author"
2014-07-29 01:50:34 -04:00
Jason Williams
5e021da86c Improve handling of users and roles in admin
Closes #3083 Refs #3229
- Populates the dropdown list in the invite user menu with the
  list of roles a user is permitted to create.
- Users API now checks the invite user request for allowed roles.
- Change API response from 200 to 201 on successful invitation.
- Change API response from 500 to 201 when the user was created but
  the email was not sent.  The client will show a warning notification
  when it sees 'invite-pending' as the new user's status.
- Add support for "?status=all" to the /users endpoint.
- Refactor the route and controller for the /settings/users page so
  that there's only one network API call to load users instead of two.
2014-07-24 14:20:47 +00:00
Hannah Wolfe
77da525b0f Merge pull request #3337 from morficus/issue-3222
Pagination on the Users Management screen
2014-07-21 20:34:53 +01:00
Jason Williams
d7ad418900 Fix check for using default cover image
Closes #3348
- Cover attribute is a string so its typeof will always return
  string. Switch check to Ember.isBlank.
2014-07-21 18:04:49 +00: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