diff --git a/just-clients-layer.nodejs/just.extremeprog.js b/just-clients-layer.nodejs/just.extremeprog.js index 9538852..032b9bb 100644 --- a/just-clients-layer.nodejs/just.extremeprog.js +++ b/just-clients-layer.nodejs/just.extremeprog.js @@ -64,20 +64,13 @@ var just = (function() { } })) }, function(err, res, body) { - - if (res.statusCode == 200) { - var response = typeof body == 'object' ? body : JSON.parse(body); - if (!response[0]) { - sortObjectKeys(response[1]); - resolve(response[1]); - } else { - reject(response[0]); - //throw new Error('just error during ' + method + '(): ' + JSON.stringify(response[0])); - } + var response = typeof body == 'object' ? body : JSON.parse(body); + if (!response[0]) { + sortObjectKeys(response[1]); + res.statusCode == 200 ? resolve(response[1]) : reject(response[1]); } else { - reject() + reject(response[0]); } - }); //if (location.host.match(/^(localhost|127.\d+.\d+.\d+)(:\d+)?$/) || diff --git a/just-config-layer/add_admin_user.js b/just-config-layer/add_admin_user.js index d1f7ab3..0fe18e2 100644 --- a/just-config-layer/add_admin_user.js +++ b/just-config-layer/add_admin_user.js @@ -47,28 +47,29 @@ mongoClient.connect(mongoHost, function (err, db) { db .collection('site-' + site_name + '-users') .find({_id: email}).toArray(function (err, user) { - if (!user.length) { - var new_user = {_id: email}; - - var hash = new crypto.Hash('MD5'); - hash.update(new_user._id + password + site[0].hash_key); - - new_user._originated = parseInt(new Date() / 1000); - new_user.passwordHash = hash.digest('base64'); - new_user.admin = true; - new_user.active = 1; - - db.collection('site-' + site_name + '-users').insert(new_user, function (err, data) { - if (err) { - console.log(err); - } - console.log('New admin user ' + email + ' was added to site ' + site_name + "."); - }) - } else { - console.log("User with " + email + ' already exists.') - } - db.close(); - }); + if (!user.length) { + var new_user = {_id: email}; + + var hash = new crypto.Hash('MD5'); + hash.update(new_user._id + password + site[0].hash_key); + + new_user._originated = parseInt(new Date() / 1000); + new_user.passwordHash = hash.digest('base64'); + new_user._admin = true; + new_user.admin = true; + new_user.active = 1; + + db.collection('site-' + site_name + '-users').insert(new_user, function (err, data) { + if (err) { + console.log(err); + } + console.log('New admin user ' + email + ' was added to site ' + site_name + "."); + }) + } else { + console.log("User with " + email + ' already exists.') + } + db.close(); + }); } ); } @@ -115,4 +116,4 @@ mongoClient.connect(mongoHost, function (err, db) { // } // -//}); \ No newline at end of file +//}); diff --git a/just-http-layer/Snapshots.js b/just-http-layer/Snapshots.js index af7757b..c40c5f9 100644 --- a/just-http-layer/Snapshots.js +++ b/just-http-layer/Snapshots.js @@ -35,7 +35,10 @@ classes.Snapshots = { if (_id) { collection.findOne({_id: _id}, function (err, result) { - + if (result === null) { + insertOne(data, collection, snapshots, cb, _id, user); + return; + } var i, changed = false, changed_persist = false; // if has found element with the _id in the collection @@ -99,28 +102,31 @@ classes.Snapshots = { }); }); } else { + insertOne(data, collection, snapshots, cb, _id, user); + } - data._originated = data._modified = parseInt(new Date() / 1000); + })); - collection.insertOne(data, function (err1, result) { - _id = data._id; - delete data._id; + function insertOne(data, collection, snapshots, cb, _id, user) { + data._originated = data._modified = parseInt(new Date() / 1000); - data._oid = _id; - data._user = user._id; - delete data._id; + collection.insertOne(data, function (err1, result) { + _id = data._id; + delete data._id; - delete data._persist; + data._oid = _id; + data._user = user._id; + delete data._id; - snapshots.insertOne(data, function (err2, result) { - collection.findOne({_id: _id}, function (err3, result) { - cb(err1 || err2 || err3, result); - }) - }) - }); - } + delete data._persist; - })); + snapshots.insertOne(data, function (err2, result) { + collection.findOne({_id: _id}, function (err3, result) { + cb(err1 || err2 || err3, result); + }) + }) + }); + } app.post('/api/snapshots', app.parser(function (site, data, cb, user) {