3 var express = require('express');
4 var passport = require('passport');
5 var async = require('async');
7 var auth = require('../auth.service');
8 var User = require('../../models').User;
10 var router = express.Router();
13 .post('/', function(req, res, next) {
14 passport.authenticate('local-login', function(err, user, info) {
15 var error = err || info;
16 if (error) return res.status(401).json(error);
17 if (!user) return res.status(404).json({
18 message: 'Something went wrong, please try again.'
21 var token = auth.signToken(user.id, user.role, req.body.remember || false);
25 .then(function(user) {
30 .then(function(voiceQueues) {
31 async.eachSeries(voiceQueues, function iterator(voiceQueue, callback) {
32 require('./local.ami').login(user.id, user.name, voiceQueue.name, callback);
40 .catch(function(err) {
44 .catch(function(err) {
52 .get('/logout', auth.isAuthenticated(), function(req, res, next) {
54 .findById(req.user.id)
55 .then(function(user) {
60 .then(function(voiceQueues) {
61 async.eachSeries(voiceQueues, function iterator(voiceQueue, callback) {
62 require('./local.ami').logout(req.user.id, req.user.name, voiceQueue.name, callback);
68 .catch(function(err) {
72 .catch(function(err) {
76 // passport.authenticate('local-logout', function(err, user, info) {
77 // var error = err || info;
78 // if (error) return res.status(401).json(error);
79 // if (!user) return res.status(404).json({
80 // message: 'Something went wrong, please try again.'
83 // var token = auth.signToken(user.id, user.role);
92 module.exports = router;