UNPKG

joola.io.engine

Version:
47 lines (42 loc) 1.24 kB
/** * joola.io * * Copyright Joola Smart Solutions, Ltd. <info@joo.la> * * Licensed under GNU General Public License 3.0 or later. * Some rights reserved. See LICENSE, AUTHORS. * * @license GPL-3.0+ <http://spdx.org/licenses/GPL-3.0+> */ var _datatables = require('../objects/datatables'), connector = require('../connectors/connector'); exports.login = function (username, password, next) { var auth = joola.config.auth; var orgs = auth.organizations; var user; joola.logger.silly('Joola login attempt [' + username + ']...'); _.each(orgs, function (org) { if (!user) { user = _.find(org.users, function (u) { return u._username == username; }); } }); if (user) { if (user._password == password) { joola.logger.silly('Joola authentication success [' + username + ']...'); return next(null, user); } else { var message = 'Failed to authenticate with Joola [' + username + ']: wrong password'; joola.logger.warn(message); return next(new Error(message)); } } else { var message = 'Failed to authenticate with Joola [' + username + ']: user not found'; joola.logger.warn(message); return next(new Error(message)); } }