var okcms = require('okcms') var isProduction = process.env.OK_PRODUCTION === 'true' var PORT = isProduction ? 6502 : 1337 var viewConfig = { template: 'index', data: [ {type: 'project', query: '*'}, {type: 'intro', query: 'introduction'}, ] } var app = okcms.createApp({ project: 'OKFocus Portfolio', debug: !isProduction, production: isProduction, schemas: { intro: { id: {type: 'string', hidden: true}, title: {type: 'string'}, body: {type: 'text'}, mobileBody: {type: 'text'}, accolades: {type: 'link-list'}, press: {type: 'link-list'}, speakers: {type: 'text'}, clients: {type: 'text'}, }, project: { id: {type: 'string', hidden: true}, title: {type: 'string'}, alternateTitle: {type: 'string'}, mobileTitle: {type: 'string'}, year: {type: 'number'}, client: {type: 'string'}, link: {type: 'string'}, linkText: {type: 'string'}, NatureOfWork: {type: 'text'}, brief: {type: 'text'}, media: {type: 'media-list'}, mobileMedia: {type: 'media-list'}, press: {type: 'link-list'}, audio: {type: 'string'}, whiteCursor: {type: 'flag'}, disabled: {type: 'flag'}, }, }, resources: [ { type: 'project' }, { type: 'intro' }, ], views: { '/': viewConfig, '/:id': viewConfig, }, services: { s3: { key: process.env.S3_KEY, secret: process.env.S3_SECRET, bucket: process.env.S3_BUCKET, dirname: "portfolio", 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: isProduction, secret: process.env.WEBHOOK_SECRET, command: '/home/okfocus/portfolio/build.sh', }, } }).listen(PORT || 1337) console.log('Server listening at port ' + (PORT || 1337) + '...');