mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-11-06 22:15:48 +01:00
Merge branch 'master' of github.com:designcreateplay/NodeBB
This commit is contained in:
@@ -5,7 +5,7 @@
|
|||||||
"indent_with_tabs": false,
|
"indent_with_tabs": false,
|
||||||
"preserve_newlines": true,
|
"preserve_newlines": true,
|
||||||
"max_preserve_newlines": 10,
|
"max_preserve_newlines": 10,
|
||||||
"jslint_happy": false,
|
"jslint_happy": true,
|
||||||
"brace_style": "collapse",
|
"brace_style": "collapse",
|
||||||
"keep_array_indentation": false,
|
"keep_array_indentation": false,
|
||||||
"keep_function_indentation": false,
|
"keep_function_indentation": false,
|
||||||
|
|||||||
@@ -24,7 +24,7 @@
|
|||||||
// "single" : require single quotes
|
// "single" : require single quotes
|
||||||
// "double" : require double quotes
|
// "double" : require double quotes
|
||||||
"undef" : true, // true: Require all non-global variables to be declared (prevents global leaks)
|
"undef" : true, // true: Require all non-global variables to be declared (prevents global leaks)
|
||||||
"unused" : true, // true: Require all defined variables be used
|
"unused" : false, // true: Require all defined variables be used TODO: Set this to true, update codebase.
|
||||||
"strict" : true, // true: Requires all functions run in ES5 Strict Mode
|
"strict" : true, // true: Requires all functions run in ES5 Strict Mode
|
||||||
"trailing" : false, // true: Prohibit trailing whitespaces
|
"trailing" : false, // true: Prohibit trailing whitespaces
|
||||||
"maxparams" : false, // {int} Max number of formal params allowed per function
|
"maxparams" : false, // {int} Max number of formal params allowed per function
|
||||||
|
|||||||
91
app.js
91
app.js
@@ -16,71 +16,71 @@
|
|||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// Configuration setup
|
(function() {
|
||||||
nconf = require('nconf');
|
"use strict";
|
||||||
nconf.argv().env();
|
|
||||||
|
|
||||||
var fs = require('fs'),
|
// Configuration setup
|
||||||
|
var nconf = require('nconf');
|
||||||
|
nconf.argv().env();
|
||||||
|
|
||||||
|
var fs = require('fs'),
|
||||||
winston = require('winston'),
|
winston = require('winston'),
|
||||||
pkg = require('./package.json'),
|
pkg = require('./package.json');
|
||||||
url = require('url');
|
|
||||||
|
|
||||||
// Runtime environment
|
// Runtime environment
|
||||||
global.env = process.env.NODE_ENV || 'production';
|
global.env = process.env.NODE_ENV || 'production';
|
||||||
|
|
||||||
|
winston.remove(winston.transports.Console);
|
||||||
|
winston.add(winston.transports.Console, {
|
||||||
winston.remove(winston.transports.Console);
|
|
||||||
winston.add(winston.transports.Console, {
|
|
||||||
colorize: true
|
colorize: true
|
||||||
});
|
});
|
||||||
|
|
||||||
winston.add(winston.transports.File, {
|
winston.add(winston.transports.File, {
|
||||||
filename: 'error.log',
|
filename: 'error.log',
|
||||||
level: 'error'
|
level: 'error'
|
||||||
});
|
});
|
||||||
|
|
||||||
// TODO: remove once https://github.com/flatiron/winston/issues/280 is fixed
|
// TODO: remove once https://github.com/flatiron/winston/issues/280 is fixed
|
||||||
winston.err = function(err) {
|
winston.err = function(err) {
|
||||||
winston.error(err.stack);
|
winston.error(err.stack);
|
||||||
};
|
};
|
||||||
|
|
||||||
// Log GNU copyright info along with server info
|
// Log GNU copyright info along with server info
|
||||||
winston.info('NodeBB v' + pkg.version + ' Copyright (C) 2013 DesignCreatePlay Inc.');
|
winston.info('NodeBB v' + pkg.version + ' Copyright (C) 2013 DesignCreatePlay Inc.');
|
||||||
winston.info('This program comes with ABSOLUTELY NO WARRANTY.');
|
winston.info('This program comes with ABSOLUTELY NO WARRANTY.');
|
||||||
winston.info('This is free software, and you are welcome to redistribute it under certain conditions.');
|
winston.info('This is free software, and you are welcome to redistribute it under certain conditions.');
|
||||||
winston.info('');
|
winston.info('');
|
||||||
|
|
||||||
if (fs.existsSync(__dirname + '/config.json') && (!nconf.get('setup') && !nconf.get('upgrade'))) {
|
var meta = require('./src/meta.js');
|
||||||
|
|
||||||
|
if (fs.existsSync(__dirname + '/config.json') && (!nconf.get('setup') && !nconf.get('upgrade'))) {
|
||||||
// Load server-side config
|
// Load server-side config
|
||||||
nconf.file({
|
nconf.file({
|
||||||
file: __dirname + '/config.json'
|
file: __dirname + '/config.json'
|
||||||
});
|
});
|
||||||
|
|
||||||
var meta = require('./src/meta.js');
|
|
||||||
|
|
||||||
nconf.set('url', nconf.get('base_url') + (nconf.get('use_port') ? ':' + nconf.get('port') : '') + nconf.get('relative_path') + '/');
|
nconf.set('url', nconf.get('base_url') + (nconf.get('use_port') ? ':' + nconf.get('port') : '') + nconf.get('relative_path') + '/');
|
||||||
nconf.set('upload_url', nconf.get('url') + 'uploads/');
|
nconf.set('upload_url', nconf.get('url') + 'uploads/');
|
||||||
|
|
||||||
winston.info('Initializing NodeBB v' + pkg.version + ', on port ' + nconf.get('port') + ', using Redis store at ' + nconf.get('redis:host') + ':' + nconf.get('redis:port') + '.');
|
winston.info('Initializing NodeBB v' + pkg.version + ', on port ' + nconf.get('port') + ', using Redis store at ' + nconf.get('redis:host') + ':' + nconf.get('redis:port') + '.');
|
||||||
if (process.env.NODE_ENV === 'development') winston.info('Base Configuration OK.');
|
|
||||||
|
if (process.env.NODE_ENV === 'development') {
|
||||||
|
winston.info('Base Configuration OK.');
|
||||||
|
}
|
||||||
|
|
||||||
meta.configs.init(function() {
|
meta.configs.init(function() {
|
||||||
// Initial setup for Redis & Reds
|
// Initial setup for Redis & Reds
|
||||||
var reds = require('reds');
|
var reds = require('reds'),
|
||||||
RDB = require('./src/redis.js');
|
RDB = require('./src/redis.js');
|
||||||
|
|
||||||
reds.createClient = function() {
|
reds.createClient = function() {
|
||||||
return reds.client || (reds.client = RDB);
|
return reds.client || (reds.client = RDB);
|
||||||
}
|
};
|
||||||
|
|
||||||
var categories = require('./src/categories.js'),
|
var templates = require('./public/src/templates.js'),
|
||||||
templates = require('./public/src/templates.js'),
|
|
||||||
webserver = require('./src/webserver.js'),
|
webserver = require('./src/webserver.js'),
|
||||||
websockets = require('./src/websockets.js'),
|
websockets = require('./src/websockets.js'),
|
||||||
plugins = require('./src/plugins'), // Don't remove this - plugins initializes itself
|
plugins = require('./src/plugins'); // Don't remove this - plugins initializes itself
|
||||||
admin = {
|
|
||||||
'categories': require('./src/admin/categories.js')
|
|
||||||
};
|
|
||||||
|
|
||||||
global.templates = {};
|
global.templates = {};
|
||||||
templates.init([
|
templates.init([
|
||||||
@@ -94,24 +94,24 @@ if (fs.existsSync(__dirname + '/config.json') && (!nconf.get('setup') && !nconf.
|
|||||||
templates.ready(webserver.init);
|
templates.ready(webserver.init);
|
||||||
});
|
});
|
||||||
|
|
||||||
} else if (nconf.get('upgrade')) {
|
} else if (nconf.get('upgrade')) {
|
||||||
nconf.file({
|
nconf.file({
|
||||||
file: __dirname + '/config.json'
|
file: __dirname + '/config.json'
|
||||||
});
|
});
|
||||||
var meta = require('./src/meta.js');
|
|
||||||
|
|
||||||
meta.configs.init(function() {
|
meta.configs.init(function() {
|
||||||
require('./src/upgrade').upgrade();
|
require('./src/upgrade').upgrade();
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
// New install, ask setup questions
|
// New install, ask setup questions
|
||||||
if (nconf.get('setup')) winston.info('NodeBB Setup Triggered via Command Line');
|
if (nconf.get('setup')) {
|
||||||
else winston.warn('Configuration not found, starting NodeBB setup');
|
winston.info('NodeBB Setup Triggered via Command Line');
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
winston.warn('Configuration not found, starting NodeBB setup');
|
||||||
|
}
|
||||||
|
|
||||||
var install = require('./src/install'),
|
var install = require('./src/install');
|
||||||
meta = {
|
|
||||||
config: {}
|
|
||||||
};
|
|
||||||
|
|
||||||
winston.info('Welcome to NodeBB!');
|
winston.info('Welcome to NodeBB!');
|
||||||
winston.info('This looks like a new installation, so you\'ll have to answer a few questions about your environment before we can proceed.');
|
winston.info('This looks like a new installation, so you\'ll have to answer a few questions about your environment before we can proceed.');
|
||||||
@@ -126,4 +126,5 @@ if (fs.existsSync(__dirname + '/config.json') && (!nconf.get('setup') && !nconf.
|
|||||||
|
|
||||||
process.exit();
|
process.exit();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
}());
|
||||||
@@ -10,7 +10,7 @@
|
|||||||
},
|
},
|
||||||
"main": "app.js",
|
"main": "app.js",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"socket.io": "~0.9.14",
|
"socket.io": "~0.9.16",
|
||||||
"redis": "0.8.3",
|
"redis": "0.8.3",
|
||||||
"express": "3.2.0",
|
"express": "3.2.0",
|
||||||
"express-namespace": "0.1.1",
|
"express-namespace": "0.1.1",
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
<div class="well">
|
<div class="well users">
|
||||||
|
|
||||||
<div class="account-username-box" data-userslug="{userslug}">
|
<div class="account-username-box" data-userslug="{userslug}">
|
||||||
<span class="account-username">
|
<span class="account-username">
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
<div class="well">
|
<div class="well users">
|
||||||
|
|
||||||
<div class="account-username-box" data-userslug="{userslug}">
|
<div class="account-username-box" data-userslug="{userslug}">
|
||||||
<span class="account-username">
|
<span class="account-username">
|
||||||
|
|||||||
@@ -4,14 +4,17 @@ var RDB = require('./redis.js'),
|
|||||||
user = require('./user.js'),
|
user = require('./user.js'),
|
||||||
async = require('async'),
|
async = require('async'),
|
||||||
topics = require('./topics.js'),
|
topics = require('./topics.js'),
|
||||||
winston = require('winston');
|
winston = require('winston'),
|
||||||
|
nconf = require('nconf');
|
||||||
|
|
||||||
(function(Categories) {
|
(function(Categories) {
|
||||||
|
"use strict";
|
||||||
|
|
||||||
Categories.create = function(data, callback) {
|
Categories.create = function(data, callback) {
|
||||||
RDB.incr('global:next_category_id', function(err, cid) {
|
RDB.incr('global:next_category_id', function(err, cid) {
|
||||||
if (err)
|
if (err) {
|
||||||
return callback(err, null);
|
return callback(err, null);
|
||||||
|
}
|
||||||
|
|
||||||
var slug = cid + '/' + utils.slugify(data.name);
|
var slug = cid + '/' + utils.slugify(data.name);
|
||||||
RDB.rpush('categories:cid', cid);
|
RDB.rpush('categories:cid', cid);
|
||||||
@@ -35,9 +38,10 @@ var RDB = require('./redis.js'),
|
|||||||
};
|
};
|
||||||
|
|
||||||
Categories.getCategoryById = function(category_id, current_user, callback) {
|
Categories.getCategoryById = function(category_id, current_user, callback) {
|
||||||
|
|
||||||
Categories.getCategoryData(category_id, function(err, categoryData) {
|
Categories.getCategoryData(category_id, function(err, categoryData) {
|
||||||
if (err) return callback(err);
|
if (err) {
|
||||||
|
return callback(err);
|
||||||
|
}
|
||||||
|
|
||||||
var category_name = categoryData.name,
|
var category_name = categoryData.name,
|
||||||
category_slug = categoryData.slug,
|
category_slug = categoryData.slug,
|
||||||
@@ -284,8 +288,11 @@ var RDB = require('./redis.js'),
|
|||||||
|
|
||||||
Categories.getCategoryData = function(cid, callback) {
|
Categories.getCategoryData = function(cid, callback) {
|
||||||
RDB.exists('category:' + cid, function(err, exists) {
|
RDB.exists('category:' + cid, function(err, exists) {
|
||||||
if (exists) RDB.hgetall('category:' + cid, callback);
|
if (exists) {
|
||||||
else callback(new Error('No category found!'));
|
RDB.hgetall('category:' + cid, callback);
|
||||||
|
} else {
|
||||||
|
callback(new Error('No category found!'));
|
||||||
|
}
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -295,10 +302,11 @@ var RDB = require('./redis.js'),
|
|||||||
|
|
||||||
Categories.getCategoryFields = function(cid, fields, callback) {
|
Categories.getCategoryFields = function(cid, fields, callback) {
|
||||||
RDB.hmgetObject('category:' + cid, fields, function(err, data) {
|
RDB.hmgetObject('category:' + cid, fields, function(err, data) {
|
||||||
if (err === null)
|
if (err === null) {
|
||||||
callback(data);
|
callback(data);
|
||||||
else
|
} else {
|
||||||
winston.err(err);
|
winston.err(err);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -329,7 +337,7 @@ var RDB = require('./redis.js'),
|
|||||||
}
|
}
|
||||||
|
|
||||||
Categories.hasReadCategory(cid, current_user, function(hasRead) {
|
Categories.hasReadCategory(cid, current_user, function(hasRead) {
|
||||||
categoryData['badgeclass'] = (parseInt(categoryData.topic_count, 10) === 0 || (hasRead && current_user != 0)) ? '' : 'badge-important';
|
categoryData.badgeclass = (parseInt(categoryData.topic_count, 10) === 0 || (hasRead && current_user !== 0)) ? '' : 'badge-important';
|
||||||
|
|
||||||
categories.push(categoryData);
|
categories.push(categoryData);
|
||||||
callback(null);
|
callback(null);
|
||||||
@@ -354,15 +362,17 @@ var RDB = require('./redis.js'),
|
|||||||
Categories.isUserActiveIn = function(cid, uid, callback) {
|
Categories.isUserActiveIn = function(cid, uid, callback) {
|
||||||
|
|
||||||
RDB.lrange('uid:' + uid + ':posts', 0, -1, function(err, pids) {
|
RDB.lrange('uid:' + uid + ':posts', 0, -1, function(err, pids) {
|
||||||
if (err)
|
if (err) {
|
||||||
return callback(err, null);
|
return callback(err, null);
|
||||||
|
}
|
||||||
|
|
||||||
function getPostCategory(pid, callback) {
|
function getPostCategory(pid, callback) {
|
||||||
posts.getPostField(pid, 'tid', function(tid) {
|
posts.getPostField(pid, 'tid', function(tid) {
|
||||||
|
|
||||||
topics.getTopicField(tid, 'cid', function(err, postCid) {
|
topics.getTopicField(tid, 'cid', function(err, postCid) {
|
||||||
if (err)
|
if (err) {
|
||||||
return callback(err, null);
|
return callback(err, null);
|
||||||
|
}
|
||||||
|
|
||||||
return callback(null, postCid);
|
return callback(null, postCid);
|
||||||
});
|
});
|
||||||
@@ -378,17 +388,23 @@ var RDB = require('./redis.js'),
|
|||||||
},
|
},
|
||||||
function(callback) {
|
function(callback) {
|
||||||
getPostCategory(pids[index], function(err, postCid) {
|
getPostCategory(pids[index], function(err, postCid) {
|
||||||
if (err)
|
if (err) {
|
||||||
return callback(err);
|
return callback(err);
|
||||||
if (postCid === cid)
|
}
|
||||||
|
|
||||||
|
if (postCid === cid) {
|
||||||
active = true;
|
active = true;
|
||||||
|
}
|
||||||
|
|
||||||
++index;
|
++index;
|
||||||
callback(null);
|
callback(null);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
function(err) {
|
function(err) {
|
||||||
if (err)
|
if (err) {
|
||||||
return callback(err, null);
|
return callback(err, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
callback(null, active);
|
callback(null, active);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,7 +6,8 @@
|
|||||||
fs = require('fs'),
|
fs = require('fs'),
|
||||||
rss = require('rss'),
|
rss = require('rss'),
|
||||||
winston = require('winston'),
|
winston = require('winston'),
|
||||||
path = require('path');
|
path = require('path'),
|
||||||
|
nconf = require('nconf');
|
||||||
|
|
||||||
Feed.defaults = {
|
Feed.defaults = {
|
||||||
ttl: 60,
|
ttl: 60,
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ var async = require('async'),
|
|||||||
prompt = require('prompt'),
|
prompt = require('prompt'),
|
||||||
winston = require('winston'),
|
winston = require('winston'),
|
||||||
reds = require('reds'),
|
reds = require('reds'),
|
||||||
|
nconf = require('nconf');
|
||||||
|
|
||||||
install = {
|
install = {
|
||||||
questions: [{
|
questions: [{
|
||||||
|
|||||||
@@ -3,7 +3,8 @@ var utils = require('./../public/src/utils.js'),
|
|||||||
async = require('async'),
|
async = require('async'),
|
||||||
path = require('path'),
|
path = require('path'),
|
||||||
fs = require('fs'),
|
fs = require('fs'),
|
||||||
winston = require('winston');
|
winston = require('winston'),
|
||||||
|
nconf = require('nconf');
|
||||||
|
|
||||||
(function(Meta) {
|
(function(Meta) {
|
||||||
|
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ var RDB = require('./redis.js'),
|
|||||||
threadTools = require('./threadTools.js'),
|
threadTools = require('./threadTools.js'),
|
||||||
user = require('./user.js'),
|
user = require('./user.js'),
|
||||||
async = require('async'),
|
async = require('async'),
|
||||||
|
nconf = require('nconf'),
|
||||||
|
|
||||||
utils = require('../public/src/utils'),
|
utils = require('../public/src/utils'),
|
||||||
plugins = require('./plugins'),
|
plugins = require('./plugins'),
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
(function(RedisDB) {
|
(function(RedisDB) {
|
||||||
var redis = require('redis'),
|
var redis = require('redis'),
|
||||||
utils = require('./../public/src/utils.js'),
|
utils = require('./../public/src/utils.js'),
|
||||||
winston = require('winston');
|
winston = require('winston'),
|
||||||
|
nconf = require('nconf');
|
||||||
|
|
||||||
RedisDB.exports = redis.createClient(nconf.get('redis:port'), nconf.get('redis:host'));
|
RedisDB.exports = redis.createClient(nconf.get('redis:port'), nconf.get('redis:host'));
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,8 @@ var user = require('./../user.js'),
|
|||||||
pkg = require('./../../package.json'),
|
pkg = require('./../../package.json'),
|
||||||
categories = require('./../categories.js'),
|
categories = require('./../categories.js'),
|
||||||
plugins = require('../plugins'),
|
plugins = require('../plugins'),
|
||||||
winston = require('winston');
|
winston = require('winston'),
|
||||||
|
nconf = require('nconf');
|
||||||
|
|
||||||
(function(Admin) {
|
(function(Admin) {
|
||||||
Admin.isAdmin = function(req, res, next) {
|
Admin.isAdmin = function(req, res, next) {
|
||||||
|
|||||||
@@ -5,7 +5,8 @@ var user = require('./../user.js'),
|
|||||||
utils = require('./../../public/src/utils.js'),
|
utils = require('./../../public/src/utils.js'),
|
||||||
pkg = require('../../package.json'),
|
pkg = require('../../package.json'),
|
||||||
meta = require('./../meta.js'),
|
meta = require('./../meta.js'),
|
||||||
path = require('path');
|
path = require('path'),
|
||||||
|
nconf = require('nconf');
|
||||||
|
|
||||||
|
|
||||||
(function(Api) {
|
(function(Api) {
|
||||||
|
|||||||
@@ -4,7 +4,8 @@ var user = require('./../user.js'),
|
|||||||
fs = require('fs'),
|
fs = require('fs'),
|
||||||
utils = require('./../../public/src/utils.js'),
|
utils = require('./../../public/src/utils.js'),
|
||||||
path = require('path'),
|
path = require('path'),
|
||||||
winston = require('winston');
|
winston = require('winston'),
|
||||||
|
nconf = require('nconf');
|
||||||
|
|
||||||
(function(User) {
|
(function(User) {
|
||||||
User.create_routes = function(app) {
|
User.create_routes = function(app) {
|
||||||
@@ -157,7 +158,7 @@ var user = require('./../user.js'),
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
var absolutePath = path.join(process.cwd(), global.nconf.get('upload_path'), path.basename(oldpicture));
|
var absolutePath = path.join(process.cwd(), nconf.get('upload_path'), path.basename(oldpicture));
|
||||||
|
|
||||||
fs.unlink(absolutePath, function(err) {
|
fs.unlink(absolutePath, function(err) {
|
||||||
if (err) {
|
if (err) {
|
||||||
@@ -178,7 +179,7 @@ var user = require('./../user.js'),
|
|||||||
}
|
}
|
||||||
|
|
||||||
var filename = uid + '-profileimg' + extension;
|
var filename = uid + '-profileimg' + extension;
|
||||||
var uploadPath = path.join(process.cwd(), global.nconf.get('upload_path'), filename);
|
var uploadPath = path.join(process.cwd(), nconf.get('upload_path'), filename);
|
||||||
|
|
||||||
winston.info('Attempting upload to: ' + uploadPath);
|
winston.info('Attempting upload to: ' + uploadPath);
|
||||||
|
|
||||||
@@ -188,7 +189,7 @@ var user = require('./../user.js'),
|
|||||||
is.on('end', function() {
|
is.on('end', function() {
|
||||||
fs.unlinkSync(tempPath);
|
fs.unlinkSync(tempPath);
|
||||||
|
|
||||||
var imageUrl = global.nconf.get('upload_url') + filename;
|
var imageUrl = nconf.get('upload_url') + filename;
|
||||||
|
|
||||||
user.setUserField(uid, 'uploadedpicture', imageUrl);
|
user.setUserField(uid, 'uploadedpicture', imageUrl);
|
||||||
user.setUserField(uid, 'picture', imageUrl);
|
user.setUserField(uid, 'picture', imageUrl);
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ var path = require('path'),
|
|||||||
async = require('async'),
|
async = require('async'),
|
||||||
sm = require('sitemap'),
|
sm = require('sitemap'),
|
||||||
url = require('url'),
|
url = require('url'),
|
||||||
|
nconf = require('nconf'),
|
||||||
categories = require('./categories'),
|
categories = require('./categories'),
|
||||||
topics = require('./topics'),
|
topics = require('./topics'),
|
||||||
sitemap = {
|
sitemap = {
|
||||||
|
|||||||
@@ -8,7 +8,8 @@ var RDB = require('./redis.js'),
|
|||||||
reds = require('reds'),
|
reds = require('reds'),
|
||||||
topicSearch = reds.createSearch('nodebbtopicsearch'),
|
topicSearch = reds.createSearch('nodebbtopicsearch'),
|
||||||
winston = require('winston'),
|
winston = require('winston'),
|
||||||
meta = require('./meta');
|
meta = require('./meta'),
|
||||||
|
nconf = require('nconf');
|
||||||
|
|
||||||
(function(ThreadTools) {
|
(function(ThreadTools) {
|
||||||
|
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ var utils = require('./../public/src/utils.js'),
|
|||||||
notifications = require('./notifications.js'),
|
notifications = require('./notifications.js'),
|
||||||
topics = require('./topics.js'),
|
topics = require('./topics.js'),
|
||||||
async = require('async'),
|
async = require('async'),
|
||||||
|
nconf = require('nconf'),
|
||||||
userSearch = require('reds').createSearch('nodebbusersearch');
|
userSearch = require('reds').createSearch('nodebbusersearch');
|
||||||
|
|
||||||
(function(User) {
|
(function(User) {
|
||||||
|
|||||||
@@ -21,7 +21,8 @@ var express = require('express'),
|
|||||||
auth = require('./routes/authentication.js'),
|
auth = require('./routes/authentication.js'),
|
||||||
meta = require('./meta.js'),
|
meta = require('./meta.js'),
|
||||||
feed = require('./feed'),
|
feed = require('./feed'),
|
||||||
plugins = require('./plugins');
|
plugins = require('./plugins'),
|
||||||
|
nconf = require('nconf');
|
||||||
|
|
||||||
(function(app) {
|
(function(app) {
|
||||||
var templates = null;
|
var templates = null;
|
||||||
@@ -116,6 +117,7 @@ var express = require('express'),
|
|||||||
|
|
||||||
module.exports.init = function() {
|
module.exports.init = function() {
|
||||||
templates = global.templates;
|
templates = global.templates;
|
||||||
|
server.listen(nconf.get('PORT') || nconf.get('port'));
|
||||||
}
|
}
|
||||||
|
|
||||||
auth.initialize(app);
|
auth.initialize(app);
|
||||||
@@ -517,5 +519,5 @@ var express = require('express'),
|
|||||||
|
|
||||||
}(WebServer));
|
}(WebServer));
|
||||||
|
|
||||||
server.listen(nconf.get('PORT') || nconf.get('port'));
|
|
||||||
global.server = server;
|
global.server = server;
|
||||||
Reference in New Issue
Block a user