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 // } // } // }, dashboard: { resources: { flour: { display: 'image', field: 'image', } } } }, schemas: { page: { id: {type: 'string'}, title: {type: 'string'}, body: {type: 'text'}, links: {type: 'link-list', textLabel: "A", linkLabel: "B"}, }, bread: { type: {type: 'string', id: true}, title: {type: 'string'}, description: {type: 'text'}, color: {type: 'enum', options: ["red","blue","green"]}, rating: {type: 'enum', options: { "e": "Everyone", "ec": "Early Childhood", "e10": "Everyone 10+", "t": "Teen", "m": "Mature", "ao": "Adults Only", "rp": "Rating Pending", }}, 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: { cert: path.join(__dirname, "./lib/okpush/test_certs/overlayer_dev_cert.pem"), key: path.join(__dirname, "./lib/okpush/test_certs/overlayer_dev_key.pem"), connection: { gateway: "gateway.sandbox.push.apple.com", } }, bundleId: "us.okfoc.overlayer", notifications: { // expiry (in seconds) // badge (int) // alert (message) // payload (raw json) hub: { alert: "The hub has been updated.", }, store: { alert: "The store is now open.", }, } }, }, 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);