Built motion from commit 06eb8eb0.|2.6.31
[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 _0x41c5=['options','raw','where','attributes','limit','map','include','model','info','debug','stringify','catch','error','message','ShowInterval','then','all','format','name','join','IntervalIftime:\x20interval\x20=\x20%s\x20(id\x20=\x20%s)','ifTime','IntervalIftime','intervalIds','intervals','string','length','IntervalIftime:\x20interval\x20strings\x20=\x20%s','IntervalIftime:\x20timezone\x20=\x20%s','Iftime','silly','resolve','isArray','reduce','lodash','util','../../mysqldb','../../utils/iftime','../../config/logger','GetInterval','Interval','findAll'];(function(_0x43aee5,_0x11268b){var _0x76d1d0=function(_0x3faee6){while(--_0x3faee6){_0x43aee5['push'](_0x43aee5['shift']());}};_0x76d1d0(++_0x11268b);}(_0x41c5,0x1c6));var _0x541c=function(_0x40a045,_0x516f0e){_0x40a045=_0x40a045-0x0;var _0x1a687c=_0x41c5[_0x40a045];return _0x1a687c;};'use strict';var _=require(_0x541c('0x0'));var util=require(_0x541c('0x1'));var db=require(_0x541c('0x2'))['db'];var iftime=require(_0x541c('0x3'))['iftime'];var logger=require(_0x541c('0x4'))('rpc');exports[_0x541c('0x5')]=function(_0x5c7994){var _0x2f35cc=this;return new Promise(function(_0x2e2b2a,_0x158772){return db[_0x541c('0x6')][_0x541c('0x7')]({'raw':_0x5c7994[_0x541c('0x8')]?_0x5c7994[_0x541c('0x8')][_0x541c('0x9')]===undefined?!![]:![]:!![],'where':_0x5c7994[_0x541c('0x8')]?_0x5c7994[_0x541c('0x8')][_0x541c('0xa')]||null:null,'attributes':_0x5c7994[_0x541c('0x8')]?_0x5c7994[_0x541c('0x8')][_0x541c('0xb')]||null:null,'limit':_0x5c7994[_0x541c('0x8')]?_0x5c7994[_0x541c('0x8')][_0x541c('0xc')]||null:null,'include':_0x5c7994[_0x541c('0x8')]?_0x5c7994[_0x541c('0x8')]['include']?_[_0x541c('0xd')](_0x5c7994[_0x541c('0x8')][_0x541c('0xe')],function(_0x52e443){return{'model':db[_0x52e443[_0x541c('0xf')]],'as':_0x52e443['as'],'attributes':_0x52e443[_0x541c('0xb')],'include':_0x52e443[_0x541c('0xe')]?_[_0x541c('0xd')](_0x52e443[_0x541c('0xe')],function(_0x3be031){return{'model':db[_0x3be031[_0x541c('0xf')]],'as':_0x3be031['as'],'attributes':_0x3be031['attributes'],'include':_0x3be031[_0x541c('0xe')]?_[_0x541c('0xd')](_0x3be031[_0x541c('0xe')],function(_0x5ab8c6){return{'model':db[_0x5ab8c6[_0x541c('0xf')]],'as':_0x5ab8c6['as'],'attributes':_0x5ab8c6[_0x541c('0xb')]};}):[]};}):[]};}):[]:[]})['then'](function(_0x1a09a9){logger[_0x541c('0x10')](_0x541c('0x5'),_0x5c7994);logger[_0x541c('0x11')](_0x541c('0x5'),_0x5c7994,JSON[_0x541c('0x12')](_0x1a09a9));_0x2e2b2a(_0x1a09a9);})[_0x541c('0x13')](function(_0x35adef){logger[_0x541c('0x14')](_0x541c('0x5'),_0x35adef[_0x541c('0x15')],_0x5c7994);_0x158772(_0x2f35cc[_0x541c('0x14')](0x1f4,_0x35adef[_0x541c('0x15')]));});});};exports['ShowInterval']=function(_0x172892){var _0x11e08a=this;return new Promise(function(_0x427ef7,_0x5318e2){return db[_0x541c('0x6')]['find']({'raw':_0x172892[_0x541c('0x8')]?_0x172892['options']['raw']===undefined?!![]:![]:!![],'where':_0x172892['options']?_0x172892[_0x541c('0x8')]['where']||null:null,'attributes':_0x172892['options']?_0x172892[_0x541c('0x8')][_0x541c('0xb')]||null:null,'include':_0x172892[_0x541c('0x8')]?_0x172892[_0x541c('0x8')][_0x541c('0xe')]?_[_0x541c('0xd')](_0x172892[_0x541c('0x8')][_0x541c('0xe')],function(_0x30893d){return{'model':db[_0x30893d[_0x541c('0xf')]],'as':_0x30893d['as'],'attributes':_0x30893d[_0x541c('0xb')],'include':_0x30893d[_0x541c('0xe')]?_[_0x541c('0xd')](_0x30893d[_0x541c('0xe')],function(_0x9aa4ef){return{'model':db[_0x9aa4ef['model']],'as':_0x9aa4ef['as'],'attributes':_0x9aa4ef[_0x541c('0xb')],'include':_0x9aa4ef[_0x541c('0xe')]?_['map'](_0x9aa4ef['include'],function(_0x333a16){return{'model':db[_0x333a16[_0x541c('0xf')]],'as':_0x333a16['as'],'attributes':_0x333a16['attributes']};}):[]};}):[]};}):[]:[]})['then'](function(_0x5da236){logger[_0x541c('0x10')](_0x541c('0x16'),_0x172892);logger[_0x541c('0x11')](_0x541c('0x16'),_0x172892,JSON['stringify'](_0x5da236));_0x427ef7(_0x5da236);})[_0x541c('0x13')](function(_0x10a1e1){logger[_0x541c('0x14')](_0x541c('0x16'),_0x10a1e1[_0x541c('0x15')],_0x172892);_0x5318e2(_0x11e08a[_0x541c('0x14')](0x1f4,_0x10a1e1['message']));});});};function checkArrayOfIntervals(_0x5b9da1,_0x390725){var _0x2db7fa=[];return db[_0x541c('0x6')][_0x541c('0x7')]({'where':{'id':_0x5b9da1}})[_0x541c('0x17')](function(_0x26c206){_0x2db7fa=_0x26c206;return Promise[_0x541c('0x18')](_0x2db7fa[_0x541c('0xd')](function(_0x4e273a){return _0x4e273a['ifTime'](_0x390725);}));})[_0x541c('0x17')](function(_0x572810){var _0x55c3d3=_0x572810['reduce'](function(_0x332eb5,_0x1f2db){return _0x332eb5||_0x1f2db;},![]);logger[_0x541c('0x10')](util[_0x541c('0x19')]('IntervalIftime:\x20intervals\x20=\x20%s\x20(ids\x20=\x20%s)',_0x2db7fa['map'](function(_0x11fcc5){return _0x11fcc5[_0x541c('0x1a')];})[_0x541c('0x1b')](',\x20'),_0x2db7fa[_0x541c('0xd')](function(_0x5d6c93){return _0x5d6c93['id'];})[_0x541c('0x1b')](',\x20')));return _0x55c3d3;});}function checkSingleInterval(_0x250478,_0x257ce3){return db['Interval']['findById'](_0x250478)[_0x541c('0x17')](function(_0x3b6787){if(_0x3b6787){logger[_0x541c('0x10')](util[_0x541c('0x19')](_0x541c('0x1c'),_0x3b6787[_0x541c('0x1a')],_0x3b6787['id']));return _0x3b6787[_0x541c('0x1d')](_0x257ce3);}});}exports[_0x541c('0x1e')]=function(_0x4a15f0){var _0x260038=_0x4a15f0[_0x541c('0x1f')];var _0x40cace=Array['isArray'](_0x4a15f0[_0x541c('0x20')])?_0x4a15f0[_0x541c('0x20')]:typeof _0x4a15f0[_0x541c('0x20')]===_0x541c('0x21')?[_0x4a15f0['intervals']]:[];var _0x4b52bf=_0x4a15f0['timezone']||undefined;var _0x45a067=![];if(_0x40cace[_0x541c('0x22')]){logger['info'](util['format'](_0x541c('0x23'),_0x40cace['join'](';\x20')));}if(_0x4b52bf){logger[_0x541c('0x10')](util[_0x541c('0x19')](_0x541c('0x24'),_0x4b52bf));}logger['debug'](_0x541c('0x25'),_0x45a067);logger[_0x541c('0x26')]('IntervalIftime',_0x4a15f0);return Promise[_0x541c('0x27')]()[_0x541c('0x17')](function(){if(Array[_0x541c('0x28')](_0x260038)){return checkArrayOfIntervals(_0x260038,_0x4b52bf);}else if(_0x260038){return checkSingleInterval(_0x260038,_0x4b52bf);}})[_0x541c('0x17')](function(_0x406368){var _0x5de44f=_0x40cace[_0x541c('0x29')](function(_0x5479ab,_0x1f21c3){return _0x5479ab||iftime(_0x1f21c3,_0x4b52bf);},![]);_0x45a067=_0x406368||_0x5de44f;return _0x45a067;})[_0x541c('0x13')](function(_0x56288e){logger[_0x541c('0x14')](_0x541c('0x1e'),_0x4a15f0,_0x56288e);throw this[_0x541c('0x14')](0x1f4,_0x56288e[_0x541c('0x15')]);});};