diff options
Diffstat (limited to 'app')
| -rw-r--r-- | app/index.js | 14 | ||||
| -rw-r--r-- | app/node_modules/okdb/index.js | 8 | ||||
| -rw-r--r-- | app/node_modules/okserver/index.js | 9 |
3 files changed, 27 insertions, 4 deletions
diff --git a/app/index.js b/app/index.js index b8a3333..c8dceb5 100644 --- a/app/index.js +++ b/app/index.js @@ -25,6 +25,13 @@ function OKCMS(options) { app.enable('strict routing'); var root = this._root = options.root || 'public'; + var adminConfig = options.admin || {}; + var adminRoot = this._adminRoot = adminConfig.root || + path.join(__dirname, '../themes/okadmin/public'); + var adminPath = this._adminPath = adminConfig.path || '/_admin' + var templateRoot = options.templateRoot || 'templates'; + var adminTemplateRoot = options.templateRoot || + path.join(__dirname, '../themes/okadmin/templates'); var schemaConfig = options.schemas || {}; var resourceConfig = options.resources || []; @@ -34,11 +41,13 @@ function OKCMS(options) { var templateProvider = this._templateProvider = new OKTemplate({root: templateRoot}); + var adminTemplateProvider = this._adminTemplateProvider = + new OKTemplate({root: adminTemplateRoot}); var db = new OKDB(options.db || 'fs'); // Special query to get project wide meta data var meta = this._meta = { - name: 'meta', + type: 'meta', get: function() { return db.getMeta(); } @@ -55,7 +64,8 @@ function OKCMS(options) { app: app, views: views, root: root, - adminRoot: adminRoot + adminRoot: adminRoot, + adminPath: adminPath }); } diff --git a/app/node_modules/okdb/index.js b/app/node_modules/okdb/index.js index cf670c1..6c01df0 100644 --- a/app/node_modules/okdb/index.js +++ b/app/node_modules/okdb/index.js @@ -37,9 +37,13 @@ function FSDB(options) { this._db = low(filename); } -FSDB.prototype._resolve = function(data) { +FSDB.prototype._resolve = function(data, success) { + success = typeof success === 'undefined' ? true : success; return Q.Promise(function resolvePromise(resolve, reject) { - resolve(data); + if (success) + resolve(data); + else + reject(data); }); }; diff --git a/app/node_modules/okserver/index.js b/app/node_modules/okserver/index.js index 6c19a9b..ba4dd46 100644 --- a/app/node_modules/okserver/index.js +++ b/app/node_modules/okserver/index.js @@ -10,6 +10,15 @@ function OKServer(options) { throw new Error('No Express app provided to OKServer') if (!options.views) throw new Error('No views provided to OKServer'); + if (!options.root) + throw new Error('No app root directory provided to OKServer'); + if (!options.adminRoot) + throw new Error('No admin root directory provided to OKServer'); + if (!options.adminPath) + throw new Error('No admin path provided to OKServer'); + var root = options.root; + var adminRoot = options.adminRoot; + var adminPath = options.adminPath; var views = options.views; var express = options.express; var app = this._app = options.app; |
