mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-11-04 21:15:55 +01:00
closed #275, refactored configs to use new method "list", which returns error first
This commit is contained in:
28
src/meta.js
28
src/meta.js
@@ -2,30 +2,34 @@ var utils = require('./../public/src/utils.js'),
|
||||
RDB = require('./redis.js'),
|
||||
async = require('async'),
|
||||
path = require('path'),
|
||||
fs = require('fs');
|
||||
fs = require('fs'),
|
||||
winston = require('winston');
|
||||
|
||||
(function(Meta) {
|
||||
|
||||
Meta.configs = {
|
||||
init: function(callback) {
|
||||
Meta.configs.get(function(config) {
|
||||
Meta.config = config;
|
||||
callback();
|
||||
Meta.configs.list(function(err, config) {
|
||||
if (!err) {
|
||||
Meta.config = config;
|
||||
callback();
|
||||
} else winston.error(err);
|
||||
});
|
||||
},
|
||||
get: function(callback) {
|
||||
list: function(callback) {
|
||||
RDB.hgetall('config', function(err, config) {
|
||||
if (!err) {
|
||||
config = config || {};
|
||||
config.status = 'ok';
|
||||
callback(config);
|
||||
callback(err, config);
|
||||
} else {
|
||||
callback({
|
||||
status: 'error'
|
||||
});
|
||||
callback(new Error('could-not-read-config'));
|
||||
}
|
||||
});
|
||||
},
|
||||
get: function(field, callback) {
|
||||
RDB.hget('config', field, callback);
|
||||
},
|
||||
getFields: function(fields, callback) {
|
||||
RDB.hmgetObject('config', fields, callback);
|
||||
},
|
||||
@@ -35,6 +39,12 @@ var utils = require('./../public/src/utils.js'),
|
||||
callback(err, res);
|
||||
});
|
||||
},
|
||||
setOnEmpty: function(field, value, callback) {
|
||||
this.get(field, function(err, curValue) {
|
||||
if (!curValue) Meta.configs.set(field, value, callback);
|
||||
else callback();
|
||||
});
|
||||
},
|
||||
remove: function(field) {
|
||||
RDB.hdel('config', field);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user