Built motion from commit 3e059bc2.|2.5.32
[motion2.git] / server / config / utils.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0xdd09=['User','getLicense','then','agents','Maximum\x20login\x20has\x20been\x20reached','bluebird','../mysqldb','./license/util','voice','chat','fax','whatsapp','openchannel','getChannels','isValidChannel','toLowerCase','includes','clearBlockUser','isUndefined','blockedAt','agent'];(function(_0x2c8ac7,_0x4fe3a4){var _0x3f7681=function(_0x33ed54){while(--_0x33ed54){_0x2c8ac7['push'](_0x2c8ac7['shift']());}};_0x3f7681(++_0x4fe3a4);}(_0xdd09,0x6e));var _0x9dd0=function(_0x1ccc88,_0x353a7d){_0x1ccc88=_0x1ccc88-0x0;var _0x49b96c=_0xdd09[_0x1ccc88];return _0x49b96c;};'use strict';var _=require('lodash');var BPromise=require(_0x9dd0('0x0'));var db=require(_0x9dd0('0x1'))['db'];var util=require(_0x9dd0('0x2'));var channels=[_0x9dd0('0x3'),'mail',_0x9dd0('0x4'),_0x9dd0('0x5'),'sms',_0x9dd0('0x6'),_0x9dd0('0x7')];exports[_0x9dd0('0x8')]=function(){return channels;};exports[_0x9dd0('0x9')]=function(_0x1a4ecb){_0x1a4ecb=_0x1a4ecb[_0x9dd0('0xa')]();return _[_0x9dd0('0xb')](channels,_0x1a4ecb);};exports[_0x9dd0('0xc')]=function(_0x44c265,_0x4ae2d8,_0x14291e,_0x3bccf3){var _0x42035e={'loginAttempts':_0x4ae2d8,'blocked':_0x14291e};if(!_[_0x9dd0('0xd')](_0x3bccf3)){_0x42035e[_0x9dd0('0xe')]=_0x3bccf3;}return _0x44c265['updateAttributes'](_0x42035e);};exports['getLicense']=function(_0x2ebdae){return new BPromise(function(_0x2bba3c,_0x4749f8){var _0x1594d6=0x0;if(_0x2ebdae['role']!==_0x9dd0('0xf')){_0x2bba3c(_0x2ebdae);}db[_0x9dd0('0x10')]['count']({'where':{'role':'agent','online':!![],'id':{'$ne':_0x2ebdae['id']}}})['then'](function(_0x26b0b7){_0x1594d6=_0x26b0b7;return util[_0x9dd0('0x11')]();})[_0x9dd0('0x12')](function(_0x48ce88){if(_0x48ce88&&_0x48ce88[_0x9dd0('0x13')]&&_0x1594d6>=_0x48ce88[_0x9dd0('0x13')]){throw Error(_0x9dd0('0x14'));}_0x2bba3c(_0x2ebdae);})['catch'](function(_0x419e46){_0x4749f8(_0x419e46);});});};