e826d2f27ddb469c50e4ea55f1a5894f8adf13bf
[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 _0x9bc2=['string','timezone','length','format','IntervalIftime:\x20timezone\x20=\x20%s','Iftime','IntervalIftime','resolve','util','../../utils/iftime','iftime','../../config/logger','rpc','findAll','options','where','attributes','include','map','model','then','info','GetInterval','debug','stringify','catch','error','message','raw','ShowInterval','Interval','all','ifTime','reduce','IntervalIftime:\x20intervals\x20=\x20%s\x20(ids\x20=\x20%s)','name','join','IntervalIftime:\x20interval\x20=\x20%s\x20(id\x20=\x20%s)','intervalIds','isArray','intervals'];(function(_0x599782,_0x3f15e8){var _0x1912d1=function(_0x1cef54){while(--_0x1cef54){_0x599782['push'](_0x599782['shift']());}};_0x1912d1(++_0x3f15e8);}(_0x9bc2,0x1cb));var _0x29bc=function(_0x35a096,_0x538162){_0x35a096=_0x35a096-0x0;var _0x1744e6=_0x9bc2[_0x35a096];return _0x1744e6;};'use strict';var _=require('lodash');var util=require(_0x29bc('0x0'));var db=require('../../mysqldb')['db'];var iftime=require(_0x29bc('0x1'))[_0x29bc('0x2')];var logger=require(_0x29bc('0x3'))(_0x29bc('0x4'));exports['GetInterval']=function(_0x38695b){var _0x3e05b6=this;return new Promise(function(_0xf0179b,_0x1ed073){return db['Interval'][_0x29bc('0x5')]({'raw':_0x38695b[_0x29bc('0x6')]?_0x38695b[_0x29bc('0x6')]['raw']===undefined?!![]:![]:!![],'where':_0x38695b[_0x29bc('0x6')]?_0x38695b[_0x29bc('0x6')][_0x29bc('0x7')]||null:null,'attributes':_0x38695b[_0x29bc('0x6')]?_0x38695b[_0x29bc('0x6')][_0x29bc('0x8')]||null:null,'limit':_0x38695b['options']?_0x38695b[_0x29bc('0x6')]['limit']||null:null,'include':_0x38695b['options']?_0x38695b[_0x29bc('0x6')][_0x29bc('0x9')]?_['map'](_0x38695b[_0x29bc('0x6')][_0x29bc('0x9')],function(_0x140dbe){return{'model':db[_0x140dbe['model']],'as':_0x140dbe['as'],'attributes':_0x140dbe[_0x29bc('0x8')],'include':_0x140dbe['include']?_[_0x29bc('0xa')](_0x140dbe[_0x29bc('0x9')],function(_0x420b0a){return{'model':db[_0x420b0a[_0x29bc('0xb')]],'as':_0x420b0a['as'],'attributes':_0x420b0a[_0x29bc('0x8')],'include':_0x420b0a[_0x29bc('0x9')]?_[_0x29bc('0xa')](_0x420b0a[_0x29bc('0x9')],function(_0x4d5eb2){return{'model':db[_0x4d5eb2['model']],'as':_0x4d5eb2['as'],'attributes':_0x4d5eb2['attributes']};}):[]};}):[]};}):[]:[]})[_0x29bc('0xc')](function(_0x3561d6){logger[_0x29bc('0xd')](_0x29bc('0xe'),_0x38695b);logger[_0x29bc('0xf')]('GetInterval',_0x38695b,JSON[_0x29bc('0x10')](_0x3561d6));_0xf0179b(_0x3561d6);})[_0x29bc('0x11')](function(_0x5cf5eb){logger[_0x29bc('0x12')](_0x29bc('0xe'),_0x5cf5eb[_0x29bc('0x13')],_0x38695b);_0x1ed073(_0x3e05b6[_0x29bc('0x12')](0x1f4,_0x5cf5eb[_0x29bc('0x13')]));});});};exports['ShowInterval']=function(_0x2db902){var _0x379b63=this;return new Promise(function(_0x51214f,_0x406ea8){return db['Interval']['find']({'raw':_0x2db902['options']?_0x2db902['options'][_0x29bc('0x14')]===undefined?!![]:![]:!![],'where':_0x2db902[_0x29bc('0x6')]?_0x2db902['options']['where']||null:null,'attributes':_0x2db902['options']?_0x2db902[_0x29bc('0x6')][_0x29bc('0x8')]||null:null,'include':_0x2db902['options']?_0x2db902[_0x29bc('0x6')][_0x29bc('0x9')]?_[_0x29bc('0xa')](_0x2db902[_0x29bc('0x6')]['include'],function(_0x587e1d){return{'model':db[_0x587e1d[_0x29bc('0xb')]],'as':_0x587e1d['as'],'attributes':_0x587e1d[_0x29bc('0x8')],'include':_0x587e1d['include']?_['map'](_0x587e1d['include'],function(_0x4a9d19){return{'model':db[_0x4a9d19[_0x29bc('0xb')]],'as':_0x4a9d19['as'],'attributes':_0x4a9d19[_0x29bc('0x8')],'include':_0x4a9d19[_0x29bc('0x9')]?_[_0x29bc('0xa')](_0x4a9d19[_0x29bc('0x9')],function(_0x5b5f2c){return{'model':db[_0x5b5f2c['model']],'as':_0x5b5f2c['as'],'attributes':_0x5b5f2c['attributes']};}):[]};}):[]};}):[]:[]})[_0x29bc('0xc')](function(_0x38ce24){logger[_0x29bc('0xd')](_0x29bc('0x15'),_0x2db902);logger[_0x29bc('0xf')](_0x29bc('0x15'),_0x2db902,JSON[_0x29bc('0x10')](_0x38ce24));_0x51214f(_0x38ce24);})[_0x29bc('0x11')](function(_0x36f89e){logger[_0x29bc('0x12')](_0x29bc('0x15'),_0x36f89e[_0x29bc('0x13')],_0x2db902);_0x406ea8(_0x379b63[_0x29bc('0x12')](0x1f4,_0x36f89e[_0x29bc('0x13')]));});});};function checkArrayOfIntervals(_0x147694,_0x5ed453){var _0x3eaec1=[];return db[_0x29bc('0x16')]['findAll']({'where':{'id':_0x147694}})[_0x29bc('0xc')](function(_0x59093c){_0x3eaec1=_0x59093c;return Promise[_0x29bc('0x17')](_0x3eaec1[_0x29bc('0xa')](function(_0x9f1948){return _0x9f1948[_0x29bc('0x18')](_0x5ed453);}));})[_0x29bc('0xc')](function(_0x2e479a){var _0x2c1029=_0x2e479a[_0x29bc('0x19')](function(_0xe24e18,_0x3ea7dc){return _0xe24e18||_0x3ea7dc;},![]);logger[_0x29bc('0xd')](util['format'](_0x29bc('0x1a'),_0x3eaec1['map'](function(_0x3ad8d1){return _0x3ad8d1[_0x29bc('0x1b')];})[_0x29bc('0x1c')](',\x20'),_0x3eaec1[_0x29bc('0xa')](function(_0x49756d){return _0x49756d['id'];})[_0x29bc('0x1c')](',\x20')));return _0x2c1029;});}function checkSingleInterval(_0x31df75,_0x4494df){return db[_0x29bc('0x16')]['findById'](_0x31df75)[_0x29bc('0xc')](function(_0x2c7413){if(_0x2c7413){logger[_0x29bc('0xd')](util['format'](_0x29bc('0x1d'),_0x2c7413['name'],_0x2c7413['id']));return _0x2c7413['ifTime'](_0x4494df);}});}exports['IntervalIftime']=function(_0x2dae6a){var _0x40d085=_0x2dae6a[_0x29bc('0x1e')];var _0x32fd13=Array[_0x29bc('0x1f')](_0x2dae6a['intervals'])?_0x2dae6a[_0x29bc('0x20')]:typeof _0x2dae6a['intervals']===_0x29bc('0x21')?[_0x2dae6a[_0x29bc('0x20')]]:[];var _0x2ba616=_0x2dae6a[_0x29bc('0x22')]||undefined;var _0x3d2919=![];if(_0x32fd13[_0x29bc('0x23')]){logger[_0x29bc('0xd')](util[_0x29bc('0x24')]('IntervalIftime:\x20interval\x20strings\x20=\x20%s',_0x32fd13[_0x29bc('0x1c')](';\x20')));}if(_0x2ba616){logger['info'](util['format'](_0x29bc('0x25'),_0x2ba616));}logger[_0x29bc('0xf')](_0x29bc('0x26'),_0x3d2919);logger['silly'](_0x29bc('0x27'),_0x2dae6a);return Promise[_0x29bc('0x28')]()[_0x29bc('0xc')](function(){if(Array['isArray'](_0x40d085)){return checkArrayOfIntervals(_0x40d085,_0x2ba616);}else if(_0x40d085){return checkSingleInterval(_0x40d085,_0x2ba616);}})[_0x29bc('0xc')](function(_0x22afb1){var _0x25431e=_0x32fd13[_0x29bc('0x19')](function(_0x4eb80b,_0x18bb5a){return _0x4eb80b||iftime(_0x18bb5a,_0x2ba616);},![]);_0x3d2919=_0x22afb1||_0x25431e;return _0x3d2919;})[_0x29bc('0x11')](function(_0xf092ae){logger[_0x29bc('0x12')](_0x29bc('0x27'),_0x2dae6a,_0xf092ae);throw this[_0x29bc('0x12')](0x1f4,_0xf092ae['message']);});};