Commit Graph

75 Commits

Author SHA1 Message Date
Jonathan Johnson
97dce96fa1 Update validator to 3.4.0
Closes #1379

- Convert to new api usage for both server-side and client-side
- Provide way require a negative response for boolean methods in
  default-settings.json
- Add field validation functional tests
  - Settings (General)
    - Title length validation
    - Description length validation
    - postsPerPage, numeric, min, max
  - Settings (User)
    - Bio Length validation
    - Location length validation
    - Url validation
  - Login
    - Email validation
  - Editor
    - Title required validation
2014-03-04 13:54:24 -07:00
Hannah Wolfe
a17067d8e6 Merge pull request #2294 from shashankmehta/apps-config
Shifts app UI behind config option
2014-03-04 20:21:13 +00:00
Fabian Becker
f0c6aec36d Replace JSLint with JSHint.
closes #2277
- Added ES6 linting to core/client/
- Fix typeof array comparison
2014-03-04 15:47:39 +00:00
Shashank Mehta
48b5c20989 Shifts app UI behind config option
Closes #2287
- adds helper for checking whether to show apps UI or not
- hides app UI from settings page
2014-03-03 02:52:30 +05:30
Shashank Mehta
f34ea3bc0a Prevent settings page from rendering same page twice
Closes #2316
- There was a check to prevent rerendering of same content pane but it wasn't working
- Fixed the check for this
2014-03-03 02:30:09 +05:30
Gabor Javorszky
8b00f94c9d Implements Initial lifecycle and App UI start
Closes #2083

* Added hbs template for apps listing
* Added settings to read the activeApps
* Added viewcontrol to activate / deactivate apps
* Added API handler to store activeApps (by `name` in the `package.json` file)
* On button click it turns the button into "Working" and changes class to `button` (grey one)
* On success, rerenders the pane, adds success notification about apps being saved
* On error, rerenders the pane, adds error notification with error message

Missing:
* tests: couldn't figure out how to add mock apps with mock package.json data
* actually registering, etc, re #2140
* icon from the sidebar
2014-02-28 14:06:36 +00:00
Hannah Wolfe
810f97eaf8 Merge pull request #1972 from jgillich/character-limit
Show character limit below blog description textarea
2014-01-27 14:32:52 -08:00
Hannah Wolfe
a0ebf1198d General cleanup
- Cleanup some todos, comments, and unused variables
2014-01-19 21:08:39 +00:00
Jakob Gillich
03c16bae24 Show character limit below blog description textarea
closes #1970
2014-01-17 21:39:43 +01:00
Hannah Wolfe
4b491fbd6e Path, url and subdir cleanup & test
issue #1754

- remove path (it was only used once, and not needed)
- change webroot to subdir
- add unit tests for config.paths
- various other cleanup
- renamed client-side ghostRoot to subdir
- added url helper for client
2013-12-28 16:09:56 +00:00
Sebastian Gierlinger
56de932492 Fix error when uploading logo/cover image
closes #1616
- removed pars from model
- changed checkbox handling
2013-12-06 16:43:53 +01:00
Jakob Gillich
a2cb218d9a Add Customisable Permalinks 2013-11-23 17:02:17 +01:00
John O'Nolan
cf7b03bfff Kill iCheck cause Hannah says it has genital warts. 2013-11-08 14:38:23 +01:00
Ben Gladwell
b809bdbe1c Remove unparam:true from jslint config in Gruntfile.js
issue #1365
- added /*jslint unparam:true*/ to functions where absolutely necessary
- added /*jslint unparam:true*/ to functions in which keeping parameter
  list added clarity to the underlying api, even when those parameters
  are not currently used
- removed unused parameters in a few places
2013-10-31 14:02:34 -04:00
Matt DuVall
5413cf0d2d Allow only images to be uploaded in the upload modal
Fixes #1221

- This changes the accepted encodings on the files upload input field to
  be only "image/*" now
-
2013-10-24 14:37:08 +01:00
Enrique Chavez
ec84ea1232 Validate negative numbers in the posts per page setting
issue #1236
- added validation to not allow number less than 0
2013-10-22 23:15:38 +01:00
Hannah Wolfe
dbbb78a459 Merge pull request #1051 from nason/settingsResetOnImageUpload
Fixes #1017. Save all settings when the logo or cover is saved
2013-10-22 09:05:38 -07:00
Hannah Wolfe
30a20553ea Merge branch '0.3.3-wip'
Conflicts:
	core/client/views/blog.js
	core/server/api.js
	core/server/views/default.hbs
	package.json
2013-10-20 10:09:39 +01:00
Hannah Wolfe
a60fa5f970 Fixing URL-based image uploads on settings screen 2013-10-17 21:54:51 +01:00
Sebastian Gierlinger
f1ef797d6b Security improvements
no issue
- added CSRF protection
- changed session handling to express.session
- changed session handling to change session id
- added config property useCookieSession
- added file extension check for /ghost/upload
- removed /ghost/debug/db/reset
2013-10-17 15:28:28 +02:00
Michael Nason
34e0e9c66c Save all settings when the logo or cover save button is clicked.
Fixes #1017.
- Call saveSettings for cover and blog logo photos
- Call saveUser for profile and profile cover photos
2013-10-16 08:39:24 -07:00
buddhamagnet
d3fd327d94 Cache selector in afterRender function
- cache selector in a variable to prevent recomputing it in the function.
2013-10-14 20:56:20 +01:00
Hannah Wolfe
c427318fdd Merge branch '0.3.2-wip'
Conflicts:
	core/test/unit/api_posts_spec.js
2013-10-10 16:37:35 +01:00
Hannah Wolfe
8c87d44b6d Swapping escape to sanitze
issue #938

- rather than using escape, use node-validatiors santize function which is designed for preventing xss vectors
- added listener for changes to both editor and settings page
- added more sanitization to the user model
- consistently use triple-braces when outputting blog post titles
2013-10-09 19:13:16 +01:00
Hannah Wolfe
16cdcda475 Merge pull request #954 from jgable/fixChangePasswordEnter
Fix pressing enter key on user settings
2013-10-05 12:25:26 -07:00
Sebastian Gierlinger
bcc7ad9a41 Disable filestorage
closes #937
- fixed bug where ![] is replaced with ![](http://) for image url
- added fileStorage setting to uploader
- added fileStorage helper (could become standard way of providing config data for frontend???)
- added data element to editor and settings
- if no config value is set fileStorage: true is default
2013-10-02 11:39:34 +02:00
Jacob Gable
ed5bd3b808 Fix pressing enter key on user settings
Specified type='button' for the buttons in the form so they don't get
pseudo clicked on enter key in inputs.  Added a keyup handler to check
for enter keys in the inputs and do the proper action based on where you
are in the form.
2013-10-01 10:05:12 -05:00
Hannah Wolfe
0d4f957a57 Client & Server side validation for posts per page
closes #839

- caused a 500 error
2013-09-19 07:55:37 +01:00
William Dibbern
fc261630ef Expanded spelling of chars to characters
Fixes #834

- Updated error message for password length to use "characters" instead
of "chars".
2013-09-18 21:51:56 -05:00
Hannah Wolfe
2ef6464700 Default user image and cover
closes #812

- replace defaults with consistently named .png files
- change the settings saving code so that it doesn't double-save images and save the defaults to the db
2013-09-18 15:54:52 +01:00
Hannah Wolfe
0e3425c353 Clear notifications before adding new ones
closes #783

 - I think there's probably a nicer solution than putting clearEverything() everywhere, but that would also probably involve significant refactoring.
2013-09-18 02:48:38 +01:00
cobbspur
f57274d528 Added url functionality for image uploads
closes #701, closes #702

- if image upload is called from editor the url icon provides a text field and a save button
- if on settings pages (general and user) the save button will capture the entered url or uploaded url
- both modes have the reset button
- fixed bug that is created by url when image is dragged onto window
2013-09-17 19:15:32 +01:00
cobbspur
bf33d4619d Adds slashes to urls
ref issue #448

- adds slashes to urls, templates and tests

TODO

Add function to add slash to urls automatically
2013-09-17 02:39:55 +01:00
Hannah Wolfe
b3cc769f6f Merge pull request #752 from sebgie/settingsapi
Add setting filter
2013-09-15 09:53:23 -07:00
Hannah Wolfe
860c78035f Merge pull request #750 from cobbspur/images
Fixed settings general pane to display current blog cover in uploader
2013-09-15 09:15:24 -07:00
Sebastian Gierlinger
d7bafd4b2a Add setting filter
closes #172
- added type to ghost.settings()
- added /api/settings?type=<filter>
- added availableThemes to settingsCache
- removed cachedSettingsRequestHandler
- removed /api/themes (including front end)
- changed activePlugins to type "plugin" in default-settings.json
2013-09-15 18:04:01 +02:00
cobbspur
37d0cd420b Added hover state for blog-logo and blog-cover using existing ids
- blog-logo and blog-cover now have a hover state of cursor: pointer
2013-09-15 16:47:38 +01:00
cobbspur
84030903b7 Fixed settings general pane to display current blog cover in uploader
- removed unused ids and options.id from uploadImage modal template
2013-09-15 15:54:12 +01:00
Hannah Wolfe
11136988fc Mass renaming of things
Conflicts:
	core/client/views/settings.js
	core/server/models/user.js
2013-09-14 21:56:07 +01:00
Sebastian Gierlinger
c46537de32 Clean up config (drop 'env')
closes #628
- removed .env from config.js
- ghost.config() returns correct config for NODE_ENV
- removed .env[process.env.NODE_ENV]
- updated tests
- deleted users.hbs, plugins.hbs, appearance.hbs (forgot to delete in PR #649)
2013-09-14 13:14:00 +01:00
Gabor Javorszky
44f2cb0153 Added client side validation
Closes #581.

* Basically adds the client side of node validator, that we're already using
* Validator is plonked onto `Ghost.Validator`
* Usage is identical as to https://github.com/chriso/node-validator
* Has sanitizing values et al
* `Ghost.Validator.error` is redefined, it populates Ghost.Validator._errors (Array)
* `Ghost.Validator.handleErrors` is supposed to print out the multiple error messages, if there are multiple (this is broken due to how notifications are presented `.html` instead of `.append`), and also apply class to element
* The ajax calls are wrapped in an if to prevent network traffic if something's not right on client side
* Added validation to general settings and user settings screens.
* On validation error, optionally adds `.input-error` to whatever element you reference, see below (if `el` exists on the error object). This is the only place where usage is different to the original implementation. Redeclared `error()` function in `init.js`
* Usage: `Ghost.Validate.check(valueToCheck, {message: "the error message", el: $('#the element')}).isEmail()`
* The element above will receive the `.input-error` class. `isEmail()` is one of the stuff you can check against.
2013-09-14 10:52:27 +01:00
Sebastian Gierlinger
85e71d6fc6 Fix for image upload with clean database
no issue
- reversed workaround for PUT to model
- changed save function for image to unset availableThemes
2013-09-11 16:45:59 +00:00
Hannah Wolfe
54f586cb11 Added blog cover image
closes #571

- added blog cove beneath logo, wired it up to the {{@blog}} globals
- updated casper
- also deleted settings/content
2013-09-09 18:13:19 +01:00
Hannah Wolfe
2f8de8af5b Merge pull request #649 from sebgie/issue#345
Clean up settings/general screen
2013-09-09 01:32:35 -07:00
Sebastian Gierlinger
b6d1390f71 Clean up settings/general screen
Closes #345
- added blog description to general screen
- removed content screen from sidebar
- removed beforeRender from settings front end
- removed content screen from tests
2013-09-08 22:12:48 +02:00
cobbspur
5041a5677c User Profile Image Upload
closes #280

- adds image uploader to user profile page.
- click on cover picture or change cover button to open file upload modal.
- created new upload modal that extends model to reduce some code duplication
2013-09-08 17:19:57 +01:00
Hannah Wolfe
8766257ee0 Merge pull request #634 from sebgie/issue#593
Add setting for posts per page
2013-09-06 08:45:44 -07:00
Matthew Harrison-Jones
c1e677915d Updated the animation option on Upload Modals to new format 2013-09-06 15:39:26 +01:00
Matthew Harrison-Jones
900ef39647 Bug Fix: Action modals now have centered content and correct spacing
This also adds functionality to Modals, so they can have multiple
styles, e.g 'wide' and 'centered'.
2013-09-06 15:36:16 +01:00
Sebastian Gierlinger
aeee7a1404 Add setting for posts per page
closes #593
- added default setting of 6 posts per page
- added posts per page to settings page
- added limit to frontend.js (setting does not change API behavior)
2013-09-05 14:56:09 +02:00