f948eb8b45a9420457b163ba9b34476384952cbe
[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 _0x0571=['whatsapp','isValidChannel','toLowerCase','clearBlockUser','getLicense','agent','User','count','then','agents','catch','bluebird','../mysqldb','./license/util','voice','mail','chat','fax','sms'];(function(_0x2cc22c,_0x3f8b41){var _0x258d66=function(_0x201c2d){while(--_0x201c2d){_0x2cc22c['push'](_0x2cc22c['shift']());}};_0x258d66(++_0x3f8b41);}(_0x0571,0x13b));var _0x1057=function(_0xef4ef0,_0x3c72f9){_0xef4ef0=_0xef4ef0-0x0;var _0x39b60b=_0x0571[_0xef4ef0];return _0x39b60b;};'use strict';var _=require('lodash');var BPromise=require(_0x1057('0x0'));var db=require(_0x1057('0x1'))['db'];var util=require(_0x1057('0x2'));var channels=[_0x1057('0x3'),_0x1057('0x4'),_0x1057('0x5'),_0x1057('0x6'),_0x1057('0x7'),_0x1057('0x8'),'openchannel'];exports['getChannels']=function(){return channels;};exports[_0x1057('0x9')]=function(_0x29b00f){_0x29b00f=_0x29b00f[_0x1057('0xa')]();return _['includes'](channels,_0x29b00f);};exports[_0x1057('0xb')]=function(_0x11456b,_0x6eb17f,_0x5d67ce,_0x286a56){var _0x26c27a={'loginAttempts':_0x6eb17f,'blocked':_0x5d67ce};if(!_['isUndefined'](_0x286a56)){_0x26c27a['blockedAt']=_0x286a56;}return _0x11456b['updateAttributes'](_0x26c27a);};exports[_0x1057('0xc')]=function(_0x355d3c){return new BPromise(function(_0x5561c5,_0x27a890){var _0x1fe859=0x0;if(_0x355d3c['role']!==_0x1057('0xd')){_0x5561c5(_0x355d3c);}db[_0x1057('0xe')][_0x1057('0xf')]({'where':{'role':_0x1057('0xd'),'online':!![],'id':{'$ne':_0x355d3c['id']}}})[_0x1057('0x10')](function(_0x6ea90e){_0x1fe859=_0x6ea90e;return util[_0x1057('0xc')]();})[_0x1057('0x10')](function(_0x56612b){if(_0x56612b&&_0x56612b[_0x1057('0x11')]&&_0x1fe859>=_0x56612b[_0x1057('0x11')]){throw Error('Maximum\x20login\x20has\x20been\x20reached');}_0x5561c5(_0x355d3c);})[_0x1057('0x12')](function(_0x3ee30f){_0x27a890(_0x3ee30f);});});};