summaryrefslogtreecommitdiff
path: root/lib/db/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'lib/db/index.js')
-rw-r--r--lib/db/index.js79
1 files changed, 4 insertions, 75 deletions
diff --git a/lib/db/index.js b/lib/db/index.js
index 1c7cc15..c89afc3 100644
--- a/lib/db/index.js
+++ b/lib/db/index.js
@@ -1,76 +1,5 @@
-var db = module.exports
+let db = module.exports
-var connection = require("./bookshelf")
-var bookshelf = connection.bookshelf
-var knex = connection.knex
-
-var Folder = db.Folder = bookshelf.Model.extend({
- tableName: 'folders',
- hasTimestamps: true,
-})
-var File = db.File = bookshelf.Model.extend({
- tableName: 'files',
- hasTimestamps: true,
-})
-var Job = db.Job = bookshelf.Model.extend({
- tableName: 'jobs',
- hasTimestamps: true,
-})
-var Task = db.Task = bookshelf.Model.extend({
- tableName: 'tasks',
- hasTimestamps: true,
-})
-
-db.crud = function(model) {
- return {
- index: (q) => {
- return model.query( (qb) => {
- const limit = q.limit || 100
- const offset = q.offset || 0
- if (limit) {
- delete q.limit
- }
- if (q.offset) {
- delete q.offset
- }
- if (Object.keys(q).length > 0) qb.where(q)
- qb.orderBy("id", "desc")
- if (limit) qb.limit( limit )
- if (offset) qb.offset( offset )
- // console.log(qb)
- return qb
- }).fetchAll()
- },
- show: (id) => {
- return new model({'id': id}).fetch()
- },
- show_ids: (ids) => {
- return model.query( (qb) => {
- qb.whereIn('id', ids)
- return qb
- }).fetchAll()
- },
- create: (data) => {
- return new model(data).save()
- },
- update: (id, data) => {
- return new model({'id': id}).save(data)
- },
- destroy: (id) => {
- return new model({'id': id}).destroy(data)
- },
- }
-}
-
-function memoize (f) {
- const o = {}
- return (model) => {
- console.log(model)
- t = model.toString()
- if (o[t]) {
- return o[t]
- }
- o[t] = f(model)
- return o[t]
- }
-} \ No newline at end of file
+db.crud = require('./crud')
+db.model = require('./model')
+db.models = require('./models')