5c5ea0b6f95b5a9fbd10962bfd35be013fc104f2
[motion2.git] / server / api / jscriptyProject / jscriptyProject.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 _0x7d25=['fromCharCode','toString','indexOf','replace','startTime','starttime','JscriptyQuestionReport','-createdAt','questionId','question','format','SessionId','answer','isEmpty','now','writeFileSync','/tmp/Jscripty_Project_%d_Summary_%s.csv','setHeader','Jscripty_Project_%d_Summary_%s.csv','Content-type','download','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','ejs','lodash','squel','crypto','to-csv','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','undefined','count','offset','limit','Content-Range','apply','reject','save','update','then','destroy','get','Projects','UserProfileResource','error','stack','name','send','index','map','JscriptyProject','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','sort','where','pick','filter','merge','VIRTUAL','options','rows','catch','includeAll','include','find','create','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','params','omit','createdAt','updatedAt','body','getSessions','JscriptySessionReport','nolimit','order','ProjectId','findAll','getAnswers','findOne','JscriptyAnswerReport','number'];(function(_0x4abf9f,_0x5edac3){var _0x513755=function(_0x1e675f){while(--_0x1e675f){_0x4abf9f['push'](_0x4abf9f['shift']());}};_0x513755(++_0x5edac3);}(_0x7d25,0x8a));var _0x57d2=function(_0x178e48,_0x3c9509){_0x178e48=_0x178e48-0x0;var _0x440d7e=_0x7d25[_0x178e48];return _0x440d7e;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x57d2('0x0'));var zipdir=require(_0x57d2('0x1'));var jsonpatch=require(_0x57d2('0x2'));var rp=require(_0x57d2('0x3'));var moment=require(_0x57d2('0x4'));var BPromise=require(_0x57d2('0x5'));var Mustache=require(_0x57d2('0x6'));var util=require('util');var path=require('path');var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x57d2('0x7'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x57d2('0x8'));var squel=require(_0x57d2('0x9'));var crypto=require(_0x57d2('0xa'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0x57d2('0xb'));var querystring=require('querystring');var Papa=require(_0x57d2('0xc'));var Redis=require(_0x57d2('0xd'));var authService=require(_0x57d2('0xe'));var qs=require('../../components/parsers/qs');var as=require(_0x57d2('0xf'));var hardwareService=require(_0x57d2('0x10'));var logger=require(_0x57d2('0x11'))(_0x57d2('0x12'));var utils=require(_0x57d2('0x13'));var config=require(_0x57d2('0x14'));var licenseUtil=require(_0x57d2('0x15'));var db=require(_0x57d2('0x16'))['db'];function respondWithStatusCode(_0x43d7fb,_0x32c33a){_0x32c33a=_0x32c33a||0xcc;return function(_0x28428b){if(_0x28428b){return _0x43d7fb[_0x57d2('0x17')](_0x32c33a);}return _0x43d7fb[_0x57d2('0x18')](_0x32c33a)[_0x57d2('0x19')]();};}function respondWithResult(_0x1ba57e,_0x4086f3){_0x4086f3=_0x4086f3||0xc8;return function(_0x5382d9){if(_0x5382d9){return _0x1ba57e['status'](_0x4086f3)[_0x57d2('0x1a')](_0x5382d9);}};}function respondWithFilteredResult(_0x148ef3,_0x4ec4b1){return function(_0x8cf637){if(_0x8cf637){var _0x319489=typeof _0x4ec4b1['offset']===_0x57d2('0x1b')&&typeof _0x4ec4b1['limit']===_0x57d2('0x1b');var _0x4b4fe0=_0x8cf637[_0x57d2('0x1c')];var _0x7d4cf1=_0x319489?0x0:_0x4ec4b1[_0x57d2('0x1d')];var _0x4a94e3=_0x319489?_0x8cf637['count']:_0x4ec4b1[_0x57d2('0x1d')]+_0x4ec4b1[_0x57d2('0x1e')];var _0x2662cd;if(_0x4a94e3>=_0x4b4fe0){_0x4a94e3=_0x4b4fe0;_0x2662cd=0xc8;}else{_0x2662cd=0xce;}_0x148ef3[_0x57d2('0x18')](_0x2662cd);return _0x148ef3['set'](_0x57d2('0x1f'),_0x7d4cf1+'-'+_0x4a94e3+'/'+_0x4b4fe0)[_0x57d2('0x1a')](_0x8cf637);}return null;};}function patchUpdates(_0x55191e){return function(_0x5f3fd5){try{jsonpatch[_0x57d2('0x20')](_0x5f3fd5,_0x55191e,!![]);}catch(_0x326d49){return BPromise[_0x57d2('0x21')](_0x326d49);}return _0x5f3fd5[_0x57d2('0x22')]();};}function saveUpdates(_0x386196,_0x803c25){return function(_0x32c7c8){if(_0x32c7c8){return _0x32c7c8[_0x57d2('0x23')](_0x386196)[_0x57d2('0x24')](function(_0x26718e){return _0x26718e;});}return null;};}function removeEntity(_0x46a4d1,_0x456fe1){return function(_0x12ff19){if(_0x12ff19){return _0x12ff19[_0x57d2('0x25')]()['then'](function(){var _0x424ddc=_0x12ff19[_0x57d2('0x26')]({'plain':!![]});var _0x3c7de8=_0x57d2('0x27');return db[_0x57d2('0x28')]['destroy']({'where':{'type':_0x3c7de8,'resourceId':_0x424ddc['id']}})[_0x57d2('0x24')](function(){return _0x12ff19;});})[_0x57d2('0x24')](function(){_0x46a4d1[_0x57d2('0x18')](0xcc)[_0x57d2('0x19')]();});}};}function handleEntityNotFound(_0x18d500,_0x4b3d8e){return function(_0x9bdb11){if(!_0x9bdb11){_0x18d500['sendStatus'](0x194);}return _0x9bdb11;};}function handleError(_0x1ae5ff,_0x15f1ba){_0x15f1ba=_0x15f1ba||0x1f4;return function(_0x277426){logger[_0x57d2('0x29')](_0x277426[_0x57d2('0x2a')]);if(_0x277426[_0x57d2('0x2b')]){delete _0x277426[_0x57d2('0x2b')];}_0x1ae5ff[_0x57d2('0x18')](_0x15f1ba)[_0x57d2('0x2c')](_0x277426);};}exports[_0x57d2('0x2d')]=function(_0x574589,_0x4e9178){var _0x3da926={},_0x26e052={},_0x3e017c={'count':0x0,'rows':[]};var _0x484597=_[_0x57d2('0x2e')](db[_0x57d2('0x2f')][_0x57d2('0x30')],function(_0x290c2d){return{'name':_0x290c2d[_0x57d2('0x31')],'type':_0x290c2d[_0x57d2('0x32')][_0x57d2('0x33')]};});_0x26e052[_0x57d2('0x34')]=_[_0x57d2('0x2e')](_0x484597,'name');_0x26e052[_0x57d2('0x35')]=_[_0x57d2('0x36')](_0x574589['query']);_0x26e052[_0x57d2('0x37')]=_[_0x57d2('0x38')](_0x26e052['model'],_0x26e052[_0x57d2('0x35')]);_0x3da926[_0x57d2('0x39')]=_[_0x57d2('0x38')](_0x26e052[_0x57d2('0x34')],qs[_0x57d2('0x3a')](_0x574589['query']['fields']));_0x3da926['attributes']=_0x3da926['attributes'][_0x57d2('0x3b')]?_0x3da926[_0x57d2('0x39')]:_0x26e052[_0x57d2('0x34')];if(!_0x574589[_0x57d2('0x35')][_0x57d2('0x3c')]('nolimit')){_0x3da926[_0x57d2('0x1e')]=qs['limit'](_0x574589[_0x57d2('0x35')][_0x57d2('0x1e')]);_0x3da926[_0x57d2('0x1d')]=qs['offset'](_0x574589[_0x57d2('0x35')][_0x57d2('0x1d')]);}_0x3da926['order']=qs[_0x57d2('0x3d')](_0x574589[_0x57d2('0x35')][_0x57d2('0x3d')]);_0x3da926[_0x57d2('0x3e')]=qs[_0x57d2('0x37')](_[_0x57d2('0x3f')](_0x574589['query'],_0x26e052[_0x57d2('0x37')]),_0x484597);if(_0x574589['query'][_0x57d2('0x40')]){_0x3da926[_0x57d2('0x3e')]=_[_0x57d2('0x41')](_0x3da926[_0x57d2('0x3e')],{'$or':_[_0x57d2('0x2e')](_0x484597,function(_0x512dbf){if(_0x512dbf[_0x57d2('0x32')]!==_0x57d2('0x42')){var _0x4f6955={};_0x4f6955[_0x512dbf[_0x57d2('0x2b')]]={'$like':'%'+_0x574589[_0x57d2('0x35')][_0x57d2('0x40')]+'%'};return _0x4f6955;}})});}_0x3da926=_['merge']({},_0x3da926,_0x574589[_0x57d2('0x43')]);var _0x2fe0cd={'where':_0x3da926[_0x57d2('0x3e')]};return db[_0x57d2('0x2f')]['count'](_0x2fe0cd)['then'](function(_0x11a2ec){_0x3e017c[_0x57d2('0x1c')]=_0x11a2ec;if(_0x574589[_0x57d2('0x35')]['includeAll']){_0x3da926['include']=[{'all':!![]}];}return db[_0x57d2('0x2f')]['findAll'](_0x3da926);})[_0x57d2('0x24')](function(_0x1bb8ad){_0x3e017c[_0x57d2('0x44')]=_0x1bb8ad;return _0x3e017c;})[_0x57d2('0x24')](respondWithFilteredResult(_0x4e9178,_0x3da926))[_0x57d2('0x45')](handleError(_0x4e9178,null));};exports['show']=function(_0x13216b,_0x1c069a){var _0x53ab43={'raw':![],'where':{'id':_0x13216b['params']['id']}},_0x775f8c={};_0x775f8c[_0x57d2('0x34')]=_[_0x57d2('0x36')](db[_0x57d2('0x2f')][_0x57d2('0x30')]);_0x775f8c['query']=_['keys'](_0x13216b[_0x57d2('0x35')]);_0x775f8c['filters']=_['intersection'](_0x775f8c[_0x57d2('0x34')],_0x775f8c['query']);_0x53ab43['attributes']=_[_0x57d2('0x38')](_0x775f8c['model'],qs[_0x57d2('0x3a')](_0x13216b['query'][_0x57d2('0x3a')]));_0x53ab43['attributes']=_0x53ab43['attributes'][_0x57d2('0x3b')]?_0x53ab43[_0x57d2('0x39')]:_0x775f8c[_0x57d2('0x34')];if(_0x13216b[_0x57d2('0x35')][_0x57d2('0x46')]){_0x53ab43[_0x57d2('0x47')]=[{'all':!![]}];}_0x53ab43=_['merge']({},_0x53ab43,_0x13216b[_0x57d2('0x43')]);return db[_0x57d2('0x2f')][_0x57d2('0x48')](_0x53ab43)[_0x57d2('0x24')](handleEntityNotFound(_0x1c069a,null))[_0x57d2('0x24')](respondWithResult(_0x1c069a,null))[_0x57d2('0x45')](handleError(_0x1c069a,null));};exports[_0x57d2('0x49')]=function(_0x406375,_0x51f172){return db[_0x57d2('0x2f')][_0x57d2('0x49')](_0x406375['body'],{})[_0x57d2('0x24')](function(_0x5b06f7){var _0x59a6eb=_0x406375[_0x57d2('0x4a')][_0x57d2('0x26')]({'plain':!![]});if(!_0x59a6eb)throw new Error(_0x57d2('0x4b'));if(_0x59a6eb[_0x57d2('0x4c')]==='user'){var _0x265d24=_0x5b06f7[_0x57d2('0x26')]({'plain':!![]});var _0x51b535='Projects';return db[_0x57d2('0x4d')][_0x57d2('0x48')]({'where':{'name':_0x51b535,'userProfileId':_0x59a6eb[_0x57d2('0x4e')]},'raw':!![]})[_0x57d2('0x24')](function(_0x3092c8){if(_0x3092c8&&_0x3092c8[_0x57d2('0x4f')]===0x0){return db['UserProfileResource']['create']({'name':_0x265d24['name'],'resourceId':_0x265d24['id'],'type':_0x3092c8[_0x57d2('0x2b')],'sectionId':_0x3092c8['id']},{})['then'](function(){return _0x5b06f7;});}else{return _0x5b06f7;}})[_0x57d2('0x45')](function(_0x2ef710){logger['error'](_0x57d2('0x50'),_0x2ef710);throw _0x2ef710;});}return _0x5b06f7;})[_0x57d2('0x24')](respondWithResult(_0x51f172,0xc9))[_0x57d2('0x45')](handleError(_0x51f172,null));};exports['clone']=function(_0x10d4e5,_0x224b7d){var _0x25e121={'where':{'id':_0x10d4e5[_0x57d2('0x51')]['id']}},_0x1d8329={};_0x1d8329[_0x57d2('0x34')]=_[_0x57d2('0x36')](db[_0x57d2('0x2f')][_0x57d2('0x30')]);_0x25e121['attributes']=_[_0x57d2('0x38')](_0x1d8329[_0x57d2('0x34')],qs[_0x57d2('0x3a')](_0x10d4e5['query'][_0x57d2('0x3a')]));_0x25e121[_0x57d2('0x39')]=_0x25e121[_0x57d2('0x39')]['length']?_0x25e121['attributes']:_0x1d8329['model'];if(_0x10d4e5[_0x57d2('0x35')]['includeAll']){_0x25e121[_0x57d2('0x47')]=[{'all':!![]}];}_0x25e121=_['merge']({},_0x25e121,_0x10d4e5[_0x57d2('0x43')]);return db['JscriptyProject'][_0x57d2('0x48')](_0x25e121)[_0x57d2('0x24')](handleEntityNotFound(_0x224b7d,null))[_0x57d2('0x24')](function(_0x54640d){if(_0x54640d){var _0x5985e4=_0x54640d[_0x57d2('0x26')]({'plain':!![]});_0x5985e4=qs[_0x57d2('0x52')](_0x5985e4,['id',_0x57d2('0x53'),_0x57d2('0x54')]);_0x10d4e5[_0x57d2('0x55')]=_[_0x57d2('0x52')](_0x10d4e5['body'],['id','createdAt',_0x57d2('0x54')]);return db[_0x57d2('0x2f')][_0x57d2('0x49')](_[_0x57d2('0x41')](_0x5985e4,_0x10d4e5['body']),{'include':_0x10d4e5['query'][_0x57d2('0x46')]?[{'all':!![]}]:undefined})[_0x57d2('0x24')](function(_0x4f6b8a){var _0xad397=_0x10d4e5[_0x57d2('0x4a')][_0x57d2('0x26')]({'plain':!![]});if(!_0xad397)throw new Error(_0x57d2('0x4b'));if(_0xad397['role']==='user'){var _0x55f669=_0x4f6b8a['get']({'plain':!![]});var _0x434cb7=_0x57d2('0x27');return db[_0x57d2('0x4d')][_0x57d2('0x48')]({'where':{'name':_0x434cb7,'userProfileId':_0xad397[_0x57d2('0x4e')]},'raw':!![]})[_0x57d2('0x24')](function(_0x2737ab){if(_0x2737ab&&_0x2737ab['autoAssociation']===0x0){return db[_0x57d2('0x28')]['create']({'name':_0x55f669[_0x57d2('0x2b')],'resourceId':_0x55f669['id'],'type':_0x2737ab['name'],'sectionId':_0x2737ab['id']},{})[_0x57d2('0x24')](function(){return _0x4f6b8a;});}else{return _0x4f6b8a;}})[_0x57d2('0x45')](function(_0x453e6c){logger[_0x57d2('0x29')](_0x57d2('0x50'),_0x453e6c);throw _0x453e6c;});}return _0x4f6b8a;});}})[_0x57d2('0x24')](respondWithResult(_0x224b7d,0xc9))['catch'](handleError(_0x224b7d,null));};exports[_0x57d2('0x23')]=function(_0x24d3bf,_0x27b27a){if(_0x24d3bf[_0x57d2('0x55')]['id']){delete _0x24d3bf[_0x57d2('0x55')]['id'];}return db[_0x57d2('0x2f')][_0x57d2('0x48')]({'where':{'id':_0x24d3bf[_0x57d2('0x51')]['id']}})[_0x57d2('0x24')](handleEntityNotFound(_0x27b27a,null))['then'](saveUpdates(_0x24d3bf[_0x57d2('0x55')],null))['then'](respondWithResult(_0x27b27a,null))['catch'](handleError(_0x27b27a,null));};exports['destroy']=function(_0x270de8,_0x4b92e1){return db[_0x57d2('0x2f')][_0x57d2('0x48')]({'where':{'id':_0x270de8['params']['id']}})[_0x57d2('0x24')](handleEntityNotFound(_0x4b92e1,null))[_0x57d2('0x24')](removeEntity(_0x4b92e1,null))[_0x57d2('0x45')](handleError(_0x4b92e1,null));};exports[_0x57d2('0x56')]=function(_0x5eb7a3,_0x3afeb9,_0xfa63ab){var _0x53a4b0={'raw':!![],'where':{}};var _0x4cfae2={};var _0x28c7ff={'count':0x0,'rows':[]};return db[_0x57d2('0x2f')]['findOne']({'where':{'id':_0x5eb7a3[_0x57d2('0x51')]['id']}})[_0x57d2('0x24')](handleEntityNotFound(_0x3afeb9,null))[_0x57d2('0x24')](function(_0x858d6e){if(_0x858d6e){_0x4cfae2[_0x57d2('0x34')]=_[_0x57d2('0x36')](db[_0x57d2('0x57')][_0x57d2('0x30')]);_0x4cfae2[_0x57d2('0x35')]=_[_0x57d2('0x36')](_0x5eb7a3[_0x57d2('0x35')]);_0x4cfae2[_0x57d2('0x37')]=_[_0x57d2('0x38')](_0x4cfae2['model'],_0x4cfae2[_0x57d2('0x35')]);_0x53a4b0[_0x57d2('0x39')]=_[_0x57d2('0x38')](_0x4cfae2[_0x57d2('0x34')],qs[_0x57d2('0x3a')](_0x5eb7a3[_0x57d2('0x35')][_0x57d2('0x3a')]));_0x53a4b0[_0x57d2('0x39')]=_0x53a4b0[_0x57d2('0x39')][_0x57d2('0x3b')]?_0x53a4b0[_0x57d2('0x39')]:_0x4cfae2[_0x57d2('0x34')];if(!_0x5eb7a3[_0x57d2('0x35')][_0x57d2('0x3c')](_0x57d2('0x58'))){_0x53a4b0[_0x57d2('0x1e')]=qs['limit'](_0x5eb7a3[_0x57d2('0x35')][_0x57d2('0x1e')]);_0x53a4b0['offset']=qs[_0x57d2('0x1d')](_0x5eb7a3[_0x57d2('0x35')][_0x57d2('0x1d')]);}_0x53a4b0[_0x57d2('0x59')]=qs['sort'](_0x5eb7a3[_0x57d2('0x35')]['sort']);_0x53a4b0['where']=qs[_0x57d2('0x37')](_['pick'](_0x5eb7a3[_0x57d2('0x35')],_0x4cfae2[_0x57d2('0x37')]));_0x53a4b0[_0x57d2('0x3e')][_0x57d2('0x5a')]=_0x858d6e['id'];if(_0x5eb7a3['query'][_0x57d2('0x40')]){_0x53a4b0[_0x57d2('0x3e')]=_[_0x57d2('0x41')](_0x53a4b0[_0x57d2('0x3e')],{'$or':_[_0x57d2('0x2e')](_0x53a4b0[_0x57d2('0x39')],function(_0xc26657){var _0x41ca89={};_0x41ca89[_0xc26657]={'$like':'%'+_0x5eb7a3[_0x57d2('0x35')][_0x57d2('0x40')]+'%'};return _0x41ca89;})});}_0x53a4b0=_['merge']({},_0x53a4b0,_0x5eb7a3[_0x57d2('0x43')]);return db[_0x57d2('0x57')][_0x57d2('0x1c')]({'where':_0x53a4b0[_0x57d2('0x3e')]})[_0x57d2('0x24')](function(_0x1375fa){_0x28c7ff[_0x57d2('0x1c')]=_0x1375fa;if(_0x5eb7a3[_0x57d2('0x35')][_0x57d2('0x46')]){_0x53a4b0[_0x57d2('0x47')]=[{'all':!![]}];}return db[_0x57d2('0x57')][_0x57d2('0x5b')](_0x53a4b0);})['then'](function(_0x5aa569){_0x28c7ff[_0x57d2('0x44')]=_0x5aa569;return _0x28c7ff;});}})[_0x57d2('0x24')](respondWithFilteredResult(_0x3afeb9,_0x53a4b0))[_0x57d2('0x45')](handleError(_0x3afeb9,null));};exports[_0x57d2('0x5c')]=function(_0xe60b2e,_0x58040b,_0x54673d){var _0x3e9c36={'raw':!![],'where':{}};var _0x14b5e1={};var _0x20529b={'count':0x0,'rows':[]};return db[_0x57d2('0x2f')][_0x57d2('0x5d')]({'where':{'id':_0xe60b2e[_0x57d2('0x51')]['id']}})['then'](handleEntityNotFound(_0x58040b,null))[_0x57d2('0x24')](function(_0x2f5625){if(_0x2f5625){_0x14b5e1['model']=_['keys'](db['JscriptyAnswerReport']['rawAttributes']);_0x14b5e1[_0x57d2('0x35')]=_['keys'](_0xe60b2e[_0x57d2('0x35')]);_0x14b5e1['filters']=_[_0x57d2('0x38')](_0x14b5e1[_0x57d2('0x34')],_0x14b5e1[_0x57d2('0x35')]);_0x3e9c36[_0x57d2('0x39')]=_[_0x57d2('0x38')](_0x14b5e1['model'],qs[_0x57d2('0x3a')](_0xe60b2e[_0x57d2('0x35')][_0x57d2('0x3a')]));_0x3e9c36['attributes']=_0x3e9c36[_0x57d2('0x39')][_0x57d2('0x3b')]?_0x3e9c36[_0x57d2('0x39')]:_0x14b5e1[_0x57d2('0x34')];if(!_0xe60b2e[_0x57d2('0x35')][_0x57d2('0x3c')](_0x57d2('0x58'))){_0x3e9c36['limit']=qs['limit'](_0xe60b2e['query'][_0x57d2('0x1e')]);_0x3e9c36[_0x57d2('0x1d')]=qs[_0x57d2('0x1d')](_0xe60b2e['query'][_0x57d2('0x1d')]);}_0x3e9c36[_0x57d2('0x59')]=qs[_0x57d2('0x3d')](_0xe60b2e[_0x57d2('0x35')][_0x57d2('0x3d')]);_0x3e9c36[_0x57d2('0x3e')]=qs[_0x57d2('0x37')](_[_0x57d2('0x3f')](_0xe60b2e['query'],_0x14b5e1[_0x57d2('0x37')]));_0x3e9c36[_0x57d2('0x3e')][_0x57d2('0x5a')]=_0x2f5625['id'];if(_0xe60b2e[_0x57d2('0x35')]['filter']){_0x3e9c36['where']=_[_0x57d2('0x41')](_0x3e9c36['where'],{'$or':_[_0x57d2('0x2e')](_0x3e9c36['attributes'],function(_0x3a35d7){var _0x12fb54={};_0x12fb54[_0x3a35d7]={'$like':'%'+_0xe60b2e[_0x57d2('0x35')]['filter']+'%'};return _0x12fb54;})});}_0x3e9c36=_[_0x57d2('0x41')]({},_0x3e9c36,_0xe60b2e['options']);return db[_0x57d2('0x5e')][_0x57d2('0x1c')]({'where':_0x3e9c36[_0x57d2('0x3e')]})[_0x57d2('0x24')](function(_0x3c6aba){_0x20529b[_0x57d2('0x1c')]=_0x3c6aba;if(_0xe60b2e[_0x57d2('0x35')][_0x57d2('0x46')]){_0x3e9c36[_0x57d2('0x47')]=[{'all':!![]}];}return db[_0x57d2('0x5e')][_0x57d2('0x5b')](_0x3e9c36);})[_0x57d2('0x24')](function(_0x27e55b){_0x20529b[_0x57d2('0x44')]=_0x27e55b;return _0x20529b;});}})[_0x57d2('0x24')](respondWithFilteredResult(_0x58040b,_0x3e9c36))['catch'](handleError(_0x58040b,null));};function char(_0x3a7d89){return _0x57d2('0x5f')===typeof _0x3a7d89?String[_0x57d2('0x60')][_0x57d2('0x20')](null,arguments):_0x3a7d89;}function needsEncapsulation(_0x4d83cf){return!!_0x4d83cf&&(_0x4d83cf[_0x57d2('0x61')]()[_0x57d2('0x62')](char(0xd))>=0x0||_0x4d83cf[_0x57d2('0x61')]()['indexOf'](char(0xa))>=0x0||_0x4d83cf[_0x57d2('0x61')]()[_0x57d2('0x62')](char(0x2c))>=0x0||_0x4d83cf[_0x57d2('0x61')]()[_0x57d2('0x62')](char(0x22))>=0x0);}function encapsulate(_0x44d126){var _0xad3ca9=char(0x22),_0xb76480='\x5c'+char(0x22),_0x1ba236=_0x44d126[_0x57d2('0x61')]()[_0x57d2('0x63')](new RegExp(_0xad3ca9,'g'),_0xb76480);return _0xad3ca9+_0x1ba236+_0xad3ca9;}exports['getSummary']=function(_0x4ca002,_0x63db36,_0x3dc4ae){var _0x26ce9f,_0x19bc4b;var _0x4a4d97={'where':{'ProjectId':_0x4ca002[_0x57d2('0x51')]['id']}};if(_0x4ca002[_0x57d2('0x35')][_0x57d2('0x64')]){_0x4a4d97[_0x57d2('0x3e')][_0x57d2('0x65')]=JSON['parse'](_0x4ca002['query']['startTime']);}return db['JscriptySessionReport']['findAll'](_0x4a4d97)[_0x57d2('0x24')](handleEntityNotFound(_0x63db36,null))['then'](function(_0xd6ec3d){if(_0xd6ec3d){_0x26ce9f=_0xd6ec3d;return db[_0x57d2('0x66')]['findAll']({'where':{'SessionId':{'$in':_[_0x57d2('0x2e')](_0x26ce9f,'id')},'ProjectId':_0x4ca002['params']['id']},'order':_0x57d2('0x67')});}})[_0x57d2('0x24')](handleEntityNotFound(_0x63db36,null))[_0x57d2('0x24')](function(_0x1ea605){if(_0x1ea605){_0x19bc4b=_0x1ea605;var _0x52163e={};for(var _0x30ae34=0x0,_0x4aff18=_0x19bc4b['length'];_0x30ae34<_0x4aff18;_0x30ae34++){if(!_0x52163e[_0x57d2('0x3c')](_0x19bc4b[_0x30ae34][_0x57d2('0x68')])){_0x52163e[_0x19bc4b[_0x30ae34][_0x57d2('0x68')]]=needsEncapsulation(_0x19bc4b[_0x30ae34][_0x57d2('0x69')])?encapsulate(_0x19bc4b[_0x30ae34][_0x57d2('0x69')]):_0x19bc4b[_0x30ae34]['question'];}}var _0x4b7687=[],_0x1d1164={};for(var _0x42ce47=0x0,_0x2d1e7b=_0x26ce9f[_0x57d2('0x3b')];_0x42ce47<_0x2d1e7b;_0x42ce47++){_0x1d1164={'ProjectId':_0x4ca002[_0x57d2('0x51')]['id'],'SessionId':_0x26ce9f[_0x42ce47]['id'],'StartTime':moment(_0x26ce9f[_0x42ce47][_0x57d2('0x65')])[_0x57d2('0x6a')]('YYYY-MM-DD\x20HH:mm:ss')};for(var _0x4fc95c=0x0,_0x305a6f=_0x19bc4b['length'];_0x4fc95c<_0x305a6f;_0x4fc95c++){if(_0x19bc4b[_0x4fc95c][_0x57d2('0x6b')]==_0x26ce9f[_0x42ce47]['id']&&_0x52163e[_0x57d2('0x3c')](_0x19bc4b[_0x4fc95c][_0x57d2('0x68')])){_0x1d1164[_0x52163e[_0x19bc4b[_0x4fc95c][_0x57d2('0x68')]]]=_0x19bc4b[_0x4fc95c][_0x57d2('0x6c')];}}for(var _0x5ebb32 in _0x52163e){if(!_0x1d1164[_0x57d2('0x3c')](_0x52163e[_0x5ebb32])){_0x1d1164[_0x52163e[_0x5ebb32]]=null;}}_0x4b7687['push'](_0x1d1164);}return _0x4b7687;}})[_0x57d2('0x24')](function(_0x888a75){if(!_[_0x57d2('0x6d')](_0x888a75)){var _0xfeaefd=toCsv(_0x888a75);var _0x41883f=Date[_0x57d2('0x6e')]();fs[_0x57d2('0x6f')](util[_0x57d2('0x6a')](_0x57d2('0x70'),_0x4ca002[_0x57d2('0x51')]['id'],_0x41883f),_0xfeaefd);_0x63db36[_0x57d2('0x71')]('Content-disposition','attachment;\x20filename='+util['format'](_0x57d2('0x72'),_0x4ca002[_0x57d2('0x51')]['id'],_0x41883f));_0x63db36[_0x57d2('0x71')](_0x57d2('0x73'),'text/csv');return _0x63db36[_0x57d2('0x74')](util[_0x57d2('0x6a')](_0x57d2('0x70'),_0x4ca002[_0x57d2('0x51')]['id'],_0x41883f));}else{return _0x63db36['sendStatus'](0xcc);}})[_0x57d2('0x45')](handleError(_0x63db36,null));};