var okcms = require('..'); var isProduction = process.env.OK_PRODUCTION === 'true' var port = process.env.PORT || 1337; var path = require('path') var app = okcms.createApp({ root: 'public', debug: !isProduction, production: isProduction, admin: { theme: 'okadmin', // dashboard: { // resources: { // card: { // groupBy: 'stack', // descending: true // } // } // }, }, schemas: { page: { id: {type: 'string'}, title: {type: 'string'}, body: {type: 'text'}, links: {type: 'link-list'}, }, bread: { type: {type: 'string', id: true}, title: {type: 'string'}, description: {type: 'text'}, color: {type: 'enum', options: ["red","blue","green"]}, video: {type: 'video'}, images: {type: 'gallery'} }, test: { id: {type: 'string', hidden: true}, title: {type: 'string'}, flagged: {type: 'flag'}, media: {type: 'media'}, }, flour: { id: {type: 'string', hidden: true}, title: {type: 'string'}, image: {type: 'image'}, images: {type: 'triple-captioned-image-list'}, }, }, resources: [ { type: 'page', static: {id: 'about'}}, { type: 'page', static: {id: 'contact'}}, { type: 'bread' }, { type: 'test' }, { type: 'flour' }, ], services: { s3: { key: process.env.S3_KEY, secret: process.env.S3_SECRET, bucket: process.env.S3_BUCKET, dirname: "okcms-example", image: { allowed: true, preserveFilename: false, maxbytes: 2*1024*1024 }, video: { allowed: true, preserveFilename: true, maxbytes: 200*1024*1024 }, audio: { allowed: true, preserveFilename: true, maxbytes: 100*1024*1024 }, }, webhook: { active: false, secret: 'test', command: '/path/to/build.sh', }, example: { lib: require("./lib/okexample"), stuff: "things", }, dumpfm: { lib: require("./lib/okdumpfm"), }, push: { lib: require("./lib/okpush"), mongodbUrl: "mongodb://localhost/okpush_example", apn: { connection: { gateway: "gateway.sandbox.push.apple.com", cert: "/path/to/cert.pem", key: "/path/to/key.pem" }, feedback: { address: "feedback.sandbox.push.apple.com", cert: "/path/to/cert.pem", key: "/path/to/key.pem", interval: 43200, batchFeedback: true } } }, }, views: { '/': { data: [ {type: 'bread', query: '*'}, {type: 'page', query: '*'} ] }, '/about': { data: {type: 'page', query: 'about'} }, '/contact': { data: {type: 'page', query: 'contact'} }, '/:id': { data: {type: 'bread', query: ':id'} } } }).listen(port) console.log('Server listening at port %d...', port);