osr
Version:
osr
43 lines (36 loc) • 1.16 kB
JavaScript
var osr = require("../../");
var Promise = require("promise");
var Token = osr.getModel("Token");
var User = new osr.Model("User",{
uname: {type:String,index:true},
upass: {type:String},
});
User.login = function(uname){
return Promise.denodeify(User.findOne).bind(User)({uname:uname}).then(function(user){
if(!user){
throw new Error("user is null");
}
return user;
}).then(function(user){
console.log(user);
return Promise.denodeify(Token.create).bind(Token)({user:user._id,userinfos:{a:"a"}});
}).then(function(token){
return token;
})
}
User.regist = function(uname,upass){
return Promise.denodeify(User.create).bind(User)({uname:uname,upass:"upass"}).then(function(user){
return user;
})
}
User.oauth = function(uname){
return Promise.denodeify(Token.findOne).bind(Token)({uname:uname}).then(function(infos){
return infos;
})
}
User.$ = function(){
User.findOne({},function(err,user){
User.user = user||"no user";
})
}
User.inject(osr,osr.get("Mongodb"));