Commit Graph

201 Commits

Author SHA1 Message Date
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
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
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
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
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
Matthew Harrison-Jones
20bcaa4339 Included missing Mac 'code' keyboard shortcut 2013-08-19 15:10:53 +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
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
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
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
William Dibbern
b92980ce6d Fixed word count grammar
Closes #349
- Added utility function to pluralize when appropriate.
2013-08-11 11:55:42 -05: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
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
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
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
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
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
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
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
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
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
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
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
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