diff --git a/loader.js b/loader.js index 2effb4ffa0..2ab9be2715 100644 --- a/loader.js +++ b/loader.js @@ -44,11 +44,18 @@ var nconf = require('nconf'), nconf.argv(); +// Start the daemon! if (nconf.get('d')) { // Check for a still-active NodeBB process if (fs.existsSync(pidFilePath)) { - console.log('\n Error: Another NodeBB is already running!'); - process.exit(); + try { + var pid = fs.readFileSync(pidFilePath, { encoding: 'utf-8' }); + process.kill(pid, 0); + console.log('\n Error: Another NodeBB is already running!'); + process.exit(); + } catch (e) { + fs.unlinkSync(pidFilePath); + } } // Initialise logging streams diff --git a/package.json b/package.json index b3e7350f72..083db7f7a0 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,7 @@ "rss": "~0.2.0", "prompt": "~0.2.11", "uglify-js": "~2.4.0", - "validator": "~3.2.1", + "validator": "^3.4.0", "cron": "~1.0.1", "semver": "~2.2.1", "string": "~1.7.0", diff --git a/public/src/forum/admin/categories.js b/public/src/forum/admin/categories.js index 2bcc541cd8..455bc17d79 100644 --- a/public/src/forum/admin/categories.js +++ b/public/src/forum/admin/categories.js @@ -303,7 +303,9 @@ define(['uploader'], function(uploader) { } var numResults = results.length, trEl, - resultObj; + resultObj; + + groupsResultsEl.empty(); for(var x = 0; x < numResults; x++) { resultObj = results[x]; diff --git a/public/src/forum/admin/groups.js b/public/src/forum/admin/groups.js index 970822fa73..811bc3c17b 100644 --- a/public/src/forum/admin/groups.js +++ b/public/src/forum/admin/groups.js @@ -24,9 +24,9 @@ define(function() { createSubmitBtn.on('click', function() { var submitObj = { - name: createNameEl.val(), - description: $('#create-group-desc').val() - }, + name: createNameEl.val(), + description: $('#create-group-desc').val() + }, errorEl = $('#create-modal-error'), errorText; @@ -91,8 +91,9 @@ define(function() { groupMembersEl.empty(); for (x = 0; x < numMembers; x++) { var memberIcon = $('
') + .attr('data-uid', groupObj.members[x].uid) .append($('