Built motion from commit (unavailable).|2.5.31
[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 _0xfea1=['apply','reject','save','update','then','destroy','end','error','name','render','contact','message','agent','interaction','account','show','params','model','keys','DashboardItem','query','intersection','fields','attributes','length','includeAll','include','merge','find','catch','type','iframe','attrUrl','attrs','value','https://','custom','attrPath','clock','attrHourFormat','HH:mm:ss','attrTimezone','attrFontSize','counter','attrMetric','total','attrVoiceQueues','multibar-chart','pie-chart','attrSerie1','attrSerie2','attrSerie3','web-report','attrReport','reportType','attrRefresh','widgetAttributes:\x20%s','create','body','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','sox','to-csv','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','socket.io-emitter','./dashboardItem.socket','sendStatus','status','offset','undefined','limit','count','json'];(function(_0x207837,_0x53bbe4){var _0x52ea8b=function(_0x4b93fe){while(--_0x4b93fe){_0x207837['push'](_0x207837['shift']());}};_0x52ea8b(++_0x53bbe4);}(_0xfea1,0x1b3));var _0x1fea=function(_0x274dd7,_0x2e6051){_0x274dd7=_0x274dd7-0x0;var _0x148829=_0xfea1[_0x274dd7];return _0x148829;};'use strict';var emlformat=require(_0x1fea('0x0'));var rimraf=require(_0x1fea('0x1'));var zipdir=require(_0x1fea('0x2'));var jsonpatch=require(_0x1fea('0x3'));var rp=require(_0x1fea('0x4'));var moment=require(_0x1fea('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x1fea('0x6'));var util=require(_0x1fea('0x7'));var path=require('path');var sox=require(_0x1fea('0x8'));var csv=require(_0x1fea('0x9'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0x1fea('0xa'));var crypto=require(_0x1fea('0xb'));var jsforce=require(_0x1fea('0xc'));var deskjs=require(_0x1fea('0xd'));var toCsv=require(_0x1fea('0x9'));var querystring=require(_0x1fea('0xe'));var Papa=require('papaparse');var Redis=require(_0x1fea('0xf'));var authService=require('../../components/auth/service');var qs=require(_0x1fea('0x10'));var as=require(_0x1fea('0x11'));var hardwareService=require(_0x1fea('0x12'));var logger=require(_0x1fea('0x13'))(_0x1fea('0x14'));var utils=require('../../config/utils');var config=require(_0x1fea('0x15'));var licenseUtil=require(_0x1fea('0x16'));var db=require(_0x1fea('0x17'))['db'];config[_0x1fea('0x18')]=_[_0x1fea('0x19')](config[_0x1fea('0x18')],{'host':'localhost','port':0x18eb});var socket=require(_0x1fea('0x1a'))(new Redis(config['redis']));require(_0x1fea('0x1b'))['register'](socket);function respondWithStatusCode(_0x581d43,_0x13688d){_0x13688d=_0x13688d||0xcc;return function(_0x240c0f){if(_0x240c0f){return _0x581d43[_0x1fea('0x1c')](_0x13688d);}return _0x581d43[_0x1fea('0x1d')](_0x13688d)['end']();};}function respondWithResult(_0x4f9443,_0x346a3a){_0x346a3a=_0x346a3a||0xc8;return function(_0x16ee25){if(_0x16ee25){return _0x4f9443['status'](_0x346a3a)['json'](_0x16ee25);}};}function respondWithFilteredResult(_0xad01e0,_0x4128e5){return function(_0x4e222d){if(_0x4e222d){var _0x1e8cf7=typeof _0x4128e5[_0x1fea('0x1e')]===_0x1fea('0x1f')&&typeof _0x4128e5[_0x1fea('0x20')]===_0x1fea('0x1f');var _0x30b769=_0x4e222d[_0x1fea('0x21')];var _0x103992=_0x1e8cf7?0x0:_0x4128e5[_0x1fea('0x1e')];var _0x1478ff=_0x1e8cf7?_0x4e222d['count']:_0x4128e5['offset']+_0x4128e5[_0x1fea('0x20')];var _0x50d4ab;if(_0x1478ff>=_0x30b769){_0x1478ff=_0x30b769;_0x50d4ab=0xc8;}else{_0x50d4ab=0xce;}_0xad01e0['status'](_0x50d4ab);return _0xad01e0['set']('Content-Range',_0x103992+'-'+_0x1478ff+'/'+_0x30b769)[_0x1fea('0x22')](_0x4e222d);}return null;};}function patchUpdates(_0x131a97){return function(_0x4087b6){try{jsonpatch[_0x1fea('0x23')](_0x4087b6,_0x131a97,!![]);}catch(_0x12af88){return BPromise[_0x1fea('0x24')](_0x12af88);}return _0x4087b6[_0x1fea('0x25')]();};}function saveUpdates(_0x4a9659,_0x3e07db){return function(_0x4c9e00){if(_0x4c9e00){return _0x4c9e00[_0x1fea('0x26')](_0x4a9659)[_0x1fea('0x27')](function(_0x45ee6f){return _0x45ee6f;});}return null;};}function removeEntity(_0x562d88,_0x3ce4c0){return function(_0x17f06f){if(_0x17f06f){return _0x17f06f[_0x1fea('0x28')]()[_0x1fea('0x27')](function(){_0x562d88[_0x1fea('0x1d')](0xcc)[_0x1fea('0x29')]();});}};}function handleEntityNotFound(_0x43d196,_0x2c5681){return function(_0x34a1f4){if(!_0x34a1f4){_0x43d196[_0x1fea('0x1c')](0x194);}return _0x34a1f4;};}function handleError(_0x4ba0cf,_0x40ddd3){_0x40ddd3=_0x40ddd3||0x1f4;return function(_0x40fb3f){logger[_0x1fea('0x2a')](_0x40fb3f['stack']);if(_0x40fb3f[_0x1fea('0x2b')]){delete _0x40fb3f[_0x1fea('0x2b')];}_0x4ba0cf[_0x1fea('0x1d')](_0x40ddd3)['send'](_0x40fb3f);};}function getMustacheRender(_0x3ccc85,_0x1f1484){return Mustache[_0x1fea('0x2c')](_0x3ccc85,_['merge'](_0x1f1484['body'],{'contact':_0x1f1484[_0x1fea('0x2d')],'message':_0x1f1484[_0x1fea('0x2e')],'agent':_0x1f1484[_0x1fea('0x2f')],'interaction':_0x1f1484[_0x1fea('0x30')],'account':_0x1f1484[_0x1fea('0x31')]}))||'';}exports[_0x1fea('0x32')]=function(_0x418f24,_0x5a9dc3){var _0x1f4ec0={'raw':![],'where':{'id':_0x418f24[_0x1fea('0x33')]['id']}},_0x198560={};_0x198560[_0x1fea('0x34')]=_[_0x1fea('0x35')](db[_0x1fea('0x36')]['rawAttributes']);_0x198560[_0x1fea('0x37')]=_[_0x1fea('0x35')](_0x418f24['query']);_0x198560['filters']=_[_0x1fea('0x38')](_0x198560[_0x1fea('0x34')],_0x198560['query']);_0x1f4ec0['attributes']=_[_0x1fea('0x38')](_0x198560[_0x1fea('0x34')],qs[_0x1fea('0x39')](_0x418f24[_0x1fea('0x37')][_0x1fea('0x39')]));_0x1f4ec0[_0x1fea('0x3a')]=_0x1f4ec0[_0x1fea('0x3a')][_0x1fea('0x3b')]?_0x1f4ec0[_0x1fea('0x3a')]:_0x198560[_0x1fea('0x34')];if(_0x418f24[_0x1fea('0x37')][_0x1fea('0x3c')]){_0x1f4ec0[_0x1fea('0x3d')]=[{'all':!![]}];}_0x1f4ec0=_[_0x1fea('0x3e')]({},_0x1f4ec0,_0x418f24['options']);return db[_0x1fea('0x36')][_0x1fea('0x3f')](_0x1f4ec0)[_0x1fea('0x27')](handleEntityNotFound(_0x5a9dc3,null))[_0x1fea('0x27')](respondWithResult(_0x5a9dc3,null))[_0x1fea('0x40')](handleError(_0x5a9dc3,null));};exports[_0x1fea('0x28')]=function(_0x12e5cb,_0x1f104c){return db[_0x1fea('0x36')][_0x1fea('0x3f')]({'where':{'id':_0x12e5cb['params']['id']}})[_0x1fea('0x27')](handleEntityNotFound(_0x1f104c,null))[_0x1fea('0x27')](removeEntity(_0x1f104c,null))[_0x1fea('0x40')](handleError(_0x1f104c,null));};function widgetAttributes(_0x176955){try{switch(_0x176955[_0x1fea('0x41')]){case _0x1fea('0x42'):return[{'name':_0x1fea('0x43'),'value':_0x176955[_0x1fea('0x43')]||(_0x176955[_0x1fea('0x44')]&&_0x176955[_0x1fea('0x44')][0x0]?_0x176955[_0x1fea('0x44')][0x0][_0x1fea('0x45')]:undefined)||_0x1fea('0x46')}];case _0x1fea('0x47'):return[{'name':'attrPath','value':_0x176955[_0x1fea('0x48')]||(_0x176955['attrs']&&_0x176955[_0x1fea('0x44')][0x0]?_0x176955[_0x1fea('0x44')][0x0][_0x1fea('0x45')]:undefined)||''}];case _0x1fea('0x49'):return[{'name':_0x1fea('0x4a'),'value':_0x176955[_0x1fea('0x4a')]||(_0x176955[_0x1fea('0x44')]&&_0x176955[_0x1fea('0x44')][0x0]?_0x176955[_0x1fea('0x44')][0x0]['value']:undefined)||_0x1fea('0x4b')},{'name':'attrTimezone','value':_0x176955[_0x1fea('0x4c')]||(_0x176955[_0x1fea('0x44')]&&_0x176955['attrs'][0x1]?_0x176955[_0x1fea('0x44')][0x1][_0x1fea('0x45')]:undefined)||'0.00'},{'name':_0x1fea('0x4d'),'value':_0x176955['attrFontSize']||(_0x176955[_0x1fea('0x44')]&&_0x176955['attrs'][0x2]?_0x176955['attrs'][0x2][_0x1fea('0x45')]:undefined)||0xc}];case _0x1fea('0x4e'):return[{'name':_0x1fea('0x4f'),'value':_0x176955[_0x1fea('0x4f')]||(_0x176955[_0x1fea('0x44')]&&_0x176955[_0x1fea('0x44')][0x0]?_0x176955['attrs'][0x0][_0x1fea('0x45')]:undefined)||_0x1fea('0x50')},{'name':_0x1fea('0x51'),'value':_0x176955[_0x1fea('0x51')]||(_0x176955[_0x1fea('0x44')]&&_0x176955['attrs'][0x1]?_0x176955[_0x1fea('0x44')][0x1][_0x1fea('0x45')]:undefined)||[]},{'name':_0x1fea('0x4d'),'value':_0x176955[_0x1fea('0x4d')]||(_0x176955[_0x1fea('0x44')]&&_0x176955[_0x1fea('0x44')][0x2]?_0x176955[_0x1fea('0x44')][0x2][_0x1fea('0x45')]:undefined)||0x14}];case _0x1fea('0x52'):case _0x1fea('0x53'):return[{'name':'attrSerie1','value':_0x176955[_0x1fea('0x54')]||(_0x176955['attrs']&&_0x176955[_0x1fea('0x44')][0x0]?_0x176955[_0x1fea('0x44')][0x0]['value']:undefined)||_0x1fea('0x50')},{'name':_0x1fea('0x55'),'value':_0x176955[_0x1fea('0x55')]||(_0x176955[_0x1fea('0x44')]&&_0x176955['attrs'][0x1]?_0x176955['attrs'][0x1][_0x1fea('0x45')]:undefined)||null},{'name':_0x1fea('0x56'),'value':_0x176955[_0x1fea('0x56')]||(_0x176955['attrs']&&_0x176955[_0x1fea('0x44')][0x2]?_0x176955[_0x1fea('0x44')][0x2]['value']:undefined)||null},{'name':_0x1fea('0x51'),'value':_0x176955[_0x1fea('0x51')]||(_0x176955[_0x1fea('0x44')]&&_0x176955['attrs'][0x3]?_0x176955[_0x1fea('0x44')][0x3]['value']:undefined)||[]}];case _0x1fea('0x57'):return[{'name':_0x1fea('0x58'),'type':_0x176955[_0x1fea('0x59')]||(_0x176955[_0x1fea('0x44')]&&_0x176955[_0x1fea('0x44')][0x0]?_0x176955['attrs'][0x0][_0x1fea('0x41')]:undefined)||null,'value':_0x176955['attrReport']||(_0x176955[_0x1fea('0x44')]&&_0x176955[_0x1fea('0x44')][0x0]?_0x176955[_0x1fea('0x44')][0x0]['value']:undefined)||null},{'name':_0x1fea('0x5a'),'value':_0x176955[_0x1fea('0x5a')]||(_0x176955['attrs']&&_0x176955[_0x1fea('0x44')][0x1]?_0x176955[_0x1fea('0x44')][0x1][_0x1fea('0x45')]:undefined)||0x0}];default:return[];}}catch(_0x2f663b){logger[_0x1fea('0x2a')](_0x1fea('0x5b'),JSON['stringify'](_0x2f663b));return[];}}exports[_0x1fea('0x5c')]=function(_0x29f199,_0x5991f9){if(_0x29f199[_0x1fea('0x5d')]){_0x29f199[_0x1fea('0x5d')][_0x1fea('0x44')]=widgetAttributes(_0x29f199[_0x1fea('0x5d')]);}return db[_0x1fea('0x36')][_0x1fea('0x5c')](_0x29f199[_0x1fea('0x5d')],{})[_0x1fea('0x27')](respondWithResult(_0x5991f9,0xc9))[_0x1fea('0x40')](handleError(_0x5991f9,null));};exports[_0x1fea('0x26')]=function(_0x35f4dc,_0x3aedc8){if(_0x35f4dc['body']['id']){delete _0x35f4dc[_0x1fea('0x5d')]['id'];}_0x35f4dc[_0x1fea('0x5d')][_0x1fea('0x44')]=widgetAttributes(_0x35f4dc[_0x1fea('0x5d')]);return db['DashboardItem'][_0x1fea('0x3f')]({'where':{'id':_0x35f4dc['params']['id']}})['then'](handleEntityNotFound(_0x3aedc8,null))['then'](saveUpdates(_0x35f4dc[_0x1fea('0x5d')],null))[_0x1fea('0x27')](respondWithResult(_0x3aedc8,null))[_0x1fea('0x40')](handleError(_0x3aedc8,null));};