7a5f98560216f8299a47e01e65deca00c24e2c79
[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 _0x27e9=['catch','lodash','bluebird','../mysqldb','./license/util','voice','fax','openchannel','getChannels','isValidChannel','toLowerCase','clearBlockUser','isUndefined','blockedAt','updateAttributes','getLicense','role','agent','count','then','agents','Maximum\x20login\x20has\x20been\x20reached'];(function(_0x1e3fe9,_0x3e5566){var _0x28c83c=function(_0x27255d){while(--_0x27255d){_0x1e3fe9['push'](_0x1e3fe9['shift']());}};_0x28c83c(++_0x3e5566);}(_0x27e9,0x1cf));var _0x927e=function(_0x54a5b4,_0x8b86d0){_0x54a5b4=_0x54a5b4-0x0;var _0x18f452=_0x27e9[_0x54a5b4];return _0x18f452;};'use strict';var _=require(_0x927e('0x0'));var BPromise=require(_0x927e('0x1'));var db=require(_0x927e('0x2'))['db'];var util=require(_0x927e('0x3'));var channels=[_0x927e('0x4'),'mail','chat',_0x927e('0x5'),'sms','whatsapp',_0x927e('0x6')];exports[_0x927e('0x7')]=function(){return channels;};exports[_0x927e('0x8')]=function(_0x4193ee){_0x4193ee=_0x4193ee[_0x927e('0x9')]();return _['includes'](channels,_0x4193ee);};exports[_0x927e('0xa')]=function(_0x548837,_0x51fbc1,_0x5f5572,_0x59f909){var _0x40e51b={'loginAttempts':_0x51fbc1,'blocked':_0x5f5572};if(!_[_0x927e('0xb')](_0x59f909)){_0x40e51b[_0x927e('0xc')]=_0x59f909;}return _0x548837[_0x927e('0xd')](_0x40e51b);};exports[_0x927e('0xe')]=function(_0x3ae935){return new BPromise(function(_0x3dd760,_0x3cedae){var _0x56d42c=0x0;if(_0x3ae935[_0x927e('0xf')]!==_0x927e('0x10')){_0x3dd760(_0x3ae935);}db['User'][_0x927e('0x11')]({'where':{'role':_0x927e('0x10'),'online':!![],'id':{'$ne':_0x3ae935['id']}}})[_0x927e('0x12')](function(_0x5d3339){_0x56d42c=_0x5d3339;return util['getLicense']();})[_0x927e('0x12')](function(_0x1a5ece){if(_0x1a5ece&&_0x1a5ece['agents']&&_0x56d42c>=_0x1a5ece[_0x927e('0x13')]){throw Error(_0x927e('0x14'));}_0x3dd760(_0x3ae935);})[_0x927e('0x15')](function(_0x291f83){_0x3cedae(_0x291f83);});});};