Commit Graph

42 Commits

Author SHA1 Message Date
Jacob Gable
bbe5105048 Edit Post Permissions 2013-08-18 12:28:05 -05: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
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
Hannah Wolfe
2f11f053ab Minor code cleanup, docs and other bits & pieces 2013-08-06 22:24:40 +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
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
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
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
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
Hannah Wolfe
b70867c973 Filters should not stop execution.
- added a try-catch & error logging to filters so that they can be debugged and do not stop execution
2013-07-07 19:02:26 +01:00
Hannah Wolfe
5c15c2d4b0 issue #186 - load plugins
- Adding activePlugins array to config.js
- Adding a loadPlugins function to ghost.js
- Tweaking fancyFirstChar.js so that it works again, getting rid of the function wrapper and constructor
2013-07-01 20:24:48 +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
Hannah Wolfe
30bc4d8434 Fix for WOFF files
- get express to return the correct mime type for woff files
2013-06-25 22:47:29 +01:00
Hannah Wolfe
289a40e031 Cleaning up res.locals
- closes #124
- added new middleware to detect if a route should be admin or not
- updated ghostLocals to use this and return different locals
- updated ghost.js#initTheme to use the same test
2013-06-25 22:36:53 +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
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
32bbf2ba57 issue #165, issue #124 - cleaning up ghostGlobals
- ghost.js - globals/globalConfig has become settings / settingsCache to make it clearer
- app.js - the ghostGlobals local cache is gone, and the use of res.locals has been cleaned up and simplified, although this needs to be properly split into frontend and admin locals (to be finished in #124)
- frontend/index.js - doesn't need to be passed globals and nav properties as res.locals does this for us
2013-06-17 23:12:13 +01:00
Hannah Wolfe
0f0769ab2b issue #157 - init ordering and error handling
reordering init so that settings are always loaded after the db is initialised
adding error handling to promises
2013-06-16 17:14:01 +01:00
Jacob Gable
a63690a471 Fix relative paths for deployment
In order to run with forever / supervisorctl, the relative paths need to
be converted to full ones based on the __dirname.
2013-06-15 10:54:49 -05:00
Gabor Javorszky
81d317a122 Replaced config.blogData with settings
Solves #112
* Removed config.blogData
* Changed Ghost.init() to accommodate new settings bits
* (data was already in the fixtures)
2013-06-15 00:39:27 +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
55d8ff75b4 Filter priorities
Add the ability to specify a priority level when registering filters.
Also change doFilter to execute filters in priority order.

Closes #86
2013-06-09 11:16:25 -05:00
Tim Griesser
983c171fb0 simplifying the model structure, again 2013-06-01 11:14:05 -04:00
ErisDS
185eee2a6b Implementing backbone for the blog / content view
closes #64 - adds a full example of using backbone on the frontend
remembered to squash this one!
2013-05-31 06:58:20 +01:00
Jacob Gable
a8bf3c962f Ghost.init()
- Modified jsonDataProvider to return promises for findAll and save
- Move the dataProvider initialization into the Ghost.init() function.
- Created basic unit test
2013-05-30 23:39:02 +01:00
Gabor Javorszky
ce5e757672 moved config into init function 2013-05-30 23:39:02 +01:00
Gabor Javorszky
e7c0d13f7c #73: Remap app.locals done 2013-05-30 23:39:02 +01:00
ErisDS
237af40f2e Revert "Merge branch 'fat-models' of github.com:tgriesser/Ghost into tgriesser-fat-models"
This reverts commit 611e6a49ef, reversing
changes made to a89dc1d123.
2013-05-30 23:34:53 +01:00
Tim Griesser
cf9c2462fa lint fixes 2013-05-29 18:28:24 -04:00
Tim Griesser
091790a525 merging with master 2013-05-29 18:26:10 -04:00
ErisDS
077c602d61 Merge branch 'master' of github.com:javorszky/Ghost into javorszky-master
Conflicts:
	app.js
2013-05-29 08:26:57 +01:00
Gabor Javorszky
9a7e153549 #25: admin navbar and filter 2013-05-29 01:10:39 +01:00
Jacob Gable
c699121049 Add ghostNav helper and filter for themes; closes #47 2013-05-27 22:59:01 -05:00
Tim Griesser
a204a96cda a bit of organizing/simplifying/fattening the models 2013-05-27 13:30:03 -04:00
Tim Griesser
52911c7a50 more consistent use of promises 2013-05-26 13:44:01 -04:00
Jacob Gable
601e261439 Fixing tests and adding settings provider. 2013-05-25 11:48:15 -05:00
Hannah Wolfe
ef94f3b778 closes #28 - reimplements posts with bookshelf
This involves switching column names to snake_case which requires template updates in both the admin and in casper
2013-05-16 22:16:09 +01:00
Hannah Wolfe
e7b37f8671 Cleaning up global statement 2013-05-16 11:29:02 +01:00
Jacob Gable
b88e69a3cc Switch to grunt-jslint 2013-05-14 10:04:22 -05:00
Jacob Gable
99c13c02c0 Initial Grunt configuration 2013-05-12 08:40:59 -05:00
Hannah Wolfe
17d421bfcc Initial commit to GitHub repo 2013-05-11 17:44:25 +01:00