[#1977] APIv2 WIP - start of a framework where operations are shared

between client & server. If the op is called on the client, it updates
the user & then POSTs to the server with op of the same name. If called
on server, it updates the user and user.save()s
This commit is contained in:
Tyler Renelle
2013-12-11 09:30:39 -07:00
parent 842f0de838
commit ee1cd3c05d
39 changed files with 313 additions and 569 deletions
+17 -16
View File
@@ -3,7 +3,7 @@ var validator = require('validator');
var check = validator.check;
var sanitize = validator.sanitize;
var passport = require('passport');
var helpers = require('habitrpg-shared/script/helpers');
var shared = require('habitrpg-shared');
var async = require('async');
var utils = require('../utils');
var nconf = require('nconf');
@@ -83,17 +83,18 @@ api.registerUser = function(req, res, next) {
if (found) {
return cb("Username already taken");
}
newUser = helpers.newUser(true);
salt = utils.makeSalt();
newUser.auth = {
local: {
username: username,
email: email,
salt: salt
},
timestamps: {created: +new Date(), loggedIn: +new Date()}
var newUser = {
auth: {
local: {
username: username,
email: email,
salt: salt,
hashed_password: utils.encryptPassword(password, salt)
},
timestamps: {created: +new Date(), loggedIn: +new Date()}
}
};
newUser.auth.local.hashed_password = utils.encryptPassword(password, salt);
user = new User(newUser);
user.save(cb);
}
@@ -251,12 +252,12 @@ api.setupPassport = function(router) {
},
function(user, cb){
if (user) return cb(null, user);
var newUser = helpers.newUser(true);
newUser.auth = {
facebook: req.user,
timestamps: {created: +new Date(), loggedIn: +new Date()}
};
user = new User(newUser);
user = new User({
auth: {
facebook: req.user,
timestamps: {created: +new Date(), loggedIn: +new Date()}
}
});
user.save(cb);