cdc38693f112be6772d57a62558fdab16ace9208
[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 _0xb6ee=['count','offset','set','apply','reject','save','update','then','destroy','get','UserProfileResource','error','name','send','index','map','JscriptyProject','rawAttributes','fieldName','key','keys','query','filters','intersection','model','attributes','fields','length','hasOwnProperty','nolimit','limit','order','sort','where','filter','merge','type','VIRTUAL','include','findAll','rows','catch','show','params','includeAll','options','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','Projects','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','clone','find','omit','createdAt','updatedAt','role','findOne','JscriptySessionReport','pick','ProjectId','getAnswers','JscriptyAnswerReport','fromCharCode','toString','indexOf','replace','startTime','starttime','parse','-createdAt','questionId','question','format','YYYY-MM-DD\x20HH:mm:ss','answer','push','isEmpty','now','/tmp/Jscripty_Project_%d_Summary_%s.csv','Content-disposition','attachment;\x20filename=','Jscripty_Project_%d_Summary_%s.csv','text/csv','download','html-pdf','eml-format','rimraf','zip-dir','request-promise','moment','mustache','util','path','to-csv','ejs','lodash','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/license/util','../../mysqldb','sendStatus','end','status','json'];(function(_0x421cf8,_0x23152c){var _0x145c48=function(_0x565862){while(--_0x565862){_0x421cf8['push'](_0x421cf8['shift']());}};_0x145c48(++_0x23152c);}(_0xb6ee,0x1b5));var _0xeb6e=function(_0x55e0f0,_0x2bc984){_0x55e0f0=_0x55e0f0-0x0;var _0x1b70a5=_0xb6ee[_0x55e0f0];return _0x1b70a5;};'use strict';var pdf=require(_0xeb6e('0x0'));var emlformat=require(_0xeb6e('0x1'));var rimraf=require(_0xeb6e('0x2'));var zipdir=require(_0xeb6e('0x3'));var jsonpatch=require('fast-json-patch');var rp=require(_0xeb6e('0x4'));var moment=require(_0xeb6e('0x5'));var BPromise=require('bluebird');var Mustache=require(_0xeb6e('0x6'));var util=require(_0xeb6e('0x7'));var path=require(_0xeb6e('0x8'));var sox=require('sox');var csv=require(_0xeb6e('0x9'));var ejs=require(_0xeb6e('0xa'));var fs=require('fs');var _=require(_0xeb6e('0xb'));var squel=require('squel');var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0xeb6e('0xc'));var toCsv=require(_0xeb6e('0x9'));var querystring=require(_0xeb6e('0xd'));var Papa=require(_0xeb6e('0xe'));var Redis=require(_0xeb6e('0xf'));var authService=require(_0xeb6e('0x10'));var qs=require(_0xeb6e('0x11'));var as=require(_0xeb6e('0x12'));var hardwareService=require(_0xeb6e('0x13'));var logger=require('../../config/logger')(_0xeb6e('0x14'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0xeb6e('0x15'));var db=require(_0xeb6e('0x16'))['db'];function respondWithStatusCode(_0x532a37,_0x275b03){_0x275b03=_0x275b03||0xcc;return function(_0x41130f){if(_0x41130f){return _0x532a37[_0xeb6e('0x17')](_0x275b03);}return _0x532a37['status'](_0x275b03)[_0xeb6e('0x18')]();};}function respondWithResult(_0xfed03,_0x2feda0){_0x2feda0=_0x2feda0||0xc8;return function(_0x2a6f67){if(_0x2a6f67){return _0xfed03[_0xeb6e('0x19')](_0x2feda0)[_0xeb6e('0x1a')](_0x2a6f67);}};}function respondWithFilteredResult(_0x533988,_0x482c0f){return function(_0x3c9796){if(_0x3c9796){var _0xc5a142=_0x3c9796[_0xeb6e('0x1b')],_0x13ce49=_0x482c0f['offset'],_0x5bde13=_0x482c0f[_0xeb6e('0x1c')]+_0x482c0f['limit'],_0x4a1306;if(_0x5bde13>=_0xc5a142){_0x5bde13=_0xc5a142;_0x4a1306=0xc8;}else{_0x4a1306=0xce;}_0x533988[_0xeb6e('0x19')](_0x4a1306);return _0x533988[_0xeb6e('0x1d')]('Content-Range',_0x13ce49+'-'+_0x5bde13+'/'+_0xc5a142)['json'](_0x3c9796);}return null;};}function patchUpdates(_0x3e239a){return function(_0x443761){try{jsonpatch[_0xeb6e('0x1e')](_0x443761,_0x3e239a,!![]);}catch(_0x5ba6b2){return BPromise[_0xeb6e('0x1f')](_0x5ba6b2);}return _0x443761[_0xeb6e('0x20')]();};}function saveUpdates(_0x2a56eb,_0x1e9d65){return function(_0x1cabd0){if(_0x1cabd0){return _0x1cabd0[_0xeb6e('0x21')](_0x2a56eb)[_0xeb6e('0x22')](function(_0x1c47d0){return _0x1c47d0;});}return null;};}function removeEntity(_0xde7655,_0x24b7ee){return function(_0x350e74){if(_0x350e74){return _0x350e74[_0xeb6e('0x23')]()['then'](function(){var _0x241bd3=_0x350e74[_0xeb6e('0x24')]({'plain':!![]});var _0x43e01e='Projects';return db[_0xeb6e('0x25')][_0xeb6e('0x23')]({'where':{'type':_0x43e01e,'resourceId':_0x241bd3['id']}})['then'](function(){return _0x350e74;});})[_0xeb6e('0x22')](function(){_0xde7655[_0xeb6e('0x19')](0xcc)[_0xeb6e('0x18')]();});}};}function handleEntityNotFound(_0x3ad49b,_0x33a370){return function(_0x565fd2){if(!_0x565fd2){_0x3ad49b[_0xeb6e('0x17')](0x194);}return _0x565fd2;};}function handleError(_0x2d3fb5,_0x2a9236){_0x2a9236=_0x2a9236||0x1f4;return function(_0x4121a3){logger[_0xeb6e('0x26')](_0x4121a3['stack']);if(_0x4121a3[_0xeb6e('0x27')]){delete _0x4121a3['name'];}_0x2d3fb5[_0xeb6e('0x19')](_0x2a9236)[_0xeb6e('0x28')](_0x4121a3);};}exports[_0xeb6e('0x29')]=function(_0x3faf3a,_0x28ddcd){var _0x33caa6={},_0x5a9f47={},_0x2b4f3c={'count':0x0,'rows':[]};var _0x4db03b=_[_0xeb6e('0x2a')](db[_0xeb6e('0x2b')][_0xeb6e('0x2c')],function(_0x9bef8d){return{'name':_0x9bef8d[_0xeb6e('0x2d')],'type':_0x9bef8d['type'][_0xeb6e('0x2e')]};});_0x5a9f47['model']=_[_0xeb6e('0x2a')](_0x4db03b,_0xeb6e('0x27'));_0x5a9f47['query']=_[_0xeb6e('0x2f')](_0x3faf3a[_0xeb6e('0x30')]);_0x5a9f47[_0xeb6e('0x31')]=_[_0xeb6e('0x32')](_0x5a9f47[_0xeb6e('0x33')],_0x5a9f47[_0xeb6e('0x30')]);_0x33caa6[_0xeb6e('0x34')]=_[_0xeb6e('0x32')](_0x5a9f47[_0xeb6e('0x33')],qs[_0xeb6e('0x35')](_0x3faf3a[_0xeb6e('0x30')][_0xeb6e('0x35')]));_0x33caa6[_0xeb6e('0x34')]=_0x33caa6[_0xeb6e('0x34')][_0xeb6e('0x36')]?_0x33caa6['attributes']:_0x5a9f47[_0xeb6e('0x33')];if(!_0x3faf3a[_0xeb6e('0x30')][_0xeb6e('0x37')](_0xeb6e('0x38'))){_0x33caa6['limit']=qs['limit'](_0x3faf3a['query'][_0xeb6e('0x39')]);_0x33caa6[_0xeb6e('0x1c')]=qs[_0xeb6e('0x1c')](_0x3faf3a['query'][_0xeb6e('0x1c')]);}_0x33caa6[_0xeb6e('0x3a')]=qs[_0xeb6e('0x3b')](_0x3faf3a['query'][_0xeb6e('0x3b')]);_0x33caa6[_0xeb6e('0x3c')]=qs[_0xeb6e('0x31')](_['pick'](_0x3faf3a[_0xeb6e('0x30')],_0x5a9f47['filters']),_0x4db03b);if(_0x3faf3a[_0xeb6e('0x30')][_0xeb6e('0x3d')]){_0x33caa6[_0xeb6e('0x3c')]=_[_0xeb6e('0x3e')](_0x33caa6[_0xeb6e('0x3c')],{'$or':_[_0xeb6e('0x2a')](_0x4db03b,function(_0x559a14){if(_0x559a14[_0xeb6e('0x3f')]!==_0xeb6e('0x40')){var _0x76734e={};_0x76734e[_0x559a14[_0xeb6e('0x27')]]={'$like':'%'+_0x3faf3a[_0xeb6e('0x30')]['filter']+'%'};return _0x76734e;}})});}_0x33caa6=_[_0xeb6e('0x3e')]({},_0x33caa6,_0x3faf3a['options']);var _0x207f95={'where':_0x33caa6[_0xeb6e('0x3c')]};return db[_0xeb6e('0x2b')][_0xeb6e('0x1b')](_0x207f95)['then'](function(_0x320656){_0x2b4f3c[_0xeb6e('0x1b')]=_0x320656;if(_0x3faf3a['query']['includeAll']){_0x33caa6[_0xeb6e('0x41')]=[{'all':!![]}];}return db[_0xeb6e('0x2b')][_0xeb6e('0x42')](_0x33caa6);})['then'](function(_0x5783bb){_0x2b4f3c[_0xeb6e('0x43')]=_0x5783bb;return _0x2b4f3c;})[_0xeb6e('0x22')](respondWithFilteredResult(_0x28ddcd,_0x33caa6))[_0xeb6e('0x44')](handleError(_0x28ddcd,null));};exports[_0xeb6e('0x45')]=function(_0x4deb27,_0x1d7a50){var _0x30db34={'raw':![],'where':{'id':_0x4deb27[_0xeb6e('0x46')]['id']}},_0x1bbf26={};_0x1bbf26[_0xeb6e('0x33')]=_[_0xeb6e('0x2f')](db[_0xeb6e('0x2b')][_0xeb6e('0x2c')]);_0x1bbf26[_0xeb6e('0x30')]=_[_0xeb6e('0x2f')](_0x4deb27[_0xeb6e('0x30')]);_0x1bbf26['filters']=_['intersection'](_0x1bbf26[_0xeb6e('0x33')],_0x1bbf26[_0xeb6e('0x30')]);_0x30db34[_0xeb6e('0x34')]=_['intersection'](_0x1bbf26[_0xeb6e('0x33')],qs['fields'](_0x4deb27['query'][_0xeb6e('0x35')]));_0x30db34[_0xeb6e('0x34')]=_0x30db34[_0xeb6e('0x34')][_0xeb6e('0x36')]?_0x30db34[_0xeb6e('0x34')]:_0x1bbf26['model'];if(_0x4deb27[_0xeb6e('0x30')][_0xeb6e('0x47')]){_0x30db34['include']=[{'all':!![]}];}_0x30db34=_[_0xeb6e('0x3e')]({},_0x30db34,_0x4deb27[_0xeb6e('0x48')]);return db[_0xeb6e('0x2b')]['find'](_0x30db34)['then'](handleEntityNotFound(_0x1d7a50,null))[_0xeb6e('0x22')](respondWithResult(_0x1d7a50,null))['catch'](handleError(_0x1d7a50,null));};exports[_0xeb6e('0x49')]=function(_0x451fd6,_0x5b4475){return db['JscriptyProject'][_0xeb6e('0x49')](_0x451fd6[_0xeb6e('0x4a')],{})[_0xeb6e('0x22')](function(_0x589605){var _0x12e6db=_0x451fd6[_0xeb6e('0x4b')][_0xeb6e('0x24')]({'plain':!![]});if(!_0x12e6db)throw new Error(_0xeb6e('0x4c'));if(_0x12e6db['role']===_0xeb6e('0x4b')){var _0x3faeef=_0x589605['get']({'plain':!![]});var _0x150237=_0xeb6e('0x4d');return db[_0xeb6e('0x4e')]['find']({'where':{'name':_0x150237,'userProfileId':_0x12e6db[_0xeb6e('0x4f')]},'raw':!![]})[_0xeb6e('0x22')](function(_0x590f05){if(_0x590f05&&_0x590f05[_0xeb6e('0x50')]===0x0){return db[_0xeb6e('0x25')][_0xeb6e('0x49')]({'name':_0x3faeef[_0xeb6e('0x27')],'resourceId':_0x3faeef['id'],'type':_0x590f05['name'],'sectionId':_0x590f05['id']},{})[_0xeb6e('0x22')](function(){return _0x589605;});}else{return _0x589605;}})['catch'](function(_0x26ac62){logger[_0xeb6e('0x26')](_0xeb6e('0x51'),_0x26ac62);throw _0x26ac62;});}return _0x589605;})[_0xeb6e('0x22')](respondWithResult(_0x5b4475,0xc9))[_0xeb6e('0x44')](handleError(_0x5b4475,null));};exports[_0xeb6e('0x52')]=function(_0x4db81d,_0x1417fe){var _0x326047={'where':{'id':_0x4db81d[_0xeb6e('0x46')]['id']}},_0x8a85e5={};_0x8a85e5[_0xeb6e('0x33')]=_[_0xeb6e('0x2f')](db[_0xeb6e('0x2b')][_0xeb6e('0x2c')]);_0x326047[_0xeb6e('0x34')]=_[_0xeb6e('0x32')](_0x8a85e5[_0xeb6e('0x33')],qs[_0xeb6e('0x35')](_0x4db81d[_0xeb6e('0x30')][_0xeb6e('0x35')]));_0x326047[_0xeb6e('0x34')]=_0x326047[_0xeb6e('0x34')]['length']?_0x326047[_0xeb6e('0x34')]:_0x8a85e5[_0xeb6e('0x33')];if(_0x4db81d[_0xeb6e('0x30')]['includeAll']){_0x326047[_0xeb6e('0x41')]=[{'all':!![]}];}_0x326047=_[_0xeb6e('0x3e')]({},_0x326047,_0x4db81d[_0xeb6e('0x48')]);return db[_0xeb6e('0x2b')][_0xeb6e('0x53')](_0x326047)['then'](handleEntityNotFound(_0x1417fe,null))[_0xeb6e('0x22')](function(_0x103c40){if(_0x103c40){var _0x46d0d7=_0x103c40[_0xeb6e('0x24')]({'plain':!![]});_0x46d0d7=qs[_0xeb6e('0x54')](_0x46d0d7,['id',_0xeb6e('0x55'),_0xeb6e('0x56')]);_0x4db81d[_0xeb6e('0x4a')]=_[_0xeb6e('0x54')](_0x4db81d['body'],['id',_0xeb6e('0x55'),_0xeb6e('0x56')]);return db['JscriptyProject'][_0xeb6e('0x49')](_[_0xeb6e('0x3e')](_0x46d0d7,_0x4db81d[_0xeb6e('0x4a')]),{'include':_0x4db81d[_0xeb6e('0x30')]['includeAll']?[{'all':!![]}]:undefined})[_0xeb6e('0x22')](function(_0x464c80){var _0x5f09e8=_0x4db81d['user'][_0xeb6e('0x24')]({'plain':!![]});if(!_0x5f09e8)throw new Error(_0xeb6e('0x4c'));if(_0x5f09e8[_0xeb6e('0x57')]===_0xeb6e('0x4b')){var _0x1c499d=_0x464c80[_0xeb6e('0x24')]({'plain':!![]});var _0x533616='Projects';return db[_0xeb6e('0x4e')][_0xeb6e('0x53')]({'where':{'name':_0x533616,'userProfileId':_0x5f09e8['userProfileId']},'raw':!![]})[_0xeb6e('0x22')](function(_0x20af94){if(_0x20af94&&_0x20af94[_0xeb6e('0x50')]===0x0){return db['UserProfileResource'][_0xeb6e('0x49')]({'name':_0x1c499d['name'],'resourceId':_0x1c499d['id'],'type':_0x20af94[_0xeb6e('0x27')],'sectionId':_0x20af94['id']},{})['then'](function(){return _0x464c80;});}else{return _0x464c80;}})[_0xeb6e('0x44')](function(_0x53d109){logger[_0xeb6e('0x26')](_0xeb6e('0x51'),_0x53d109);throw _0x53d109;});}return _0x464c80;});}})[_0xeb6e('0x22')](respondWithResult(_0x1417fe,0xc9))[_0xeb6e('0x44')](handleError(_0x1417fe,null));};exports[_0xeb6e('0x21')]=function(_0x1267eb,_0x470bf9){if(_0x1267eb[_0xeb6e('0x4a')]['id']){delete _0x1267eb[_0xeb6e('0x4a')]['id'];}return db[_0xeb6e('0x2b')][_0xeb6e('0x53')]({'where':{'id':_0x1267eb[_0xeb6e('0x46')]['id']}})[_0xeb6e('0x22')](handleEntityNotFound(_0x470bf9,null))[_0xeb6e('0x22')](saveUpdates(_0x1267eb[_0xeb6e('0x4a')],null))['then'](respondWithResult(_0x470bf9,null))['catch'](handleError(_0x470bf9,null));};exports['destroy']=function(_0x30449d,_0x5a4bfc){return db[_0xeb6e('0x2b')][_0xeb6e('0x53')]({'where':{'id':_0x30449d['params']['id']}})[_0xeb6e('0x22')](handleEntityNotFound(_0x5a4bfc,null))['then'](removeEntity(_0x5a4bfc,null))['catch'](handleError(_0x5a4bfc,null));};exports['getSessions']=function(_0x273369,_0x3fb80f,_0x5df92a){var _0x2b8b73={'raw':!![],'where':{}};var _0x1e88c4={};var _0x804490={'count':0x0,'rows':[]};return db['JscriptyProject'][_0xeb6e('0x58')]({'where':{'id':_0x273369['params']['id']}})['then'](handleEntityNotFound(_0x3fb80f,null))['then'](function(_0xb4b8a4){if(_0xb4b8a4){_0x1e88c4['model']=_['keys'](db[_0xeb6e('0x59')][_0xeb6e('0x2c')]);_0x1e88c4[_0xeb6e('0x30')]=_['keys'](_0x273369[_0xeb6e('0x30')]);_0x1e88c4['filters']=_[_0xeb6e('0x32')](_0x1e88c4[_0xeb6e('0x33')],_0x1e88c4['query']);_0x2b8b73[_0xeb6e('0x34')]=_[_0xeb6e('0x32')](_0x1e88c4['model'],qs[_0xeb6e('0x35')](_0x273369[_0xeb6e('0x30')][_0xeb6e('0x35')]));_0x2b8b73[_0xeb6e('0x34')]=_0x2b8b73['attributes'][_0xeb6e('0x36')]?_0x2b8b73['attributes']:_0x1e88c4[_0xeb6e('0x33')];if(!_0x273369[_0xeb6e('0x30')][_0xeb6e('0x37')](_0xeb6e('0x38'))){_0x2b8b73[_0xeb6e('0x39')]=qs[_0xeb6e('0x39')](_0x273369[_0xeb6e('0x30')][_0xeb6e('0x39')]);_0x2b8b73[_0xeb6e('0x1c')]=qs[_0xeb6e('0x1c')](_0x273369[_0xeb6e('0x30')][_0xeb6e('0x1c')]);}_0x2b8b73[_0xeb6e('0x3a')]=qs[_0xeb6e('0x3b')](_0x273369[_0xeb6e('0x30')][_0xeb6e('0x3b')]);_0x2b8b73['where']=qs[_0xeb6e('0x31')](_[_0xeb6e('0x5a')](_0x273369[_0xeb6e('0x30')],_0x1e88c4[_0xeb6e('0x31')]));_0x2b8b73[_0xeb6e('0x3c')][_0xeb6e('0x5b')]=_0xb4b8a4['id'];if(_0x273369[_0xeb6e('0x30')][_0xeb6e('0x3d')]){_0x2b8b73['where']=_['merge'](_0x2b8b73[_0xeb6e('0x3c')],{'$or':_['map'](_0x2b8b73[_0xeb6e('0x34')],function(_0x31e64c){var _0xb28c09={};_0xb28c09[_0x31e64c]={'$like':'%'+_0x273369[_0xeb6e('0x30')][_0xeb6e('0x3d')]+'%'};return _0xb28c09;})});}_0x2b8b73=_[_0xeb6e('0x3e')]({},_0x2b8b73,_0x273369[_0xeb6e('0x48')]);return db[_0xeb6e('0x59')][_0xeb6e('0x1b')]({'where':_0x2b8b73[_0xeb6e('0x3c')]})['then'](function(_0x1bd1e1){_0x804490[_0xeb6e('0x1b')]=_0x1bd1e1;if(_0x273369[_0xeb6e('0x30')]['includeAll']){_0x2b8b73['include']=[{'all':!![]}];}return db[_0xeb6e('0x59')][_0xeb6e('0x42')](_0x2b8b73);})[_0xeb6e('0x22')](function(_0x50c2d0){_0x804490[_0xeb6e('0x43')]=_0x50c2d0;return _0x804490;});}})[_0xeb6e('0x22')](respondWithFilteredResult(_0x3fb80f,_0x2b8b73))[_0xeb6e('0x44')](handleError(_0x3fb80f,null));};exports[_0xeb6e('0x5c')]=function(_0x21f151,_0x142016,_0x250faa){var _0x493daa={'raw':!![],'where':{}};var _0x13c82a={};var _0x40b117={'count':0x0,'rows':[]};return db[_0xeb6e('0x2b')][_0xeb6e('0x58')]({'where':{'id':_0x21f151[_0xeb6e('0x46')]['id']}})[_0xeb6e('0x22')](handleEntityNotFound(_0x142016,null))[_0xeb6e('0x22')](function(_0xcdd810){if(_0xcdd810){_0x13c82a[_0xeb6e('0x33')]=_['keys'](db[_0xeb6e('0x5d')][_0xeb6e('0x2c')]);_0x13c82a[_0xeb6e('0x30')]=_['keys'](_0x21f151[_0xeb6e('0x30')]);_0x13c82a[_0xeb6e('0x31')]=_[_0xeb6e('0x32')](_0x13c82a[_0xeb6e('0x33')],_0x13c82a[_0xeb6e('0x30')]);_0x493daa[_0xeb6e('0x34')]=_[_0xeb6e('0x32')](_0x13c82a['model'],qs[_0xeb6e('0x35')](_0x21f151[_0xeb6e('0x30')]['fields']));_0x493daa[_0xeb6e('0x34')]=_0x493daa[_0xeb6e('0x34')]['length']?_0x493daa['attributes']:_0x13c82a[_0xeb6e('0x33')];if(!_0x21f151[_0xeb6e('0x30')][_0xeb6e('0x37')](_0xeb6e('0x38'))){_0x493daa[_0xeb6e('0x39')]=qs[_0xeb6e('0x39')](_0x21f151[_0xeb6e('0x30')]['limit']);_0x493daa[_0xeb6e('0x1c')]=qs[_0xeb6e('0x1c')](_0x21f151['query']['offset']);}_0x493daa[_0xeb6e('0x3a')]=qs[_0xeb6e('0x3b')](_0x21f151[_0xeb6e('0x30')][_0xeb6e('0x3b')]);_0x493daa[_0xeb6e('0x3c')]=qs[_0xeb6e('0x31')](_[_0xeb6e('0x5a')](_0x21f151['query'],_0x13c82a['filters']));_0x493daa[_0xeb6e('0x3c')][_0xeb6e('0x5b')]=_0xcdd810['id'];if(_0x21f151['query'][_0xeb6e('0x3d')]){_0x493daa['where']=_[_0xeb6e('0x3e')](_0x493daa[_0xeb6e('0x3c')],{'$or':_[_0xeb6e('0x2a')](_0x493daa['attributes'],function(_0x44500d){var _0x14a7a5={};_0x14a7a5[_0x44500d]={'$like':'%'+_0x21f151[_0xeb6e('0x30')][_0xeb6e('0x3d')]+'%'};return _0x14a7a5;})});}_0x493daa=_[_0xeb6e('0x3e')]({},_0x493daa,_0x21f151[_0xeb6e('0x48')]);return db['JscriptyAnswerReport'][_0xeb6e('0x1b')]({'where':_0x493daa[_0xeb6e('0x3c')]})[_0xeb6e('0x22')](function(_0x1050f1){_0x40b117[_0xeb6e('0x1b')]=_0x1050f1;if(_0x21f151[_0xeb6e('0x30')]['includeAll']){_0x493daa['include']=[{'all':!![]}];}return db['JscriptyAnswerReport'][_0xeb6e('0x42')](_0x493daa);})[_0xeb6e('0x22')](function(_0x10bdeb){_0x40b117[_0xeb6e('0x43')]=_0x10bdeb;return _0x40b117;});}})['then'](respondWithFilteredResult(_0x142016,_0x493daa))[_0xeb6e('0x44')](handleError(_0x142016,null));};function char(_0x4578c9){return'number'===typeof _0x4578c9?String[_0xeb6e('0x5e')]['apply'](null,arguments):_0x4578c9;}function needsEncapsulation(_0x54b016){return!!_0x54b016&&(_0x54b016[_0xeb6e('0x5f')]()[_0xeb6e('0x60')](char(0xd))>=0x0||_0x54b016[_0xeb6e('0x5f')]()[_0xeb6e('0x60')](char(0xa))>=0x0||_0x54b016[_0xeb6e('0x5f')]()[_0xeb6e('0x60')](char(0x2c))>=0x0||_0x54b016[_0xeb6e('0x5f')]()[_0xeb6e('0x60')](char(0x22))>=0x0);}function encapsulate(_0x47ce1c){var _0x56f99e=char(0x22),_0xc964d6='\x5c'+char(0x22),_0xc27aa3=_0x47ce1c[_0xeb6e('0x5f')]()[_0xeb6e('0x61')](new RegExp(_0x56f99e,'g'),_0xc964d6);return _0x56f99e+_0xc27aa3+_0x56f99e;}exports['getSummary']=function(_0xf3e4a8,_0x2c876e,_0x5ee6fc){var _0x768f72,_0x2ebc74;var _0x2e22d9={'where':{'ProjectId':_0xf3e4a8[_0xeb6e('0x46')]['id']}};if(_0xf3e4a8[_0xeb6e('0x30')][_0xeb6e('0x62')]){_0x2e22d9['where'][_0xeb6e('0x63')]=JSON[_0xeb6e('0x64')](_0xf3e4a8[_0xeb6e('0x30')][_0xeb6e('0x62')]);}return db[_0xeb6e('0x59')][_0xeb6e('0x42')](_0x2e22d9)[_0xeb6e('0x22')](handleEntityNotFound(_0x2c876e,null))[_0xeb6e('0x22')](function(_0x537aef){if(_0x537aef){_0x768f72=_0x537aef;return db['JscriptyQuestionReport'][_0xeb6e('0x42')]({'where':{'SessionId':{'$in':_['map'](_0x768f72,'id')},'ProjectId':_0xf3e4a8[_0xeb6e('0x46')]['id']},'order':_0xeb6e('0x65')});}})[_0xeb6e('0x22')](handleEntityNotFound(_0x2c876e,null))[_0xeb6e('0x22')](function(_0x5a71c3){if(_0x5a71c3){_0x2ebc74=_0x5a71c3;var _0x1c679e={};for(var _0x1bb49f=0x0,_0x591810=_0x2ebc74['length'];_0x1bb49f<_0x591810;_0x1bb49f++){if(!_0x1c679e[_0xeb6e('0x37')](_0x2ebc74[_0x1bb49f][_0xeb6e('0x66')])){_0x1c679e[_0x2ebc74[_0x1bb49f][_0xeb6e('0x66')]]=needsEncapsulation(_0x2ebc74[_0x1bb49f]['question'])?encapsulate(_0x2ebc74[_0x1bb49f][_0xeb6e('0x67')]):_0x2ebc74[_0x1bb49f]['question'];}}var _0x219475=[],_0x4587b8={};for(var _0x1dc5f0=0x0,_0x393b65=_0x768f72[_0xeb6e('0x36')];_0x1dc5f0<_0x393b65;_0x1dc5f0++){_0x4587b8={'ProjectId':_0xf3e4a8['params']['id'],'SessionId':_0x768f72[_0x1dc5f0]['id'],'StartTime':moment(_0x768f72[_0x1dc5f0][_0xeb6e('0x63')])[_0xeb6e('0x68')](_0xeb6e('0x69'))};for(var _0x489678=0x0,_0x15b255=_0x2ebc74[_0xeb6e('0x36')];_0x489678<_0x15b255;_0x489678++){if(_0x2ebc74[_0x489678]['SessionId']==_0x768f72[_0x1dc5f0]['id']&&_0x1c679e[_0xeb6e('0x37')](_0x2ebc74[_0x489678]['questionId'])){_0x4587b8[_0x1c679e[_0x2ebc74[_0x489678][_0xeb6e('0x66')]]]=_0x2ebc74[_0x489678][_0xeb6e('0x6a')];}}for(var _0xdc2f60 in _0x1c679e){if(!_0x4587b8[_0xeb6e('0x37')](_0x1c679e[_0xdc2f60])){_0x4587b8[_0x1c679e[_0xdc2f60]]=null;}}_0x219475[_0xeb6e('0x6b')](_0x4587b8);}return _0x219475;}})[_0xeb6e('0x22')](function(_0x48fc30){if(!_[_0xeb6e('0x6c')](_0x48fc30)){var _0x506210=toCsv(_0x48fc30);var _0x55bfc7=Date[_0xeb6e('0x6d')]();fs['writeFileSync'](util[_0xeb6e('0x68')](_0xeb6e('0x6e'),_0xf3e4a8['params']['id'],_0x55bfc7),_0x506210);_0x2c876e['setHeader'](_0xeb6e('0x6f'),_0xeb6e('0x70')+util[_0xeb6e('0x68')](_0xeb6e('0x71'),_0xf3e4a8[_0xeb6e('0x46')]['id'],_0x55bfc7));_0x2c876e['setHeader']('Content-type',_0xeb6e('0x72'));return _0x2c876e[_0xeb6e('0x73')](util[_0xeb6e('0x68')](_0xeb6e('0x6e'),_0xf3e4a8[_0xeb6e('0x46')]['id'],_0x55bfc7));}else{return _0x2c876e[_0xeb6e('0x17')](0xcc);}})['catch'](handleError(_0x2c876e,null));};