Built motion from commit (unavailable).|2.5.0
[motion2.git] / server / api / dashboardItem / dashboardItem.controller.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 _0xb066=['../../config/utils','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./dashboardItem.socket','register','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','reject','save','update','then','destroy','error','stack','name','send','show','params','model','DashboardItem','rawAttributes','query','keys','filters','intersection','attributes','fields','length','includeAll','merge','options','catch','find','type','attrUrl','attrs','value','https://','attrPath','clock','attrHourFormat','HH:mm:ss','attrTimezone','0.00','attrFontSize','counter','attrMetric','attrVoiceQueues','multibar-chart','pie-chart','attrSerie1','total','attrSerie2','attrSerie3','web-report','attrReport','reportType','attrRefresh','widgetAttributes:\x20%s','create','body','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','path','sox','to-csv','lodash','squel','jsforce','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api'];(function(_0x139dfd,_0x23a3b9){var _0x31d100=function(_0xeeaba8){while(--_0xeeaba8){_0x139dfd['push'](_0x139dfd['shift']());}};_0x31d100(++_0x23a3b9);}(_0xb066,0x1c0));var _0x6b06=function(_0x266b5d,_0x1d65ac){_0x266b5d=_0x266b5d-0x0;var _0x4f0766=_0xb066[_0x266b5d];return _0x4f0766;};'use strict';var pdf=require(_0x6b06('0x0'));var emlformat=require(_0x6b06('0x1'));var rimraf=require(_0x6b06('0x2'));var zipdir=require(_0x6b06('0x3'));var jsonpatch=require(_0x6b06('0x4'));var rp=require(_0x6b06('0x5'));var moment=require('moment');var BPromise=require(_0x6b06('0x6'));var Mustache=require(_0x6b06('0x7'));var util=require('util');var path=require(_0x6b06('0x8'));var sox=require(_0x6b06('0x9'));var csv=require(_0x6b06('0xa'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x6b06('0xb'));var squel=require(_0x6b06('0xc'));var crypto=require('crypto');var jsforce=require(_0x6b06('0xd'));var deskjs=require('desk.js');var toCsv=require(_0x6b06('0xa'));var querystring=require(_0x6b06('0xe'));var Papa=require(_0x6b06('0xf'));var Redis=require(_0x6b06('0x10'));var authService=require('../../components/auth/service');var qs=require(_0x6b06('0x11'));var as=require(_0x6b06('0x12'));var hardwareService=require(_0x6b06('0x13'));var logger=require(_0x6b06('0x14'))(_0x6b06('0x15'));var utils=require(_0x6b06('0x16'));var config=require('../../config/environment');var db=require(_0x6b06('0x17'))['db'];config[_0x6b06('0x18')]=_[_0x6b06('0x19')](config[_0x6b06('0x18')],{'host':_0x6b06('0x1a'),'port':0x18eb});var socket=require(_0x6b06('0x1b'))(new Redis(config[_0x6b06('0x18')]));require(_0x6b06('0x1c'))[_0x6b06('0x1d')](socket);function respondWithStatusCode(_0x3e658b,_0x2e4c78){_0x2e4c78=_0x2e4c78||0xcc;return function(_0x152e59){if(_0x152e59){return _0x3e658b[_0x6b06('0x1e')](_0x2e4c78);}return _0x3e658b[_0x6b06('0x1f')](_0x2e4c78)[_0x6b06('0x20')]();};}function respondWithResult(_0x3a42ad,_0x5d96b6){_0x5d96b6=_0x5d96b6||0xc8;return function(_0x4e36d6){if(_0x4e36d6){return _0x3a42ad[_0x6b06('0x1f')](_0x5d96b6)[_0x6b06('0x21')](_0x4e36d6);}};}function respondWithFilteredResult(_0x42b149,_0x2ae19c){return function(_0x2ef077){if(_0x2ef077){var _0x49b7dd=_0x2ef077[_0x6b06('0x22')],_0x2884c5=_0x2ae19c[_0x6b06('0x23')],_0x24c043=_0x2ae19c[_0x6b06('0x23')]+_0x2ae19c[_0x6b06('0x24')],_0x4d8ff7;if(_0x24c043>=_0x49b7dd){_0x24c043=_0x49b7dd;_0x4d8ff7=0xc8;}else{_0x4d8ff7=0xce;}_0x42b149[_0x6b06('0x1f')](_0x4d8ff7);return _0x42b149[_0x6b06('0x25')](_0x6b06('0x26'),_0x2884c5+'-'+_0x24c043+'/'+_0x49b7dd)[_0x6b06('0x21')](_0x2ef077);}return null;};}function patchUpdates(_0x232bb5){return function(_0xb3b144){try{jsonpatch[_0x6b06('0x27')](_0xb3b144,_0x232bb5,!![]);}catch(_0x470da9){return BPromise[_0x6b06('0x28')](_0x470da9);}return _0xb3b144[_0x6b06('0x29')]();};}function saveUpdates(_0x1804f8,_0x3e0b2e){return function(_0x3e77b0){if(_0x3e77b0){return _0x3e77b0[_0x6b06('0x2a')](_0x1804f8)[_0x6b06('0x2b')](function(_0x166234){return _0x166234;});}return null;};}function removeEntity(_0x13f6fc,_0x57eba0){return function(_0x4fd6cb){if(_0x4fd6cb){return _0x4fd6cb[_0x6b06('0x2c')]()[_0x6b06('0x2b')](function(){_0x13f6fc[_0x6b06('0x1f')](0xcc)[_0x6b06('0x20')]();});}};}function handleEntityNotFound(_0x3ee22a,_0x5050f0){return function(_0x3004d4){if(!_0x3004d4){_0x3ee22a[_0x6b06('0x1e')](0x194);}return _0x3004d4;};}function handleError(_0x178a69,_0x513a23){_0x513a23=_0x513a23||0x1f4;return function(_0x318729){logger[_0x6b06('0x2d')](_0x318729[_0x6b06('0x2e')]);if(_0x318729[_0x6b06('0x2f')]){delete _0x318729[_0x6b06('0x2f')];}_0x178a69[_0x6b06('0x1f')](_0x513a23)[_0x6b06('0x30')](_0x318729);};}exports[_0x6b06('0x31')]=function(_0xf59a2,_0x324961){var _0xf2ca21={'raw':![],'where':{'id':_0xf59a2[_0x6b06('0x32')]['id']}},_0x1c5dca={};_0x1c5dca[_0x6b06('0x33')]=_['keys'](db[_0x6b06('0x34')][_0x6b06('0x35')]);_0x1c5dca[_0x6b06('0x36')]=_[_0x6b06('0x37')](_0xf59a2[_0x6b06('0x36')]);_0x1c5dca[_0x6b06('0x38')]=_[_0x6b06('0x39')](_0x1c5dca[_0x6b06('0x33')],_0x1c5dca['query']);_0xf2ca21[_0x6b06('0x3a')]=_[_0x6b06('0x39')](_0x1c5dca[_0x6b06('0x33')],qs['fields'](_0xf59a2[_0x6b06('0x36')][_0x6b06('0x3b')]));_0xf2ca21[_0x6b06('0x3a')]=_0xf2ca21[_0x6b06('0x3a')][_0x6b06('0x3c')]?_0xf2ca21['attributes']:_0x1c5dca[_0x6b06('0x33')];if(_0xf59a2[_0x6b06('0x36')][_0x6b06('0x3d')]){_0xf2ca21['include']=[{'all':!![]}];}_0xf2ca21=_[_0x6b06('0x3e')]({},_0xf2ca21,_0xf59a2[_0x6b06('0x3f')]);return db[_0x6b06('0x34')]['find'](_0xf2ca21)[_0x6b06('0x2b')](handleEntityNotFound(_0x324961,null))[_0x6b06('0x2b')](respondWithResult(_0x324961,null))[_0x6b06('0x40')](handleError(_0x324961,null));};exports[_0x6b06('0x2c')]=function(_0x39d713,_0x333cb1){return db[_0x6b06('0x34')][_0x6b06('0x41')]({'where':{'id':_0x39d713['params']['id']}})[_0x6b06('0x2b')](handleEntityNotFound(_0x333cb1,null))[_0x6b06('0x2b')](removeEntity(_0x333cb1,null))[_0x6b06('0x40')](handleError(_0x333cb1,null));};function widgetAttributes(_0x4bee60){try{switch(_0x4bee60[_0x6b06('0x42')]){case'iframe':return[{'name':_0x6b06('0x43'),'value':_0x4bee60[_0x6b06('0x43')]||(_0x4bee60[_0x6b06('0x44')]&&_0x4bee60[_0x6b06('0x44')][0x0]?_0x4bee60[_0x6b06('0x44')][0x0][_0x6b06('0x45')]:undefined)||_0x6b06('0x46')}];case'custom':return[{'name':_0x6b06('0x47'),'value':_0x4bee60['attrPath']||(_0x4bee60['attrs']&&_0x4bee60[_0x6b06('0x44')][0x0]?_0x4bee60[_0x6b06('0x44')][0x0][_0x6b06('0x45')]:undefined)||''}];case _0x6b06('0x48'):return[{'name':'attrHourFormat','value':_0x4bee60[_0x6b06('0x49')]||(_0x4bee60[_0x6b06('0x44')]&&_0x4bee60['attrs'][0x0]?_0x4bee60[_0x6b06('0x44')][0x0][_0x6b06('0x45')]:undefined)||_0x6b06('0x4a')},{'name':_0x6b06('0x4b'),'value':_0x4bee60[_0x6b06('0x4b')]||(_0x4bee60[_0x6b06('0x44')]&&_0x4bee60['attrs'][0x1]?_0x4bee60[_0x6b06('0x44')][0x1]['value']:undefined)||_0x6b06('0x4c')},{'name':_0x6b06('0x4d'),'value':_0x4bee60[_0x6b06('0x4d')]||(_0x4bee60[_0x6b06('0x44')]&&_0x4bee60[_0x6b06('0x44')][0x2]?_0x4bee60[_0x6b06('0x44')][0x2][_0x6b06('0x45')]:undefined)||0xc}];case _0x6b06('0x4e'):return[{'name':_0x6b06('0x4f'),'value':_0x4bee60[_0x6b06('0x4f')]||(_0x4bee60[_0x6b06('0x44')]&&_0x4bee60['attrs'][0x0]?_0x4bee60[_0x6b06('0x44')][0x0][_0x6b06('0x45')]:undefined)||'total'},{'name':_0x6b06('0x50'),'value':_0x4bee60[_0x6b06('0x50')]||(_0x4bee60['attrs']&&_0x4bee60[_0x6b06('0x44')][0x1]?_0x4bee60[_0x6b06('0x44')][0x1][_0x6b06('0x45')]:undefined)||[]},{'name':_0x6b06('0x4d'),'value':_0x4bee60['attrFontSize']||(_0x4bee60['attrs']&&_0x4bee60[_0x6b06('0x44')][0x2]?_0x4bee60['attrs'][0x2][_0x6b06('0x45')]:undefined)||0x14}];case _0x6b06('0x51'):case _0x6b06('0x52'):return[{'name':_0x6b06('0x53'),'value':_0x4bee60[_0x6b06('0x53')]||(_0x4bee60[_0x6b06('0x44')]&&_0x4bee60['attrs'][0x0]?_0x4bee60['attrs'][0x0]['value']:undefined)||_0x6b06('0x54')},{'name':_0x6b06('0x55'),'value':_0x4bee60[_0x6b06('0x55')]||(_0x4bee60['attrs']&&_0x4bee60[_0x6b06('0x44')][0x1]?_0x4bee60[_0x6b06('0x44')][0x1][_0x6b06('0x45')]:undefined)||null},{'name':_0x6b06('0x56'),'value':_0x4bee60['attrSerie3']||(_0x4bee60[_0x6b06('0x44')]&&_0x4bee60[_0x6b06('0x44')][0x2]?_0x4bee60[_0x6b06('0x44')][0x2][_0x6b06('0x45')]:undefined)||null},{'name':_0x6b06('0x50'),'value':_0x4bee60[_0x6b06('0x50')]||(_0x4bee60[_0x6b06('0x44')]&&_0x4bee60[_0x6b06('0x44')][0x3]?_0x4bee60['attrs'][0x3][_0x6b06('0x45')]:undefined)||[]}];case _0x6b06('0x57'):return[{'name':_0x6b06('0x58'),'type':_0x4bee60[_0x6b06('0x59')]||(_0x4bee60[_0x6b06('0x44')]&&_0x4bee60[_0x6b06('0x44')][0x0]?_0x4bee60['attrs'][0x0][_0x6b06('0x42')]:undefined)||null,'value':_0x4bee60[_0x6b06('0x58')]||(_0x4bee60[_0x6b06('0x44')]&&_0x4bee60[_0x6b06('0x44')][0x0]?_0x4bee60[_0x6b06('0x44')][0x0][_0x6b06('0x45')]:undefined)||null},{'name':'attrRefresh','value':_0x4bee60[_0x6b06('0x5a')]||(_0x4bee60[_0x6b06('0x44')]&&_0x4bee60[_0x6b06('0x44')][0x1]?_0x4bee60['attrs'][0x1][_0x6b06('0x45')]:undefined)||0x0}];default:return[];}}catch(_0xcf8b6){logger[_0x6b06('0x2d')](_0x6b06('0x5b'),JSON['stringify'](_0xcf8b6));return[];}}exports[_0x6b06('0x5c')]=function(_0x1562a9,_0x221921){if(_0x1562a9[_0x6b06('0x5d')]){_0x1562a9[_0x6b06('0x5d')][_0x6b06('0x44')]=widgetAttributes(_0x1562a9[_0x6b06('0x5d')]);}return db[_0x6b06('0x34')][_0x6b06('0x5c')](_0x1562a9[_0x6b06('0x5d')],{})[_0x6b06('0x2b')](respondWithResult(_0x221921,0xc9))['catch'](handleError(_0x221921,null));};exports[_0x6b06('0x2a')]=function(_0x3800cc,_0x584908){if(_0x3800cc['body']['id']){delete _0x3800cc[_0x6b06('0x5d')]['id'];}_0x3800cc['body']['attrs']=widgetAttributes(_0x3800cc[_0x6b06('0x5d')]);return db['DashboardItem'][_0x6b06('0x41')]({'where':{'id':_0x3800cc['params']['id']}})[_0x6b06('0x2b')](handleEntityNotFound(_0x584908,null))[_0x6b06('0x2b')](saveUpdates(_0x3800cc[_0x6b06('0x5d')],null))[_0x6b06('0x2b')](respondWithResult(_0x584908,null))[_0x6b06('0x40')](handleError(_0x584908,null));};