Built motion from commit (unavailable).|2.5.2
[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 _0x034a=['json','apply','save','update','destroy','then','sendStatus','error','stack','name','send','params','model','DashboardItem','rawAttributes','query','keys','filters','intersection','attributes','fields','include','merge','catch','find','type','attrUrl','attrs','value','attrPath','attrHourFormat','HH:mm:ss','attrTimezone','0.00','attrFontSize','attrMetric','total','attrVoiceQueues','multibar-chart','pie-chart','attrSerie1','attrSerie2','attrSerie3','web-report','attrReport','attrRefresh','widgetAttributes:\x20%s','create','body','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','bluebird','mustache','util','path','sox','lodash','squel','crypto','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','defaults','redis','localhost','socket.io-emitter','./dashboardItem.socket','status','end','count','offset','set','Content-Range'];(function(_0x6e1239,_0x3562ac){var _0x418150=function(_0x279f06){while(--_0x279f06){_0x6e1239['push'](_0x6e1239['shift']());}};_0x418150(++_0x3562ac);}(_0x034a,0x1e9));var _0xa034=function(_0x456c58,_0x3f6b41){_0x456c58=_0x456c58-0x0;var _0x4b2713=_0x034a[_0x456c58];return _0x4b2713;};'use strict';var pdf=require(_0xa034('0x0'));var emlformat=require(_0xa034('0x1'));var rimraf=require(_0xa034('0x2'));var zipdir=require(_0xa034('0x3'));var jsonpatch=require(_0xa034('0x4'));var rp=require('request-promise');var moment=require('moment');var BPromise=require(_0xa034('0x5'));var Mustache=require(_0xa034('0x6'));var util=require(_0xa034('0x7'));var path=require(_0xa034('0x8'));var sox=require(_0xa034('0x9'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var _=require(_0xa034('0xa'));var squel=require(_0xa034('0xb'));var crypto=require(_0xa034('0xc'));var jsforce=require(_0xa034('0xd'));var deskjs=require(_0xa034('0xe'));var toCsv=require(_0xa034('0xf'));var querystring=require(_0xa034('0x10'));var Papa=require(_0xa034('0x11'));var Redis=require(_0xa034('0x12'));var authService=require(_0xa034('0x13'));var qs=require(_0xa034('0x14'));var as=require(_0xa034('0x15'));var hardwareService=require(_0xa034('0x16'));var logger=require(_0xa034('0x17'))(_0xa034('0x18'));var utils=require(_0xa034('0x19'));var config=require(_0xa034('0x1a'));var db=require(_0xa034('0x1b'))['db'];config['redis']=_[_0xa034('0x1c')](config[_0xa034('0x1d')],{'host':_0xa034('0x1e'),'port':0x18eb});var socket=require(_0xa034('0x1f'))(new Redis(config[_0xa034('0x1d')]));require(_0xa034('0x20'))['register'](socket);function respondWithStatusCode(_0x145b0a,_0x3c210c){_0x3c210c=_0x3c210c||0xcc;return function(_0x2188c6){if(_0x2188c6){return _0x145b0a['sendStatus'](_0x3c210c);}return _0x145b0a[_0xa034('0x21')](_0x3c210c)[_0xa034('0x22')]();};}function respondWithResult(_0xd23a93,_0x256446){_0x256446=_0x256446||0xc8;return function(_0x290a6a){if(_0x290a6a){return _0xd23a93['status'](_0x256446)['json'](_0x290a6a);}};}function respondWithFilteredResult(_0x14e46b,_0x41c241){return function(_0x1c0a07){if(_0x1c0a07){var _0x189ee7=_0x1c0a07[_0xa034('0x23')],_0x35870a=_0x41c241[_0xa034('0x24')],_0x523b9f=_0x41c241[_0xa034('0x24')]+_0x41c241['limit'],_0x4be17a;if(_0x523b9f>=_0x189ee7){_0x523b9f=_0x189ee7;_0x4be17a=0xc8;}else{_0x4be17a=0xce;}_0x14e46b[_0xa034('0x21')](_0x4be17a);return _0x14e46b[_0xa034('0x25')](_0xa034('0x26'),_0x35870a+'-'+_0x523b9f+'/'+_0x189ee7)[_0xa034('0x27')](_0x1c0a07);}return null;};}function patchUpdates(_0x2230b9){return function(_0x37a5d1){try{jsonpatch[_0xa034('0x28')](_0x37a5d1,_0x2230b9,!![]);}catch(_0xdaf9f1){return BPromise['reject'](_0xdaf9f1);}return _0x37a5d1[_0xa034('0x29')]();};}function saveUpdates(_0x1269ca,_0x1c5d52){return function(_0x383e92){if(_0x383e92){return _0x383e92[_0xa034('0x2a')](_0x1269ca)['then'](function(_0x1b6a2a){return _0x1b6a2a;});}return null;};}function removeEntity(_0x467c6d,_0x42e5d4){return function(_0x5afa56){if(_0x5afa56){return _0x5afa56[_0xa034('0x2b')]()[_0xa034('0x2c')](function(){_0x467c6d[_0xa034('0x21')](0xcc)[_0xa034('0x22')]();});}};}function handleEntityNotFound(_0x28713e,_0x44d556){return function(_0x4aa23a){if(!_0x4aa23a){_0x28713e[_0xa034('0x2d')](0x194);}return _0x4aa23a;};}function handleError(_0x1b9f10,_0x332b2b){_0x332b2b=_0x332b2b||0x1f4;return function(_0x27edca){logger[_0xa034('0x2e')](_0x27edca[_0xa034('0x2f')]);if(_0x27edca['name']){delete _0x27edca[_0xa034('0x30')];}_0x1b9f10[_0xa034('0x21')](_0x332b2b)[_0xa034('0x31')](_0x27edca);};}exports['show']=function(_0x24dcdf,_0x263a57){var _0x32f84b={'raw':![],'where':{'id':_0x24dcdf[_0xa034('0x32')]['id']}},_0x48c6a7={};_0x48c6a7[_0xa034('0x33')]=_['keys'](db[_0xa034('0x34')][_0xa034('0x35')]);_0x48c6a7[_0xa034('0x36')]=_[_0xa034('0x37')](_0x24dcdf[_0xa034('0x36')]);_0x48c6a7[_0xa034('0x38')]=_[_0xa034('0x39')](_0x48c6a7[_0xa034('0x33')],_0x48c6a7[_0xa034('0x36')]);_0x32f84b[_0xa034('0x3a')]=_[_0xa034('0x39')](_0x48c6a7[_0xa034('0x33')],qs[_0xa034('0x3b')](_0x24dcdf[_0xa034('0x36')][_0xa034('0x3b')]));_0x32f84b[_0xa034('0x3a')]=_0x32f84b['attributes']['length']?_0x32f84b[_0xa034('0x3a')]:_0x48c6a7[_0xa034('0x33')];if(_0x24dcdf[_0xa034('0x36')]['includeAll']){_0x32f84b[_0xa034('0x3c')]=[{'all':!![]}];}_0x32f84b=_[_0xa034('0x3d')]({},_0x32f84b,_0x24dcdf['options']);return db[_0xa034('0x34')]['find'](_0x32f84b)['then'](handleEntityNotFound(_0x263a57,null))[_0xa034('0x2c')](respondWithResult(_0x263a57,null))[_0xa034('0x3e')](handleError(_0x263a57,null));};exports[_0xa034('0x2b')]=function(_0x2a05f4,_0x3aacde){return db[_0xa034('0x34')][_0xa034('0x3f')]({'where':{'id':_0x2a05f4['params']['id']}})['then'](handleEntityNotFound(_0x3aacde,null))['then'](removeEntity(_0x3aacde,null))['catch'](handleError(_0x3aacde,null));};function widgetAttributes(_0x2193a2){try{switch(_0x2193a2[_0xa034('0x40')]){case'iframe':return[{'name':_0xa034('0x41'),'value':_0x2193a2[_0xa034('0x41')]||(_0x2193a2['attrs']&&_0x2193a2[_0xa034('0x42')][0x0]?_0x2193a2[_0xa034('0x42')][0x0][_0xa034('0x43')]:undefined)||'https://'}];case'custom':return[{'name':'attrPath','value':_0x2193a2[_0xa034('0x44')]||(_0x2193a2[_0xa034('0x42')]&&_0x2193a2['attrs'][0x0]?_0x2193a2[_0xa034('0x42')][0x0][_0xa034('0x43')]:undefined)||''}];case'clock':return[{'name':_0xa034('0x45'),'value':_0x2193a2[_0xa034('0x45')]||(_0x2193a2[_0xa034('0x42')]&&_0x2193a2[_0xa034('0x42')][0x0]?_0x2193a2[_0xa034('0x42')][0x0][_0xa034('0x43')]:undefined)||_0xa034('0x46')},{'name':_0xa034('0x47'),'value':_0x2193a2['attrTimezone']||(_0x2193a2[_0xa034('0x42')]&&_0x2193a2[_0xa034('0x42')][0x1]?_0x2193a2['attrs'][0x1]['value']:undefined)||_0xa034('0x48')},{'name':_0xa034('0x49'),'value':_0x2193a2[_0xa034('0x49')]||(_0x2193a2[_0xa034('0x42')]&&_0x2193a2[_0xa034('0x42')][0x2]?_0x2193a2[_0xa034('0x42')][0x2]['value']:undefined)||0xc}];case'counter':return[{'name':_0xa034('0x4a'),'value':_0x2193a2[_0xa034('0x4a')]||(_0x2193a2[_0xa034('0x42')]&&_0x2193a2[_0xa034('0x42')][0x0]?_0x2193a2[_0xa034('0x42')][0x0][_0xa034('0x43')]:undefined)||_0xa034('0x4b')},{'name':'attrVoiceQueues','value':_0x2193a2[_0xa034('0x4c')]||(_0x2193a2[_0xa034('0x42')]&&_0x2193a2['attrs'][0x1]?_0x2193a2[_0xa034('0x42')][0x1][_0xa034('0x43')]:undefined)||[]},{'name':_0xa034('0x49'),'value':_0x2193a2[_0xa034('0x49')]||(_0x2193a2[_0xa034('0x42')]&&_0x2193a2[_0xa034('0x42')][0x2]?_0x2193a2['attrs'][0x2][_0xa034('0x43')]:undefined)||0x14}];case _0xa034('0x4d'):case _0xa034('0x4e'):return[{'name':'attrSerie1','value':_0x2193a2[_0xa034('0x4f')]||(_0x2193a2[_0xa034('0x42')]&&_0x2193a2['attrs'][0x0]?_0x2193a2[_0xa034('0x42')][0x0][_0xa034('0x43')]:undefined)||'total'},{'name':_0xa034('0x50'),'value':_0x2193a2['attrSerie2']||(_0x2193a2['attrs']&&_0x2193a2[_0xa034('0x42')][0x1]?_0x2193a2[_0xa034('0x42')][0x1][_0xa034('0x43')]:undefined)||null},{'name':_0xa034('0x51'),'value':_0x2193a2['attrSerie3']||(_0x2193a2[_0xa034('0x42')]&&_0x2193a2[_0xa034('0x42')][0x2]?_0x2193a2[_0xa034('0x42')][0x2][_0xa034('0x43')]:undefined)||null},{'name':_0xa034('0x4c'),'value':_0x2193a2[_0xa034('0x4c')]||(_0x2193a2[_0xa034('0x42')]&&_0x2193a2[_0xa034('0x42')][0x3]?_0x2193a2['attrs'][0x3][_0xa034('0x43')]:undefined)||[]}];case _0xa034('0x52'):return[{'name':'attrReport','type':_0x2193a2['reportType']||(_0x2193a2[_0xa034('0x42')]&&_0x2193a2[_0xa034('0x42')][0x0]?_0x2193a2[_0xa034('0x42')][0x0][_0xa034('0x40')]:undefined)||null,'value':_0x2193a2[_0xa034('0x53')]||(_0x2193a2['attrs']&&_0x2193a2[_0xa034('0x42')][0x0]?_0x2193a2[_0xa034('0x42')][0x0]['value']:undefined)||null},{'name':_0xa034('0x54'),'value':_0x2193a2['attrRefresh']||(_0x2193a2[_0xa034('0x42')]&&_0x2193a2[_0xa034('0x42')][0x1]?_0x2193a2[_0xa034('0x42')][0x1][_0xa034('0x43')]:undefined)||0x0}];default:return[];}}catch(_0x40030b){logger['error'](_0xa034('0x55'),JSON['stringify'](_0x40030b));return[];}}exports[_0xa034('0x56')]=function(_0x5ad891,_0x35d8df){if(_0x5ad891[_0xa034('0x57')]){_0x5ad891[_0xa034('0x57')][_0xa034('0x42')]=widgetAttributes(_0x5ad891['body']);}return db[_0xa034('0x34')][_0xa034('0x56')](_0x5ad891['body'],{})[_0xa034('0x2c')](respondWithResult(_0x35d8df,0xc9))['catch'](handleError(_0x35d8df,null));};exports[_0xa034('0x2a')]=function(_0x32b25b,_0x44c83f){if(_0x32b25b[_0xa034('0x57')]['id']){delete _0x32b25b['body']['id'];}_0x32b25b[_0xa034('0x57')]['attrs']=widgetAttributes(_0x32b25b['body']);return db[_0xa034('0x34')]['find']({'where':{'id':_0x32b25b[_0xa034('0x32')]['id']}})[_0xa034('0x2c')](handleEntityNotFound(_0x44c83f,null))[_0xa034('0x2c')](saveUpdates(_0x32b25b[_0xa034('0x57')],null))[_0xa034('0x2c')](respondWithResult(_0x44c83f,null))[_0xa034('0x3e')](handleError(_0x44c83f,null));};