nodebb/src/routes/debug.js

365 lines
8.6 KiB
JavaScript

var user = require('./../user'),
categories = require('./../categories'),
topics = require('./../topics'),
posts = require('./../posts');
var DebugRoute = function(app) {
app.namespace('/debug', function() {
app.get('/uid/:uid', function (req, res) {
if (!req.params.uid)
return res.redirect('/404');
user.getUserData(req.params.uid, function (err, data) {
if (data) {
res.send(data);
} else {
res.json(404, {
error: "User doesn't exist!"
});
}
});
});
app.get('/cid/:cid', function (req, res) {
categories.getCategoryData(req.params.cid, function (err, data) {
if (data) {
res.send(data);
} else {
res.send(404, "Category doesn't exist!");
}
});
});
app.get('/tid/:tid', function (req, res) {
topics.getTopicData(req.params.tid, function (err, data) {
if (data) {
res.send(data);
} else {
res.send(404, "Topic doesn't exist!");
}
});
});
app.get('/pid/:pid', function (req, res) {
posts.getPostData(req.params.pid, function (err, data) {
if (data) {
res.send(data);
} else {
res.send(404, "Post doesn't exist!");
}
});
});
app.get('/groups/prune', function(req, res) {
var Groups = require('../groups');
Groups.prune(function(err) {
res.send('pruned');
});
});
app.get('/reindex', function (req, res) {
topics.reIndexAll(function (err) {
if (err) {
return res.json(err);
}
user.reIndexAll(function (err) {
if (err) {
return res.json(err);
} else {
res.send('Topics and users reindexed');
}
});
});
});
app.get('/mongo', function(req, res) {
var db = require('./../database');
var objectKey = 'testing4';
function createUser(callback) {
user.create('baris','123456', 'barisusakli@gmail.com', callback);
}
function getUser(callback) {
user.getUserData(1, callback);
}
function setObject(callback) {
db.setObject(objectKey, {name:'baris', 'lastname':'usakli', age:3}, function(err, result) {
console.log('setObject return ', result);
callback(err, {'setObject':result});
});
}
function getObject(callback) {
db.getObject(objectKey, function(err, data) {
console.log('getObject return ', data);
callback(err, {'getObject':data});
});
}
function getObjects(callback) {
db.getObjects(['testing1', 'testing2', 'retardation', 'user:1'], function(err, data) {
console.log('getObjects return ', data);
callback(err, {'getObjects':data});
});
}
function setObjectField(callback) {
db.setObjectField(objectKey, 'reputation', 5, function(err, result) {
console.log('setObjectField return', result);
callback(err, {'setObjectField': result});
});
}
function getObjectField(callback) {
db.getObjectField(objectKey, 'age', function(err, age) {
console.log('getObjectField return', age);
callback(err, {'getObjectField' : age});
});
}
function getObjectFields(callback) {
db.getObjectFields(objectKey, ['name', 'lastname'], function(err, data) {
console.log('getObjectFields return', data);
callback(err, {'getObjectFields':data});
});
}
function getObjectValues(callback) {
db.getObjectValues(objectKey, function(err, data) {
console.log('getObjectValues return', data);
callback(err, {'getObjectValues':data});
});
}
function isObjectField(callback) {
db.isObjectField(objectKey, 'age', function(err, data) {
console.log('isObjectField return', data);
callback(err, {'isObjectField':data});
});
}
function deleteObjectField(callback) {
db.deleteObjectField(objectKey, 'reputation', function(err, data) {
console.log('deleteObjectField return', data);
callback(err, {'deleteObjectField':data});
});
}
function incrObjectFieldBy(callback) {
db.incrObjectFieldBy(objectKey, 'age', 3, function(err, data) {
console.log('incrObjectFieldBy return', data);
callback(err, {'incrObjectFieldBy':data});
});
}
function sortedSetAdd(callback) {
db.sortedSetAdd('sortedSet2', 1, 12, function(err, data) {
console.log('sortedSetAdd return', data);
callback(err, {'sortedSetAdd': data});
});
}
function sortedSetRemove(callback) {
db.sortedSetRemove('sortedSet2', 12, function(err, data) {
console.log('sortedSetRemove return', data);
callback(err, {'sortedSetRemove': data});
});
}
function getSortedSetRange(callback) {
db.getSortedSetRevRange('sortedSet2', 0, -1, function(err, data) {
console.log('getSortedSetRange return', data);
callback(err, {'getSortedSetRange': data});
});
/*var args = ['sortedSet2', '+inf', 100, 'LIMIT', 0, 10];
db.getSortedSetRevRangeByScore(args, function(err, data) {
console.log('getSortedSetRevRangeByScore return', data);
callback(err, {'getSortedSetRevRangeByScore': data});
});*/
}
function listAppend(callback) {
db.listAppend('myList5', 5, function(err, data) {
console.log('listAppend return', data);
callback(err, {'listAppend': data});
});
}
function listPrepend(callback) {
db.listPrepend('myList5', 4, function(err, data) {
console.log('listPrepend return', data);
callback(err, {'listPrepend': data});
});
}
function listRemoveLast(callback) {
db.listRemoveLast('myList5', function(err, data) {
console.log('listRemoveLast return', data);
callback(err, {'listRemoveLast': data});
});
}
function getListRange(callback) {
db.getListRange('myList5', 0, -1, function(err, data) {
console.log('getListRange return', data);
callback(err, {'getListRange': data});
});
}
function get(callback) {
db.get('testingStr', function(err, data) {
console.log('get return', data);
callback(err, {'get': data});
});
}
function set(callback) {
db.set('testingStr', 'opppa gangastayla', function(err, data) {
console.log('set return', data);
callback(err, {'set': data});
});
}
function deleteKey(callback) {
db.delete('testingStr', function(err, data) {
console.log('delete return', data);
callback(err, {'delete': data});
});
}
function exists(callback) {
db.exists('testingStr', function(err, data) {
console.log('exists return', data);
callback(err, {'exists': data});
});
}
function setAdd(callback) {
db.setAdd('myTestSet', 5, function(err, data) {
console.log('setAdd return', data);
callback(err, {'setAdd': data});
});
}
function setRemove(callback) {
db.setRemove('myTestSet', 11, function(err, data) {
console.log('setRemove return', data);
callback(err, {'setRemove': data});
});
}
function getSetMembers(callback) {
db.getSetMembers('myTestSet', function(err, data) {
console.log('getSetMembers return', data);
callback(err, {'getSetMembers': data});
});
}
function isSetMember(callback) {
db.isSetMember('myTestSet', 5, function(err, data) {
console.log('isSetMember return', data);
callback(err, {'isSetMember': data});
});
}
function isMemberOfSets(callback) {
db.isMemberOfSets(['doesntexist', 'myTestSet', 'nonexistingSet'], 5, function(err, data) {
console.log('isMemberOfSets return', data);
callback(err, {'isMemberOfSets': data});
});
}
function setRemoveRandom(callback) {
db.setRemoveRandom('myTestSet', function(err, data) {
console.log('setRemoveRandom return', data);
callback(err, {'setRemoveRandom': data});
});
}
var objectTasks = [
//createUser,
getUser,
setObject,
getObject,
deleteObjectField,
getObject,
setObjectField,
getObject,
deleteObjectField,
getObject,
getObjectField,
getObjectFields,
getObjectValues,
isObjectField,
incrObjectFieldBy,
getObject,
getObjects
];
var sortedSetTasks = [
//sortedSetAdd,
getSortedSetRange,
sortedSetAdd,
getSortedSetRange,
sortedSetRemove,
getSortedSetRange,
];
var listTasks = [
//listAppend,
//listPrepend,
getListRange,
listRemoveLast,
getListRange
];
var keyTasks = [
get,
set,
get,
exists,
deleteKey,
deleteKey,
get,
exists
];
var setTasks = [
getSetMembers,
setAdd,
getSetMembers,
isSetMember,
getSetMembers,
isMemberOfSets
];
require('async').series(objectTasks, function(err, results) {
if(err) {
console.log(err);
res.send(err.message);
} else {
res.json(results);
}
});
});
});
};
module.exports = DebugRoute;