8a8423c72868d220c31e4717a349bd743276c052
[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 _0x87e2=['then','getLicense','agents','Maximum\x20login\x20has\x20been\x20reached','catch','lodash','bluebird','voice','mail','chat','fax','sms','whatsapp','openchannel','getChannels','isValidChannel','toLowerCase','includes','clearBlockUser','blockedAt','updateAttributes','role','User','count'];(function(_0x400672,_0x243a7e){var _0x27ed65=function(_0x350ca9){while(--_0x350ca9){_0x400672['push'](_0x400672['shift']());}};_0x27ed65(++_0x243a7e);}(_0x87e2,0x16d));var _0x287e=function(_0x360a5a,_0x566250){_0x360a5a=_0x360a5a-0x0;var _0x3e3f36=_0x87e2[_0x360a5a];return _0x3e3f36;};'use strict';var _=require(_0x287e('0x0'));var BPromise=require(_0x287e('0x1'));var db=require('../mysqldb')['db'];var util=require('./license/util');var channels=[_0x287e('0x2'),_0x287e('0x3'),_0x287e('0x4'),_0x287e('0x5'),_0x287e('0x6'),_0x287e('0x7'),_0x287e('0x8')];exports[_0x287e('0x9')]=function(){return channels;};exports[_0x287e('0xa')]=function(_0x156874){_0x156874=_0x156874[_0x287e('0xb')]();return _[_0x287e('0xc')](channels,_0x156874);};exports[_0x287e('0xd')]=function(_0x3d5d3b,_0x2ebd63,_0x130c4d,_0x343685){var _0x4d66ba={'loginAttempts':_0x2ebd63,'blocked':_0x130c4d};if(!_['isUndefined'](_0x343685)){_0x4d66ba[_0x287e('0xe')]=_0x343685;}return _0x3d5d3b[_0x287e('0xf')](_0x4d66ba);};exports['getLicense']=function(_0x546b1f){return new BPromise(function(_0x16a273,_0x349b3c){var _0x28656a=0x0;if(_0x546b1f[_0x287e('0x10')]!=='agent'){_0x16a273(_0x546b1f);}db[_0x287e('0x11')][_0x287e('0x12')]({'where':{'role':'agent','online':!![],'id':{'$ne':_0x546b1f['id']}}})[_0x287e('0x13')](function(_0x2d67d0){_0x28656a=_0x2d67d0;return util[_0x287e('0x14')]();})[_0x287e('0x13')](function(_0x365549){if(_0x365549&&_0x365549['agents']&&_0x28656a>=_0x365549[_0x287e('0x15')]){throw Error(_0x287e('0x16'));}_0x16a273(_0x546b1f);})[_0x287e('0x17')](function(_0x11ec58){_0x349b3c(_0x11ec58);});});};