Built motion from commit c738b9ac.|2.6.25
[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 _0x1a07=['isArray','intervals','length','IntervalIftime:\x20interval\x20strings\x20=\x20%s','IntervalIftime:\x20timezone\x20=\x20%s','Iftime','silly','lodash','util','../../mysqldb','../../utils/iftime','../../config/logger','GetInterval','Interval','findAll','options','raw','attributes','limit','include','model','map','then','debug','catch','message','error','ShowInterval','find','info','all','ifTime','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'];(function(_0x75c1d8,_0x17c769){var _0xfe9d28=function(_0x1ec794){while(--_0x1ec794){_0x75c1d8['push'](_0x75c1d8['shift']());}};_0xfe9d28(++_0x17c769);}(_0x1a07,0x1f3));var _0x71a0=function(_0x16e824,_0x23ab90){_0x16e824=_0x16e824-0x0;var _0x1745ea=_0x1a07[_0x16e824];return _0x1745ea;};'use strict';var _=require(_0x71a0('0x0'));var util=require(_0x71a0('0x1'));var db=require(_0x71a0('0x2'))['db'];var iftime=require(_0x71a0('0x3'))['iftime'];var logger=require(_0x71a0('0x4'))('rpc');exports[_0x71a0('0x5')]=function(_0x41654b){var _0x57ea8c=this;return new Promise(function(_0x4e9771,_0x186b6c){return db[_0x71a0('0x6')][_0x71a0('0x7')]({'raw':_0x41654b['options']?_0x41654b[_0x71a0('0x8')][_0x71a0('0x9')]===undefined?!![]:![]:!![],'where':_0x41654b[_0x71a0('0x8')]?_0x41654b[_0x71a0('0x8')]['where']||null:null,'attributes':_0x41654b[_0x71a0('0x8')]?_0x41654b['options'][_0x71a0('0xa')]||null:null,'limit':_0x41654b[_0x71a0('0x8')]?_0x41654b['options'][_0x71a0('0xb')]||null:null,'include':_0x41654b[_0x71a0('0x8')]?_0x41654b[_0x71a0('0x8')][_0x71a0('0xc')]?_['map'](_0x41654b['options']['include'],function(_0x482771){return{'model':db[_0x482771[_0x71a0('0xd')]],'as':_0x482771['as'],'attributes':_0x482771[_0x71a0('0xa')],'include':_0x482771['include']?_[_0x71a0('0xe')](_0x482771[_0x71a0('0xc')],function(_0x216e95){return{'model':db[_0x216e95[_0x71a0('0xd')]],'as':_0x216e95['as'],'attributes':_0x216e95['attributes'],'include':_0x216e95[_0x71a0('0xc')]?_[_0x71a0('0xe')](_0x216e95[_0x71a0('0xc')],function(_0x455b17){return{'model':db[_0x455b17[_0x71a0('0xd')]],'as':_0x455b17['as'],'attributes':_0x455b17[_0x71a0('0xa')]};}):[]};}):[]};}):[]:[]})[_0x71a0('0xf')](function(_0x1c68a8){logger['info'](_0x71a0('0x5'),_0x41654b);logger[_0x71a0('0x10')](_0x71a0('0x5'),_0x41654b,JSON['stringify'](_0x1c68a8));_0x4e9771(_0x1c68a8);})[_0x71a0('0x11')](function(_0x946b99){logger['error'](_0x71a0('0x5'),_0x946b99[_0x71a0('0x12')],_0x41654b);_0x186b6c(_0x57ea8c[_0x71a0('0x13')](0x1f4,_0x946b99[_0x71a0('0x12')]));});});};exports[_0x71a0('0x14')]=function(_0x513352){var _0x334b40=this;return new Promise(function(_0x1bdfbc,_0x16fdea){return db[_0x71a0('0x6')][_0x71a0('0x15')]({'raw':_0x513352['options']?_0x513352['options']['raw']===undefined?!![]:![]:!![],'where':_0x513352[_0x71a0('0x8')]?_0x513352[_0x71a0('0x8')]['where']||null:null,'attributes':_0x513352[_0x71a0('0x8')]?_0x513352[_0x71a0('0x8')][_0x71a0('0xa')]||null:null,'include':_0x513352[_0x71a0('0x8')]?_0x513352[_0x71a0('0x8')][_0x71a0('0xc')]?_['map'](_0x513352[_0x71a0('0x8')][_0x71a0('0xc')],function(_0x397e81){return{'model':db[_0x397e81[_0x71a0('0xd')]],'as':_0x397e81['as'],'attributes':_0x397e81[_0x71a0('0xa')],'include':_0x397e81[_0x71a0('0xc')]?_[_0x71a0('0xe')](_0x397e81[_0x71a0('0xc')],function(_0x1d92ff){return{'model':db[_0x1d92ff[_0x71a0('0xd')]],'as':_0x1d92ff['as'],'attributes':_0x1d92ff[_0x71a0('0xa')],'include':_0x1d92ff['include']?_[_0x71a0('0xe')](_0x1d92ff[_0x71a0('0xc')],function(_0x1b0ed2){return{'model':db[_0x1b0ed2[_0x71a0('0xd')]],'as':_0x1b0ed2['as'],'attributes':_0x1b0ed2[_0x71a0('0xa')]};}):[]};}):[]};}):[]:[]})[_0x71a0('0xf')](function(_0x2bdeb7){logger[_0x71a0('0x16')](_0x71a0('0x14'),_0x513352);logger[_0x71a0('0x10')](_0x71a0('0x14'),_0x513352,JSON['stringify'](_0x2bdeb7));_0x1bdfbc(_0x2bdeb7);})[_0x71a0('0x11')](function(_0x497d4a){logger[_0x71a0('0x13')]('ShowInterval',_0x497d4a[_0x71a0('0x12')],_0x513352);_0x16fdea(_0x334b40[_0x71a0('0x13')](0x1f4,_0x497d4a[_0x71a0('0x12')]));});});};function checkArrayOfIntervals(_0x1c83f4,_0x1f6ff8){var _0x48eb3a=[];return db[_0x71a0('0x6')][_0x71a0('0x7')]({'where':{'id':_0x1c83f4}})['then'](function(_0x39d5dd){_0x48eb3a=_0x39d5dd;return Promise[_0x71a0('0x17')](_0x48eb3a['map'](function(_0x2df123){return _0x2df123[_0x71a0('0x18')](_0x1f6ff8);}));})['then'](function(_0x3fcb36){var _0x15697a=_0x3fcb36[_0x71a0('0x19')](function(_0x38f7e8,_0xbbb156){return _0x38f7e8||_0xbbb156;},![]);logger[_0x71a0('0x16')](util[_0x71a0('0x1a')](_0x71a0('0x1b'),_0x48eb3a[_0x71a0('0xe')](function(_0x1245ef){return _0x1245ef[_0x71a0('0x1c')];})[_0x71a0('0x1d')](',\x20'),_0x48eb3a[_0x71a0('0xe')](function(_0x299cd5){return _0x299cd5['id'];})[_0x71a0('0x1d')](',\x20')));return _0x15697a;});}function checkSingleInterval(_0x22791c,_0x3901de){return db[_0x71a0('0x6')][_0x71a0('0x1e')](_0x22791c)[_0x71a0('0xf')](function(_0x53b5ca){if(_0x53b5ca){logger['info'](util[_0x71a0('0x1a')](_0x71a0('0x1f'),_0x53b5ca[_0x71a0('0x1c')],_0x53b5ca['id']));return _0x53b5ca['ifTime'](_0x3901de);}});}exports[_0x71a0('0x20')]=function(_0x35f79e){var _0x1982a8=_0x35f79e[_0x71a0('0x21')];var _0x5c3768=Array[_0x71a0('0x22')](_0x35f79e[_0x71a0('0x23')])?_0x35f79e['intervals']:typeof _0x35f79e[_0x71a0('0x23')]==='string'?[_0x35f79e[_0x71a0('0x23')]]:[];var _0x1da8f6=_0x35f79e['timezone']||undefined;var _0x502203=![];if(_0x5c3768[_0x71a0('0x24')]){logger[_0x71a0('0x16')](util[_0x71a0('0x1a')](_0x71a0('0x25'),_0x5c3768[_0x71a0('0x1d')](';\x20')));}if(_0x1da8f6){logger[_0x71a0('0x16')](util['format'](_0x71a0('0x26'),_0x1da8f6));}logger[_0x71a0('0x10')](_0x71a0('0x27'),_0x502203);logger[_0x71a0('0x28')]('IntervalIftime',_0x35f79e);return Promise['resolve']()[_0x71a0('0xf')](function(){if(Array[_0x71a0('0x22')](_0x1982a8)){return checkArrayOfIntervals(_0x1982a8,_0x1da8f6);}else if(_0x1982a8){return checkSingleInterval(_0x1982a8,_0x1da8f6);}})[_0x71a0('0xf')](function(_0x49c24a){var _0x47bf1b=_0x5c3768[_0x71a0('0x19')](function(_0x21a15b,_0x1532aa){return _0x21a15b||iftime(_0x1532aa,_0x1da8f6);},![]);_0x502203=_0x49c24a||_0x47bf1b;return _0x502203;})['catch'](function(_0x474fcb){logger[_0x71a0('0x13')](_0x71a0('0x20'),_0x35f79e,_0x474fcb);throw this['error'](0x1f4,_0x474fcb['message']);});};