Advertisement
Guest User

Untitled

a guest
Jul 13th, 2013
160
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var orm = require('orm')
  2. , _ = require('underscore');
  3.  
  4. module.exports = function(app, db) {
  5.  
  6.   var User = db.define('User', {
  7.     uid: {type: 'number', rational: false}
  8.     , username: String
  9.     , displayName: String
  10.     , token: String
  11.     , tokenSecret: String
  12.     , profileImage: String
  13.   },
  14.   {
  15.     validations: {
  16.       uid: orm.validators.required("Id Required"),
  17.       username: orm.validators.required("Username Required"),
  18.       displayName: orm.validators.required("Display Name Required"),
  19.       token: orm.validators.required("Token Required"),
  20.       tokenSecret: orm.validators.required("Token Secret Required")
  21.     }
  22.   }
  23.   );
  24.  
  25.   User.findOrCreate = function (providerName, token, tokenSecret, uid, profile, done) {
  26.     this.find({uid: uid}, 1, function(err, user) {
  27.       if (user) {
  28.  
  29.         console.log('existing user');
  30.         user.displayName = profile.displayName;
  31.         user.profileImage = profile._json.profile_image_url;
  32.  
  33.         user.save(function(err){
  34.           return done(err, user, false);
  35.         });
  36.  
  37.       } else {
  38.         console.log('new user');
  39.  
  40.         this.create({
  41.           uid: uid,
  42.           username: profile.username,
  43.           displayName: profile.displayName,
  44.           token: token,
  45.           tokenSecret: tokenSecret,
  46.           profileImage: profile._json.profile_image_url
  47.         },
  48.         function(err, user){
  49.           done(err, user, true);
  50.         });
  51.       }
  52.     });
  53.   };
  54.   return User;
  55. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement