diff --git a/public/src/modules/helpers.js b/public/src/modules/helpers.js index 74946b5f69..70fbeaabb0 100644 --- a/public/src/modules/helpers.js +++ b/public/src/modules/helpers.js @@ -17,10 +17,6 @@ var item = data.navigation[index], properties = item.properties; - if (!item.enabled) { - return false; - } - if (properties) { if (properties.loggedIn && !data.loggedIn || properties.adminOnly && !data.isAdmin || diff --git a/src/controllers/admin.js b/src/controllers/admin.js index 2f2d5cad52..f6902c77cf 100644 --- a/src/controllers/admin.js +++ b/src/controllers/admin.js @@ -246,7 +246,7 @@ adminController.sounds.get = function(req, res, next) { }; adminController.navigation.get = function(req, res, next) { - require('../navigation/admin').get(function(err, data) { + require('../navigation/admin').getAdmin(function(err, data) { if (err) { return next(err); } diff --git a/src/navigation/admin.js b/src/navigation/admin.js index 6ae28d179e..ac662c00ff 100644 --- a/src/navigation/admin.js +++ b/src/navigation/admin.js @@ -33,13 +33,21 @@ admin.save = function(data, callback) { ], callback); }; -admin.get = function(callback) { +admin.getAdmin = function(callback) { async.parallel({ - enabled: require('./index').get, + enabled: admin.get, available: getAvailable }, callback); }; +admin.get = function(callback) { + db.getSortedSetRange('navigation:enabled', 0, -1, function(err, data) { + callback(err, data.map(function(item, idx) { + return JSON.parse(item)[idx]; + })); + }); +}; + function getAvailable(callback) { var core = require('../../install/data/navigation.json').map(function(item) { item.core = true; diff --git a/src/navigation/index.js b/src/navigation/index.js index 2c1cbd7fb6..e84df70316 100644 --- a/src/navigation/index.js +++ b/src/navigation/index.js @@ -3,15 +3,29 @@ var navigation = {}, plugins = require('../plugins'), - db = require('../database'); + db = require('../database'), + admin = require('./admin'), + translator = require('../../public/src/translator'); navigation.get = function(callback) { - db.getSortedSetRange('navigation:enabled', 0, -1, function(err, data) { - callback(err, data.map(function(item, idx) { - return JSON.parse(item)[idx]; - })); - }); + admin.get(function(err, data) { + callback(err, data + .filter(function(item) { + return item.enabled; + }) + .map(function(item) { + console.log(item); + for (var i in item) { + if (item.hasOwnProperty(i)) { + console.log(item[i]); + item[i] = translator.unescape(item[i]); + } + } + + return item; + })); + }) };