Built motion from commit 97153652.|2.6.26
[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 _0xaa89=['map','model','info','GetInterval','debug','stringify','catch','error','message','ShowInterval','find','where','then','all','ifTime','reduce','format','IntervalIftime:\x20intervals\x20=\x20%s\x20(ids\x20=\x20%s)','join','IntervalIftime:\x20interval\x20=\x20%s\x20(id\x20=\x20%s)','name','IntervalIftime','intervalIds','intervals','string','timezone','length','IntervalIftime:\x20interval\x20strings\x20=\x20%s','IntervalIftime:\x20timezone\x20=\x20%s','Iftime','silly','resolve','util','../../mysqldb','../../utils/iftime','rpc','Interval','findAll','options','raw','attributes','include'];(function(_0x2be8c2,_0x14a4b5){var _0x97f531=function(_0xcee58d){while(--_0xcee58d){_0x2be8c2['push'](_0x2be8c2['shift']());}};_0x97f531(++_0x14a4b5);}(_0xaa89,0x170));var _0x9aa8=function(_0x25a0b9,_0x86e28f){_0x25a0b9=_0x25a0b9-0x0;var _0x30b9ab=_0xaa89[_0x25a0b9];return _0x30b9ab;};'use strict';var _=require('lodash');var util=require(_0x9aa8('0x0'));var db=require(_0x9aa8('0x1'))['db'];var iftime=require(_0x9aa8('0x2'))['iftime'];var logger=require('../../config/logger')(_0x9aa8('0x3'));exports['GetInterval']=function(_0x1ba643){var _0x292b8e=this;return new Promise(function(_0x297e6e,_0x539fde){return db[_0x9aa8('0x4')][_0x9aa8('0x5')]({'raw':_0x1ba643[_0x9aa8('0x6')]?_0x1ba643[_0x9aa8('0x6')][_0x9aa8('0x7')]===undefined?!![]:![]:!![],'where':_0x1ba643[_0x9aa8('0x6')]?_0x1ba643[_0x9aa8('0x6')]['where']||null:null,'attributes':_0x1ba643[_0x9aa8('0x6')]?_0x1ba643['options'][_0x9aa8('0x8')]||null:null,'limit':_0x1ba643[_0x9aa8('0x6')]?_0x1ba643[_0x9aa8('0x6')]['limit']||null:null,'include':_0x1ba643[_0x9aa8('0x6')]?_0x1ba643[_0x9aa8('0x6')][_0x9aa8('0x9')]?_[_0x9aa8('0xa')](_0x1ba643[_0x9aa8('0x6')][_0x9aa8('0x9')],function(_0x5a3ea5){return{'model':db[_0x5a3ea5[_0x9aa8('0xb')]],'as':_0x5a3ea5['as'],'attributes':_0x5a3ea5[_0x9aa8('0x8')],'include':_0x5a3ea5[_0x9aa8('0x9')]?_[_0x9aa8('0xa')](_0x5a3ea5['include'],function(_0x453187){return{'model':db[_0x453187[_0x9aa8('0xb')]],'as':_0x453187['as'],'attributes':_0x453187[_0x9aa8('0x8')],'include':_0x453187['include']?_[_0x9aa8('0xa')](_0x453187['include'],function(_0x1afc08){return{'model':db[_0x1afc08[_0x9aa8('0xb')]],'as':_0x1afc08['as'],'attributes':_0x1afc08[_0x9aa8('0x8')]};}):[]};}):[]};}):[]:[]})['then'](function(_0x1b4360){logger[_0x9aa8('0xc')](_0x9aa8('0xd'),_0x1ba643);logger[_0x9aa8('0xe')](_0x9aa8('0xd'),_0x1ba643,JSON[_0x9aa8('0xf')](_0x1b4360));_0x297e6e(_0x1b4360);})[_0x9aa8('0x10')](function(_0x32a127){logger[_0x9aa8('0x11')](_0x9aa8('0xd'),_0x32a127['message'],_0x1ba643);_0x539fde(_0x292b8e['error'](0x1f4,_0x32a127[_0x9aa8('0x12')]));});});};exports[_0x9aa8('0x13')]=function(_0x38edff){var _0x59ad08=this;return new Promise(function(_0x2948bc,_0x415d8e){return db[_0x9aa8('0x4')][_0x9aa8('0x14')]({'raw':_0x38edff[_0x9aa8('0x6')]?_0x38edff['options'][_0x9aa8('0x7')]===undefined?!![]:![]:!![],'where':_0x38edff[_0x9aa8('0x6')]?_0x38edff['options'][_0x9aa8('0x15')]||null:null,'attributes':_0x38edff[_0x9aa8('0x6')]?_0x38edff['options']['attributes']||null:null,'include':_0x38edff[_0x9aa8('0x6')]?_0x38edff[_0x9aa8('0x6')]['include']?_[_0x9aa8('0xa')](_0x38edff['options'][_0x9aa8('0x9')],function(_0x5ed018){return{'model':db[_0x5ed018[_0x9aa8('0xb')]],'as':_0x5ed018['as'],'attributes':_0x5ed018['attributes'],'include':_0x5ed018[_0x9aa8('0x9')]?_[_0x9aa8('0xa')](_0x5ed018[_0x9aa8('0x9')],function(_0x22eafa){return{'model':db[_0x22eafa[_0x9aa8('0xb')]],'as':_0x22eafa['as'],'attributes':_0x22eafa[_0x9aa8('0x8')],'include':_0x22eafa[_0x9aa8('0x9')]?_[_0x9aa8('0xa')](_0x22eafa[_0x9aa8('0x9')],function(_0x5c0c73){return{'model':db[_0x5c0c73[_0x9aa8('0xb')]],'as':_0x5c0c73['as'],'attributes':_0x5c0c73[_0x9aa8('0x8')]};}):[]};}):[]};}):[]:[]})[_0x9aa8('0x16')](function(_0x46cb5f){logger[_0x9aa8('0xc')](_0x9aa8('0x13'),_0x38edff);logger[_0x9aa8('0xe')](_0x9aa8('0x13'),_0x38edff,JSON[_0x9aa8('0xf')](_0x46cb5f));_0x2948bc(_0x46cb5f);})[_0x9aa8('0x10')](function(_0x3e5863){logger[_0x9aa8('0x11')](_0x9aa8('0x13'),_0x3e5863[_0x9aa8('0x12')],_0x38edff);_0x415d8e(_0x59ad08[_0x9aa8('0x11')](0x1f4,_0x3e5863[_0x9aa8('0x12')]));});});};function checkArrayOfIntervals(_0xf3e34,_0x1220e0){var _0xb969f9=[];return db[_0x9aa8('0x4')][_0x9aa8('0x5')]({'where':{'id':_0xf3e34}})[_0x9aa8('0x16')](function(_0x2fa6cf){_0xb969f9=_0x2fa6cf;return Promise[_0x9aa8('0x17')](_0xb969f9[_0x9aa8('0xa')](function(_0x3a2036){return _0x3a2036[_0x9aa8('0x18')](_0x1220e0);}));})[_0x9aa8('0x16')](function(_0x480ca4){var _0x36b001=_0x480ca4[_0x9aa8('0x19')](function(_0x1b82e1,_0x2c518d){return _0x1b82e1||_0x2c518d;},![]);logger[_0x9aa8('0xc')](util[_0x9aa8('0x1a')](_0x9aa8('0x1b'),_0xb969f9[_0x9aa8('0xa')](function(_0x3c642d){return _0x3c642d['name'];})[_0x9aa8('0x1c')](',\x20'),_0xb969f9[_0x9aa8('0xa')](function(_0x5d4dc2){return _0x5d4dc2['id'];})[_0x9aa8('0x1c')](',\x20')));return _0x36b001;});}function checkSingleInterval(_0x1bf9c6,_0xf9a911){return db[_0x9aa8('0x4')]['findById'](_0x1bf9c6)[_0x9aa8('0x16')](function(_0x4273f7){if(_0x4273f7){logger[_0x9aa8('0xc')](util['format'](_0x9aa8('0x1d'),_0x4273f7[_0x9aa8('0x1e')],_0x4273f7['id']));return _0x4273f7[_0x9aa8('0x18')](_0xf9a911);}});}exports[_0x9aa8('0x1f')]=function(_0x2b937d){var _0x25bd32=_0x2b937d[_0x9aa8('0x20')];var _0x6d2d80=Array['isArray'](_0x2b937d[_0x9aa8('0x21')])?_0x2b937d[_0x9aa8('0x21')]:typeof _0x2b937d[_0x9aa8('0x21')]===_0x9aa8('0x22')?[_0x2b937d[_0x9aa8('0x21')]]:[];var _0x513bfe=_0x2b937d[_0x9aa8('0x23')]||undefined;var _0x308f65=![];if(_0x6d2d80[_0x9aa8('0x24')]){logger[_0x9aa8('0xc')](util['format'](_0x9aa8('0x25'),_0x6d2d80['join'](';\x20')));}if(_0x513bfe){logger[_0x9aa8('0xc')](util[_0x9aa8('0x1a')](_0x9aa8('0x26'),_0x513bfe));}logger[_0x9aa8('0xe')](_0x9aa8('0x27'),_0x308f65);logger[_0x9aa8('0x28')]('IntervalIftime',_0x2b937d);return Promise[_0x9aa8('0x29')]()[_0x9aa8('0x16')](function(){if(Array['isArray'](_0x25bd32)){return checkArrayOfIntervals(_0x25bd32,_0x513bfe);}else if(_0x25bd32){return checkSingleInterval(_0x25bd32,_0x513bfe);}})[_0x9aa8('0x16')](function(_0x464165){var _0x32926f=_0x6d2d80[_0x9aa8('0x19')](function(_0x1c9c1f,_0x44b548){return _0x1c9c1f||iftime(_0x44b548,_0x513bfe);},![]);_0x308f65=_0x464165||_0x32926f;return _0x308f65;})[_0x9aa8('0x10')](function(_0x1cd0e3){logger[_0x9aa8('0x11')](_0x9aa8('0x1f'),_0x2b937d,_0x1cd0e3);throw this['error'](0x1f4,_0x1cd0e3[_0x9aa8('0x12')]);});};