Built motion from commit fa4c4286.|2.6.29
[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 _0x0d20=['User','count','agents','Maximum\x20login\x20has\x20been\x20reached','catch','lodash','mail','chat','fax','sms','whatsapp','openchannel','getChannels','isValidChannel','clearBlockUser','isUndefined','updateAttributes','getLicense','role','agent'];(function(_0x123824,_0x52a5c7){var _0x1421eb=function(_0x37881){while(--_0x37881){_0x123824['push'](_0x123824['shift']());}};_0x1421eb(++_0x52a5c7);}(_0x0d20,0xcd));var _0x00d2=function(_0x40e1ef,_0x455a95){_0x40e1ef=_0x40e1ef-0x0;var _0x5a3b2e=_0x0d20[_0x40e1ef];return _0x5a3b2e;};'use strict';var _=require(_0x00d2('0x0'));var BPromise=require('bluebird');var db=require('../mysqldb')['db'];var util=require('./license/util');var channels=['voice',_0x00d2('0x1'),_0x00d2('0x2'),_0x00d2('0x3'),_0x00d2('0x4'),_0x00d2('0x5'),_0x00d2('0x6')];exports[_0x00d2('0x7')]=function(){return channels;};exports[_0x00d2('0x8')]=function(_0x26736e){_0x26736e=_0x26736e['toLowerCase']();return _['includes'](channels,_0x26736e);};exports[_0x00d2('0x9')]=function(_0x3410e2,_0x4dc0aa,_0x6fdb2e,_0x183961){var _0x16ec6f={'loginAttempts':_0x4dc0aa,'blocked':_0x6fdb2e};if(!_[_0x00d2('0xa')](_0x183961)){_0x16ec6f['blockedAt']=_0x183961;}return _0x3410e2[_0x00d2('0xb')](_0x16ec6f);};exports[_0x00d2('0xc')]=function(_0x5a2a30){return new BPromise(function(_0x378c4f,_0x22b998){var _0x468b51=0x0;if(_0x5a2a30[_0x00d2('0xd')]!==_0x00d2('0xe')){_0x378c4f(_0x5a2a30);}db[_0x00d2('0xf')][_0x00d2('0x10')]({'where':{'role':_0x00d2('0xe'),'online':!![],'id':{'$ne':_0x5a2a30['id']}}})['then'](function(_0x31c406){_0x468b51=_0x31c406;return util['getLicense']();})['then'](function(_0x12e1d2){if(_0x12e1d2&&_0x12e1d2[_0x00d2('0x11')]&&_0x468b51>=_0x12e1d2[_0x00d2('0x11')]){throw Error(_0x00d2('0x12'));}_0x378c4f(_0x5a2a30);})[_0x00d2('0x13')](function(_0x20c157){_0x22b998(_0x20c157);});});};