Built motion from commit (unavailable).|2.5.22
[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 _0xd033=['JscriptyAnswerReport','hasOwnProperty','ProjectId','findAll','number','fromCharCode','toString','indexOf','replace','getSummary','startTime','starttime','-createdAt','questionId','question','format','SessionId','answer','push','isEmpty','/tmp/Jscripty_Project_%d_Summary_%s.csv','setHeader','Content-disposition','Jscripty_Project_%d_Summary_%s.csv','text/csv','html-pdf','eml-format','request-promise','moment','path','sox','to-csv','ejs','lodash','squel','jsforce','querystring','ioredis','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','sendStatus','end','status','json','count','offset','limit','Content-Range','reject','save','update','destroy','Projects','UserProfileResource','then','error','stack','name','send','index','JscriptyProject','rawAttributes','fieldName','model','map','query','keys','filters','attributes','intersection','fields','length','nolimit','order','sort','where','filter','merge','type','VIRTUAL','options','includeAll','include','rows','catch','show','params','create','user','get','role','UserProfileSection','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','clone','find','omit','createdAt','updatedAt','body','Unable\x20to\x20retrieve\x20the\x20current\x20user','userProfileId','findOne','JscriptySessionReport','pick','getAnswers'];(function(_0x3afb39,_0x1713b5){var _0x405d89=function(_0x6e4205){while(--_0x6e4205){_0x3afb39['push'](_0x3afb39['shift']());}};_0x405d89(++_0x1713b5);}(_0xd033,0x87));var _0x3d03=function(_0x2fd0f0,_0x4b634e){_0x2fd0f0=_0x2fd0f0-0x0;var _0x57f71a=_0xd033[_0x2fd0f0];return _0x57f71a;};'use strict';var pdf=require(_0x3d03('0x0'));var emlformat=require(_0x3d03('0x1'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0x3d03('0x2'));var moment=require(_0x3d03('0x3'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require('util');var path=require(_0x3d03('0x4'));var sox=require(_0x3d03('0x5'));var csv=require(_0x3d03('0x6'));var ejs=require(_0x3d03('0x7'));var fs=require('fs');var _=require(_0x3d03('0x8'));var squel=require(_0x3d03('0x9'));var crypto=require('crypto');var jsforce=require(_0x3d03('0xa'));var deskjs=require('desk.js');var toCsv=require(_0x3d03('0x6'));var querystring=require(_0x3d03('0xb'));var Papa=require('papaparse');var Redis=require(_0x3d03('0xc'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0x3d03('0xd'));var hardwareService=require(_0x3d03('0xe'));var logger=require(_0x3d03('0xf'))(_0x3d03('0x10'));var utils=require(_0x3d03('0x11'));var config=require('../../config/environment');var licenseUtil=require(_0x3d03('0x12'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x236941,_0x9174ab){_0x9174ab=_0x9174ab||0xcc;return function(_0xd3fe5d){if(_0xd3fe5d){return _0x236941[_0x3d03('0x13')](_0x9174ab);}return _0x236941['status'](_0x9174ab)[_0x3d03('0x14')]();};}function respondWithResult(_0x2f1856,_0x3b97ea){_0x3b97ea=_0x3b97ea||0xc8;return function(_0x4b538e){if(_0x4b538e){return _0x2f1856[_0x3d03('0x15')](_0x3b97ea)[_0x3d03('0x16')](_0x4b538e);}};}function respondWithFilteredResult(_0x2ac1f9,_0x2035c6){return function(_0x3f9b21){if(_0x3f9b21){var _0x440801=_0x3f9b21[_0x3d03('0x17')],_0x33f024=_0x2035c6[_0x3d03('0x18')],_0xaf581a=_0x2035c6[_0x3d03('0x18')]+_0x2035c6[_0x3d03('0x19')],_0x563b28;if(_0xaf581a>=_0x440801){_0xaf581a=_0x440801;_0x563b28=0xc8;}else{_0x563b28=0xce;}_0x2ac1f9[_0x3d03('0x15')](_0x563b28);return _0x2ac1f9['set'](_0x3d03('0x1a'),_0x33f024+'-'+_0xaf581a+'/'+_0x440801)[_0x3d03('0x16')](_0x3f9b21);}return null;};}function patchUpdates(_0x57b5e5){return function(_0x36bd7a){try{jsonpatch['apply'](_0x36bd7a,_0x57b5e5,!![]);}catch(_0xf06295){return BPromise[_0x3d03('0x1b')](_0xf06295);}return _0x36bd7a[_0x3d03('0x1c')]();};}function saveUpdates(_0x5ca2df,_0x35e03c){return function(_0x3eee07){if(_0x3eee07){return _0x3eee07[_0x3d03('0x1d')](_0x5ca2df)['then'](function(_0x5ebb9a){return _0x5ebb9a;});}return null;};}function removeEntity(_0x34b8e3,_0x2eb6dc){return function(_0x5256a2){if(_0x5256a2){return _0x5256a2[_0x3d03('0x1e')]()['then'](function(){var _0x471d91=_0x5256a2['get']({'plain':!![]});var _0xb41b77=_0x3d03('0x1f');return db[_0x3d03('0x20')]['destroy']({'where':{'type':_0xb41b77,'resourceId':_0x471d91['id']}})[_0x3d03('0x21')](function(){return _0x5256a2;});})[_0x3d03('0x21')](function(){_0x34b8e3[_0x3d03('0x15')](0xcc)[_0x3d03('0x14')]();});}};}function handleEntityNotFound(_0x373dca,_0x4b25bf){return function(_0x1fce7e){if(!_0x1fce7e){_0x373dca[_0x3d03('0x13')](0x194);}return _0x1fce7e;};}function handleError(_0xe27c49,_0x44b898){_0x44b898=_0x44b898||0x1f4;return function(_0x47029b){logger[_0x3d03('0x22')](_0x47029b[_0x3d03('0x23')]);if(_0x47029b[_0x3d03('0x24')]){delete _0x47029b[_0x3d03('0x24')];}_0xe27c49[_0x3d03('0x15')](_0x44b898)[_0x3d03('0x25')](_0x47029b);};}exports[_0x3d03('0x26')]=function(_0x912fe3,_0x15a385){var _0x20ca12={},_0x117588={},_0x29bf5d={'count':0x0,'rows':[]};var _0x295627=_['map'](db[_0x3d03('0x27')][_0x3d03('0x28')],function(_0x2b6764){return{'name':_0x2b6764[_0x3d03('0x29')],'type':_0x2b6764['type']['key']};});_0x117588[_0x3d03('0x2a')]=_[_0x3d03('0x2b')](_0x295627,_0x3d03('0x24'));_0x117588[_0x3d03('0x2c')]=_[_0x3d03('0x2d')](_0x912fe3[_0x3d03('0x2c')]);_0x117588[_0x3d03('0x2e')]=_['intersection'](_0x117588['model'],_0x117588['query']);_0x20ca12[_0x3d03('0x2f')]=_[_0x3d03('0x30')](_0x117588['model'],qs[_0x3d03('0x31')](_0x912fe3[_0x3d03('0x2c')][_0x3d03('0x31')]));_0x20ca12[_0x3d03('0x2f')]=_0x20ca12[_0x3d03('0x2f')][_0x3d03('0x32')]?_0x20ca12['attributes']:_0x117588[_0x3d03('0x2a')];if(!_0x912fe3[_0x3d03('0x2c')]['hasOwnProperty'](_0x3d03('0x33'))){_0x20ca12[_0x3d03('0x19')]=qs[_0x3d03('0x19')](_0x912fe3['query'][_0x3d03('0x19')]);_0x20ca12[_0x3d03('0x18')]=qs[_0x3d03('0x18')](_0x912fe3[_0x3d03('0x2c')][_0x3d03('0x18')]);}_0x20ca12[_0x3d03('0x34')]=qs[_0x3d03('0x35')](_0x912fe3[_0x3d03('0x2c')][_0x3d03('0x35')]);_0x20ca12[_0x3d03('0x36')]=qs['filters'](_['pick'](_0x912fe3[_0x3d03('0x2c')],_0x117588[_0x3d03('0x2e')]),_0x295627);if(_0x912fe3[_0x3d03('0x2c')][_0x3d03('0x37')]){_0x20ca12[_0x3d03('0x36')]=_[_0x3d03('0x38')](_0x20ca12[_0x3d03('0x36')],{'$or':_[_0x3d03('0x2b')](_0x295627,function(_0x3736d3){if(_0x3736d3[_0x3d03('0x39')]!==_0x3d03('0x3a')){var _0x53c383={};_0x53c383[_0x3736d3['name']]={'$like':'%'+_0x912fe3[_0x3d03('0x2c')][_0x3d03('0x37')]+'%'};return _0x53c383;}})});}_0x20ca12=_[_0x3d03('0x38')]({},_0x20ca12,_0x912fe3[_0x3d03('0x3b')]);var _0x829f13={'where':_0x20ca12[_0x3d03('0x36')]};return db['JscriptyProject'][_0x3d03('0x17')](_0x829f13)[_0x3d03('0x21')](function(_0x3e77a8){_0x29bf5d[_0x3d03('0x17')]=_0x3e77a8;if(_0x912fe3['query'][_0x3d03('0x3c')]){_0x20ca12[_0x3d03('0x3d')]=[{'all':!![]}];}return db[_0x3d03('0x27')]['findAll'](_0x20ca12);})[_0x3d03('0x21')](function(_0x3fd27d){_0x29bf5d[_0x3d03('0x3e')]=_0x3fd27d;return _0x29bf5d;})[_0x3d03('0x21')](respondWithFilteredResult(_0x15a385,_0x20ca12))[_0x3d03('0x3f')](handleError(_0x15a385,null));};exports[_0x3d03('0x40')]=function(_0xe39706,_0x2f8fd5){var _0x1f8d55={'raw':![],'where':{'id':_0xe39706[_0x3d03('0x41')]['id']}},_0x5aefc5={};_0x5aefc5[_0x3d03('0x2a')]=_['keys'](db[_0x3d03('0x27')][_0x3d03('0x28')]);_0x5aefc5[_0x3d03('0x2c')]=_[_0x3d03('0x2d')](_0xe39706['query']);_0x5aefc5[_0x3d03('0x2e')]=_[_0x3d03('0x30')](_0x5aefc5['model'],_0x5aefc5['query']);_0x1f8d55['attributes']=_['intersection'](_0x5aefc5[_0x3d03('0x2a')],qs[_0x3d03('0x31')](_0xe39706[_0x3d03('0x2c')][_0x3d03('0x31')]));_0x1f8d55['attributes']=_0x1f8d55[_0x3d03('0x2f')][_0x3d03('0x32')]?_0x1f8d55['attributes']:_0x5aefc5[_0x3d03('0x2a')];if(_0xe39706[_0x3d03('0x2c')]['includeAll']){_0x1f8d55[_0x3d03('0x3d')]=[{'all':!![]}];}_0x1f8d55=_[_0x3d03('0x38')]({},_0x1f8d55,_0xe39706[_0x3d03('0x3b')]);return db['JscriptyProject']['find'](_0x1f8d55)[_0x3d03('0x21')](handleEntityNotFound(_0x2f8fd5,null))[_0x3d03('0x21')](respondWithResult(_0x2f8fd5,null))[_0x3d03('0x3f')](handleError(_0x2f8fd5,null));};exports[_0x3d03('0x42')]=function(_0x28dc55,_0x490583){return db['JscriptyProject'][_0x3d03('0x42')](_0x28dc55['body'],{})[_0x3d03('0x21')](function(_0x1f5e08){var _0x3e533c=_0x28dc55[_0x3d03('0x43')][_0x3d03('0x44')]({'plain':!![]});if(!_0x3e533c)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x3e533c[_0x3d03('0x45')]===_0x3d03('0x43')){var _0x50b04f=_0x1f5e08['get']({'plain':!![]});var _0x299984='Projects';return db[_0x3d03('0x46')]['find']({'where':{'name':_0x299984,'userProfileId':_0x3e533c['userProfileId']},'raw':!![]})[_0x3d03('0x21')](function(_0x41ad83){if(_0x41ad83&&_0x41ad83[_0x3d03('0x47')]===0x0){return db['UserProfileResource'][_0x3d03('0x42')]({'name':_0x50b04f[_0x3d03('0x24')],'resourceId':_0x50b04f['id'],'type':_0x41ad83[_0x3d03('0x24')],'sectionId':_0x41ad83['id']},{})[_0x3d03('0x21')](function(){return _0x1f5e08;});}else{return _0x1f5e08;}})['catch'](function(_0x2e64ef){logger[_0x3d03('0x22')](_0x3d03('0x48'),_0x2e64ef);throw _0x2e64ef;});}return _0x1f5e08;})[_0x3d03('0x21')](respondWithResult(_0x490583,0xc9))['catch'](handleError(_0x490583,null));};exports[_0x3d03('0x49')]=function(_0x565622,_0x49f635){var _0x58719b={'where':{'id':_0x565622[_0x3d03('0x41')]['id']}},_0x22491e={};_0x22491e['model']=_[_0x3d03('0x2d')](db[_0x3d03('0x27')][_0x3d03('0x28')]);_0x58719b[_0x3d03('0x2f')]=_['intersection'](_0x22491e['model'],qs[_0x3d03('0x31')](_0x565622[_0x3d03('0x2c')][_0x3d03('0x31')]));_0x58719b[_0x3d03('0x2f')]=_0x58719b[_0x3d03('0x2f')]['length']?_0x58719b[_0x3d03('0x2f')]:_0x22491e[_0x3d03('0x2a')];if(_0x565622[_0x3d03('0x2c')][_0x3d03('0x3c')]){_0x58719b[_0x3d03('0x3d')]=[{'all':!![]}];}_0x58719b=_[_0x3d03('0x38')]({},_0x58719b,_0x565622[_0x3d03('0x3b')]);return db[_0x3d03('0x27')][_0x3d03('0x4a')](_0x58719b)[_0x3d03('0x21')](handleEntityNotFound(_0x49f635,null))['then'](function(_0x50aa28){if(_0x50aa28){var _0x21f01e=_0x50aa28[_0x3d03('0x44')]({'plain':!![]});_0x21f01e=qs[_0x3d03('0x4b')](_0x21f01e,['id',_0x3d03('0x4c'),_0x3d03('0x4d')]);_0x565622['body']=_[_0x3d03('0x4b')](_0x565622['body'],['id',_0x3d03('0x4c'),_0x3d03('0x4d')]);return db[_0x3d03('0x27')][_0x3d03('0x42')](_[_0x3d03('0x38')](_0x21f01e,_0x565622[_0x3d03('0x4e')]),{'include':_0x565622[_0x3d03('0x2c')][_0x3d03('0x3c')]?[{'all':!![]}]:undefined})[_0x3d03('0x21')](function(_0x5e65c0){var _0x9a9a36=_0x565622[_0x3d03('0x43')]['get']({'plain':!![]});if(!_0x9a9a36)throw new Error(_0x3d03('0x4f'));if(_0x9a9a36[_0x3d03('0x45')]===_0x3d03('0x43')){var _0x5a9020=_0x5e65c0[_0x3d03('0x44')]({'plain':!![]});var _0x4db10d=_0x3d03('0x1f');return db[_0x3d03('0x46')][_0x3d03('0x4a')]({'where':{'name':_0x4db10d,'userProfileId':_0x9a9a36[_0x3d03('0x50')]},'raw':!![]})[_0x3d03('0x21')](function(_0x344133){if(_0x344133&&_0x344133['autoAssociation']===0x0){return db['UserProfileResource']['create']({'name':_0x5a9020[_0x3d03('0x24')],'resourceId':_0x5a9020['id'],'type':_0x344133[_0x3d03('0x24')],'sectionId':_0x344133['id']},{})[_0x3d03('0x21')](function(){return _0x5e65c0;});}else{return _0x5e65c0;}})['catch'](function(_0x1e39db){logger[_0x3d03('0x22')](_0x3d03('0x48'),_0x1e39db);throw _0x1e39db;});}return _0x5e65c0;});}})[_0x3d03('0x21')](respondWithResult(_0x49f635,0xc9))['catch'](handleError(_0x49f635,null));};exports[_0x3d03('0x1d')]=function(_0x3b2c6a,_0x38dfb1){if(_0x3b2c6a[_0x3d03('0x4e')]['id']){delete _0x3b2c6a[_0x3d03('0x4e')]['id'];}return db[_0x3d03('0x27')][_0x3d03('0x4a')]({'where':{'id':_0x3b2c6a['params']['id']}})[_0x3d03('0x21')](handleEntityNotFound(_0x38dfb1,null))[_0x3d03('0x21')](saveUpdates(_0x3b2c6a[_0x3d03('0x4e')],null))['then'](respondWithResult(_0x38dfb1,null))['catch'](handleError(_0x38dfb1,null));};exports[_0x3d03('0x1e')]=function(_0x434052,_0x2921a2){return db['JscriptyProject'][_0x3d03('0x4a')]({'where':{'id':_0x434052['params']['id']}})['then'](handleEntityNotFound(_0x2921a2,null))[_0x3d03('0x21')](removeEntity(_0x2921a2,null))[_0x3d03('0x3f')](handleError(_0x2921a2,null));};exports['getSessions']=function(_0x3f3b81,_0x264b98,_0x19138e){var _0x52e13a={'raw':!![],'where':{}};var _0x490628={};var _0x155ad4={'count':0x0,'rows':[]};return db[_0x3d03('0x27')][_0x3d03('0x51')]({'where':{'id':_0x3f3b81[_0x3d03('0x41')]['id']}})[_0x3d03('0x21')](handleEntityNotFound(_0x264b98,null))[_0x3d03('0x21')](function(_0xa8e11e){if(_0xa8e11e){_0x490628['model']=_[_0x3d03('0x2d')](db[_0x3d03('0x52')][_0x3d03('0x28')]);_0x490628['query']=_['keys'](_0x3f3b81[_0x3d03('0x2c')]);_0x490628[_0x3d03('0x2e')]=_['intersection'](_0x490628['model'],_0x490628[_0x3d03('0x2c')]);_0x52e13a[_0x3d03('0x2f')]=_[_0x3d03('0x30')](_0x490628['model'],qs[_0x3d03('0x31')](_0x3f3b81[_0x3d03('0x2c')][_0x3d03('0x31')]));_0x52e13a[_0x3d03('0x2f')]=_0x52e13a[_0x3d03('0x2f')][_0x3d03('0x32')]?_0x52e13a[_0x3d03('0x2f')]:_0x490628['model'];if(!_0x3f3b81[_0x3d03('0x2c')]['hasOwnProperty']('nolimit')){_0x52e13a[_0x3d03('0x19')]=qs[_0x3d03('0x19')](_0x3f3b81[_0x3d03('0x2c')][_0x3d03('0x19')]);_0x52e13a[_0x3d03('0x18')]=qs['offset'](_0x3f3b81[_0x3d03('0x2c')][_0x3d03('0x18')]);}_0x52e13a[_0x3d03('0x34')]=qs[_0x3d03('0x35')](_0x3f3b81[_0x3d03('0x2c')][_0x3d03('0x35')]);_0x52e13a[_0x3d03('0x36')]=qs[_0x3d03('0x2e')](_[_0x3d03('0x53')](_0x3f3b81[_0x3d03('0x2c')],_0x490628[_0x3d03('0x2e')]));_0x52e13a['where']['ProjectId']=_0xa8e11e['id'];if(_0x3f3b81[_0x3d03('0x2c')][_0x3d03('0x37')]){_0x52e13a[_0x3d03('0x36')]=_['merge'](_0x52e13a[_0x3d03('0x36')],{'$or':_[_0x3d03('0x2b')](_0x52e13a[_0x3d03('0x2f')],function(_0x48631f){var _0x5a5c1b={};_0x5a5c1b[_0x48631f]={'$like':'%'+_0x3f3b81[_0x3d03('0x2c')][_0x3d03('0x37')]+'%'};return _0x5a5c1b;})});}_0x52e13a=_[_0x3d03('0x38')]({},_0x52e13a,_0x3f3b81[_0x3d03('0x3b')]);return db[_0x3d03('0x52')]['count']({'where':_0x52e13a['where']})[_0x3d03('0x21')](function(_0xa829b4){_0x155ad4[_0x3d03('0x17')]=_0xa829b4;if(_0x3f3b81[_0x3d03('0x2c')][_0x3d03('0x3c')]){_0x52e13a[_0x3d03('0x3d')]=[{'all':!![]}];}return db[_0x3d03('0x52')]['findAll'](_0x52e13a);})[_0x3d03('0x21')](function(_0x2cb339){_0x155ad4[_0x3d03('0x3e')]=_0x2cb339;return _0x155ad4;});}})[_0x3d03('0x21')](respondWithFilteredResult(_0x264b98,_0x52e13a))['catch'](handleError(_0x264b98,null));};exports[_0x3d03('0x54')]=function(_0x43e029,_0x19c97d,_0x4f1250){var _0x4ee92a={'raw':!![],'where':{}};var _0x579979={};var _0xf75fb8={'count':0x0,'rows':[]};return db[_0x3d03('0x27')][_0x3d03('0x51')]({'where':{'id':_0x43e029[_0x3d03('0x41')]['id']}})[_0x3d03('0x21')](handleEntityNotFound(_0x19c97d,null))[_0x3d03('0x21')](function(_0x1e6ee9){if(_0x1e6ee9){_0x579979['model']=_[_0x3d03('0x2d')](db[_0x3d03('0x55')]['rawAttributes']);_0x579979[_0x3d03('0x2c')]=_[_0x3d03('0x2d')](_0x43e029[_0x3d03('0x2c')]);_0x579979['filters']=_['intersection'](_0x579979[_0x3d03('0x2a')],_0x579979[_0x3d03('0x2c')]);_0x4ee92a[_0x3d03('0x2f')]=_['intersection'](_0x579979[_0x3d03('0x2a')],qs[_0x3d03('0x31')](_0x43e029[_0x3d03('0x2c')][_0x3d03('0x31')]));_0x4ee92a['attributes']=_0x4ee92a[_0x3d03('0x2f')][_0x3d03('0x32')]?_0x4ee92a[_0x3d03('0x2f')]:_0x579979[_0x3d03('0x2a')];if(!_0x43e029[_0x3d03('0x2c')][_0x3d03('0x56')](_0x3d03('0x33'))){_0x4ee92a[_0x3d03('0x19')]=qs[_0x3d03('0x19')](_0x43e029[_0x3d03('0x2c')][_0x3d03('0x19')]);_0x4ee92a[_0x3d03('0x18')]=qs['offset'](_0x43e029[_0x3d03('0x2c')][_0x3d03('0x18')]);}_0x4ee92a['order']=qs[_0x3d03('0x35')](_0x43e029[_0x3d03('0x2c')][_0x3d03('0x35')]);_0x4ee92a[_0x3d03('0x36')]=qs[_0x3d03('0x2e')](_[_0x3d03('0x53')](_0x43e029[_0x3d03('0x2c')],_0x579979[_0x3d03('0x2e')]));_0x4ee92a[_0x3d03('0x36')][_0x3d03('0x57')]=_0x1e6ee9['id'];if(_0x43e029[_0x3d03('0x2c')]['filter']){_0x4ee92a[_0x3d03('0x36')]=_['merge'](_0x4ee92a[_0x3d03('0x36')],{'$or':_[_0x3d03('0x2b')](_0x4ee92a[_0x3d03('0x2f')],function(_0x27c043){var _0x10f31a={};_0x10f31a[_0x27c043]={'$like':'%'+_0x43e029['query'][_0x3d03('0x37')]+'%'};return _0x10f31a;})});}_0x4ee92a=_[_0x3d03('0x38')]({},_0x4ee92a,_0x43e029[_0x3d03('0x3b')]);return db[_0x3d03('0x55')]['count']({'where':_0x4ee92a[_0x3d03('0x36')]})[_0x3d03('0x21')](function(_0xe50162){_0xf75fb8[_0x3d03('0x17')]=_0xe50162;if(_0x43e029[_0x3d03('0x2c')][_0x3d03('0x3c')]){_0x4ee92a['include']=[{'all':!![]}];}return db[_0x3d03('0x55')][_0x3d03('0x58')](_0x4ee92a);})[_0x3d03('0x21')](function(_0x50e1df){_0xf75fb8[_0x3d03('0x3e')]=_0x50e1df;return _0xf75fb8;});}})[_0x3d03('0x21')](respondWithFilteredResult(_0x19c97d,_0x4ee92a))[_0x3d03('0x3f')](handleError(_0x19c97d,null));};function char(_0x351ce1){return _0x3d03('0x59')===typeof _0x351ce1?String[_0x3d03('0x5a')]['apply'](null,arguments):_0x351ce1;}function needsEncapsulation(_0x3a5d05){return!!_0x3a5d05&&(_0x3a5d05[_0x3d03('0x5b')]()[_0x3d03('0x5c')](char(0xd))>=0x0||_0x3a5d05[_0x3d03('0x5b')]()[_0x3d03('0x5c')](char(0xa))>=0x0||_0x3a5d05[_0x3d03('0x5b')]()[_0x3d03('0x5c')](char(0x2c))>=0x0||_0x3a5d05[_0x3d03('0x5b')]()['indexOf'](char(0x22))>=0x0);}function encapsulate(_0x3d3477){var _0x20c720=char(0x22),_0x283c63='\x5c'+char(0x22),_0x1cdf3f=_0x3d3477[_0x3d03('0x5b')]()[_0x3d03('0x5d')](new RegExp(_0x20c720,'g'),_0x283c63);return _0x20c720+_0x1cdf3f+_0x20c720;}exports[_0x3d03('0x5e')]=function(_0x2c5f13,_0x40c5a2,_0x5f14ae){var _0x32a055,_0x31f555;var _0xb2ba82={'where':{'ProjectId':_0x2c5f13[_0x3d03('0x41')]['id']}};if(_0x2c5f13[_0x3d03('0x2c')][_0x3d03('0x5f')]){_0xb2ba82['where'][_0x3d03('0x60')]=JSON['parse'](_0x2c5f13[_0x3d03('0x2c')]['startTime']);}return db[_0x3d03('0x52')][_0x3d03('0x58')](_0xb2ba82)[_0x3d03('0x21')](handleEntityNotFound(_0x40c5a2,null))['then'](function(_0x1868ea){if(_0x1868ea){_0x32a055=_0x1868ea;return db['JscriptyQuestionReport'][_0x3d03('0x58')]({'where':{'SessionId':{'$in':_[_0x3d03('0x2b')](_0x32a055,'id')},'ProjectId':_0x2c5f13[_0x3d03('0x41')]['id']},'order':_0x3d03('0x61')});}})['then'](handleEntityNotFound(_0x40c5a2,null))['then'](function(_0x519d8c){if(_0x519d8c){_0x31f555=_0x519d8c;var _0x2ddf05={};for(var _0x3c550d=0x0,_0x1deda1=_0x31f555[_0x3d03('0x32')];_0x3c550d<_0x1deda1;_0x3c550d++){if(!_0x2ddf05['hasOwnProperty'](_0x31f555[_0x3c550d][_0x3d03('0x62')])){_0x2ddf05[_0x31f555[_0x3c550d][_0x3d03('0x62')]]=needsEncapsulation(_0x31f555[_0x3c550d][_0x3d03('0x63')])?encapsulate(_0x31f555[_0x3c550d][_0x3d03('0x63')]):_0x31f555[_0x3c550d][_0x3d03('0x63')];}}var _0x51c77d=[],_0x12907f={};for(var _0x9cb090=0x0,_0x185824=_0x32a055[_0x3d03('0x32')];_0x9cb090<_0x185824;_0x9cb090++){_0x12907f={'ProjectId':_0x2c5f13['params']['id'],'SessionId':_0x32a055[_0x9cb090]['id'],'StartTime':moment(_0x32a055[_0x9cb090][_0x3d03('0x60')])[_0x3d03('0x64')]('YYYY-MM-DD\x20HH:mm:ss')};for(var _0x3dde04=0x0,_0x10d5bd=_0x31f555[_0x3d03('0x32')];_0x3dde04<_0x10d5bd;_0x3dde04++){if(_0x31f555[_0x3dde04][_0x3d03('0x65')]==_0x32a055[_0x9cb090]['id']&&_0x2ddf05['hasOwnProperty'](_0x31f555[_0x3dde04][_0x3d03('0x62')])){_0x12907f[_0x2ddf05[_0x31f555[_0x3dde04][_0x3d03('0x62')]]]=_0x31f555[_0x3dde04][_0x3d03('0x66')];}}for(var _0x14f9dc in _0x2ddf05){if(!_0x12907f[_0x3d03('0x56')](_0x2ddf05[_0x14f9dc])){_0x12907f[_0x2ddf05[_0x14f9dc]]=null;}}_0x51c77d[_0x3d03('0x67')](_0x12907f);}return _0x51c77d;}})[_0x3d03('0x21')](function(_0x2966ea){if(!_[_0x3d03('0x68')](_0x2966ea)){var _0x257139=toCsv(_0x2966ea);var _0x43e315=Date['now']();fs['writeFileSync'](util[_0x3d03('0x64')](_0x3d03('0x69'),_0x2c5f13['params']['id'],_0x43e315),_0x257139);_0x40c5a2[_0x3d03('0x6a')](_0x3d03('0x6b'),'attachment;\x20filename='+util[_0x3d03('0x64')](_0x3d03('0x6c'),_0x2c5f13[_0x3d03('0x41')]['id'],_0x43e315));_0x40c5a2[_0x3d03('0x6a')]('Content-type',_0x3d03('0x6d'));return _0x40c5a2['download'](util[_0x3d03('0x64')]('/tmp/Jscripty_Project_%d_Summary_%s.csv',_0x2c5f13[_0x3d03('0x41')]['id'],_0x43e315));}else{return _0x40c5a2[_0x3d03('0x13')](0xcc);}})['catch'](handleError(_0x40c5a2,null));};