joola.io.engine
Version:
joola.io's Framework Engine
47 lines (42 loc) • 1.24 kB
JavaScript
/**
* 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));
}
}