33521ad86f353671117f12c2897c2cf960ceaf28
[motion2.git] / server / api / interval / interval.rpc.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 _0x0759=['findById','IntervalIftime:\x20interval\x20=\x20%s\x20(id\x20=\x20%s)','intervalIds','isArray','intervals','string','timezone','length','IntervalIftime:\x20interval\x20strings\x20=\x20%s','IntervalIftime:\x20timezone\x20=\x20%s','silly','IntervalIftime','resolve','lodash','util','../../utils/iftime','iftime','../../config/logger','rpc','GetInterval','findAll','options','raw','where','attributes','limit','include','map','model','info','stringify','error','message','ShowInterval','Interval','find','then','debug','catch','all','ifTime','reduce','format','IntervalIftime:\x20intervals\x20=\x20%s\x20(ids\x20=\x20%s)','name','join'];(function(_0x8c5cba,_0x3c891f){var _0x50687b=function(_0x598d84){while(--_0x598d84){_0x8c5cba['push'](_0x8c5cba['shift']());}};_0x50687b(++_0x3c891f);}(_0x0759,0x69));var _0x9075=function(_0x1e65ee,_0x28c7eb){_0x1e65ee=_0x1e65ee-0x0;var _0x1dfa17=_0x0759[_0x1e65ee];return _0x1dfa17;};'use strict';var _=require(_0x9075('0x0'));var util=require(_0x9075('0x1'));var db=require('../../mysqldb')['db'];var iftime=require(_0x9075('0x2'))[_0x9075('0x3')];var logger=require(_0x9075('0x4'))(_0x9075('0x5'));exports[_0x9075('0x6')]=function(_0x2605bb){var _0x47651e=this;return new Promise(function(_0x30830a,_0x1d5bcc){return db['Interval'][_0x9075('0x7')]({'raw':_0x2605bb[_0x9075('0x8')]?_0x2605bb[_0x9075('0x8')][_0x9075('0x9')]===undefined?!![]:![]:!![],'where':_0x2605bb[_0x9075('0x8')]?_0x2605bb['options'][_0x9075('0xa')]||null:null,'attributes':_0x2605bb[_0x9075('0x8')]?_0x2605bb[_0x9075('0x8')][_0x9075('0xb')]||null:null,'limit':_0x2605bb[_0x9075('0x8')]?_0x2605bb[_0x9075('0x8')][_0x9075('0xc')]||null:null,'include':_0x2605bb[_0x9075('0x8')]?_0x2605bb[_0x9075('0x8')][_0x9075('0xd')]?_[_0x9075('0xe')](_0x2605bb[_0x9075('0x8')]['include'],function(_0xee1b4){return{'model':db[_0xee1b4[_0x9075('0xf')]],'as':_0xee1b4['as'],'attributes':_0xee1b4[_0x9075('0xb')],'include':_0xee1b4['include']?_[_0x9075('0xe')](_0xee1b4[_0x9075('0xd')],function(_0x184b4e){return{'model':db[_0x184b4e['model']],'as':_0x184b4e['as'],'attributes':_0x184b4e[_0x9075('0xb')],'include':_0x184b4e[_0x9075('0xd')]?_[_0x9075('0xe')](_0x184b4e[_0x9075('0xd')],function(_0x20024c){return{'model':db[_0x20024c[_0x9075('0xf')]],'as':_0x20024c['as'],'attributes':_0x20024c[_0x9075('0xb')]};}):[]};}):[]};}):[]:[]})['then'](function(_0x301707){logger[_0x9075('0x10')]('GetInterval',_0x2605bb);logger['debug']('GetInterval',_0x2605bb,JSON[_0x9075('0x11')](_0x301707));_0x30830a(_0x301707);})['catch'](function(_0x21d41a){logger[_0x9075('0x12')](_0x9075('0x6'),_0x21d41a[_0x9075('0x13')],_0x2605bb);_0x1d5bcc(_0x47651e[_0x9075('0x12')](0x1f4,_0x21d41a[_0x9075('0x13')]));});});};exports[_0x9075('0x14')]=function(_0x3146f0){var _0x68206f=this;return new Promise(function(_0x5aedc5,_0x105946){return db[_0x9075('0x15')][_0x9075('0x16')]({'raw':_0x3146f0['options']?_0x3146f0['options'][_0x9075('0x9')]===undefined?!![]:![]:!![],'where':_0x3146f0[_0x9075('0x8')]?_0x3146f0[_0x9075('0x8')][_0x9075('0xa')]||null:null,'attributes':_0x3146f0['options']?_0x3146f0[_0x9075('0x8')][_0x9075('0xb')]||null:null,'include':_0x3146f0['options']?_0x3146f0[_0x9075('0x8')][_0x9075('0xd')]?_[_0x9075('0xe')](_0x3146f0['options'][_0x9075('0xd')],function(_0x39c97c){return{'model':db[_0x39c97c[_0x9075('0xf')]],'as':_0x39c97c['as'],'attributes':_0x39c97c[_0x9075('0xb')],'include':_0x39c97c[_0x9075('0xd')]?_['map'](_0x39c97c[_0x9075('0xd')],function(_0xefd3f4){return{'model':db[_0xefd3f4[_0x9075('0xf')]],'as':_0xefd3f4['as'],'attributes':_0xefd3f4[_0x9075('0xb')],'include':_0xefd3f4[_0x9075('0xd')]?_[_0x9075('0xe')](_0xefd3f4[_0x9075('0xd')],function(_0x46bca0){return{'model':db[_0x46bca0[_0x9075('0xf')]],'as':_0x46bca0['as'],'attributes':_0x46bca0[_0x9075('0xb')]};}):[]};}):[]};}):[]:[]})[_0x9075('0x17')](function(_0x4b2726){logger[_0x9075('0x10')](_0x9075('0x14'),_0x3146f0);logger[_0x9075('0x18')]('ShowInterval',_0x3146f0,JSON[_0x9075('0x11')](_0x4b2726));_0x5aedc5(_0x4b2726);})[_0x9075('0x19')](function(_0x443d72){logger[_0x9075('0x12')](_0x9075('0x14'),_0x443d72['message'],_0x3146f0);_0x105946(_0x68206f['error'](0x1f4,_0x443d72['message']));});});};function checkArrayOfIntervals(_0x35831b,_0x5a1b59){var _0x4afbe2=[];return db[_0x9075('0x15')]['findAll']({'where':{'id':_0x35831b}})[_0x9075('0x17')](function(_0x258cf0){_0x4afbe2=_0x258cf0;return Promise[_0x9075('0x1a')](_0x4afbe2['map'](function(_0x3a0b66){return _0x3a0b66[_0x9075('0x1b')](_0x5a1b59);}));})[_0x9075('0x17')](function(_0x5a1d9a){var _0x4f70c6=_0x5a1d9a[_0x9075('0x1c')](function(_0x269e56,_0x5dcdaf){return _0x269e56||_0x5dcdaf;},![]);logger[_0x9075('0x10')](util[_0x9075('0x1d')](_0x9075('0x1e'),_0x4afbe2[_0x9075('0xe')](function(_0x4a35fc){return _0x4a35fc[_0x9075('0x1f')];})[_0x9075('0x20')](',\x20'),_0x4afbe2[_0x9075('0xe')](function(_0xae369){return _0xae369['id'];})['join'](',\x20')));return _0x4f70c6;});}function checkSingleInterval(_0x32a031,_0x36fcbe){return db[_0x9075('0x15')][_0x9075('0x21')](_0x32a031)[_0x9075('0x17')](function(_0x2c8a12){if(_0x2c8a12){logger[_0x9075('0x10')](util[_0x9075('0x1d')](_0x9075('0x22'),_0x2c8a12['name'],_0x2c8a12['id']));return _0x2c8a12[_0x9075('0x1b')](_0x36fcbe);}});}exports['IntervalIftime']=function(_0x4f83ad){var _0x3aa442=_0x4f83ad[_0x9075('0x23')];var _0x111f73=Array[_0x9075('0x24')](_0x4f83ad[_0x9075('0x25')])?_0x4f83ad[_0x9075('0x25')]:typeof _0x4f83ad[_0x9075('0x25')]===_0x9075('0x26')?[_0x4f83ad[_0x9075('0x25')]]:[];var _0x5b54d9=_0x4f83ad[_0x9075('0x27')]||undefined;var _0x18ef07=![];if(_0x111f73[_0x9075('0x28')]){logger[_0x9075('0x10')](util['format'](_0x9075('0x29'),_0x111f73[_0x9075('0x20')](';\x20')));}if(_0x5b54d9){logger[_0x9075('0x10')](util[_0x9075('0x1d')](_0x9075('0x2a'),_0x5b54d9));}logger[_0x9075('0x18')]('Iftime',_0x18ef07);logger[_0x9075('0x2b')](_0x9075('0x2c'),_0x4f83ad);return Promise[_0x9075('0x2d')]()[_0x9075('0x17')](function(){if(Array[_0x9075('0x24')](_0x3aa442)){return checkArrayOfIntervals(_0x3aa442,_0x5b54d9);}else if(_0x3aa442){return checkSingleInterval(_0x3aa442,_0x5b54d9);}})[_0x9075('0x17')](function(_0x588a7a){var _0x4735e7=_0x111f73['reduce'](function(_0x4a2c38,_0x2df8e8){return _0x4a2c38||iftime(_0x2df8e8,_0x5b54d9);},![]);_0x18ef07=_0x588a7a||_0x4735e7;return _0x18ef07;})['catch'](function(_0x496fd7){logger['error'](_0x9075('0x2c'),_0x4f83ad,_0x496fd7);throw this['error'](0x1f4,_0x496fd7[_0x9075('0x13')]);});};