Built motion from commit e02f907f.|2.6.14
[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 _0x69bf=['limit','include','map','model','then','info','stringify','catch','message','ShowInterval','raw','debug','error','findAll','all','ifTime','reduce','IntervalIftime:\x20intervals\x20=\x20%s\x20(ids\x20=\x20%s)','IntervalIftime:\x20interval\x20=\x20%s\x20(id\x20=\x20%s)','name','IntervalIftime','intervalIds','isArray','intervals','string','timezone','format','IntervalIftime:\x20interval\x20strings\x20=\x20%s','join','IntervalIftime:\x20timezone\x20=\x20%s','silly','resolve','../../mysqldb','iftime','rpc','GetInterval','Interval','options','where','attributes'];(function(_0x44646d,_0x31f9cd){var _0x1f125e=function(_0x5a16a1){while(--_0x5a16a1){_0x44646d['push'](_0x44646d['shift']());}};_0x1f125e(++_0x31f9cd);}(_0x69bf,0x160));var _0xf69b=function(_0x122ef9,_0x451d2a){_0x122ef9=_0x122ef9-0x0;var _0x42fba0=_0x69bf[_0x122ef9];return _0x42fba0;};'use strict';var _=require('lodash');var util=require('util');var db=require(_0xf69b('0x0'))['db'];var iftime=require('../../utils/iftime')[_0xf69b('0x1')];var logger=require('../../config/logger')(_0xf69b('0x2'));exports[_0xf69b('0x3')]=function(_0x4b51f5){var _0x15bccb=this;return new Promise(function(_0x36184a,_0xe6a4b1){return db[_0xf69b('0x4')]['findAll']({'raw':_0x4b51f5['options']?_0x4b51f5[_0xf69b('0x5')]['raw']===undefined?!![]:![]:!![],'where':_0x4b51f5['options']?_0x4b51f5[_0xf69b('0x5')][_0xf69b('0x6')]||null:null,'attributes':_0x4b51f5['options']?_0x4b51f5[_0xf69b('0x5')][_0xf69b('0x7')]||null:null,'limit':_0x4b51f5[_0xf69b('0x5')]?_0x4b51f5[_0xf69b('0x5')][_0xf69b('0x8')]||null:null,'include':_0x4b51f5[_0xf69b('0x5')]?_0x4b51f5[_0xf69b('0x5')][_0xf69b('0x9')]?_[_0xf69b('0xa')](_0x4b51f5[_0xf69b('0x5')][_0xf69b('0x9')],function(_0x132097){return{'model':db[_0x132097[_0xf69b('0xb')]],'as':_0x132097['as'],'attributes':_0x132097[_0xf69b('0x7')],'include':_0x132097[_0xf69b('0x9')]?_[_0xf69b('0xa')](_0x132097[_0xf69b('0x9')],function(_0x1b4a2a){return{'model':db[_0x1b4a2a['model']],'as':_0x1b4a2a['as'],'attributes':_0x1b4a2a[_0xf69b('0x7')],'include':_0x1b4a2a[_0xf69b('0x9')]?_[_0xf69b('0xa')](_0x1b4a2a[_0xf69b('0x9')],function(_0x5aa197){return{'model':db[_0x5aa197[_0xf69b('0xb')]],'as':_0x5aa197['as'],'attributes':_0x5aa197[_0xf69b('0x7')]};}):[]};}):[]};}):[]:[]})[_0xf69b('0xc')](function(_0x426058){logger[_0xf69b('0xd')](_0xf69b('0x3'),_0x4b51f5);logger['debug'](_0xf69b('0x3'),_0x4b51f5,JSON[_0xf69b('0xe')](_0x426058));_0x36184a(_0x426058);})[_0xf69b('0xf')](function(_0x4a04e1){logger['error'](_0xf69b('0x3'),_0x4a04e1[_0xf69b('0x10')],_0x4b51f5);_0xe6a4b1(_0x15bccb['error'](0x1f4,_0x4a04e1[_0xf69b('0x10')]));});});};exports[_0xf69b('0x11')]=function(_0x1eb2d6){var _0x5e2bfc=this;return new Promise(function(_0x57f1a9,_0x5f5575){return db['Interval']['find']({'raw':_0x1eb2d6[_0xf69b('0x5')]?_0x1eb2d6['options'][_0xf69b('0x12')]===undefined?!![]:![]:!![],'where':_0x1eb2d6[_0xf69b('0x5')]?_0x1eb2d6[_0xf69b('0x5')]['where']||null:null,'attributes':_0x1eb2d6['options']?_0x1eb2d6[_0xf69b('0x5')][_0xf69b('0x7')]||null:null,'include':_0x1eb2d6[_0xf69b('0x5')]?_0x1eb2d6[_0xf69b('0x5')][_0xf69b('0x9')]?_[_0xf69b('0xa')](_0x1eb2d6[_0xf69b('0x5')][_0xf69b('0x9')],function(_0x534306){return{'model':db[_0x534306[_0xf69b('0xb')]],'as':_0x534306['as'],'attributes':_0x534306[_0xf69b('0x7')],'include':_0x534306[_0xf69b('0x9')]?_[_0xf69b('0xa')](_0x534306['include'],function(_0x544e95){return{'model':db[_0x544e95[_0xf69b('0xb')]],'as':_0x544e95['as'],'attributes':_0x544e95['attributes'],'include':_0x544e95[_0xf69b('0x9')]?_[_0xf69b('0xa')](_0x544e95[_0xf69b('0x9')],function(_0xcb8091){return{'model':db[_0xcb8091[_0xf69b('0xb')]],'as':_0xcb8091['as'],'attributes':_0xcb8091[_0xf69b('0x7')]};}):[]};}):[]};}):[]:[]})[_0xf69b('0xc')](function(_0x20cf74){logger[_0xf69b('0xd')](_0xf69b('0x11'),_0x1eb2d6);logger[_0xf69b('0x13')](_0xf69b('0x11'),_0x1eb2d6,JSON[_0xf69b('0xe')](_0x20cf74));_0x57f1a9(_0x20cf74);})[_0xf69b('0xf')](function(_0xa472b1){logger[_0xf69b('0x14')]('ShowInterval',_0xa472b1[_0xf69b('0x10')],_0x1eb2d6);_0x5f5575(_0x5e2bfc[_0xf69b('0x14')](0x1f4,_0xa472b1[_0xf69b('0x10')]));});});};function checkArrayOfIntervals(_0x13fc39,_0x12acc0){var _0x22a2fc=[];return db[_0xf69b('0x4')][_0xf69b('0x15')]({'where':{'id':_0x13fc39}})[_0xf69b('0xc')](function(_0x465daf){_0x22a2fc=_0x465daf;return Promise[_0xf69b('0x16')](_0x22a2fc[_0xf69b('0xa')](function(_0x579381){return _0x579381[_0xf69b('0x17')](_0x12acc0);}));})[_0xf69b('0xc')](function(_0xca3d20){var _0x3147d7=_0xca3d20[_0xf69b('0x18')](function(_0x34238c,_0x1a7820){return _0x34238c||_0x1a7820;},![]);logger[_0xf69b('0xd')](util['format'](_0xf69b('0x19'),_0x22a2fc[_0xf69b('0xa')](function(_0x2c4f96){return _0x2c4f96['name'];})['join'](',\x20'),_0x22a2fc[_0xf69b('0xa')](function(_0x29dae2){return _0x29dae2['id'];})['join'](',\x20')));return _0x3147d7;});}function checkSingleInterval(_0x2e5363,_0x377b31){return db[_0xf69b('0x4')]['findById'](_0x2e5363)[_0xf69b('0xc')](function(_0x578ef2){if(_0x578ef2){logger[_0xf69b('0xd')](util['format'](_0xf69b('0x1a'),_0x578ef2[_0xf69b('0x1b')],_0x578ef2['id']));return _0x578ef2[_0xf69b('0x17')](_0x377b31);}});}exports[_0xf69b('0x1c')]=function(_0x4c6725){var _0x5dd2f9=_0x4c6725[_0xf69b('0x1d')];var _0x2c9de5=Array[_0xf69b('0x1e')](_0x4c6725[_0xf69b('0x1f')])?_0x4c6725['intervals']:typeof _0x4c6725[_0xf69b('0x1f')]===_0xf69b('0x20')?[_0x4c6725['intervals']]:[];var _0x2b2f15=_0x4c6725[_0xf69b('0x21')]||undefined;var _0x4dd14f=![];if(_0x2c9de5['length']){logger[_0xf69b('0xd')](util[_0xf69b('0x22')](_0xf69b('0x23'),_0x2c9de5[_0xf69b('0x24')](';\x20')));}if(_0x2b2f15){logger[_0xf69b('0xd')](util[_0xf69b('0x22')](_0xf69b('0x25'),_0x2b2f15));}logger[_0xf69b('0x13')]('Iftime',_0x4dd14f);logger[_0xf69b('0x26')](_0xf69b('0x1c'),_0x4c6725);return Promise[_0xf69b('0x27')]()[_0xf69b('0xc')](function(){if(Array['isArray'](_0x5dd2f9)){return checkArrayOfIntervals(_0x5dd2f9,_0x2b2f15);}else if(_0x5dd2f9){return checkSingleInterval(_0x5dd2f9,_0x2b2f15);}})[_0xf69b('0xc')](function(_0x302ba8){var _0x574b96=_0x2c9de5[_0xf69b('0x18')](function(_0x40b3c6,_0x46434a){return _0x40b3c6||iftime(_0x46434a,_0x2b2f15);},![]);_0x4dd14f=_0x302ba8||_0x574b96;return _0x4dd14f;})[_0xf69b('0xf')](function(_0x2a2d45){logger[_0xf69b('0x14')](_0xf69b('0x1c'),_0x4c6725,_0x2a2d45);throw this['error'](0x1f4,_0x2a2d45[_0xf69b('0x10')]);});};