diff options
Diffstat (limited to 'server')
| -rw-r--r-- | server/index.js | 5 | ||||
| -rw-r--r-- | server/lib/api/media.js | 46 | ||||
| -rw-r--r-- | server/lib/schemas/Media.js | 5 |
3 files changed, 36 insertions, 20 deletions
diff --git a/server/index.js b/server/index.js index 005b0cd..d55d182 100644 --- a/server/index.js +++ b/server/index.js @@ -124,6 +124,11 @@ site.route = function () { app.post('/api/projects/new', middleware.ensureAuthenticated, api.projects.create) app.post('/api/projects/edit', middleware.ensureAuthenticated, api.projects.update) app.delete('/api/projects/destroy', middleware.ensureAuthenticated, api.projects.destroy) + + app.get('/api/media/user', middleware.ensureAuthenticated, api.media.user) + app.post('/api/media/new', middleware.ensureAuthenticated, api.media.create) + app.post('/api/media/upload', middleware.ensureAuthenticated, api.media.upload) + } diff --git a/server/lib/api/media.js b/server/lib/api/media.js index 089e327..9898727 100644 --- a/server/lib/api/media.js +++ b/server/lib/api/media.js @@ -14,30 +14,38 @@ var media = { }) }, + create: function(req, res){ + var data = util.cleanQuery(req.body) + data.user_id = req.user._id + data.created_at = new Date () + + new Media(data).save(function(err, rec){ + if (err || ! rec) { return res.json({ error: err }) } + return res.json(rec) + }) + }, + upload: function(req, res){ var data = util.cleanQuery(req.body) - data.updated_at = new Date () + data.user_id = req.user._id + data.created_at = new Date () + data.type = "image" - if (req.files.avatar) { - upload.put("avatars", req.files.avatar, { - unacceptable: function(err){ - res.json({ error: { errors: { avatar: { message: "Problem saving avatar: " + err } } } }) - }, - success: function(url){ - data.photo = url - done() - } - }) - } - else { - done() - } + upload.put("media", req.files.image, { + unacceptable: function(err){ + res.json({ error: { errors: { avatar: { message: "Problem saving image: " + err } } } }) + }, + success: function(url){ + data.url = url + done() + } + }) function done () { - _.extend( req.user, data ) - req.user.save(function(err, msg) { - err ? res.json({ status: "FAIL", error: err }) - : res.json({ status: "OK", payload: req.user }) + console.log(data) + new Media(data).save(function(err, rec) { + if (err || ! rec) { return res.json({ error: err }) } + res.json(rec) }) } } diff --git a/server/lib/schemas/Media.js b/server/lib/schemas/Media.js index a5d0c78..127b222 100644 --- a/server/lib/schemas/Media.js +++ b/server/lib/schemas/Media.js @@ -13,13 +13,16 @@ var MediaSchema = new mongoose.Schema({ type: String, required: true, }, + token: { + type: String, + default: "" + }, thumbnail: { type: String, default: "" }, user_id: { type: mongoose.Schema.ObjectId, index: true }, created_at: { type: Date }, - updated_at: { type: Date }, }); module.exports = exports = mongoose.model('media', MediaSchema) |
