Built motion from commit 06eb8eb0.|2.6.31
[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 _0x6132=['isEmpty','/tmp/Jscripty_Project_%d_Summary_%s.csv','setHeader','Content-disposition','attachment;\x20filename=','Jscripty_Project_%d_Summary_%s.csv','Content-type','text/csv','download','rimraf','fast-json-patch','request-promise','moment','util','sox','ejs','fs-extra','lodash','crypto','jsforce','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','undefined','limit','count','set','Content-Range','apply','reject','save','then','destroy','get','Projects','stack','name','send','index','map','rawAttributes','fieldName','key','model','query','keys','filters','intersection','fields','attributes','hasOwnProperty','nolimit','order','sort','where','pick','merge','VIRTUAL','filter','options','includeAll','include','findAll','rows','show','params','JscriptyProject','find','catch','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','UserProfileResource','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','clone','length','omit','updatedAt','createdAt','create','getSessions','ProjectId','JscriptySessionReport','getAnswers','findOne','JscriptyAnswerReport','fromCharCode','toString','indexOf','replace','getSummary','startTime','starttime','parse','JscriptyQuestionReport','questionId','question','format','YYYY-MM-DD\x20HH:mm:ss','push'];(function(_0x275999,_0x142005){var _0x46eec0=function(_0x35b7f1){while(--_0x35b7f1){_0x275999['push'](_0x275999['shift']());}};_0x46eec0(++_0x142005);}(_0x6132,0xf3));var _0x2613=function(_0x349984,_0x5cb1fc){_0x349984=_0x349984-0x0;var _0x2a6bd5=_0x6132[_0x349984];return _0x2a6bd5;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x2613('0x0'));var zipdir=require('zip-dir');var jsonpatch=require(_0x2613('0x1'));var rp=require(_0x2613('0x2'));var moment=require(_0x2613('0x3'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x2613('0x4'));var path=require('path');var sox=require(_0x2613('0x5'));var csv=require('to-csv');var ejs=require(_0x2613('0x6'));var fs=require('fs');var fs_extra=require(_0x2613('0x7'));var _=require(_0x2613('0x8'));var squel=require('squel');var crypto=require(_0x2613('0x9'));var jsforce=require(_0x2613('0xa'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0x2613('0xb'));var Papa=require('papaparse');var Redis=require(_0x2613('0xc'));var authService=require(_0x2613('0xd'));var qs=require(_0x2613('0xe'));var as=require(_0x2613('0xf'));var hardwareService=require(_0x2613('0x10'));var logger=require(_0x2613('0x11'))('api');var utils=require(_0x2613('0x12'));var config=require(_0x2613('0x13'));var licenseUtil=require(_0x2613('0x14'));var db=require(_0x2613('0x15'))['db'];function respondWithStatusCode(_0x5db104,_0x457b23){_0x457b23=_0x457b23||0xcc;return function(_0x1f46c7){if(_0x1f46c7){return _0x5db104[_0x2613('0x16')](_0x457b23);}return _0x5db104[_0x2613('0x17')](_0x457b23)[_0x2613('0x18')]();};}function respondWithResult(_0x18acee,_0x2d7b11){_0x2d7b11=_0x2d7b11||0xc8;return function(_0x2b3e5e){if(_0x2b3e5e){return _0x18acee[_0x2613('0x17')](_0x2d7b11)[_0x2613('0x19')](_0x2b3e5e);}};}function respondWithFilteredResult(_0x23a629,_0x34e96e){return function(_0x20d8a5){if(_0x20d8a5){var _0x441c1e=typeof _0x34e96e[_0x2613('0x1a')]===_0x2613('0x1b')&&typeof _0x34e96e[_0x2613('0x1c')]===_0x2613('0x1b');var _0x405ae3=_0x20d8a5[_0x2613('0x1d')];var _0x32e426=_0x441c1e?0x0:_0x34e96e[_0x2613('0x1a')];var _0x5072e5=_0x441c1e?_0x20d8a5[_0x2613('0x1d')]:_0x34e96e[_0x2613('0x1a')]+_0x34e96e[_0x2613('0x1c')];var _0x283a88;if(_0x5072e5>=_0x405ae3){_0x5072e5=_0x405ae3;_0x283a88=0xc8;}else{_0x283a88=0xce;}_0x23a629[_0x2613('0x17')](_0x283a88);return _0x23a629[_0x2613('0x1e')](_0x2613('0x1f'),_0x32e426+'-'+_0x5072e5+'/'+_0x405ae3)[_0x2613('0x19')](_0x20d8a5);}return null;};}function patchUpdates(_0x41f86d){return function(_0x335bf5){try{jsonpatch[_0x2613('0x20')](_0x335bf5,_0x41f86d,!![]);}catch(_0x48811a){return BPromise[_0x2613('0x21')](_0x48811a);}return _0x335bf5[_0x2613('0x22')]();};}function saveUpdates(_0x112732,_0x55d5c2){return function(_0x1f4368){if(_0x1f4368){return _0x1f4368['update'](_0x112732)[_0x2613('0x23')](function(_0x324697){return _0x324697;});}return null;};}function removeEntity(_0x4654cd,_0x1a84db){return function(_0x1e7e26){if(_0x1e7e26){return _0x1e7e26[_0x2613('0x24')]()[_0x2613('0x23')](function(){var _0x279fcc=_0x1e7e26[_0x2613('0x25')]({'plain':!![]});var _0x1c76dd=_0x2613('0x26');return db['UserProfileResource'][_0x2613('0x24')]({'where':{'type':_0x1c76dd,'resourceId':_0x279fcc['id']}})[_0x2613('0x23')](function(){return _0x1e7e26;});})['then'](function(){_0x4654cd[_0x2613('0x17')](0xcc)['end']();});}};}function handleEntityNotFound(_0x431e45,_0x1359a3){return function(_0x59c751){if(!_0x59c751){_0x431e45[_0x2613('0x16')](0x194);}return _0x59c751;};}function handleError(_0xf92eb9,_0x4da3f5){_0x4da3f5=_0x4da3f5||0x1f4;return function(_0x4dfef6){logger['error'](_0x4dfef6[_0x2613('0x27')]);if(_0x4dfef6['name']){delete _0x4dfef6[_0x2613('0x28')];}_0xf92eb9[_0x2613('0x17')](_0x4da3f5)[_0x2613('0x29')](_0x4dfef6);};}exports[_0x2613('0x2a')]=function(_0x4a6008,_0x124d27){var _0x38519={},_0x217269={},_0x4ea63f={'count':0x0,'rows':[]};var _0x1b9ddd=_[_0x2613('0x2b')](db['JscriptyProject'][_0x2613('0x2c')],function(_0x4c4ecf){return{'name':_0x4c4ecf[_0x2613('0x2d')],'type':_0x4c4ecf['type'][_0x2613('0x2e')]};});_0x217269[_0x2613('0x2f')]=_[_0x2613('0x2b')](_0x1b9ddd,_0x2613('0x28'));_0x217269[_0x2613('0x30')]=_[_0x2613('0x31')](_0x4a6008[_0x2613('0x30')]);_0x217269[_0x2613('0x32')]=_[_0x2613('0x33')](_0x217269[_0x2613('0x2f')],_0x217269[_0x2613('0x30')]);_0x38519['attributes']=_['intersection'](_0x217269[_0x2613('0x2f')],qs['fields'](_0x4a6008['query'][_0x2613('0x34')]));_0x38519[_0x2613('0x35')]=_0x38519[_0x2613('0x35')]['length']?_0x38519['attributes']:_0x217269['model'];if(!_0x4a6008[_0x2613('0x30')][_0x2613('0x36')](_0x2613('0x37'))){_0x38519[_0x2613('0x1c')]=qs[_0x2613('0x1c')](_0x4a6008[_0x2613('0x30')][_0x2613('0x1c')]);_0x38519[_0x2613('0x1a')]=qs[_0x2613('0x1a')](_0x4a6008[_0x2613('0x30')][_0x2613('0x1a')]);}_0x38519[_0x2613('0x38')]=qs[_0x2613('0x39')](_0x4a6008[_0x2613('0x30')][_0x2613('0x39')]);_0x38519[_0x2613('0x3a')]=qs[_0x2613('0x32')](_[_0x2613('0x3b')](_0x4a6008['query'],_0x217269['filters']),_0x1b9ddd);if(_0x4a6008['query']['filter']){_0x38519[_0x2613('0x3a')]=_[_0x2613('0x3c')](_0x38519['where'],{'$or':_['map'](_0x1b9ddd,function(_0x19af11){if(_0x19af11['type']!==_0x2613('0x3d')){var _0x43ff91={};_0x43ff91[_0x19af11[_0x2613('0x28')]]={'$like':'%'+_0x4a6008['query'][_0x2613('0x3e')]+'%'};return _0x43ff91;}})});}_0x38519=_[_0x2613('0x3c')]({},_0x38519,_0x4a6008[_0x2613('0x3f')]);var _0x1e8319={'where':_0x38519[_0x2613('0x3a')]};return db['JscriptyProject']['count'](_0x1e8319)[_0x2613('0x23')](function(_0x1999f1){_0x4ea63f['count']=_0x1999f1;if(_0x4a6008[_0x2613('0x30')][_0x2613('0x40')]){_0x38519[_0x2613('0x41')]=[{'all':!![]}];}return db['JscriptyProject'][_0x2613('0x42')](_0x38519);})[_0x2613('0x23')](function(_0x118dcd){_0x4ea63f[_0x2613('0x43')]=_0x118dcd;return _0x4ea63f;})['then'](respondWithFilteredResult(_0x124d27,_0x38519))['catch'](handleError(_0x124d27,null));};exports[_0x2613('0x44')]=function(_0x5aa59b,_0x444176){var _0x13ae88={'raw':![],'where':{'id':_0x5aa59b[_0x2613('0x45')]['id']}},_0x3f7758={};_0x3f7758[_0x2613('0x2f')]=_[_0x2613('0x31')](db['JscriptyProject'][_0x2613('0x2c')]);_0x3f7758[_0x2613('0x30')]=_['keys'](_0x5aa59b[_0x2613('0x30')]);_0x3f7758[_0x2613('0x32')]=_[_0x2613('0x33')](_0x3f7758[_0x2613('0x2f')],_0x3f7758['query']);_0x13ae88['attributes']=_[_0x2613('0x33')](_0x3f7758[_0x2613('0x2f')],qs[_0x2613('0x34')](_0x5aa59b[_0x2613('0x30')]['fields']));_0x13ae88[_0x2613('0x35')]=_0x13ae88['attributes']['length']?_0x13ae88[_0x2613('0x35')]:_0x3f7758[_0x2613('0x2f')];if(_0x5aa59b[_0x2613('0x30')][_0x2613('0x40')]){_0x13ae88['include']=[{'all':!![]}];}_0x13ae88=_[_0x2613('0x3c')]({},_0x13ae88,_0x5aa59b[_0x2613('0x3f')]);return db[_0x2613('0x46')][_0x2613('0x47')](_0x13ae88)['then'](handleEntityNotFound(_0x444176,null))[_0x2613('0x23')](respondWithResult(_0x444176,null))[_0x2613('0x48')](handleError(_0x444176,null));};exports['create']=function(_0x2a01de,_0x16f6d0){return db[_0x2613('0x46')]['create'](_0x2a01de[_0x2613('0x49')],{})['then'](function(_0xbbec13){var _0x3bb99f=_0x2a01de[_0x2613('0x4a')][_0x2613('0x25')]({'plain':!![]});if(!_0x3bb99f)throw new Error(_0x2613('0x4b'));if(_0x3bb99f[_0x2613('0x4c')]==='user'){var _0x359672=_0xbbec13[_0x2613('0x25')]({'plain':!![]});var _0x13d023=_0x2613('0x26');return db[_0x2613('0x4d')]['find']({'where':{'name':_0x13d023,'userProfileId':_0x3bb99f[_0x2613('0x4e')]},'raw':!![]})[_0x2613('0x23')](function(_0x31e3dd){if(_0x31e3dd&&_0x31e3dd[_0x2613('0x4f')]===0x0){return db[_0x2613('0x50')]['create']({'name':_0x359672[_0x2613('0x28')],'resourceId':_0x359672['id'],'type':_0x31e3dd[_0x2613('0x28')],'sectionId':_0x31e3dd['id']},{})[_0x2613('0x23')](function(){return _0xbbec13;});}else{return _0xbbec13;}})[_0x2613('0x48')](function(_0x3a78fe){logger['error'](_0x2613('0x51'),_0x3a78fe);throw _0x3a78fe;});}return _0xbbec13;})[_0x2613('0x23')](respondWithResult(_0x16f6d0,0xc9))['catch'](handleError(_0x16f6d0,null));};exports[_0x2613('0x52')]=function(_0x1cc06e,_0x50560f){var _0x194907={'where':{'id':_0x1cc06e[_0x2613('0x45')]['id']}},_0x32a661={};_0x32a661['model']=_[_0x2613('0x31')](db[_0x2613('0x46')][_0x2613('0x2c')]);_0x194907[_0x2613('0x35')]=_[_0x2613('0x33')](_0x32a661[_0x2613('0x2f')],qs[_0x2613('0x34')](_0x1cc06e[_0x2613('0x30')][_0x2613('0x34')]));_0x194907['attributes']=_0x194907['attributes'][_0x2613('0x53')]?_0x194907[_0x2613('0x35')]:_0x32a661[_0x2613('0x2f')];if(_0x1cc06e['query'][_0x2613('0x40')]){_0x194907[_0x2613('0x41')]=[{'all':!![]}];}_0x194907=_['merge']({},_0x194907,_0x1cc06e[_0x2613('0x3f')]);return db[_0x2613('0x46')][_0x2613('0x47')](_0x194907)[_0x2613('0x23')](handleEntityNotFound(_0x50560f,null))[_0x2613('0x23')](function(_0x30b6bb){if(_0x30b6bb){var _0x2bc548=_0x30b6bb['get']({'plain':!![]});_0x2bc548=qs[_0x2613('0x54')](_0x2bc548,['id','createdAt',_0x2613('0x55')]);_0x1cc06e['body']=_[_0x2613('0x54')](_0x1cc06e['body'],['id',_0x2613('0x56'),_0x2613('0x55')]);return db[_0x2613('0x46')][_0x2613('0x57')](_[_0x2613('0x3c')](_0x2bc548,_0x1cc06e['body']),{'include':_0x1cc06e[_0x2613('0x30')]['includeAll']?[{'all':!![]}]:undefined})[_0x2613('0x23')](function(_0xb700af){var _0x1e3248=_0x1cc06e['user'][_0x2613('0x25')]({'plain':!![]});if(!_0x1e3248)throw new Error(_0x2613('0x4b'));if(_0x1e3248[_0x2613('0x4c')]===_0x2613('0x4a')){var _0x312c16=_0xb700af[_0x2613('0x25')]({'plain':!![]});var _0x538024='Projects';return db['UserProfileSection'][_0x2613('0x47')]({'where':{'name':_0x538024,'userProfileId':_0x1e3248['userProfileId']},'raw':!![]})['then'](function(_0x3ab911){if(_0x3ab911&&_0x3ab911[_0x2613('0x4f')]===0x0){return db[_0x2613('0x50')][_0x2613('0x57')]({'name':_0x312c16[_0x2613('0x28')],'resourceId':_0x312c16['id'],'type':_0x3ab911[_0x2613('0x28')],'sectionId':_0x3ab911['id']},{})['then'](function(){return _0xb700af;});}else{return _0xb700af;}})['catch'](function(_0x2df5cc){logger['error']('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x2df5cc);throw _0x2df5cc;});}return _0xb700af;});}})[_0x2613('0x23')](respondWithResult(_0x50560f,0xc9))[_0x2613('0x48')](handleError(_0x50560f,null));};exports['update']=function(_0x2f1f8a,_0x1090eb){if(_0x2f1f8a[_0x2613('0x49')]['id']){delete _0x2f1f8a[_0x2613('0x49')]['id'];}return db[_0x2613('0x46')][_0x2613('0x47')]({'where':{'id':_0x2f1f8a[_0x2613('0x45')]['id']}})['then'](handleEntityNotFound(_0x1090eb,null))[_0x2613('0x23')](saveUpdates(_0x2f1f8a[_0x2613('0x49')],null))['then'](respondWithResult(_0x1090eb,null))[_0x2613('0x48')](handleError(_0x1090eb,null));};exports[_0x2613('0x24')]=function(_0x9affdb,_0x142578){return db[_0x2613('0x46')]['find']({'where':{'id':_0x9affdb[_0x2613('0x45')]['id']}})[_0x2613('0x23')](handleEntityNotFound(_0x142578,null))[_0x2613('0x23')](removeEntity(_0x142578,null))[_0x2613('0x48')](handleError(_0x142578,null));};exports[_0x2613('0x58')]=function(_0x5467bd,_0x5c1e9d,_0x83b8fb){var _0x156edb={'raw':!![],'where':{}};var _0xe99b44={};var _0x1b5f8f={'count':0x0,'rows':[]};return db['JscriptyProject']['findOne']({'where':{'id':_0x5467bd['params']['id']}})[_0x2613('0x23')](handleEntityNotFound(_0x5c1e9d,null))['then'](function(_0x2dcc84){if(_0x2dcc84){_0xe99b44[_0x2613('0x2f')]=_[_0x2613('0x31')](db['JscriptySessionReport']['rawAttributes']);_0xe99b44[_0x2613('0x30')]=_[_0x2613('0x31')](_0x5467bd['query']);_0xe99b44[_0x2613('0x32')]=_[_0x2613('0x33')](_0xe99b44[_0x2613('0x2f')],_0xe99b44[_0x2613('0x30')]);_0x156edb[_0x2613('0x35')]=_[_0x2613('0x33')](_0xe99b44[_0x2613('0x2f')],qs[_0x2613('0x34')](_0x5467bd['query'][_0x2613('0x34')]));_0x156edb[_0x2613('0x35')]=_0x156edb[_0x2613('0x35')][_0x2613('0x53')]?_0x156edb[_0x2613('0x35')]:_0xe99b44[_0x2613('0x2f')];if(!_0x5467bd[_0x2613('0x30')][_0x2613('0x36')](_0x2613('0x37'))){_0x156edb[_0x2613('0x1c')]=qs[_0x2613('0x1c')](_0x5467bd['query'][_0x2613('0x1c')]);_0x156edb[_0x2613('0x1a')]=qs['offset'](_0x5467bd[_0x2613('0x30')][_0x2613('0x1a')]);}_0x156edb['order']=qs['sort'](_0x5467bd[_0x2613('0x30')][_0x2613('0x39')]);_0x156edb[_0x2613('0x3a')]=qs[_0x2613('0x32')](_['pick'](_0x5467bd[_0x2613('0x30')],_0xe99b44[_0x2613('0x32')]));_0x156edb[_0x2613('0x3a')][_0x2613('0x59')]=_0x2dcc84['id'];if(_0x5467bd[_0x2613('0x30')][_0x2613('0x3e')]){_0x156edb[_0x2613('0x3a')]=_['merge'](_0x156edb[_0x2613('0x3a')],{'$or':_[_0x2613('0x2b')](_0x156edb['attributes'],function(_0x3c9930){var _0xb4981d={};_0xb4981d[_0x3c9930]={'$like':'%'+_0x5467bd[_0x2613('0x30')][_0x2613('0x3e')]+'%'};return _0xb4981d;})});}_0x156edb=_[_0x2613('0x3c')]({},_0x156edb,_0x5467bd[_0x2613('0x3f')]);return db[_0x2613('0x5a')][_0x2613('0x1d')]({'where':_0x156edb['where']})[_0x2613('0x23')](function(_0x12af1c){_0x1b5f8f[_0x2613('0x1d')]=_0x12af1c;if(_0x5467bd[_0x2613('0x30')][_0x2613('0x40')]){_0x156edb['include']=[{'all':!![]}];}return db['JscriptySessionReport'][_0x2613('0x42')](_0x156edb);})[_0x2613('0x23')](function(_0x3e8023){_0x1b5f8f[_0x2613('0x43')]=_0x3e8023;return _0x1b5f8f;});}})[_0x2613('0x23')](respondWithFilteredResult(_0x5c1e9d,_0x156edb))[_0x2613('0x48')](handleError(_0x5c1e9d,null));};exports[_0x2613('0x5b')]=function(_0x57512d,_0x3e79fb,_0x1a5445){var _0x5db85a={'raw':!![],'where':{}};var _0x2b2899={};var _0x4212c5={'count':0x0,'rows':[]};return db['JscriptyProject'][_0x2613('0x5c')]({'where':{'id':_0x57512d['params']['id']}})['then'](handleEntityNotFound(_0x3e79fb,null))[_0x2613('0x23')](function(_0x1ccd90){if(_0x1ccd90){_0x2b2899['model']=_['keys'](db['JscriptyAnswerReport'][_0x2613('0x2c')]);_0x2b2899[_0x2613('0x30')]=_[_0x2613('0x31')](_0x57512d[_0x2613('0x30')]);_0x2b2899[_0x2613('0x32')]=_[_0x2613('0x33')](_0x2b2899['model'],_0x2b2899['query']);_0x5db85a['attributes']=_[_0x2613('0x33')](_0x2b2899[_0x2613('0x2f')],qs[_0x2613('0x34')](_0x57512d[_0x2613('0x30')][_0x2613('0x34')]));_0x5db85a[_0x2613('0x35')]=_0x5db85a[_0x2613('0x35')]['length']?_0x5db85a[_0x2613('0x35')]:_0x2b2899[_0x2613('0x2f')];if(!_0x57512d[_0x2613('0x30')][_0x2613('0x36')](_0x2613('0x37'))){_0x5db85a[_0x2613('0x1c')]=qs[_0x2613('0x1c')](_0x57512d[_0x2613('0x30')][_0x2613('0x1c')]);_0x5db85a[_0x2613('0x1a')]=qs[_0x2613('0x1a')](_0x57512d[_0x2613('0x30')]['offset']);}_0x5db85a['order']=qs[_0x2613('0x39')](_0x57512d[_0x2613('0x30')][_0x2613('0x39')]);_0x5db85a['where']=qs[_0x2613('0x32')](_[_0x2613('0x3b')](_0x57512d[_0x2613('0x30')],_0x2b2899[_0x2613('0x32')]));_0x5db85a[_0x2613('0x3a')][_0x2613('0x59')]=_0x1ccd90['id'];if(_0x57512d[_0x2613('0x30')][_0x2613('0x3e')]){_0x5db85a[_0x2613('0x3a')]=_[_0x2613('0x3c')](_0x5db85a['where'],{'$or':_[_0x2613('0x2b')](_0x5db85a[_0x2613('0x35')],function(_0x2f2ace){var _0x3e2c30={};_0x3e2c30[_0x2f2ace]={'$like':'%'+_0x57512d[_0x2613('0x30')][_0x2613('0x3e')]+'%'};return _0x3e2c30;})});}_0x5db85a=_[_0x2613('0x3c')]({},_0x5db85a,_0x57512d[_0x2613('0x3f')]);return db[_0x2613('0x5d')][_0x2613('0x1d')]({'where':_0x5db85a[_0x2613('0x3a')]})['then'](function(_0x5b22ea){_0x4212c5['count']=_0x5b22ea;if(_0x57512d[_0x2613('0x30')][_0x2613('0x40')]){_0x5db85a[_0x2613('0x41')]=[{'all':!![]}];}return db[_0x2613('0x5d')][_0x2613('0x42')](_0x5db85a);})[_0x2613('0x23')](function(_0x529461){_0x4212c5[_0x2613('0x43')]=_0x529461;return _0x4212c5;});}})['then'](respondWithFilteredResult(_0x3e79fb,_0x5db85a))[_0x2613('0x48')](handleError(_0x3e79fb,null));};function char(_0x3b86da){return'number'===typeof _0x3b86da?String[_0x2613('0x5e')][_0x2613('0x20')](null,arguments):_0x3b86da;}function needsEncapsulation(_0x12f120){return!!_0x12f120&&(_0x12f120[_0x2613('0x5f')]()['indexOf'](char(0xd))>=0x0||_0x12f120[_0x2613('0x5f')]()[_0x2613('0x60')](char(0xa))>=0x0||_0x12f120['toString']()[_0x2613('0x60')](char(0x2c))>=0x0||_0x12f120[_0x2613('0x5f')]()[_0x2613('0x60')](char(0x22))>=0x0);}function encapsulate(_0x1b4e81){var _0x2cdb36=char(0x22),_0x1e9bf1='\x5c'+char(0x22),_0x46dffe=_0x1b4e81[_0x2613('0x5f')]()[_0x2613('0x61')](new RegExp(_0x2cdb36,'g'),_0x1e9bf1);return _0x2cdb36+_0x46dffe+_0x2cdb36;}exports[_0x2613('0x62')]=function(_0xe07026,_0x5411b3,_0x2b2774){var _0x1fdfed,_0x54bab2;var _0x33f5aa={'where':{'ProjectId':_0xe07026['params']['id']}};if(_0xe07026[_0x2613('0x30')][_0x2613('0x63')]){_0x33f5aa['where'][_0x2613('0x64')]=JSON[_0x2613('0x65')](_0xe07026[_0x2613('0x30')][_0x2613('0x63')]);}return db[_0x2613('0x5a')][_0x2613('0x42')](_0x33f5aa)['then'](handleEntityNotFound(_0x5411b3,null))[_0x2613('0x23')](function(_0x2ebf94){if(_0x2ebf94){_0x1fdfed=_0x2ebf94;return db[_0x2613('0x66')][_0x2613('0x42')]({'where':{'SessionId':{'$in':_['map'](_0x1fdfed,'id')},'ProjectId':_0xe07026['params']['id']},'order':'-createdAt'});}})[_0x2613('0x23')](handleEntityNotFound(_0x5411b3,null))[_0x2613('0x23')](function(_0x2c0ebf){if(_0x2c0ebf){_0x54bab2=_0x2c0ebf;var _0xba19c={};for(var _0xb8cbc3=0x0,_0xe5e633=_0x54bab2['length'];_0xb8cbc3<_0xe5e633;_0xb8cbc3++){if(!_0xba19c[_0x2613('0x36')](_0x54bab2[_0xb8cbc3][_0x2613('0x67')])){_0xba19c[_0x54bab2[_0xb8cbc3][_0x2613('0x67')]]=needsEncapsulation(_0x54bab2[_0xb8cbc3]['question'])?encapsulate(_0x54bab2[_0xb8cbc3][_0x2613('0x68')]):_0x54bab2[_0xb8cbc3][_0x2613('0x68')];}}var _0xf046ad=[],_0x550134={};for(var _0x459a62=0x0,_0x35a439=_0x1fdfed[_0x2613('0x53')];_0x459a62<_0x35a439;_0x459a62++){_0x550134={'ProjectId':_0xe07026[_0x2613('0x45')]['id'],'SessionId':_0x1fdfed[_0x459a62]['id'],'StartTime':moment(_0x1fdfed[_0x459a62][_0x2613('0x64')])[_0x2613('0x69')](_0x2613('0x6a'))};for(var _0x5f5163=0x0,_0x557bba=_0x54bab2[_0x2613('0x53')];_0x5f5163<_0x557bba;_0x5f5163++){if(_0x54bab2[_0x5f5163]['SessionId']==_0x1fdfed[_0x459a62]['id']&&_0xba19c[_0x2613('0x36')](_0x54bab2[_0x5f5163]['questionId'])){_0x550134[_0xba19c[_0x54bab2[_0x5f5163][_0x2613('0x67')]]]=_0x54bab2[_0x5f5163]['answer'];}}for(var _0x12336c in _0xba19c){if(!_0x550134[_0x2613('0x36')](_0xba19c[_0x12336c])){_0x550134[_0xba19c[_0x12336c]]=null;}}_0xf046ad[_0x2613('0x6b')](_0x550134);}return _0xf046ad;}})['then'](function(_0x84fda0){if(!_[_0x2613('0x6c')](_0x84fda0)){var _0x1c3f7c=toCsv(_0x84fda0);var _0x20c9d6=Date['now']();fs['writeFileSync'](util[_0x2613('0x69')](_0x2613('0x6d'),_0xe07026[_0x2613('0x45')]['id'],_0x20c9d6),_0x1c3f7c);_0x5411b3[_0x2613('0x6e')](_0x2613('0x6f'),_0x2613('0x70')+util[_0x2613('0x69')](_0x2613('0x71'),_0xe07026[_0x2613('0x45')]['id'],_0x20c9d6));_0x5411b3['setHeader'](_0x2613('0x72'),_0x2613('0x73'));return _0x5411b3[_0x2613('0x74')](util[_0x2613('0x69')](_0x2613('0x6d'),_0xe07026[_0x2613('0x45')]['id'],_0x20c9d6));}else{return _0x5411b3[_0x2613('0x16')](0xcc);}})[_0x2613('0x48')](handleError(_0x5411b3,null));};