50c2779aeaffba2e478b8ba01e37becfe48f2de3
[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 _0xef30=['debug','Interval','reduce','format','IntervalIftime:\x20intervals\x20=\x20%s\x20(ids\x20=\x20%s)','name','join','findById','IntervalIftime:\x20interval\x20=\x20%s\x20(id\x20=\x20%s)','IntervalIftime','intervalIds','isArray','intervals','string','timezone','length','IntervalIftime:\x20interval\x20strings\x20=\x20%s','IntervalIftime:\x20timezone\x20=\x20%s','Iftime','resolve','util','../../mysqldb','../../config/logger','rpc','GetInterval','findAll','options','where','attributes','limit','include','map','model','then','info','stringify','catch','error','message','find','ShowInterval'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0xef30,0xe1));var _0x0ef3=function(_0x11a962,_0x3cc338){_0x11a962=_0x11a962-0x0;var _0x55d423=_0xef30[_0x11a962];return _0x55d423;};'use strict';var _=require('lodash');var util=require(_0x0ef3('0x0'));var db=require(_0x0ef3('0x1'))['db'];var iftime=require('../../utils/iftime')['iftime'];var logger=require(_0x0ef3('0x2'))(_0x0ef3('0x3'));exports[_0x0ef3('0x4')]=function(_0x563764){var _0x1ec27b=this;return new Promise(function(_0x510416,_0x3cbe92){return db['Interval'][_0x0ef3('0x5')]({'raw':_0x563764[_0x0ef3('0x6')]?_0x563764['options']['raw']===undefined?!![]:![]:!![],'where':_0x563764[_0x0ef3('0x6')]?_0x563764[_0x0ef3('0x6')][_0x0ef3('0x7')]||null:null,'attributes':_0x563764[_0x0ef3('0x6')]?_0x563764[_0x0ef3('0x6')][_0x0ef3('0x8')]||null:null,'limit':_0x563764[_0x0ef3('0x6')]?_0x563764['options'][_0x0ef3('0x9')]||null:null,'include':_0x563764[_0x0ef3('0x6')]?_0x563764[_0x0ef3('0x6')][_0x0ef3('0xa')]?_[_0x0ef3('0xb')](_0x563764[_0x0ef3('0x6')][_0x0ef3('0xa')],function(_0xeb3854){return{'model':db[_0xeb3854[_0x0ef3('0xc')]],'as':_0xeb3854['as'],'attributes':_0xeb3854[_0x0ef3('0x8')],'include':_0xeb3854['include']?_['map'](_0xeb3854['include'],function(_0x51838c){return{'model':db[_0x51838c[_0x0ef3('0xc')]],'as':_0x51838c['as'],'attributes':_0x51838c[_0x0ef3('0x8')],'include':_0x51838c['include']?_['map'](_0x51838c[_0x0ef3('0xa')],function(_0x20caad){return{'model':db[_0x20caad[_0x0ef3('0xc')]],'as':_0x20caad['as'],'attributes':_0x20caad[_0x0ef3('0x8')]};}):[]};}):[]};}):[]:[]})[_0x0ef3('0xd')](function(_0xd4dc22){logger[_0x0ef3('0xe')]('GetInterval',_0x563764);logger['debug'](_0x0ef3('0x4'),_0x563764,JSON[_0x0ef3('0xf')](_0xd4dc22));_0x510416(_0xd4dc22);})[_0x0ef3('0x10')](function(_0x2b5cb6){logger[_0x0ef3('0x11')](_0x0ef3('0x4'),_0x2b5cb6[_0x0ef3('0x12')],_0x563764);_0x3cbe92(_0x1ec27b[_0x0ef3('0x11')](0x1f4,_0x2b5cb6['message']));});});};exports['ShowInterval']=function(_0x32add3){var _0x3aee17=this;return new Promise(function(_0x35750b,_0x376de5){return db['Interval'][_0x0ef3('0x13')]({'raw':_0x32add3['options']?_0x32add3[_0x0ef3('0x6')]['raw']===undefined?!![]:![]:!![],'where':_0x32add3[_0x0ef3('0x6')]?_0x32add3[_0x0ef3('0x6')][_0x0ef3('0x7')]||null:null,'attributes':_0x32add3['options']?_0x32add3['options'][_0x0ef3('0x8')]||null:null,'include':_0x32add3[_0x0ef3('0x6')]?_0x32add3[_0x0ef3('0x6')][_0x0ef3('0xa')]?_[_0x0ef3('0xb')](_0x32add3[_0x0ef3('0x6')][_0x0ef3('0xa')],function(_0x133146){return{'model':db[_0x133146[_0x0ef3('0xc')]],'as':_0x133146['as'],'attributes':_0x133146[_0x0ef3('0x8')],'include':_0x133146[_0x0ef3('0xa')]?_[_0x0ef3('0xb')](_0x133146[_0x0ef3('0xa')],function(_0x1f7590){return{'model':db[_0x1f7590[_0x0ef3('0xc')]],'as':_0x1f7590['as'],'attributes':_0x1f7590[_0x0ef3('0x8')],'include':_0x1f7590[_0x0ef3('0xa')]?_[_0x0ef3('0xb')](_0x1f7590[_0x0ef3('0xa')],function(_0x32ffca){return{'model':db[_0x32ffca[_0x0ef3('0xc')]],'as':_0x32ffca['as'],'attributes':_0x32ffca['attributes']};}):[]};}):[]};}):[]:[]})[_0x0ef3('0xd')](function(_0x530cd1){logger[_0x0ef3('0xe')](_0x0ef3('0x14'),_0x32add3);logger[_0x0ef3('0x15')]('ShowInterval',_0x32add3,JSON[_0x0ef3('0xf')](_0x530cd1));_0x35750b(_0x530cd1);})['catch'](function(_0x405e47){logger[_0x0ef3('0x11')](_0x0ef3('0x14'),_0x405e47[_0x0ef3('0x12')],_0x32add3);_0x376de5(_0x3aee17['error'](0x1f4,_0x405e47[_0x0ef3('0x12')]));});});};function checkArrayOfIntervals(_0x23caa9,_0x4951d9){var _0x518d41=[];return db[_0x0ef3('0x16')][_0x0ef3('0x5')]({'where':{'id':_0x23caa9}})[_0x0ef3('0xd')](function(_0x4fbd1e){_0x518d41=_0x4fbd1e;return Promise['all'](_0x518d41[_0x0ef3('0xb')](function(_0xe23539){return _0xe23539['ifTime'](_0x4951d9);}));})[_0x0ef3('0xd')](function(_0x5be6aa){var _0x4192ef=_0x5be6aa[_0x0ef3('0x17')](function(_0x1f9f92,_0x39de5a){return _0x1f9f92||_0x39de5a;},![]);logger[_0x0ef3('0xe')](util[_0x0ef3('0x18')](_0x0ef3('0x19'),_0x518d41[_0x0ef3('0xb')](function(_0x1cc179){return _0x1cc179[_0x0ef3('0x1a')];})[_0x0ef3('0x1b')](',\x20'),_0x518d41[_0x0ef3('0xb')](function(_0x2dda12){return _0x2dda12['id'];})[_0x0ef3('0x1b')](',\x20')));return _0x4192ef;});}function checkSingleInterval(_0x3e6af6,_0x590389){return db[_0x0ef3('0x16')][_0x0ef3('0x1c')](_0x3e6af6)['then'](function(_0x1c08b3){if(_0x1c08b3){logger[_0x0ef3('0xe')](util[_0x0ef3('0x18')](_0x0ef3('0x1d'),_0x1c08b3[_0x0ef3('0x1a')],_0x1c08b3['id']));return _0x1c08b3['ifTime'](_0x590389);}});}exports[_0x0ef3('0x1e')]=function(_0x42416c){var _0x33e6eb=_0x42416c[_0x0ef3('0x1f')];var _0x3ae962=Array[_0x0ef3('0x20')](_0x42416c[_0x0ef3('0x21')])?_0x42416c['intervals']:typeof _0x42416c[_0x0ef3('0x21')]===_0x0ef3('0x22')?[_0x42416c['intervals']]:[];var _0x4a90f8=_0x42416c[_0x0ef3('0x23')]||undefined;var _0x30f6e5=![];if(_0x3ae962[_0x0ef3('0x24')]){logger[_0x0ef3('0xe')](util[_0x0ef3('0x18')](_0x0ef3('0x25'),_0x3ae962[_0x0ef3('0x1b')](';\x20')));}if(_0x4a90f8){logger[_0x0ef3('0xe')](util[_0x0ef3('0x18')](_0x0ef3('0x26'),_0x4a90f8));}logger[_0x0ef3('0x15')](_0x0ef3('0x27'),_0x30f6e5);logger['silly'](_0x0ef3('0x1e'),_0x42416c);return Promise[_0x0ef3('0x28')]()['then'](function(){if(Array['isArray'](_0x33e6eb)){return checkArrayOfIntervals(_0x33e6eb,_0x4a90f8);}else if(_0x33e6eb){return checkSingleInterval(_0x33e6eb,_0x4a90f8);}})['then'](function(_0x5a822b){var _0x4d3400=_0x3ae962[_0x0ef3('0x17')](function(_0x29ff5f,_0x1018d6){return _0x29ff5f||iftime(_0x1018d6,_0x4a90f8);},![]);_0x30f6e5=_0x5a822b||_0x4d3400;return _0x30f6e5;})[_0x0ef3('0x10')](function(_0x282398){logger[_0x0ef3('0x11')](_0x0ef3('0x1e'),_0x42416c,_0x282398);throw this[_0x0ef3('0x11')](0x1f4,_0x282398['message']);});};