Commit Graph

669 Commits

Author SHA1 Message Date
Hannah Wolfe
888cf2131e Merge pull request #585 from cobbspur/dropzone2
Updates to modals
2013-09-02 15:36:53 -07:00
Hannah Wolfe
d1db0db073 Merge pull request #614 from ErisDS/theme-globals
Theme globals
2013-09-02 15:07:08 -07:00
Hannah Wolfe
552a25018f Absolute option for {{url}} helper
- pass absolute to {{url}} to get an absolute url rather than a relative one
2013-09-02 22:06:16 +01:00
Hannah Wolfe
599d233be9 RSS Feed Autodetection
closes #599

- {{ghost_head}} now outputs feed link tag
2013-09-02 21:57:26 +01:00
Hannah Wolfe
1ff9550e1f User property aliases
issue #389

 - Temporary aliases for user model, schema will be changed soon, in the meantime we want themes to be built using the right properties
2013-09-02 20:58:49 +01:00
Hannah Wolfe
53063366e0 Fallbacks and defaults for {{date}} helper
closes #608

If no context is specified, falls back to using published_at
If published_at is not available, will output today's date
2013-09-02 20:58:49 +01:00
Hannah Wolfe
be62a550f9 Global settings for themes
issue #389

 - Upgrade express-hbs to get template options access
 - Grab config & settings with a hacky new method in ghost & pass to template options
 - Settings are no longer passed to res.locals
2013-09-02 20:58:49 +01:00
cobbspur
e43029e894 Modified body_class helper
closes #591

- body_class helper returns archive-template class on archive pages
- added to unit tests
2013-09-02 20:13:48 +01:00
Hannah Wolfe
859e20d8a3 Merge pull request #590 from ErisDS/showdown-gfm-fix
GFM Auto-linking fixes
2013-09-02 10:58:34 -07:00
Hannah Wolfe
13646f9ef6 Blog URL per environment
closes #572

 - Moved the siteUrl setting into each individual env config.
 - Updated app start and RSS to use the new config
2013-09-02 15:50:14 +01:00
Hannah Wolfe
4d4d4ac0e6 Merge pull request #604 from jgable/fixRssLink
Fix RSS urls
2013-09-02 07:41:56 -07:00
Hannah Wolfe
56b7f925da Improved theme loading
- In some cases, Ghost exploded when the active theme did not have a partials directory
- Added handling for if the active theme was not present
- Probably will conflict with #574 I need to fix this.
2013-09-02 11:35:09 +01:00
Hannah Wolfe
76c2ff6818 Merge pull request #574 from sebgie/issue#488-2
Adding theme switcher to settings/general
2013-09-02 03:25:10 -07:00
Jacob Gable
972aeac037 Fix settings back button functionality
Added a redirect call to the router instead of defaulting the pane. To
handle using the back button after clicking through to other tabs I
added an event listener on the route:settings event.
2013-09-01 22:54:19 -05:00
Jacob Gable
3d2f03a08f Fix RSS urls 2013-09-01 20:34:26 -05:00
Hannah Wolfe
7570599252 Merge pull request #564 from skattyadz/tags-squashed
Add post tagging functionality
2013-09-01 17:50:21 -07:00
Jacob Gable
67901ff699 Fix Ctrl-S saving
Refactored into separate button handler that passes the status.
Although, it doesn't look like the status is on the button element any
more.
2013-09-01 19:38:06 -05:00
cobbspur
6caed50915 Updates to modals
issue #432

- adds configurable button classes
- adds optional title
- added afterRender callback
- changed context for accept and reject methods
2013-09-01 19:44:31 +01:00
Hannah Wolfe
684150d36d GFM Auto-linking fixes
closes #577

- auto-linking was interfering with things that were already a link
- now checks to ensure we are not in a HTML or markdown link already
- added tonnes of new tests
2013-09-01 16:32:54 +01:00
Gabor Javorszky
5999d01b7d Repaired email sending, implement password reset
Closes #288
* I use SendGrid for sending the emails, and it works fine (provided you supply the correct credentials in `config.mail` in `config.js`)
* Generates a random 12 char long alphanumeric password, replaces user's pw, and sends an email about it.
2013-09-01 00:20:12 +02:00
Ricardo Tomasi
56619a87f8 Implement e-mail sending 2013-08-31 22:21:33 +02:00
John O'Nolan
0539fc2262 Remove word-breaking from content management button
Fixes #575
2013-08-31 08:37:01 +02:00
Adam Howard
d90df55b75 Add post tagging functionality
closes #367
closes #368

- Adds Tag model with a many-to-many relationship with Post
- Adds Tag API to retrieve all previously used Tags (needed for suggestions)
- Allows setting and retrieval of Tags for a post through the Post's existing API endpoints.
- Hooks up the editor's tag suggestion box to the Ghost install's previously used tags
- Tidies the client code for adding tags, and encapsulates the functionality into a Backbone view
2013-08-30 16:20:22 +01:00
Hannah Wolfe
5a908bd3d3 Merge pull request #569 from gotdibbs/Issue469
Strip whitespace on post titles
2013-08-30 07:23:13 -07:00
John O'Nolan
790d0f2f69 Merge pull request #568 from gotdibbs/Issue352
Save post button now stays spun up when menu is active
2013-08-30 06:35:01 -07:00
William Dibbern
94f262a697 Strip whitespace on titles
Fixes #469

- Added client-side trimming of title on blur if it is not already
trimmed.
- Added server-side trimming of title on 'saving' event of post model.
2013-08-30 08:04:32 -05:00
Sebastian
4525c355af Adding theme switcher to settings/general
closes #488 and #107
- added dropdown for theme selection on general page
- added GET /api/v0.1/themes to retrieve available themes
- modified settings model to get available themes
- modified updateSettignsCache to remove path from settings.activeTheme
2013-08-30 13:20:30 +02:00
Hannah Wolfe
b55ed1c33c CasperJS test amends
- removing --fail-fast as this prevents screenshots
- adding debug code for the good of all
2013-08-30 10:50:42 +01:00
William Dibbern
9a089ecee3 Save post button now stays spun up
Fixes #352

- Removed one-off styles and code for the publish button. Publish button
now uses data-toggle attribute wired up in toggle.js and forms.scss.
- Ensured split button common styles are up to date to conform with
vendor prefixing of transform properties.
2013-08-29 22:16:16 -05:00
Hannah Wolfe
6c0434fc8f Merge pull request #555 from jfi/iss371
Adding fade transitions between settings tabs.
2013-08-29 13:46:20 -07:00
Hannah Wolfe
fe713c1042 Further grunt validate / casperjs test improvements
- Test environment runs on a different port
- Removed wait() and replaced with waitFor() where possible
- Added more timeout functions / handlers
- General consistency improvements
2013-08-29 20:13:17 +01:00
James Inman
b4a0b1498f Adding fade transitions between settings tabs.
Closes #371
- Added a hide and fadeIn() to the render method in Settings.Pane
- Any Settings.Pane which overwrites render should now make sure the parent is called
- Run through grunt validate, all OK.
2013-08-29 18:36:33 +01:00
John O'Nolan
68704db01a Updated Icons
Closes #556
* New Ghost Logo Icon
* New Lightning Icon for plugins screen
* Remove old Ghost Logo Icon
* Moved #ghost to .ghost-logo to clean up conflicts with editor, previously fixed with dodgy overnesting
2013-08-29 19:06:47 +02:00
Hannah Wolfe
08b8aba421 Merge branch 'master' of github.com:/TryGhost/Ghost 2013-08-29 17:04:55 +01:00
Hannah Wolfe
ab7da3f5db Pagination unit test updates 2013-08-29 17:04:42 +01:00
John O'Nolan
b0a9046ca2 Split setting scss out into separate layout files
cc @matthojo
2013-08-29 17:59:29 +02:00
John O'Nolan
ce3909d6d9 Updated pagination helper with cleaner markup. 2013-08-29 16:43:47 +01:00
Hannah Wolfe
a8790ee81f Merge pull request #559 from matthojo/Notification-Animations
Improved notification animations
2013-08-29 07:40:44 -07:00
Hannah Wolfe
94b3200af0 Merge pull request #554 from matthojo/Modal-Improvements
Improved Modals transitions
2013-08-29 07:40:35 -07:00
Hannah Wolfe
0a89cf12b2 Merge pull request #459 from ErisDS/showdown-gfm
Adding Github Flavored Markdown support
2013-08-29 07:39:42 -07:00
Hannah Wolfe
f318d164d4 Adding Github Flavored Markdown support
closes #422, issue #295

- Added GFM mode to codemirror
- Took the github.js extension for Showdown and added all useful behaviour
- Now supports strikethrough, line breaking and
  multiple underscores, and auto linking urls & emails without breaking
  definition urls
- Also added definition url handling in preparation for #295
- Added unit tests for the extentions individually and integrated with
  showdown
2013-08-29 14:32:09 +01:00
Hannah Wolfe
c11e30a17c Upgrading CodeMirror
issue #422

- upgraded CodeMirror to the latest version
2013-08-29 14:32:02 +01:00
Hannah Wolfe
f9ace100fb Merge pull request #549 from pmgarman/rss
Add RSS Feed
2013-08-29 06:07:37 -07:00
Hannah Wolfe
840c46e4da Merge pull request #547 from cobbspur/dropzone2
Improved dropzone
2013-08-29 05:44:48 -07:00
Matthew Harrison-Jones
e68b4df8c3 Improved notification animations
Notifications now slide down and fade in, and then fade out and slide
up.
2013-08-29 11:06:16 +01:00
Hannah Wolfe
33cdbb3ea7 Minor tweaks to casperjs tests x 2 2013-08-28 23:39:50 +01:00
Hannah Wolfe
0daea32ff3 Minor tweaks to casperjs tests 2013-08-28 23:27:26 +01:00
Hannah Wolfe
c186ba5c16 Merge pull request #543 from gotdibbs/Issue363
Added CasperJS Functional Test to Build
2013-08-28 15:20:57 -07:00
Patrick Garman
8030946095 Add RSS Feed
Issue #366
- adds node-rss dependency
- adds /rss/ and /rss/:page/ routes which return XML RSS 2.0 feed
2013-08-28 10:36:32 -05:00
Matthew Harrison-Jones
f68cf7d868 Improved Modals transitions
This also includes a new jQuery function to get the transition duration of an element.

Modals animations now start when `.in` is applied to the modal container.
2013-08-28 14:23:36 +01:00
Matthew Harrison-Jones
1b9725ead2 Included jQuery Source Map
This stops console errors asking for the file.
2013-08-28 11:47:43 +01:00
Hannah Wolfe
02a8482447 Merge pull request #541 from cobbspur/helpers3
added url handlebars helper
2013-08-27 15:10:02 -07:00
Hannah Wolfe
df855e3e5b Merge pull request #533 from JohnONolan/jquery-downgrade
Downgrade bundled version of jQuery to 1.10.2
2013-08-27 15:08:39 -07:00
cobbspur
7ca3da398a Improved dropzone
- Made fail warning and button display none to reduce DOM content.
- Made toolbar red for fail not orange
- Fixed loading-cat  which was persistent in cases of low bandwidth (particularly downstream)
2013-08-27 19:54:06 +01:00
cobbspur
5c12c78d00 added url handlebars helper
closes #528

- adds method (isPost)to models index.js that returns true if content, content_raw, title and slug are valid properties
- adds url helper which checks context is post using  isPost method
- adds unit test to check a url is prefixed with  /
-adds unit test which checks for empty string if either of the 4 properties above are not present.
2013-08-26 23:58:35 +01:00
William Dibbern
badd6d10d4 Added CasperJS Functional Test to Build
Fixes #363

- Added new grunt task to run casperjs tests.
- Added prerequisites (sass/bourbon/casperjs) to travis config.
- Updated failing functional tests to use more robust `waitFor`
statements.
- Updated capserjs `base.js` file to use a password which conforms to
our 8 character minimum.
- Added necessary logout to first test and also registration step to
ensure a user is present in the system.
2013-08-26 16:28:41 -05:00
Hannah Wolfe
9074b87205 Standardising notification types
- CSS classes directly correspond to notification 'types'
 - Error, warn and info are reasonably standard terms for descending priority 'log levels', using these to denote red, orange and blue notifications.
2013-08-26 22:26:50 +01:00
John O'Nolan
12d53dead6 Move pagination to class rather than ID
Pagination could conceivably be used in more than one place on a page (eg. both top and bottom). For that reason it should probably have a class rather than an ID.
2013-08-26 02:29:44 +02:00
John O'Nolan
1efd16dbcc Fixed another CodeMirror syntax highlighting bug 2013-08-26 01:44:12 +02:00
John O'Nolan
f81bdc308d Downgrade bundled version of jQuery to 1.10.2
Closes #532
2013-08-25 21:59:40 +02:00
Hannah Wolfe
c70dfde7e3 Agressive stripping of the model attributes
- fixes #517
- prevents this from occuring again in future with other relations
- validation function & stripping done for all models
- casper test for flow, plus validation & logged out tests
2013-08-25 18:12:27 +01:00
Hannah Wolfe
41e36cca7e Validation consistency
- introduced validation method in the post and user model
- moved signup validation onto model
- consistent use of validation & error messaging in the admin UI
- helper methods in base view moved to a utils object
2013-08-25 18:10:12 +01:00
Hannah Wolfe
052aa57360 Merge pull request #512 from gotdibbs/Issue443
Rename /logout/ to /signout/ and /login/ to /signin/
2013-08-25 10:06:53 -07:00
Hannah Wolfe
da0ab62989 Merge pull request #525 from cobbspur/helpers
renamed helpers to body_class and post_class
2013-08-25 08:29:20 -07:00
cobbspur
fbe44a041c fixes missing helper
closes #521

- changes handlebars default missing helper function to log error instead of throwing error
2013-08-25 15:45:44 +01:00
cobbspur
ce0f1aae46 renamed helpers to body_class and post_class
closes #508

- changed bodyclass helper to body_class and updated unit test
- changed postclass helper to post_class and updated unit test
2013-08-25 14:49:57 +01:00
Hannah Wolfe
fafead5718 Merge pull request #520 from gotdibbs/Timeouts
Patch to prevent timeouts in unit tests
2013-08-25 06:41:57 -07:00
Hannah Wolfe
c63012a678 Merge pull request #524 from cobbspur/helpers
added ghost_head and ghost_foot helpers
2013-08-25 06:41:34 -07:00
cobbspur
00d36e976d added ghost_head and ghost_foot helpers
closes #382, closes #383

 - added helper called ghost_head to insert meta data with current version of ghost
 - added helper called ghost_foot to insert script tag for jquery
 - added unit test for both helpers
 - removed trailing slash from ghost.js for 'shared' path and removed from outside of loop as it is shared on front and backend
2013-08-25 14:34:35 +01:00
Hannah Wolfe
6c5676de9c Merge pull request #522 from JohnONolan/post-template
Rename classes applied to {{bodyclass}} to be less generic
2013-08-25 06:34:00 -07:00
John O'Nolan
b9f43aecf4 Correcting code attribution reference 2013-08-25 12:51:43 +02:00
John O'Nolan
8ac173aa19 Rename classes applied to {{bodyclass}} to be less generic 2013-08-25 12:06:52 +02:00
William Dibbern
d7521958d5 Rename /logout/ to /signout/ and /login/ to /signin/
Closes #443
- Renamed routes
- Added redirects for old routes
- Added unit test for redirect
- Updated references to old routes in templates, html
2013-08-24 22:38:48 -05:00
William Dibbern
ff3a9dde00 Patch to prevent timeouts in unit tests
Temporary patch for #362

- Split out database teardown and initialization so they each have their
own 2 second timeout.
- Added some test-specific increased timeouts.
2013-08-24 16:07:15 -05:00
John O'Nolan
9d8bf4b0f9 Fixed overzealous word breaking
Closed #514
Reverting change from @c46a0c6 where I moved the new word breaking CSS rules to the body tag to apply everywhere. This doesn't play nicely everywhere - so this change moves them back to just the content preview areas where they are needed.
2013-08-24 20:43:33 +02:00
Hannah Wolfe
60450e8c2a Merge pull request #504 from javorszky/iss418
Dropping the database invalidates cookies
2013-08-24 11:07:43 -07:00
Hannah Wolfe
6f05812377 Merge pull request #503 from sebgie/questionmarkbug
Fix for post with '?'
2013-08-24 08:06:51 -07:00
Hannah Wolfe
29c36fe2bf Merge pull request #501 from cobbspur/posttitle
content management preview pane displays post title
2013-08-24 08:04:58 -07:00
Hannah Wolfe
60c7643a58 Merge pull request #438 from cgiffard/hbs-helper-author
Template Helpers: Added author hbs helper
2013-08-24 07:45:36 -07:00
Gabor Javorszky
3ded75ca4f Dropping the database invalidates cookies
Closes #418.
* Moved the app config behind the promise wall (I couldn't reliably assign generated uuid to the ghost object AND have access to an automatically created db from fixtures AND not have circular reference (try including api in ghost.js ;) ))
* Added new functionality to `ghost.init()`, which is responsible for the first run bit (I'm thinking plopping a filter or an action in there for future devs)
* Modified `.gitignore` so the `.png`s casper generates aren't added
* Fixed ambiguity and typos here and there, see code
2013-08-24 01:02:01 +01:00
Sebastian
9ee91b3547 Fix for post with '?'
closes #433
- if slug is empty after trimming use "post" as slug instead
2013-08-23 18:49:45 +02:00
Christopher Giffard
4397bcf86e Template Helpers: Added author hbs helper
Fixes #358

 - Altered post model to enable eager loading of author and
   user relationships
 - Fixed broken base model toJSON method, which prevented
   eager resolution of relationships (thanks @tgriesser)
 - Passes author information to template.
 - Added unit tests for author helper.
 - Added unit tests for findOne and findAll additions to Post Model
   which take into account the eager relationships

 Usage:
 `{{author}}` -- returns the full name of the post author
 `{{author.attribute}}` -- returns property of the current post author
 as described by the user model
2013-08-23 19:13:32 +10:00
cobbspur
df17a19008 content management preview pane displays post title
closes #477

- change to preview.hbs to show title as a h1
2013-08-22 22:48:33 +01:00
Hannah Wolfe
ba8bdf7dd7 Merge pull request #496 from javorszky/iss468
Added brute force protection to login
2013-08-22 14:19:05 -07:00
Hannah Wolfe
98e4923077 Added bodyclass and postclass helper
closes #472

- filterable as array, output as string
- with unit tests
2013-08-22 21:01:20 +01:00
Hannah Wolfe
2d3e2f36b1 Merge pull request #493 from ErisDS/helpers
Added excerpt helper
2013-08-22 12:56:01 -07:00
Gabor Javorszky
368eb7a352 Added brute force protection to login
Closes half of #468
* adds a 2 second limit until you can retry logging in, otherwise sends you a 401.
* bounce: 2ms, checks the pw: 254ms on my machine
* added a test to the casper suite
2013-08-22 20:48:36 +01:00
cobbspur
3ac82f14a0 rename helpers paginate -> pagination, dateFormat -> date
closes #381

- renamed entries for dateFormat in helpers to date
- renamed entries for paginate in helpers  and unit tests to pagination
2013-08-22 20:42:54 +01:00
Hannah Wolfe
2b94364842 Merge pull request #492 from gotdibbs/Issue352
Fixed editor actions menu
2013-08-22 11:48:37 -07:00
Hannah Wolfe
e7897143e8 Merge pull request #491 from ErisDS/history-fix
Settings pane switching was causing multiple events to be bound
2013-08-22 11:44:36 -07:00
Tim Griesser
c83835a811 fixes incorrect toJSON extension, for eager loaded models 2013-08-22 13:53:46 -04:00
Hannah Wolfe
2afa81bc1e Added excerpt helper
closes #471

- strips HTML aggressively
- with unit tests
2013-08-22 15:51:30 +01:00
Hannah Wolfe
9092ed95ba Improvements to settings pane switching
closes #174

- Triggering router events for navigation between settings panes
caused the route function to be re-executed, which caused all
kinds of fun.
- Wrapped the settings route function in an if statement to preserve
the current view if it already a settings view.
- Added Ghost pub-sub and using that instead of History API
2013-08-22 08:08:43 +01:00
William Dibbern
31dc45768a Fixed editor actions menu
Closes #352
- Updated editor.scss to break out transition shorthand into its
constituent properties so that bourbon appends the correct vendor
prefixes.
- Added full set of publish options to the statusMap.
- Added setActiveStatus function to handle toggling the active action
for the publish menu.
- Cleaned up handleStatus and updatePost functions to match desired
functionality of menu items toggling the selected action and the actual
button on the split button invoking said action.
2013-08-21 21:31:59 -05:00
Jacob Gable
23ee4cadc3 Fix redirect loop when no content 2013-08-21 09:05:17 -05:00
John O'Nolan
1e95ec0c3d Cleaned up typographic rules 2013-08-21 14:43:24 +02:00
John O'Nolan
3a427905e0 Merge pull request #485 from matthojo/Login-Fix
Bug Fix: Login form now maintains the right layout on resize
2013-08-21 05:01:27 -07:00
Matthew Harrison-Jones
d357eea40f Bug Fix: Login form now maintains the right layout on reize 2013-08-21 12:45:33 +01:00
John O'Nolan
c46a0c6a43 Improved Editor Styles
First pass at refactoring editor styles to make the Ghost writing experience more pleasurable.
- Larger font
- Bold title
- More space for writing
- Minor code standards cleanup
2013-08-21 10:22:38 +02:00
John O'Nolan
b12ec4f213 Removed Typeplate dependency
Closes #480
2013-08-21 09:36:49 +02:00
John O'Nolan
078e0ffc20 More vertical space for writing
This change reduces the margin on the post editor between the title and body content from 15px to 5px. This change keeps the aesthetic of the editor, while enabling a little bit more body content to be on the screen at the same time. Small but significant adjustment.
2013-08-21 08:48:38 +02:00
John O'Nolan
044cf21887 Adjusted word breaking rules in editor
Fixes #427
- Removed break-all, which was causing excessive behaviour detailed in the issue
- Removed -webkit- hyphen prefix, as both Chrome and Safari are ignoring it
- Firefox is currently the only browser respecting hyphens, the others simply break without hyphenating
2013-08-21 08:38:58 +02:00
Hannah Wolfe
637679851b Merge pull request #470 from matthojo/Centering-Fix
Bug Fix: Login centering now works correctly
2013-08-20 14:08:00 -07:00
Hannah Wolfe
3ce7b9d251 Moving misplaced test file 2013-08-20 21:28:19 +01:00
Hannah Wolfe
5ff0a2816b Dropping !image[] & other regex fixes
closes #452

- changed keyboard shortcut to insert ![].. not !image[]
- changed regex in ghostdown to only work for ![]
- added a further regex in ghostdown to properly match for URLs inside the parens
2013-08-20 21:22:41 +01:00
Hannah Wolfe
8863766b76 More iOS friendly form elements
Issue #465

- converted email fields throughout the site to be of type email
- converted the user website field to be of type url
- removed the browser validation by setting novalidate on the form, not the element
2013-08-20 20:24:20 +01:00
Hannah Wolfe
2b0c544e3e Merge pull request #456 from matthojo/Keyboard-Shortcut-Improvements
Keyboard shortcut improvements
2013-08-20 07:05:41 -07:00
Matthew Harrison-Jones
346bf2d91e Improved the keyboard shortcuts for lists and when no text is selected.
The cursor will now be placed in the middle of the inserted Markdown when no text is selected. Lists keep tabbed format.
2013-08-20 12:44:47 +01:00
Matthew Harrison-Jones
b4702a6dd0 Bug Fix: Login centering now works correctly
This also adds in additional functionality to the .center() plugin. A choice to animate centering and also the success event fired.
2013-08-20 11:55:44 +01:00
Hannah Wolfe
0ce2958ee7 Updating password length validation
- setting it back to 7 chars so that people who have 7 char passwords, which were valid, can login.
2013-08-20 10:43:11 +01:00
John O'Nolan
c47bc92406 Removed Chrome's native form validation from login
See #465
2013-08-20 11:33:49 +02:00
Hannah Wolfe
4cc3a11cda Manually merging pull request #439 from javorszky/iss354
Conflicts:
	core/client/views/login.js
2013-08-20 10:11:09 +01:00
John O'Nolan
a6dee88a57 Made login form iOS friendly
Closed #465
- Introduced type="email" h/t @javorszky
- Introduced special attributes to prevent iOS auto-capitalising/correcting
2013-08-20 11:03:56 +02:00
Gabor Javorszky
be7ed2dfdc Added validation for signup and login screens
Closes #374
* Included node-validator as a package
* Implemented server side validation (the client side js is a mess, need a LOT of work)
* Validates email address both on signup and login screens, gives error message on malformed email addresses
* Requires at least 8 chars of password
* Tells user if password is too short
* Tells user if no such user on login
* Tells user if wrong password on login
* Tells user if server responds with a 404 (goes away, dies, etc)
* Added middleware between req and login / signup for validation
2013-08-20 09:42:42 +01:00
John O'Nolan
3b6b5a085d Converting all SASS to 4 space standard.
New standard - ALL .scss files are now indented 4 spaces, no tabs. I want to keep this *consistent* because it has been getting incredibly messy. This applies to all native Ghost sass - 3rd party files (normalize, typeplate, bourbon, breakpoint, etc) are not included. /cc @matthojo @erisds
2013-08-20 10:27:15 +02:00
Hannah Wolfe
fef1aae7be Merge pull request #467 from jgable/titleFixes
Trim title and don't allow negative pages
2013-08-20 01:12:33 -07:00
Hannah Wolfe
1d37016c7a Merge pull request #453 from matthojo/404-Page
First pass at 404 page
2013-08-20 00:58:27 -07:00
Gabor Javorszky
4e1aa2119c Removed flash, renamed file, unbroken logout / login request notifications
Closes #354
* Reintroduced the redirect functionality (not logged in, tries to go to `/settings/user/`, is sent to `/login/` with info notification, after login user is taken to `/settings/user/)
* Reintroduced the "Successfully logged out" message
* Added middleware to scrub passive notifications from `ghost.notifications` after one use basically mimicing client side passive notifications
* Removed flash from everywhere. Even from package.json.
* Renamed flashed.hbs to notifications.hbs, modified default.hbs accordingly
* Added function to parse GET variables on client side
2013-08-20 08:15:06 +01:00
Jacob Gable
a1d00b56b2 Trim title and don't allow negative pages
Added a .trim() to the slug generation and redirect to the first page if
the page parameter is parsed as less than 1.
2013-08-19 21:18:39 -05:00
William Dibbern
4f2421fac7 MySQL Support
Closes #364
- Confirmed integration with local mysql installation works.
- Updated fixtures and migration with appropriate schema-conforming
values.
- Updated schema with appropriate defaults and nullable columns.
- Updated fixDates function on model base to appropriately deserialize
values coming from SQLite now that dates are stored as actual DateTime
objects/ISO strings.
- Updated default language to be 'en_US'.
2013-08-19 17:25:02 -05:00
Hannah Wolfe
ae3b1ac635 Merge pull request #435 from cobbspur/url
Ghostdown uses src of url to establish start image for image uploader
2013-08-19 14:03:02 -07:00
Hannah Wolfe
5cb8b640da Merge pull request #454 from skattyadz/login-on-register
Immediately log in when a new user account is created
2013-08-19 13:46:06 -07:00
Hannah Wolfe
29d3fccca6 Merge pull request #460 from cobbspur/dropfile
stops image/file drop onto editor markdown causing havoc
2013-08-19 13:43:59 -07:00
Hannah Wolfe
fd77d4bb04 Merge pull request #420 from jgable/fix412
Redirect to last page of posts
2013-08-19 13:43:26 -07:00
Hannah Wolfe
0024abce28 Merge pull request #457 from matthojo/Mobile-Interactions
Removed swiping from Mobile Interactions
2013-08-19 13:37:48 -07:00
cobbspur
a7feb04894 stops image/file drop onto editor markdown causing havoc
closes #391

 - added dragDrop falsey value to codemirror instance
2013-08-19 20:23:44 +01:00
Matthew Harrison-Jones
431fdc70b1 Markup for 404 page
This needs Javascript to vertically center the page.
2013-08-19 16:34:10 +01:00
John O'Nolan
6300501037 More codemirror syntax highlighting fixes 2013-08-19 17:26:09 +02:00
Matthew Harrison-Jones
31b94e23a3 Removed swiping from Mobile Interactions 2013-08-19 16:13:47 +01:00
Jacob Gable
bbd60a6f23 Redirect to last page of posts
If requesting a page of posts that is above the total number of pages,
redirect to the last page of posts.
2013-08-19 09:35:52 -05:00
Matthew Harrison-Jones
20bcaa4339 Included missing Mac 'code' keyboard shortcut 2013-08-19 15:10:53 +01:00
Adam Howard
6c829a0d63 Immediately log in newly registered users - removing the additional login step 2013-08-19 13:59:30 +01:00
John O'Nolan
e1e5c02152 Merge pull request #451 from cgiffard/whitespace-wrap
Layout: Break long words in markdown preview
2013-08-19 04:05:40 -07:00
Christopher Giffard
823bb6b636 Layout: Break long words in markdown preview
Fixes #427
- Uses hyphenation and word-break to break and wrap long words in markdown
  preview.
2013-08-19 20:57:40 +10:00
John O'Nolan
73cf4ea95c Fixed CodeMirror syntax highlighting bugs.
CodeMirror highlights markdown with fancy colours. This commit overrides those fuckers with black. Like my cold, dead heart.
2013-08-19 12:08:22 +02:00
John O'Nolan
06aed8786a Adjusted responsive image styles within Ghost editor to correctly size images within the preview pane.
Closed #442
2013-08-19 10:29:09 +02:00
John O'Nolan
abd6c0f6cd Removed OTT CSS text indenting on paragraph tags. Closed #445 2013-08-19 09:05:25 +02:00
John O'Nolan
2cb471e97c Added functional user profile url to user dropdown menu. 2013-08-19 08:36:29 +02:00
cobbspur
5dbf1e2d73 Ghostdown uses src of url to establish start image for image uploader
closes #401

- adds src of image in editor if url present
- refactored upload plugin as description was being lost
2013-08-18 23:37:02 +01:00
Hannah Wolfe
892adf68d7 Merge pull request #430 from jgable/fix414
Show validation error when saving post
2013-08-18 15:05:32 -07:00
Hannah Wolfe
a78736413f Merge pull request #431 from cobbspur/events
Added error handling
2013-08-18 14:53:52 -07:00
cobbspur
2ea472d003 Added error handling
- refactored to build dropzone elements individually
- reduced markdown in ghostdown file
- added Try again button on failure of image upload
2013-08-18 21:37:03 +01:00
Jacob Gable
d41d002467 Show validation error when saving post
Show the model.validationError if one is present and also coalesce the
empty title for a more meaningful message.  Also, reset the button text
after failure.
2013-08-18 15:01:21 -05:00
Hannah Wolfe
fd33b276a0 Merge pull request #419 from jgable/postPermissions
Edit Post Permissions
2013-08-18 12:11:55 -07:00
Jacob Gable
53061a4c04 Fix multiple title slug generation
Change slug generation to not append multiple hyphens
2013-08-18 13:23:15 -05:00
Jacob Gable
bbe5105048 Edit Post Permissions 2013-08-18 12:28:05 -05:00
Hannah Wolfe
e765af4633 Merge pull request #404 from matthojo/mobile-interactions
Mobile interactions
2013-08-18 09:19:06 -07:00
Hannah Wolfe
e794e8de7a Merge pull request #393 from matthojo/Modal-Fixes
Several Modal Fixes
2013-08-18 09:05:49 -07:00
Gabor Javorszky
f6d164b5d8 Current user added
Closes #340. Closes #375
* Replaced session with id of current user
* Added method to ghostlocals to always send profile picture and full name to templates (template checks if falsy)
* Modified user saving (`forge().set(new).save()` died on me, `forge().save(new)` didn't)
* If user has profile picture, that will be used
* If user has name, that will be used
* Password changing doesn't care about your email. Uses cookies. Tasty!
* User pane uses current user id. Had to set path to me, otherwise goes to `browse` instead of `read`.
* Added logic to user api to check for `id === 'me'`, and then use the cookie value
* User data saves are now correct
* There is no logout error
2013-08-17 22:02:46 +01:00
Matthew Harrison-Jones
39df7a74f7 Add in CasperJS test to check if Dashboard Widgets are moveable
Requires .time-widget
2013-08-16 12:44:33 +01:00
Matthew Harrison-Jones
6170acb670 Improved mobile interactions
This is simply a commit which improves the mobile interactions. This does not fix UI problems on mobiles.

New interactions;

Menu
* Swipe right on header to show sidebar
* Swipe left on sidebar to hide

Content
* Tap / Swipe left on item to show preview
* Swipe right to show content list

Settings
* Tap / Swipe left on link to show settings
* Swipe right on settings to show links
2013-08-16 12:44:11 +01:00
Gabor Javorszky
1d9b2d916e Passive notifications are dismissed on settings pane change
Closes #342.
It would be totally cool if we could have a Ghost.PubSub so we could hurl events there and pick them up somewhere else. For some reason all the backbone bits work on models, like `trigger` and `listenTo` and `delegateEvents`.
2013-08-15 23:18:10 +01:00
Matthew Harrison-Jones
6bd3333d6d Improved modals styling and code formatting
Solves:
* max-height 120px less than height of viewport
* fade-in a dark overlay as well as blur
* animation speeds/transitions should be smoother
* modal sizing fucks up when viewport is resized

Also improves Modal code compliance to Ghost Backbone coding patterns
2013-08-14 14:49:16 +01:00
Matthew Harrison-Jones
28937f9426 Improved several keyboard shortcuts behaviour to more closely match Mou
These include Headings, Lists and inserted dates
2013-08-14 14:49:16 +01:00
Matthew Harrison-Jones
6ca6758995 Bug Fix: Corrected wrong Keyboard Shortcuts in help modal 2013-08-14 14:49:16 +01:00
cobbspur
66278534dc fixes extensions bug for image uploader
- extensions set to lowercase
- changed navigation images to hyphenated names and corrected references
2013-08-13 21:04:07 +01:00
Hannah Wolfe
c9ec5df9d6 Merge pull request #394 from ErisDS/path-rejig
Improving the use of paths in Ghost
2013-08-12 08:10:31 -07:00
Hannah Wolfe
0e5277c6ad Merge pull request #388 from gotdibbs/Fixed-word-count-grammar
Fixed word count grammar
2013-08-12 08:09:05 -07:00
Hannah Wolfe
cbcd3c8efe Improving the use of paths in Ghost
fixes #392

- adds appRoot, and uses this to calculate other paths
- removes path calculations from loader
- remove the themedir setting in config.. completely unnecessary
- highlights just how important #360 is
2013-08-12 15:37:23 +01:00
William Dibbern
b92980ce6d Fixed word count grammar
Closes #349
- Added utility function to pluralize when appropriate.
2013-08-11 11:55:42 -05:00
John O'Nolan
8762f531a7 Removed my personal information from fixtures as Ghost is starting to get deployed more frequently now for testing purposes.
Don't want random test sites accidentally ranking in search engines for my name.
2013-08-10 15:42:54 +02:00
Christopher Giffard
e484d9224e Themes: Added truncation to hbs content helper
Fixes #256

- Developed and linked new module, downsize, for tag-safe truncation
- Altered existing content handler to accept options for truncation
- Added tests for handler

Using truncation:

{{content words=10}}
{{content characters=256}}
2013-08-07 19:45:37 +10:00
Hannah Wolfe
2f11f053ab Minor code cleanup, docs and other bits & pieces 2013-08-06 22:24:40 +01:00
Hannah Wolfe
eac3047d45 Merge pull request #339 from javorszky/iss282
Users can change password
2013-08-06 01:17:43 -07:00
Hannah Wolfe
226e641602 Merge pull request #338 from cobbspur/upload-plugin
Added image upload reusable plugin
2013-08-06 01:02:30 -07:00
Hannah Wolfe
4537843359 Fixing unused variables 2013-08-06 09:00:12 +01:00
Hannah Wolfe
a56b77f733 Minor update to notification frontend api
- motivation was an error message on the settings screen
 - now requires slightly less code to add a notification
2013-08-06 08:55:47 +01:00
Gabor Javorszky
071f9769c6 Users can change password
Closes #282
* Added a new route
* Added new methods
* Triple security!
* Passwords are actually changed
* Also added a change password button, because 'save' has too much baggage.

On security: checks whether you're logged in. Then checks whether your old password is actually the one that belongs to you (gets value from the email field for the email, see caveat no2). Checks the new passwords for === and length > 6 on client and server side as well. And THEN changes passwords.

Caveats:
* didn't add a test, as mocha fails spectacularly on my machine. SQLITE_CORRUPT: database disk image is malformed. Cute, huh?
* Because we don't have / I'm not aware of / could not find a "currentuser" variable, I need to get the email address of the user we want to change from the email field. Theoretically if they replace that with another user's email address, and supply their pw, they will change THEIR password instead of their own.
2013-08-06 00:49:06 +01:00
cobbspur
558c9d6caa Added image upload reusable plugin
issue #40 and issue #280

- Adds uploader jquery plugin
- includes settings for enabling/disabling upload progress bar
- adds routing for image uploads
- adds directories by year and month based on upload date
- Implements plugin on settings - general pane
- Implements plugin on editor
- adjusted general tab to save uploaded image src

TODO:
- Add error handling
- Storing information on editor
- Add events
2013-08-05 23:01:48 +01:00
Hannah Wolfe
1815656778 Merge pull request #267 from jgable/pluginApi
Initial Plugin API Implementation
2013-08-05 12:29:19 -07:00
Hannah Wolfe
52dc22c952 Editable user profiles in settings screen
closes #276

 - settings screen now loads a model when a pane is requested, rather than when the whole screen is requested
 - added browse, read and edit methods and routes for users to the API
 - added user model & template to client and wired everything up.
 - provided default images for cover and profile picture
2013-08-05 18:26:44 +01:00
Jacob Gable
0238909281 Initial Plugin API Implementation
Implements basic functionality described in #227 for loading plugins
from a specific directory and having a specific workflow with an init()
method and a disable() method.
2013-08-05 11:15:17 -05:00
ErisDS
8d7336a1fb Persistent notifications should not fade out
issue #333
- css fix
2013-08-05 13:56:30 +01:00
Gabor Javorszky
6c48505701 Fixed persistent success notifications
Closes #333
* Refactored the Ghost.Notifications View bundle
* Added a new initialization of the NotificationCollection (hacky, but at least satisfies JSLint). This was needed as the reason the persistent success notification couldn't be dismissed was that prerendered DOM elements weren't picked up as BB Views beforehand, and thus no events were bound to them.
2013-08-05 13:56:30 +01:00
Hannah Wolfe
338109c762 Data models import, export, and reset for 002
- added line to index.js to set node_env to development if it is not set
 - fixed a small bug with the persistent notifications and used them on debug page from server side
 - added 002 files to manage export and import for 002
 - 002 import is somewhat smarter than 001, merging settings (except version), replacing user & clearing primary keys
 - added reset to models and migration, which does the down operation the same way that init does the up operation
 - import and reset clear session & redirect to login / signup
 - additional unit tests
2013-08-05 13:56:30 +01:00
ErisDS
2a5e7ad516 Data model additions for post tags, custom data and uploads
closes #171, closes #314, closes #315

- added settings for blog logo and icon
- all other settings will need to be added as needed as it's impossible to guess what the default value should be
- added tables for post tags
- added tables for post custom data
- added location column to users
- fixeed minor bug in migrations
2013-08-05 13:56:30 +01:00
Jacob Gable
9393a956f4 Magnificent Migrations of Magical Majesty 2013-08-05 13:56:30 +01:00
Hannah Wolfe
11be64c544 Merge pull request #336 from matthojo/Delete-modals
Moved delete post confirm alert to new modal format
2013-08-05 03:49:16 -07:00
ErisDS
ec3c322652 Casper tests for CodeMirror editor
There are still some issues surrounding spaces and new lines which will need to be worked out, but we can at least start to test some of the markdown.
2013-08-05 10:31:04 +01:00
Matthew Harrison-Jones
6b791a4c10 Moved delete post confirm alert to new modal format 2013-08-05 10:16:31 +01:00
Hannah Wolfe
ec1ced9089 Bugfix for signup screen
caused by issue #326
 - implementing fade in and center on signup form by applying the functionality to a shared view
 - login and signup now both extend the shared view
2013-08-03 19:24:06 +01:00
Hannah Wolfe
2d8b5ea8c1 Backbone template cleanup
- Ghost.View now extends Ghost.TemplateView giving all views access to subviews and templates
- Views which implemented templates no longer need to
- Some views needed to re-override render which is a bit annoying
- Settings screen now has sub-templates for each pane and for the sidebar
- Additional Casper tests for settings screen
2013-08-03 16:37:06 +01:00
Hannah Wolfe
bb9a5226a8 Merge pull request #331 from jgable/overrideTemplates
Allow theme partials to override helper templates
2013-08-03 07:21:57 -07:00
Hannah Wolfe
c30187ad20 Merge pull request #326 from matthojo/admin-temp-removal
Removed `admin-ui-temp.js` and moved code to it's relative places
2013-08-03 07:21:10 -07:00
Jacob Gable
d40c08218e Allow theme partials to override helper templates
Added an existence check to the loadTemplates function
2013-08-02 13:36:37 -05:00
Hannah Wolfe
373f64a2bd Revert "Merge pull request #318 from matthojo/mobile-interactions"
This reverts commit f18c7f22c3, reversing
changes made to 4ea9d77b11.
2013-08-01 22:19:20 +01:00
Matthew Harrison-Jones
41aa2b9012 Removed admin-ui-temp.js and moved code to it's relative places 2013-08-01 15:28:13 +01:00
Hannah Wolfe
46ed73ee86 Merge pull request #325 from matthojo/Dashboard-Padding
Bug Fix: Dashboard now has correct bottom padding
2013-08-01 06:24:26 -07:00
Hannah Wolfe
a15210d2dc Merge pull request #323 from javorszky/iss278
Login / Signup forms now use Backbone
2013-08-01 06:20:05 -07:00
Matthew Harrison-Jones
3cb0af1f8f Bug Fix: Dashboard now has correct bottom padding 2013-08-01 13:34:14 +01:00
Hannah Wolfe
f18c7f22c3 Merge pull request #318 from matthojo/mobile-interactions
Improved mobile interactions
2013-08-01 00:12:25 -07:00
Christopher Giffard
d72dab071c Added simple unit tests for ghostdown extensions
(RE: discussion in pull #317)

-   Unit tests enforce well formedness of ghostdown processor function
    and what it returns.
-   Ensures image markup is recognised and replaced accurately.
2013-08-01 16:04:42 +10:00
Christopher Giffard
09ada68d9b Updated Ghostdown image regex
Updated dropzone regex to capture existing URL flag. Also supports the shorter markdown image syntax, and corrects issues with special characters in the alt field, fixing issue #146.
2013-08-01 15:53:31 +10:00
Gabor Javorszky
f36dc3c942 Login / Signup forms now use Backbone
* Moved most of control code to `core/client`
* Implemented ajax checks
2013-08-01 02:11:45 +01:00
Hannah Wolfe
68cc640d23 Merge pull request #319 from ErisDS/test-playground
Added functional tests for Ghost Admin UI using Casperjs
2013-07-31 05:14:26 -07:00
Matthew Harrison-Jones
efeede877d Improved the semantics of the Settings page
This introduces a new class of `.form-group` to replace the label containing the elements.

I have also included `name=""` attributes to inputs where there were non.
2013-07-31 12:40:46 +01:00
Hannah Wolfe
6a2851e9ca JSLint fixes for new version
- forgot to force install
- had to clean up grunt task now we no longer need the 'm' alias
- cleaned up a couple of issues it wasn't picking up before
2013-07-31 09:21:22 +01:00
Hannah Wolfe
2b9be5376e Added functional tests for Ghost Admin UI using Casperjs
Hacky implementation of a suite of casper tests. This is here so that we can start to build up some tests.
Main thing missing is being able to simulate keypresses for CodeMirror
Making the tests run nicely with grunt, travis and be independent rather than interdependent can all come later.
- See tests/functional/base.js for full usage instructions & implementation notes
2013-07-31 08:33:28 +01:00
Matthew Harrison-Jones
27b85744f1 Improved mobile interactions
This is simply a commit which improves the mobile interactions. This does not fix UI problems on mobiles.

New interactions;

Menu
* Swipe right on header to show sidebar
* Swipe left on sidebar to hide

Content
* Tap / Swipe left on item to show preview
* Swipe right to show content list

Settings
* Tap / Swipe left on link to show settings
* Swipe right on settings to show links
2013-07-30 15:27:38 +01:00
Hannah Wolfe
97eb827d47 Replaced user menu label with current Ghost version no
closes #286
- added current version as an app.local variable available on both client and server
- swapped out the user menu label for the version no
2013-07-30 12:56:16 +01:00
Matthew Harrison-Jones
b089e67154 Improved modal creation, now includes info and action types. 2013-07-26 15:32:44 +01:00
Matthew Harrison-Jones
3057945b70 Refactored menu fading to be a plugin for extendability.
Need to find suitable place for the `.overlay` hideAway function call.
2013-07-26 12:32:26 +01:00
Hannah Wolfe
8b0763ee9c Merge pull request #311 from matthojo/copy-to-html-modal
First pass at creating a usuable modal for the copy to HTML keyboard shortcut.
2013-07-25 10:42:18 -07:00
Matthew Harrison-Jones
0786ec5862 First pass at creating a usuable modal for the copy to HTML keyboard shortcut.
Has an issue where Google Chrome does not persist to keep code selected.
2013-07-25 16:00:41 +01:00
Matthew Harrison-Jones
17c582ce51 Fixed modal max-height not working 2013-07-25 11:53:19 +01:00
Matthew Harrison-Jones
62486acfd1 Improved Markdown help modal 2013-07-25 11:49:02 +01:00
ErisDS
273e2172cb Bugfix: data export path wasn't changed during restructure 2013-07-24 23:22:33 +01:00
Ricardo Tomasi
814a3d66b7 Move shared third-party libraries to /shared/vendor 2013-07-24 23:21:57 +01:00
Matthew Harrison-Jones
680bb7a5ab Reworked modals to take content from modal content templates.
This also includes the example modal, which needs to be replaced with content.
2013-07-24 11:29:20 +01:00
Matthew Harrison-Jones
d59f0809cd Started a jQuery utilities file for Ghost jQuery plugins and helpers 2013-07-24 11:15:10 +01:00
Matthew Harrison-Jones
7111960fac Added in Modals 2013-07-24 11:15:09 +01:00
Hannah Wolfe
c2ac06cf0c Merge pull request #298 from matthojo/Markdown-Fixes
Additional Keyboard Shortcuts and improvements to text highlighting
2013-07-23 11:44:14 -07:00
Hannah Wolfe
7188c385d1 Merge pull request #297 from matthojo/Editor-Scrolling
Debounce scrolling on editor
2013-07-22 08:00:15 -07:00
Matthew Harrison-Jones
3a8b01dbcb Move notification dismissal events to Backbone
Also removes stray notification alert comments
2013-07-22 14:41:28 +01:00
ErisDS
2e0d2c73d6 Bug Fix: title of deleted post in content view notification is now correct 2013-07-22 14:41:28 +01:00
Matthew Harrison-Jones
94ae164086 Success notifications now fade out after 3 seconds 2013-07-22 14:41:28 +01:00
Matthew Harrison-Jones
32b245c53c Fix notification positions
Also fixes the previous editor notification fixes to not include `calc()`
2013-07-22 14:41:27 +01:00
Gabor Javorszky
f10343079b Fixes undefined this in settings.js
Because this and self. Missed it from previous commit :/
2013-07-22 14:41:27 +01:00
Gabor Javorszky
5a1c02b5d7 Adding notifications to settings and content pages
Closes #290. In theory.
* moved flashviews to base.js, renamed to notifications
* added failures to post editor screen
* added notifications to settings (success, failure)
* added notifications when deleting posts

Most of these are not visible due to CSS rules, as overhauling that
is a task in and of itself. The notifications do show up in the inspector
though, so all is well.
2013-07-22 14:41:27 +01:00
Matthew Harrison-Jones
e7cea72935 Fixes wrong positioning of notifications. 2013-07-22 14:41:27 +01:00
Gabor Javorszky
55e0d11f87 Adding notification.hbs
Simply because I was an 1d10t
2013-07-22 14:41:27 +01:00
Gabor Javorszky
b77a8fd0d9 Notifications on front end
Should close #37. There are persistent and passive notifications.

Persistent ones:
* are stored on `ghost.notifications`.
* have an api made to add / remove them with client side ajax logic (probably not the most elegant, but works)
* uses a modified `flashes.hbs` template
* will only disappear if user closes the bar
* stack

Passive
* added with backbone view / collection combo
* stack
* disappears on navigation and when user closes it
2013-07-22 14:41:27 +01:00
Matthew Harrison-Jones
4b5932bef2 Added the ability to copy as HTML. 2013-07-22 13:50:50 +01:00
John O'Nolan
d337e16afe Merge pull request #296 from matthojo/Plugin-Management
First pass at Plugin Management design conversion
2013-07-22 04:22:37 -07:00
John O'Nolan
ae348edbdb Merge pull request #293 from matthojo/Remove-Codemirror-CSS
Removed CodeMirror Stylesheet file and moved over required CSS
2013-07-22 04:22:19 -07:00
Matthew Harrison-Jones
f85bbd5422 Improve title casing 2013-07-18 14:42:16 +01:00
Matthew Harrison-Jones
9fd653738d Additional Keyboard Shortcuts and improvements to text highlighting
This fixes the event where text would be selected after manipulation from shortcut, the cursor is now placed after the text. On links and images the url field text is highlighted.
Additional shortcuts;

* Ctrl+U: Make text uppercase
* Ctrl+Shift+U: Make text lowercase
* Ctrl+Alt+Shift+U: Make text titlecase
* Ctrl+Alt+W: Select word
* Ctrl+L: Make into list
2013-07-18 14:02:54 +01:00
Matthew Harrison-Jones
f3462245d5 Debounce scrolling on editor 2013-07-18 12:06:52 +01:00
Matthew Harrison-Jones
482da669aa First pass at Plugin Management design conversion 2013-07-18 11:36:37 +01:00
ErisDS
4fd9556904 Fixing up validation and tests for pagination helper where prev and next are undefined by default, rather than null. 2013-07-17 14:37:52 +01:00
Hannah Wolfe
061c3d6176 Merge pull request #274 from cobbspur/unittesting
improves unit testing for pagination
2013-07-16 12:06:51 -07:00
cobbspur
115996b88d improves unit testing for pagination and fixes pagination partial template (removed extra </nav>)
removes console logs for error handling in testing and travis environments
2013-07-16 19:57:19 +01:00
Hannah Wolfe
6e4755c183 Merge pull request #264 from matthojo/Login-Cursor
Automatically focus on first login input
2013-07-16 06:14:12 -07:00
Matthew Harrison-Jones
ce8ed96348 Removed CodeMirror Stylesheet file and moved over required CSS
Fixes #6.
2013-07-16 12:14:17 +01:00
Matthew Harrison-Jones
0d06484b01 Automatically focus on first login input 2013-07-16 10:18:40 +01:00
Hannah Wolfe
92bb75dfdf Merge pull request #285 from matthojo/Settings-Back-Fix
Fixes back button breaking settings panels
2013-07-15 14:29:49 -07:00
Matthew Harrison-Jones
b0c5d7e63a Fixes back button breaking settings panels 2013-07-15 18:09:10 +01:00
Matthew Harrison-Jones
7904819556 Initial pass at the user profile page
Fixes #148.
2013-07-15 15:54:13 +01:00
Hannah Wolfe
cffc158ea4 Merge pull request #262 from matthojo/User-Menu-Highlighting
Fixes persistent menu highlighting
2013-07-13 03:10:26 -07:00
Matthew Harrison-Jones
4d77d2f7bc Fixed 'G' button not working
Fixes #218.
2013-07-12 17:13:40 +01:00
Matthew Harrison-Jones
390d3cc538 Fixes persistent menu highlighting
Fixes #259
2013-07-12 16:50:21 +01:00
ErisDS
51d75aec9b Docs and tests - closes #235
- fixed the test that the fixture change broke (sort of). We should be using separate fixtures for tests really, unless we want to test something about a Ghost install.
- updated readme with better docs
2013-07-11 23:42:50 +01:00
ErisDS
b3b296f003 New fixture
- added new getting started fixture
- closes issue #13
2013-07-11 23:10:19 +01:00
Hannah Wolfe
3d3d42bd7c issue #245
hbs templates not building with correct paths
missed a couple of assets paths in settings
2013-07-11 21:00:41 +01:00
Hannah Wolfe
30b4eb07f7 App restructure - closes #245
- This is a first pass at getting a more logical structure. The focus is on moving from admin/frontend to client/server.
- The location of the databases is highly important, this isn't expected to change again
In the future
- client/assets should probably become public/
- more stuff should be shared (helpers etc)
- cleanup some confusion around tpl and views
2013-07-11 20:23:34 +01:00
Hannah Wolfe
316a50b7ff Issue #246 part 12
-  renamed single.hbs to post.hbs
- casper updated to match
2013-07-11 17:57:12 +01:00
Hannah Wolfe
2b132f32b1 Content helper - closes #254
- return content as a safe string so triple taches are not required
- test for content helper
2013-07-11 17:21:42 +01:00
Hannah Wolfe
6b3f835cfb Rename content fields - closes #253
- rename "content" to "content_raw"
- rename "content_raw" to "content"
- change all references
2013-07-11 16:27:19 +01:00
Hannah Wolfe
5948a3f246 Test cleanup
- redoing test failures with .then(null, done) so that any errors which happen in the previous then are properly caught.
2013-07-11 13:50:31 +01:00
ErisDS
6f8752aa22 HTML helpers refactor - issue #246 items 2 and 5.
- moved template logic out of individual helpers and into Ghost
- simplified template-driven helpers into closures which maintain the context of handlebars
- with handlebars context we have access to data, so don't need to pass data in
- check data to test that it is a simple object and not a function
- moved helpers back into index.js
- provided tests for both template functions in ghost and the nav helper so we are back to where we were
2013-07-11 01:30:29 +01:00