Code coverage report for api/controllers/UserController.js

Statements: 58.33% (21 / 36)      Branches: 70% (14 / 20)      Functions: 88.89% (8 / 9)      Lines: 57.58% (19 / 33)      Ignored: 2 statements, 2 branches     

All files » api/controllers/ » UserController.js
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81              1   1   1       1           1 1 1                             1                 1 1 1   1 1 1     1           2 2 1 1                              
/**
 * UsersController.js 
 *
 * @description ::
 * @docs        :: http://sailsjs.org/#!documentation/controllers
 */
 
  var util = require('util')
 
module.exports = {
  new: function (req, res) {
      res.view();
  },
 
  signup: function(req,res, next){
    Iif(req.param("confirmation") !== req.param("password")){
      req.session.flash = {
        err: ["confirmation password is different"]
      }
      return res.redirect("/"); 
    }
    User.create(req.params.all()).exec(function(err,created){
      sails.log(req.session);
      Iif(err || !created){
        var errMsg; 
        if(err.ValidationError){
          errMsg = showValidationError(User,err.ValidationError);
          var errlist = []
          _.each(_.values(errMsg),function(errlst){
            errlist.push(_.values(errlst[0])[0]);
          })
          errMsg = errlist;
        } else {
          errMsg = err.details;
          /* istanbul ignore else : should not happen */
          if(errMsg.indexOf("Uniqueness check failed on attribute: email") > -1){
            errMsg = ["email already exists"]
          } else {
            errMsg = [errMsg];
          }
        }
 
        req.session.flash = {
          err: errMsg
        }
        return res.redirect("/");
      } else {
        passport.authenticate('local', function(err, user, info){
            Iif (err || !user) return res.redirect('/')
            req.login(user, function(err){
              /* istanbul ignore next : should not happen */
              Iif (err) res.redirect('/');
              req.session.user = user;
              res.redirect("/user/show/"+user.id);
            });
          })(req, res);
        req.session.flash = {};
      }
    });
  },
 
  show:function(req, res, next){
    User.findOne(req.param('id'), function(err, user){
      if(err || !user) return next(err);
      User.findOne(req.param('id')).populate("projects").exec(function (err, result){
        res.view({
          user:user,
          projects:result.projects
        });
      });
    });
  },
    
  //index:function(req, res){
  //  User.find(function foundUsers (err, users){
  //    if(err) return next(err);
  //    res.view({users:users});
  //  });
  //},
};