diff --git a/app/controllers/status.js b/app/controllers/status.js index eb2f1ae..22970a9 100644 --- a/app/controllers/status.js +++ b/app/controllers/status.js @@ -10,48 +10,39 @@ var Status = require('../models/Status'); * Status */ exports.show = function(req, res, next) { - + if (! req.query.q) { res.status(400).send('Bad Request'); } else { - var s = req.query.q; - var d = Status.new(); - - if (s === 'getInfo') { - d.getInfo(function(err) { - if (err) next(err); - res.jsonp(d); - }); - } - else if (s === 'getDifficulty') { - d.getDifficulty(function(err) { - if (err) next(err); - res.jsonp(d); - }); - } - else if (s === 'getTxOutSetInfo') { - d.getTxOutSetInfo(function(err) { - if (err) next(err); - res.jsonp(d); - }); - } - else if (s === 'getBestBlockHash') { - d.getBestBlockHash(function(err) { - if (err) next(err); - res.jsonp(d); - }); - } - else if (s === 'getLastBlockHash') { - d.getLastBlockHash(function(err) { - if (err) next(err); - res.jsonp(d); - }); - } + var option = req.query.q; + var statusObject = Status.new(); - else { - res.status(400).send('Bad Request'); + var returnJsonp = function (err) { + if(err) return next(err); + res.jsonp(statusObject); + }; + + switch(option) { + case 'getInfo': + statusObject.getInfo(returnJsonp); + break; + case 'getDifficulty': + statusObject.getDifficulty(returnJsonp); + break; + case 'getTxOutSetInfo': + statusObject.getTxOutSetInfo(returnJsonp); + break; + case 'getBestBlockHash': + statusObject.getBestBlockHash(returnJsonp); + break; + case 'getLastBlockHash': + statusObject.getLastBlockHash(returnJsonp); + break; + default: + res.status(400).send('Bad Request'); } } }; +