Commit Graph

90 Commits

Author SHA1 Message Date
Sebastian Gierlinger
d9fb23496c Clean up config (non-env based settings)
closes #625
- removed defaultLang, forceI18n and activePlugins from config
- added values to default-settings.json
- updated to use values from settings
2013-09-06 18:46:50 +01:00
Hannah Wolfe
c45f911a1e Improving underscore handling
Additional changes to how underscores are handled.
This more closely matches codemirror, but is still not 100%.
2013-09-04 15:20:26 +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
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
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
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
Matthew Harrison-Jones
1b9725ead2 Included jQuery Source Map
This stops console errors asking for the file.
2013-08-28 11:47:43 +01:00
John O'Nolan
f81bdc308d Downgrade bundled version of jQuery to 1.10.2
Closes #532
2013-08-25 21:59:40 +02: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
Ricardo Tomasi
814a3d66b7 Move shared third-party libraries to /shared/vendor 2013-07-24 23:21:57 +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
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
221345ff99 issue #234 - date bug
- updated fixtures so that even short-term we have valid data
- added methods to the base model that marshall the data in and out of the db so it is always an RFC 2822 date never ISO 8601
- turned off SQL debugging now the bug is resolved
- minor change to the date listing template, as we don't need to check for updated_at now that the data is correct - but should use published date anyway
2013-07-08 12:39:11 +01:00
Hannah Wolfe
85535ae000 issue #228 - slug generation
Some more bits for slug generation
- fixes a bug in generation and some tests
- makes sure that deduplicated slugs get a hyphen before the number
- added %<>|^~£"  to reserved chars
- added a few extra comments
2013-07-08 09:12:23 +01:00
Gabor Javorszky
a6b3851491 Removing multiple hyphens
Closes #228. Also deals with the fact that if there's a trailing hyphen, it no longer removes one extra character.
2013-07-08 08:12:51 +01:00
Jacob Gable
d8d88f40cd Fix slug multiple hyphens and short words
Should close #228 and #238
2013-07-08 07:37:38 +01:00
Hannah Wolfe
3d2b56b6a9 Config and naming
- issue #154, issue #224 and issue #220
- change port number from 3333 to 2368
- change main file name from app.js to index.js
- update README & package.json to match
2013-07-07 16:50:50 +01:00
Gabor Javorszky
6ab8109f40 Getting rid of adminnavbar filter and console.logs
Closes #219. Self-explanatory, look at the code.
2013-06-30 16:50:26 +01:00
Jacob Gable
7498b520e4 Increment slug if duplicate
Refactored the generateSlug method to return a promise and check for
existing posts with matching slugs.

Should close #221
2013-06-25 20:48:48 -05:00
Hannah Wolfe
4ed73edc62 fixes #202 - urls contain reserved chars
- further updates to the slugging function to check for certain words
- TODO: handle duplicates #221
2013-06-25 22:27:38 +01:00
Hannah Wolfe
7993cc22ab fixes #202 - urls contain reserved chars
- added all reserved chars and \ to the list of chars which get filtered out
- added documentation
2013-06-25 19:07:19 +01:00
cobbspur
376cf647e5 closes #197 & closes #196 pagination wiring and helper
- adds routes for homepage pagination
- adds helper function to compile template file for pagination
- adds next and prev to post for next and previous page
- adds handlebars template for pagination
2013-06-25 16:13:19 +01:00
Hannah Wolfe
ba810fb0bb issue #58 - removing the iiwf
Function wrapper and use strict pragma removed from all node files
2013-06-25 13:46:50 +01:00
Jacob Gable
2b7d0f054d Import and Export UI
Added a basic UI and implementation for importing and exporting data.
Hooked up the routes and tested importing and exporting a version 001
file.

Slipped in the TemplateView in base.js but didn't end up using it.  I
think it will encapsulate common logic for template views pretty well.

Should close #175.
2013-06-23 16:06:57 -05:00
Gabor Javorszky
e40eb12a51 Fix forge returning null on empty fetch
Closes #184. It got broken because of a9c4a5409e
2013-06-22 13:43:01 +01:00
Hannah Wolfe
d15f1f8961 closes #101 - data model updates
Further changes to the data model to ensure created_by, author_id and updated_by are all set to user 1
Updated settings such that the default type is always 'general', and changed the types in the fixtures to be slightly more useful
Added additional assertions to tests to cover more assumptions about data
2013-06-17 23:59:08 +01:00
Hannah Wolfe
50eb91fe51 issue #165 - reloading settings
- ghost.js - split the settings loading out of ghost.init, so that we have a function for loading / reloading settings
- api.js - implemented a new requestHandler, the cachedSettingsRequestHandler which handles all aspects of local caching for settings when making requests
- app.js - updated the settings api routes to use the new cached request handler
2013-06-17 23:24:05 +01:00
Hannah Wolfe
f58c8eb6c3 Merge pull request #163 from jgable/exportData
Data import and export
2013-06-17 01:19:48 -07:00
Hannah Wolfe
0d5b6e8915 Added consistent error handling throughout the models 2013-06-16 22:36:28 +01:00
ErisDS
17c8c02eae closes #117 - published order
Fixes the knex query so that posts are correctly returned in the order of published_at, desc
2013-06-16 12:21:49 +01:00
Tim Griesser
fad7087cd1 Setting published_at when post changes to published status 2013-06-15 19:24:27 -04:00
Jacob Gable
0c4ccc284b Data import and export 2013-06-15 20:52:32 +00:00
Hannah Wolfe
b816225dca Merge pull request #159 from jgable/fixRequireTree
Error check and default set for require-tree.
2013-06-15 08:48:51 -07:00
Jacob Gable
b4b8be2bb8 Error check and default set for require-tree. 2013-06-15 09:22:50 -05:00
Tim Griesser
a5b9274bb5 adding uuid's for the posts, users, settings 2013-06-15 10:16:20 -04:00
Gabor Javorszky
b0b11573f6 Restricting Admin user creation
Solves #138.
* Removed user and user_roles from fixture
* Restricted user creation to one user. That user is id 1, is admin
* Changed tests so they accommodate for this fact
* Can not create new user (fails on test, flashes on signup)
2013-06-15 10:10:26 +01:00
Hannah Wolfe
320bb311bc Merge pull request #131 from javorszky/iss82-2
Registration no longer hangs on duplicate emails
2013-06-11 04:41:22 -07:00
Gabor Javorszky
e0caddeee7 Registration no longer hangs on duplicate emails
There was a return missing. This closes #82 again.
2013-06-10 21:26:20 +01:00
Hannah Wolfe
b3775feba0 Merge branch 'pr/119'
Conflicts:
	core/admin/assets/js/router.js
	core/admin/views/default.hbs
	core/admin/views/settings.hbs
	core/shared/data/fixtures/001.js
2013-06-09 21:41:07 +01:00
Gabor Javorszky
e271c6402f Directory scanning on contents/themes and plugins
This implements #106.
* Added require-tree which is based off of @ricardobeat's module. Fully async.
* I've moved active theme and active directory to settings from config as well.
* Modified settings.hbs and settings.js to display the raw json under Settings/Appearance
2013-06-09 20:17:54 +01:00
Jacob Gable
1effc4e772 Implement a permissable interface on models
Added checks to the canThis process for a `permissable()` function
that would allow Models to override the permissions process.
2013-06-08 18:39:24 -05:00
Ricardo Tomasi
e2b3c40a34 Migrate settings page to Backbone 2013-06-08 19:36:54 -03:00
Ricardo Tomasi
c82e5976cc Changes to Settings Model
- add email default setting to fixture
- make settings a single model
- create UNIQUE index on setting keys
2013-06-08 19:24:21 -03:00
Hannah Wolfe
aa659d29b6 JSLint updates - function spacing consistency
- updating grunt-jslint to the latest version
- fixing up function spacing
2013-06-06 21:38:12 +01:00
Hannah Wolfe
60d90967e1 issue 101 - updating the data model
Added & removed many properties as required & fixed tests
Updated & also cleaned up the fixtures, inc images
Added order by published to the findPage query
2013-06-06 21:36:17 +01:00
Jacob Gable
e6f7c706cb Permissions / ACL
- Created Role model
- Created Permission model
- Linked Users->Roles with a belongsToMany relationship
- Linked Permissions to Users and Roles with a belongsToMany relationship
- Created permissions helper with functions for initializing and
  checking permissions (canThis)
- Unit tests for lots of things
2013-06-06 08:15:10 +01:00
Tim Griesser
e5ce70e175 Added models & collections for various pieces
Saving post as draft, or publishing
Added HBS parser for some client tmpls
Parsing paginated posts
Added grunt watch for hbs parsing on updates
2013-06-03 00:56:57 -04:00
Tim Griesser
b7064185d4 server half of #83, posts are draft by default, browse shows published by default 2013-06-01 15:42:11 -04:00
Tim Griesser
c55a96083a server side half of #83 2013-06-01 15:30:42 -04:00