UNPKG

osr

Version:

osr

43 lines (36 loc) 1.16 kB
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"));