Detail and submit now uses redis as datastore

This commit is contained in:
soedar 2014-02-08 16:01:59 -08:00
Родитель 79bf240c7f
Коммит 9a47fa9d9d
3 изменённых файлов: 12 добавлений и 18 удалений

Просмотреть файл

@ -103,13 +103,13 @@ exports.publicGameObj = publicGameObj;
function getPublicGameObj(client, id, callback) {
// `callback` is called with a single parameter, which is either
// the public game object or `null`.
getGameById(client, id, function(err, resp) {
getGameFromID(client, id, function(err, resp) {
if (err || !resp) {
callback(null);
return;
}
try {
callback(publicGameObj(JSON.parse(resp)));
callback(null, publicGameObj(resp));
} catch(e) {
callback(null);
}

Просмотреть файл

@ -24,21 +24,13 @@ module.exports = function(server) {
return;
}
gamelib.getGameIDFromSlug(client, slug, function(err, id) {
if (err) {
gamelib.getGameFromSlug(client, slug, function(err, game) {
if (!game) {
res.json(500, {error: 'db_error'});
done();
return;
} else {
res.json(game);
}
gamelib.getPublicGameObj(client, id, function(game) {
if (!game) {
res.json(500, {error: 'db_error'});
} else {
res.json(game);
}
done();
});
done();
});
}));

Просмотреть файл

@ -1,5 +1,6 @@
var db = require('../../db');
var utils = require('../../lib/utils');
var gamelib = require('../../lib/game');
module.exports = function(server) {
@ -37,7 +38,7 @@ module.exports = function(server) {
isRequired: true
}
}
}, function(req, res) {
}, db.redisView(function(client, done, req, res, wrap) {
var POST = req.params;
slug = utils.slugify(POST.slug || POST.name);
var data = {
@ -66,7 +67,8 @@ module.exports = function(server) {
slug: slug,
videos: POST.videos
};
db.flatfile.write('game', slug, data);
gamelib.newGame(client, data);
res.json(data);
});
}));
};