Built motion from commit (unavailable).|2.5.23
[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 _0x0c8f=['sort','where','pick','filter','merge','VIRTUAL','options','includeAll','include','findAll','rows','params','catch','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','find','userProfileId','autoAssociation','UserProfileResource','error','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','clone','omit','createdAt','updatedAt','UserProfileSection','update','getSessions','JscriptySessionReport','hasOwnProperty','ProjectId','getAnswers','findOne','JscriptyAnswerReport','fromCharCode','toString','indexOf','replace','getSummary','starttime','JscriptyQuestionReport','-createdAt','question','SessionId','questionId','answer','push','isEmpty','now','setHeader','Content-disposition','attachment;\x20filename=','format','text/csv','/tmp/Jscripty_Project_%d_Summary_%s.csv','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','to-csv','ejs','lodash','crypto','jsforce','../../components/auth/service','../../components/parsers/qs','api','../../config/environment','../../config/license/util','sendStatus','end','json','count','offset','status','set','apply','save','then','get','Projects','destroy','stack','name','send','index','map','JscriptyProject','rawAttributes','fieldName','type','model','query','keys','filters','attributes','intersection','fields','length','nolimit','limit','order'];(function(_0x4e4798,_0x2b5221){var _0x419f6d=function(_0x5edaa8){while(--_0x5edaa8){_0x4e4798['push'](_0x4e4798['shift']());}};_0x419f6d(++_0x2b5221);}(_0x0c8f,0x114));var _0xf0c8=function(_0x36d423,_0x5582dd){_0x36d423=_0x36d423-0x0;var _0x1c21b3=_0x0c8f[_0x36d423];return _0x1c21b3;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0xf0c8('0x0'));var rimraf=require(_0xf0c8('0x1'));var zipdir=require(_0xf0c8('0x2'));var jsonpatch=require(_0xf0c8('0x3'));var rp=require(_0xf0c8('0x4'));var moment=require(_0xf0c8('0x5'));var BPromise=require(_0xf0c8('0x6'));var Mustache=require(_0xf0c8('0x7'));var util=require('util');var path=require('path');var sox=require('sox');var csv=require(_0xf0c8('0x8'));var ejs=require(_0xf0c8('0x9'));var fs=require('fs');var _=require(_0xf0c8('0xa'));var squel=require('squel');var crypto=require(_0xf0c8('0xb'));var jsforce=require(_0xf0c8('0xc'));var deskjs=require('desk.js');var toCsv=require(_0xf0c8('0x8'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0xf0c8('0xd'));var qs=require(_0xf0c8('0xe'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0xf0c8('0xf'));var utils=require('../../config/utils');var config=require(_0xf0c8('0x10'));var licenseUtil=require(_0xf0c8('0x11'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x39a25f,_0xe4ada7){_0xe4ada7=_0xe4ada7||0xcc;return function(_0x3b0eeb){if(_0x3b0eeb){return _0x39a25f[_0xf0c8('0x12')](_0xe4ada7);}return _0x39a25f['status'](_0xe4ada7)[_0xf0c8('0x13')]();};}function respondWithResult(_0x123487,_0x3f1eb2){_0x3f1eb2=_0x3f1eb2||0xc8;return function(_0x14647e){if(_0x14647e){return _0x123487['status'](_0x3f1eb2)[_0xf0c8('0x14')](_0x14647e);}};}function respondWithFilteredResult(_0x592c3b,_0x563976){return function(_0x54261e){if(_0x54261e){var _0x201a87=_0x54261e[_0xf0c8('0x15')],_0x301024=_0x563976[_0xf0c8('0x16')],_0x4154f8=_0x563976['offset']+_0x563976['limit'],_0x1e1374;if(_0x4154f8>=_0x201a87){_0x4154f8=_0x201a87;_0x1e1374=0xc8;}else{_0x1e1374=0xce;}_0x592c3b[_0xf0c8('0x17')](_0x1e1374);return _0x592c3b[_0xf0c8('0x18')]('Content-Range',_0x301024+'-'+_0x4154f8+'/'+_0x201a87)[_0xf0c8('0x14')](_0x54261e);}return null;};}function patchUpdates(_0x420b01){return function(_0x5e5768){try{jsonpatch[_0xf0c8('0x19')](_0x5e5768,_0x420b01,!![]);}catch(_0xf502dc){return BPromise['reject'](_0xf502dc);}return _0x5e5768[_0xf0c8('0x1a')]();};}function saveUpdates(_0x3bc7c8,_0x2c8290){return function(_0x5ebacf){if(_0x5ebacf){return _0x5ebacf['update'](_0x3bc7c8)[_0xf0c8('0x1b')](function(_0x5eb1b7){return _0x5eb1b7;});}return null;};}function removeEntity(_0x46020e,_0x4858af){return function(_0x258aa7){if(_0x258aa7){return _0x258aa7['destroy']()[_0xf0c8('0x1b')](function(){var _0x3bd193=_0x258aa7[_0xf0c8('0x1c')]({'plain':!![]});var _0x422c25=_0xf0c8('0x1d');return db['UserProfileResource'][_0xf0c8('0x1e')]({'where':{'type':_0x422c25,'resourceId':_0x3bd193['id']}})[_0xf0c8('0x1b')](function(){return _0x258aa7;});})[_0xf0c8('0x1b')](function(){_0x46020e[_0xf0c8('0x17')](0xcc)['end']();});}};}function handleEntityNotFound(_0x1a071f,_0x1e7201){return function(_0x3a2f34){if(!_0x3a2f34){_0x1a071f['sendStatus'](0x194);}return _0x3a2f34;};}function handleError(_0xd73841,_0x2330de){_0x2330de=_0x2330de||0x1f4;return function(_0x4e4857){logger['error'](_0x4e4857[_0xf0c8('0x1f')]);if(_0x4e4857[_0xf0c8('0x20')]){delete _0x4e4857[_0xf0c8('0x20')];}_0xd73841['status'](_0x2330de)[_0xf0c8('0x21')](_0x4e4857);};}exports[_0xf0c8('0x22')]=function(_0x2abd3c,_0x14be72){var _0x3d0935={},_0x2dbe8b={},_0x11beec={'count':0x0,'rows':[]};var _0x26cd3a=_[_0xf0c8('0x23')](db[_0xf0c8('0x24')][_0xf0c8('0x25')],function(_0x245769){return{'name':_0x245769[_0xf0c8('0x26')],'type':_0x245769[_0xf0c8('0x27')]['key']};});_0x2dbe8b[_0xf0c8('0x28')]=_['map'](_0x26cd3a,_0xf0c8('0x20'));_0x2dbe8b[_0xf0c8('0x29')]=_[_0xf0c8('0x2a')](_0x2abd3c[_0xf0c8('0x29')]);_0x2dbe8b[_0xf0c8('0x2b')]=_['intersection'](_0x2dbe8b[_0xf0c8('0x28')],_0x2dbe8b[_0xf0c8('0x29')]);_0x3d0935[_0xf0c8('0x2c')]=_[_0xf0c8('0x2d')](_0x2dbe8b[_0xf0c8('0x28')],qs[_0xf0c8('0x2e')](_0x2abd3c[_0xf0c8('0x29')]['fields']));_0x3d0935[_0xf0c8('0x2c')]=_0x3d0935['attributes'][_0xf0c8('0x2f')]?_0x3d0935[_0xf0c8('0x2c')]:_0x2dbe8b[_0xf0c8('0x28')];if(!_0x2abd3c[_0xf0c8('0x29')]['hasOwnProperty'](_0xf0c8('0x30'))){_0x3d0935[_0xf0c8('0x31')]=qs[_0xf0c8('0x31')](_0x2abd3c[_0xf0c8('0x29')][_0xf0c8('0x31')]);_0x3d0935['offset']=qs[_0xf0c8('0x16')](_0x2abd3c[_0xf0c8('0x29')][_0xf0c8('0x16')]);}_0x3d0935[_0xf0c8('0x32')]=qs[_0xf0c8('0x33')](_0x2abd3c[_0xf0c8('0x29')][_0xf0c8('0x33')]);_0x3d0935[_0xf0c8('0x34')]=qs[_0xf0c8('0x2b')](_[_0xf0c8('0x35')](_0x2abd3c[_0xf0c8('0x29')],_0x2dbe8b[_0xf0c8('0x2b')]),_0x26cd3a);if(_0x2abd3c[_0xf0c8('0x29')][_0xf0c8('0x36')]){_0x3d0935['where']=_[_0xf0c8('0x37')](_0x3d0935[_0xf0c8('0x34')],{'$or':_['map'](_0x26cd3a,function(_0x54122a){if(_0x54122a[_0xf0c8('0x27')]!==_0xf0c8('0x38')){var _0x3ef496={};_0x3ef496[_0x54122a[_0xf0c8('0x20')]]={'$like':'%'+_0x2abd3c['query']['filter']+'%'};return _0x3ef496;}})});}_0x3d0935=_[_0xf0c8('0x37')]({},_0x3d0935,_0x2abd3c[_0xf0c8('0x39')]);var _0x59dc01={'where':_0x3d0935['where']};return db[_0xf0c8('0x24')]['count'](_0x59dc01)[_0xf0c8('0x1b')](function(_0x3a5b90){_0x11beec['count']=_0x3a5b90;if(_0x2abd3c[_0xf0c8('0x29')][_0xf0c8('0x3a')]){_0x3d0935[_0xf0c8('0x3b')]=[{'all':!![]}];}return db[_0xf0c8('0x24')][_0xf0c8('0x3c')](_0x3d0935);})[_0xf0c8('0x1b')](function(_0x5a7ec3){_0x11beec[_0xf0c8('0x3d')]=_0x5a7ec3;return _0x11beec;})[_0xf0c8('0x1b')](respondWithFilteredResult(_0x14be72,_0x3d0935))['catch'](handleError(_0x14be72,null));};exports['show']=function(_0x106fa1,_0x3f0e88){var _0x447758={'raw':![],'where':{'id':_0x106fa1[_0xf0c8('0x3e')]['id']}},_0x47abd8={};_0x47abd8[_0xf0c8('0x28')]=_['keys'](db['JscriptyProject']['rawAttributes']);_0x47abd8[_0xf0c8('0x29')]=_[_0xf0c8('0x2a')](_0x106fa1[_0xf0c8('0x29')]);_0x47abd8[_0xf0c8('0x2b')]=_[_0xf0c8('0x2d')](_0x47abd8[_0xf0c8('0x28')],_0x47abd8['query']);_0x447758[_0xf0c8('0x2c')]=_[_0xf0c8('0x2d')](_0x47abd8[_0xf0c8('0x28')],qs[_0xf0c8('0x2e')](_0x106fa1[_0xf0c8('0x29')][_0xf0c8('0x2e')]));_0x447758[_0xf0c8('0x2c')]=_0x447758['attributes']['length']?_0x447758['attributes']:_0x47abd8[_0xf0c8('0x28')];if(_0x106fa1[_0xf0c8('0x29')][_0xf0c8('0x3a')]){_0x447758['include']=[{'all':!![]}];}_0x447758=_[_0xf0c8('0x37')]({},_0x447758,_0x106fa1[_0xf0c8('0x39')]);return db['JscriptyProject']['find'](_0x447758)[_0xf0c8('0x1b')](handleEntityNotFound(_0x3f0e88,null))[_0xf0c8('0x1b')](respondWithResult(_0x3f0e88,null))[_0xf0c8('0x3f')](handleError(_0x3f0e88,null));};exports['create']=function(_0x522e44,_0x47d5f1){return db[_0xf0c8('0x24')][_0xf0c8('0x40')](_0x522e44[_0xf0c8('0x41')],{})['then'](function(_0x36d7fd){var _0x5c7794=_0x522e44[_0xf0c8('0x42')][_0xf0c8('0x1c')]({'plain':!![]});if(!_0x5c7794)throw new Error(_0xf0c8('0x43'));if(_0x5c7794[_0xf0c8('0x44')]===_0xf0c8('0x42')){var _0x503774=_0x36d7fd[_0xf0c8('0x1c')]({'plain':!![]});var _0x3741c1='Projects';return db['UserProfileSection'][_0xf0c8('0x45')]({'where':{'name':_0x3741c1,'userProfileId':_0x5c7794[_0xf0c8('0x46')]},'raw':!![]})[_0xf0c8('0x1b')](function(_0x575848){if(_0x575848&&_0x575848[_0xf0c8('0x47')]===0x0){return db[_0xf0c8('0x48')][_0xf0c8('0x40')]({'name':_0x503774[_0xf0c8('0x20')],'resourceId':_0x503774['id'],'type':_0x575848[_0xf0c8('0x20')],'sectionId':_0x575848['id']},{})['then'](function(){return _0x36d7fd;});}else{return _0x36d7fd;}})[_0xf0c8('0x3f')](function(_0x71c00c){logger[_0xf0c8('0x49')](_0xf0c8('0x4a'),_0x71c00c);throw _0x71c00c;});}return _0x36d7fd;})[_0xf0c8('0x1b')](respondWithResult(_0x47d5f1,0xc9))[_0xf0c8('0x3f')](handleError(_0x47d5f1,null));};exports[_0xf0c8('0x4b')]=function(_0x25142e,_0x16c4a1){var _0x56b669={'where':{'id':_0x25142e[_0xf0c8('0x3e')]['id']}},_0x476d22={};_0x476d22[_0xf0c8('0x28')]=_[_0xf0c8('0x2a')](db['JscriptyProject'][_0xf0c8('0x25')]);_0x56b669['attributes']=_[_0xf0c8('0x2d')](_0x476d22['model'],qs[_0xf0c8('0x2e')](_0x25142e['query'][_0xf0c8('0x2e')]));_0x56b669['attributes']=_0x56b669[_0xf0c8('0x2c')][_0xf0c8('0x2f')]?_0x56b669[_0xf0c8('0x2c')]:_0x476d22['model'];if(_0x25142e[_0xf0c8('0x29')]['includeAll']){_0x56b669['include']=[{'all':!![]}];}_0x56b669=_[_0xf0c8('0x37')]({},_0x56b669,_0x25142e[_0xf0c8('0x39')]);return db[_0xf0c8('0x24')][_0xf0c8('0x45')](_0x56b669)['then'](handleEntityNotFound(_0x16c4a1,null))[_0xf0c8('0x1b')](function(_0x3ba27d){if(_0x3ba27d){var _0x2b4aa3=_0x3ba27d[_0xf0c8('0x1c')]({'plain':!![]});_0x2b4aa3=qs[_0xf0c8('0x4c')](_0x2b4aa3,['id',_0xf0c8('0x4d'),_0xf0c8('0x4e')]);_0x25142e[_0xf0c8('0x41')]=_[_0xf0c8('0x4c')](_0x25142e[_0xf0c8('0x41')],['id',_0xf0c8('0x4d'),_0xf0c8('0x4e')]);return db[_0xf0c8('0x24')][_0xf0c8('0x40')](_[_0xf0c8('0x37')](_0x2b4aa3,_0x25142e[_0xf0c8('0x41')]),{'include':_0x25142e[_0xf0c8('0x29')]['includeAll']?[{'all':!![]}]:undefined})[_0xf0c8('0x1b')](function(_0x3a1d5d){var _0x12f3aa=_0x25142e[_0xf0c8('0x42')][_0xf0c8('0x1c')]({'plain':!![]});if(!_0x12f3aa)throw new Error(_0xf0c8('0x43'));if(_0x12f3aa[_0xf0c8('0x44')]==='user'){var _0x171c1c=_0x3a1d5d[_0xf0c8('0x1c')]({'plain':!![]});var _0x3285f6=_0xf0c8('0x1d');return db[_0xf0c8('0x4f')][_0xf0c8('0x45')]({'where':{'name':_0x3285f6,'userProfileId':_0x12f3aa['userProfileId']},'raw':!![]})[_0xf0c8('0x1b')](function(_0xaac7ec){if(_0xaac7ec&&_0xaac7ec['autoAssociation']===0x0){return db[_0xf0c8('0x48')]['create']({'name':_0x171c1c[_0xf0c8('0x20')],'resourceId':_0x171c1c['id'],'type':_0xaac7ec[_0xf0c8('0x20')],'sectionId':_0xaac7ec['id']},{})[_0xf0c8('0x1b')](function(){return _0x3a1d5d;});}else{return _0x3a1d5d;}})['catch'](function(_0x964c47){logger[_0xf0c8('0x49')](_0xf0c8('0x4a'),_0x964c47);throw _0x964c47;});}return _0x3a1d5d;});}})[_0xf0c8('0x1b')](respondWithResult(_0x16c4a1,0xc9))[_0xf0c8('0x3f')](handleError(_0x16c4a1,null));};exports[_0xf0c8('0x50')]=function(_0x201841,_0x1a460d){if(_0x201841[_0xf0c8('0x41')]['id']){delete _0x201841[_0xf0c8('0x41')]['id'];}return db[_0xf0c8('0x24')][_0xf0c8('0x45')]({'where':{'id':_0x201841[_0xf0c8('0x3e')]['id']}})[_0xf0c8('0x1b')](handleEntityNotFound(_0x1a460d,null))['then'](saveUpdates(_0x201841[_0xf0c8('0x41')],null))[_0xf0c8('0x1b')](respondWithResult(_0x1a460d,null))[_0xf0c8('0x3f')](handleError(_0x1a460d,null));};exports[_0xf0c8('0x1e')]=function(_0x40ea71,_0x52cdb0){return db[_0xf0c8('0x24')][_0xf0c8('0x45')]({'where':{'id':_0x40ea71[_0xf0c8('0x3e')]['id']}})[_0xf0c8('0x1b')](handleEntityNotFound(_0x52cdb0,null))[_0xf0c8('0x1b')](removeEntity(_0x52cdb0,null))[_0xf0c8('0x3f')](handleError(_0x52cdb0,null));};exports[_0xf0c8('0x51')]=function(_0x17a603,_0x1100a4,_0x3f4903){var _0x2aa648={'raw':!![],'where':{}};var _0x287c91={};var _0x84fbbb={'count':0x0,'rows':[]};return db[_0xf0c8('0x24')]['findOne']({'where':{'id':_0x17a603[_0xf0c8('0x3e')]['id']}})[_0xf0c8('0x1b')](handleEntityNotFound(_0x1100a4,null))['then'](function(_0x17f74b){if(_0x17f74b){_0x287c91['model']=_[_0xf0c8('0x2a')](db[_0xf0c8('0x52')][_0xf0c8('0x25')]);_0x287c91[_0xf0c8('0x29')]=_[_0xf0c8('0x2a')](_0x17a603[_0xf0c8('0x29')]);_0x287c91[_0xf0c8('0x2b')]=_[_0xf0c8('0x2d')](_0x287c91[_0xf0c8('0x28')],_0x287c91[_0xf0c8('0x29')]);_0x2aa648[_0xf0c8('0x2c')]=_[_0xf0c8('0x2d')](_0x287c91[_0xf0c8('0x28')],qs[_0xf0c8('0x2e')](_0x17a603[_0xf0c8('0x29')]['fields']));_0x2aa648[_0xf0c8('0x2c')]=_0x2aa648[_0xf0c8('0x2c')][_0xf0c8('0x2f')]?_0x2aa648[_0xf0c8('0x2c')]:_0x287c91['model'];if(!_0x17a603[_0xf0c8('0x29')][_0xf0c8('0x53')](_0xf0c8('0x30'))){_0x2aa648[_0xf0c8('0x31')]=qs[_0xf0c8('0x31')](_0x17a603['query']['limit']);_0x2aa648[_0xf0c8('0x16')]=qs['offset'](_0x17a603[_0xf0c8('0x29')][_0xf0c8('0x16')]);}_0x2aa648[_0xf0c8('0x32')]=qs['sort'](_0x17a603[_0xf0c8('0x29')][_0xf0c8('0x33')]);_0x2aa648['where']=qs[_0xf0c8('0x2b')](_['pick'](_0x17a603['query'],_0x287c91[_0xf0c8('0x2b')]));_0x2aa648[_0xf0c8('0x34')][_0xf0c8('0x54')]=_0x17f74b['id'];if(_0x17a603[_0xf0c8('0x29')]['filter']){_0x2aa648[_0xf0c8('0x34')]=_[_0xf0c8('0x37')](_0x2aa648[_0xf0c8('0x34')],{'$or':_[_0xf0c8('0x23')](_0x2aa648['attributes'],function(_0x5d238d){var _0x3e30fe={};_0x3e30fe[_0x5d238d]={'$like':'%'+_0x17a603[_0xf0c8('0x29')]['filter']+'%'};return _0x3e30fe;})});}_0x2aa648=_[_0xf0c8('0x37')]({},_0x2aa648,_0x17a603[_0xf0c8('0x39')]);return db[_0xf0c8('0x52')]['count']({'where':_0x2aa648[_0xf0c8('0x34')]})[_0xf0c8('0x1b')](function(_0x10b41b){_0x84fbbb['count']=_0x10b41b;if(_0x17a603[_0xf0c8('0x29')][_0xf0c8('0x3a')]){_0x2aa648['include']=[{'all':!![]}];}return db[_0xf0c8('0x52')][_0xf0c8('0x3c')](_0x2aa648);})[_0xf0c8('0x1b')](function(_0x1413fe){_0x84fbbb[_0xf0c8('0x3d')]=_0x1413fe;return _0x84fbbb;});}})[_0xf0c8('0x1b')](respondWithFilteredResult(_0x1100a4,_0x2aa648))[_0xf0c8('0x3f')](handleError(_0x1100a4,null));};exports[_0xf0c8('0x55')]=function(_0x15e713,_0x398dd4,_0x53f09e){var _0x215b9b={'raw':!![],'where':{}};var _0x19126c={};var _0x1cf61c={'count':0x0,'rows':[]};return db['JscriptyProject'][_0xf0c8('0x56')]({'where':{'id':_0x15e713[_0xf0c8('0x3e')]['id']}})[_0xf0c8('0x1b')](handleEntityNotFound(_0x398dd4,null))['then'](function(_0x53a3be){if(_0x53a3be){_0x19126c[_0xf0c8('0x28')]=_[_0xf0c8('0x2a')](db[_0xf0c8('0x57')][_0xf0c8('0x25')]);_0x19126c['query']=_[_0xf0c8('0x2a')](_0x15e713['query']);_0x19126c[_0xf0c8('0x2b')]=_[_0xf0c8('0x2d')](_0x19126c[_0xf0c8('0x28')],_0x19126c['query']);_0x215b9b['attributes']=_[_0xf0c8('0x2d')](_0x19126c[_0xf0c8('0x28')],qs[_0xf0c8('0x2e')](_0x15e713[_0xf0c8('0x29')]['fields']));_0x215b9b[_0xf0c8('0x2c')]=_0x215b9b['attributes'][_0xf0c8('0x2f')]?_0x215b9b[_0xf0c8('0x2c')]:_0x19126c[_0xf0c8('0x28')];if(!_0x15e713['query'][_0xf0c8('0x53')](_0xf0c8('0x30'))){_0x215b9b[_0xf0c8('0x31')]=qs[_0xf0c8('0x31')](_0x15e713[_0xf0c8('0x29')]['limit']);_0x215b9b['offset']=qs[_0xf0c8('0x16')](_0x15e713['query']['offset']);}_0x215b9b['order']=qs[_0xf0c8('0x33')](_0x15e713[_0xf0c8('0x29')]['sort']);_0x215b9b[_0xf0c8('0x34')]=qs[_0xf0c8('0x2b')](_['pick'](_0x15e713[_0xf0c8('0x29')],_0x19126c['filters']));_0x215b9b[_0xf0c8('0x34')][_0xf0c8('0x54')]=_0x53a3be['id'];if(_0x15e713[_0xf0c8('0x29')]['filter']){_0x215b9b['where']=_['merge'](_0x215b9b['where'],{'$or':_[_0xf0c8('0x23')](_0x215b9b[_0xf0c8('0x2c')],function(_0x3eb271){var _0x49f97c={};_0x49f97c[_0x3eb271]={'$like':'%'+_0x15e713['query'][_0xf0c8('0x36')]+'%'};return _0x49f97c;})});}_0x215b9b=_[_0xf0c8('0x37')]({},_0x215b9b,_0x15e713['options']);return db[_0xf0c8('0x57')][_0xf0c8('0x15')]({'where':_0x215b9b[_0xf0c8('0x34')]})[_0xf0c8('0x1b')](function(_0x470dff){_0x1cf61c[_0xf0c8('0x15')]=_0x470dff;if(_0x15e713[_0xf0c8('0x29')][_0xf0c8('0x3a')]){_0x215b9b['include']=[{'all':!![]}];}return db[_0xf0c8('0x57')][_0xf0c8('0x3c')](_0x215b9b);})[_0xf0c8('0x1b')](function(_0x59a9e9){_0x1cf61c[_0xf0c8('0x3d')]=_0x59a9e9;return _0x1cf61c;});}})[_0xf0c8('0x1b')](respondWithFilteredResult(_0x398dd4,_0x215b9b))[_0xf0c8('0x3f')](handleError(_0x398dd4,null));};function char(_0x5e83b6){return'number'===typeof _0x5e83b6?String[_0xf0c8('0x58')]['apply'](null,arguments):_0x5e83b6;}function needsEncapsulation(_0x2066a5){return!!_0x2066a5&&(_0x2066a5[_0xf0c8('0x59')]()[_0xf0c8('0x5a')](char(0xd))>=0x0||_0x2066a5[_0xf0c8('0x59')]()['indexOf'](char(0xa))>=0x0||_0x2066a5['toString']()['indexOf'](char(0x2c))>=0x0||_0x2066a5[_0xf0c8('0x59')]()[_0xf0c8('0x5a')](char(0x22))>=0x0);}function encapsulate(_0x75a75e){var _0x5cea6a=char(0x22),_0x54ee63='\x5c'+char(0x22),_0x84384c=_0x75a75e[_0xf0c8('0x59')]()[_0xf0c8('0x5b')](new RegExp(_0x5cea6a,'g'),_0x54ee63);return _0x5cea6a+_0x84384c+_0x5cea6a;}exports[_0xf0c8('0x5c')]=function(_0x409108,_0x2f0823,_0x14ce61){var _0x217fef,_0x4d5a6f;var _0x20fd9c={'where':{'ProjectId':_0x409108[_0xf0c8('0x3e')]['id']}};if(_0x409108[_0xf0c8('0x29')]['startTime']){_0x20fd9c[_0xf0c8('0x34')][_0xf0c8('0x5d')]=JSON['parse'](_0x409108['query']['startTime']);}return db[_0xf0c8('0x52')]['findAll'](_0x20fd9c)[_0xf0c8('0x1b')](handleEntityNotFound(_0x2f0823,null))[_0xf0c8('0x1b')](function(_0x5d9175){if(_0x5d9175){_0x217fef=_0x5d9175;return db[_0xf0c8('0x5e')][_0xf0c8('0x3c')]({'where':{'SessionId':{'$in':_['map'](_0x217fef,'id')},'ProjectId':_0x409108['params']['id']},'order':_0xf0c8('0x5f')});}})['then'](handleEntityNotFound(_0x2f0823,null))[_0xf0c8('0x1b')](function(_0x3ace27){if(_0x3ace27){_0x4d5a6f=_0x3ace27;var _0x28c986={};for(var _0x5d04ff=0x0,_0x5af793=_0x4d5a6f['length'];_0x5d04ff<_0x5af793;_0x5d04ff++){if(!_0x28c986[_0xf0c8('0x53')](_0x4d5a6f[_0x5d04ff]['questionId'])){_0x28c986[_0x4d5a6f[_0x5d04ff]['questionId']]=needsEncapsulation(_0x4d5a6f[_0x5d04ff][_0xf0c8('0x60')])?encapsulate(_0x4d5a6f[_0x5d04ff][_0xf0c8('0x60')]):_0x4d5a6f[_0x5d04ff][_0xf0c8('0x60')];}}var _0x4a757d=[],_0x3d5cf2={};for(var _0x1d5275=0x0,_0x381008=_0x217fef[_0xf0c8('0x2f')];_0x1d5275<_0x381008;_0x1d5275++){_0x3d5cf2={'ProjectId':_0x409108[_0xf0c8('0x3e')]['id'],'SessionId':_0x217fef[_0x1d5275]['id'],'StartTime':moment(_0x217fef[_0x1d5275][_0xf0c8('0x5d')])['format']('YYYY-MM-DD\x20HH:mm:ss')};for(var _0x3e17fb=0x0,_0x3a2292=_0x4d5a6f[_0xf0c8('0x2f')];_0x3e17fb<_0x3a2292;_0x3e17fb++){if(_0x4d5a6f[_0x3e17fb][_0xf0c8('0x61')]==_0x217fef[_0x1d5275]['id']&&_0x28c986[_0xf0c8('0x53')](_0x4d5a6f[_0x3e17fb][_0xf0c8('0x62')])){_0x3d5cf2[_0x28c986[_0x4d5a6f[_0x3e17fb][_0xf0c8('0x62')]]]=_0x4d5a6f[_0x3e17fb][_0xf0c8('0x63')];}}for(var _0x490802 in _0x28c986){if(!_0x3d5cf2[_0xf0c8('0x53')](_0x28c986[_0x490802])){_0x3d5cf2[_0x28c986[_0x490802]]=null;}}_0x4a757d[_0xf0c8('0x64')](_0x3d5cf2);}return _0x4a757d;}})['then'](function(_0x1ee0d2){if(!_[_0xf0c8('0x65')](_0x1ee0d2)){var _0x1dd4e6=toCsv(_0x1ee0d2);var _0x243f05=Date[_0xf0c8('0x66')]();fs['writeFileSync'](util['format']('/tmp/Jscripty_Project_%d_Summary_%s.csv',_0x409108[_0xf0c8('0x3e')]['id'],_0x243f05),_0x1dd4e6);_0x2f0823[_0xf0c8('0x67')](_0xf0c8('0x68'),_0xf0c8('0x69')+util[_0xf0c8('0x6a')]('Jscripty_Project_%d_Summary_%s.csv',_0x409108[_0xf0c8('0x3e')]['id'],_0x243f05));_0x2f0823['setHeader']('Content-type',_0xf0c8('0x6b'));return _0x2f0823['download'](util[_0xf0c8('0x6a')](_0xf0c8('0x6c'),_0x409108[_0xf0c8('0x3e')]['id'],_0x243f05));}else{return _0x2f0823[_0xf0c8('0x12')](0xcc);}})['catch'](handleError(_0x2f0823,null));};