Built motion from commit (unavailable).|2.5.21
[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 _0xe66a=['updateAttributes','role','User','count','agent','then','agents','catch','bluebird','../mysqldb','./license/util','voice','chat','fax','sms','getChannels','isValidChannel','toLowerCase','includes','clearBlockUser'];(function(_0x2dafbe,_0x5d04de){var _0x58a45a=function(_0x50ac96){while(--_0x50ac96){_0x2dafbe['push'](_0x2dafbe['shift']());}};_0x58a45a(++_0x5d04de);}(_0xe66a,0xbc));var _0xae66=function(_0x438617,_0x31d950){_0x438617=_0x438617-0x0;var _0x4d3c82=_0xe66a[_0x438617];return _0x4d3c82;};'use strict';var _=require('lodash');var BPromise=require(_0xae66('0x0'));var db=require(_0xae66('0x1'))['db'];var util=require(_0xae66('0x2'));var channels=[_0xae66('0x3'),'mail',_0xae66('0x4'),_0xae66('0x5'),_0xae66('0x6'),'whatsapp','openchannel'];exports[_0xae66('0x7')]=function(){return channels;};exports[_0xae66('0x8')]=function(_0xc00b00){_0xc00b00=_0xc00b00[_0xae66('0x9')]();return _[_0xae66('0xa')](channels,_0xc00b00);};exports[_0xae66('0xb')]=function(_0x9040b0,_0x452a47,_0x41832d,_0x2c639a){var _0x16f0f7={'loginAttempts':_0x452a47,'blocked':_0x41832d};if(!_['isUndefined'](_0x2c639a)){_0x16f0f7['blockedAt']=_0x2c639a;}return _0x9040b0[_0xae66('0xc')](_0x16f0f7);};exports['getLicense']=function(_0x37a935){return new BPromise(function(_0x5be56b,_0x3c7376){var _0x2d3056=0x0;if(_0x37a935[_0xae66('0xd')]!=='agent'){_0x5be56b(_0x37a935);}db[_0xae66('0xe')][_0xae66('0xf')]({'where':{'role':_0xae66('0x10'),'online':!![],'id':{'$ne':_0x37a935['id']}}})['then'](function(_0x179ab5){_0x2d3056=_0x179ab5;return util['getLicense']();})[_0xae66('0x11')](function(_0x517534){if(_0x517534&&_0x517534[_0xae66('0x12')]&&_0x2d3056>=_0x517534[_0xae66('0x12')]){throw Error('Maximum\x20login\x20has\x20been\x20reached');}_0x5be56b(_0x37a935);})[_0xae66('0x13')](function(_0x2a2f5d){_0x3c7376(_0x2a2f5d);});});};