Built motion from commit 9d7072cc.|2.5.39
[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 _0x0de3=['parse','JscriptyQuestionReport','-createdAt','questionId','question','format','YYYY-MM-DD\x20HH:mm:ss','SessionId','answer','push','now','writeFileSync','/tmp/Jscripty_Project_%d_Summary_%s.csv','Content-disposition','attachment;\x20filename=','Jscripty_Project_%d_Summary_%s.csv','setHeader','Content-type','download','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','lodash','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','undefined','offset','count','limit','set','Content-Range','json','apply','reject','save','update','then','destroy','get','Projects','end','error','stack','name','send','index','map','JscriptyProject','rawAttributes','fieldName','key','query','keys','intersection','model','attributes','fields','length','hasOwnProperty','nolimit','sort','where','filters','pick','filter','type','VIRTUAL','options','includeAll','include','findAll','rows','show','merge','find','catch','create','body','user','role','userProfileId','autoAssociation','UserProfileResource','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','clone','params','omit','updatedAt','createdAt','UserProfileSection','getSessions','JscriptySessionReport','order','ProjectId','getAnswers','JscriptyAnswerReport','number','fromCharCode','toString','indexOf','replace','startTime','starttime'];(function(_0x1b3323,_0x3bab58){var _0x2b62a6=function(_0x507512){while(--_0x507512){_0x1b3323['push'](_0x1b3323['shift']());}};_0x2b62a6(++_0x3bab58);}(_0x0de3,0x184));var _0x30de=function(_0x327907,_0x3aeada){_0x327907=_0x327907-0x0;var _0x1ff120=_0x0de3[_0x327907];return _0x1ff120;};'use strict';var emlformat=require(_0x30de('0x0'));var rimraf=require(_0x30de('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x30de('0x2'));var rp=require(_0x30de('0x3'));var moment=require(_0x30de('0x4'));var BPromise=require(_0x30de('0x5'));var Mustache=require(_0x30de('0x6'));var util=require(_0x30de('0x7'));var path=require(_0x30de('0x8'));var sox=require(_0x30de('0x9'));var csv=require(_0x30de('0xa'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x30de('0xb'));var squel=require('squel');var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0x30de('0xc'));var toCsv=require(_0x30de('0xa'));var querystring=require(_0x30de('0xd'));var Papa=require(_0x30de('0xe'));var Redis=require('ioredis');var authService=require(_0x30de('0xf'));var qs=require(_0x30de('0x10'));var as=require(_0x30de('0x11'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x30de('0x12'))(_0x30de('0x13'));var utils=require(_0x30de('0x14'));var config=require(_0x30de('0x15'));var licenseUtil=require(_0x30de('0x16'));var db=require(_0x30de('0x17'))['db'];function respondWithStatusCode(_0x3a5640,_0xc34496){_0xc34496=_0xc34496||0xcc;return function(_0x41e9d7){if(_0x41e9d7){return _0x3a5640[_0x30de('0x18')](_0xc34496);}return _0x3a5640[_0x30de('0x19')](_0xc34496)['end']();};}function respondWithResult(_0x40137f,_0x32ad0b){_0x32ad0b=_0x32ad0b||0xc8;return function(_0x26e537){if(_0x26e537){return _0x40137f[_0x30de('0x19')](_0x32ad0b)['json'](_0x26e537);}};}function respondWithFilteredResult(_0x5d38cf,_0x24afd3){return function(_0x29c326){if(_0x29c326){var _0x184dc5=typeof _0x24afd3['offset']==='undefined'&&typeof _0x24afd3['limit']===_0x30de('0x1a');var _0x246df8=_0x29c326['count'];var _0x427365=_0x184dc5?0x0:_0x24afd3[_0x30de('0x1b')];var _0x40b032=_0x184dc5?_0x29c326[_0x30de('0x1c')]:_0x24afd3['offset']+_0x24afd3[_0x30de('0x1d')];var _0x4b4346;if(_0x40b032>=_0x246df8){_0x40b032=_0x246df8;_0x4b4346=0xc8;}else{_0x4b4346=0xce;}_0x5d38cf['status'](_0x4b4346);return _0x5d38cf[_0x30de('0x1e')](_0x30de('0x1f'),_0x427365+'-'+_0x40b032+'/'+_0x246df8)[_0x30de('0x20')](_0x29c326);}return null;};}function patchUpdates(_0x1a874){return function(_0x892fb7){try{jsonpatch[_0x30de('0x21')](_0x892fb7,_0x1a874,!![]);}catch(_0x4b8d2a){return BPromise[_0x30de('0x22')](_0x4b8d2a);}return _0x892fb7[_0x30de('0x23')]();};}function saveUpdates(_0x532145,_0x44178e){return function(_0x43398d){if(_0x43398d){return _0x43398d[_0x30de('0x24')](_0x532145)[_0x30de('0x25')](function(_0x31e2cc){return _0x31e2cc;});}return null;};}function removeEntity(_0x265237,_0x2f2646){return function(_0x5714d1){if(_0x5714d1){return _0x5714d1[_0x30de('0x26')]()[_0x30de('0x25')](function(){var _0x2e86d8=_0x5714d1[_0x30de('0x27')]({'plain':!![]});var _0x355ab6=_0x30de('0x28');return db['UserProfileResource']['destroy']({'where':{'type':_0x355ab6,'resourceId':_0x2e86d8['id']}})[_0x30de('0x25')](function(){return _0x5714d1;});})[_0x30de('0x25')](function(){_0x265237['status'](0xcc)[_0x30de('0x29')]();});}};}function handleEntityNotFound(_0x1f0db6,_0x2fe579){return function(_0x4042ea){if(!_0x4042ea){_0x1f0db6[_0x30de('0x18')](0x194);}return _0x4042ea;};}function handleError(_0xecdc1b,_0x5b2397){_0x5b2397=_0x5b2397||0x1f4;return function(_0x2e9e10){logger[_0x30de('0x2a')](_0x2e9e10[_0x30de('0x2b')]);if(_0x2e9e10[_0x30de('0x2c')]){delete _0x2e9e10['name'];}_0xecdc1b[_0x30de('0x19')](_0x5b2397)[_0x30de('0x2d')](_0x2e9e10);};}exports[_0x30de('0x2e')]=function(_0x3160e8,_0x4ffa71){var _0x138663={},_0x148e66={},_0xb8beeb={'count':0x0,'rows':[]};var _0x29955f=_[_0x30de('0x2f')](db[_0x30de('0x30')][_0x30de('0x31')],function(_0x5155ff){return{'name':_0x5155ff[_0x30de('0x32')],'type':_0x5155ff['type'][_0x30de('0x33')]};});_0x148e66['model']=_[_0x30de('0x2f')](_0x29955f,_0x30de('0x2c'));_0x148e66[_0x30de('0x34')]=_[_0x30de('0x35')](_0x3160e8[_0x30de('0x34')]);_0x148e66['filters']=_[_0x30de('0x36')](_0x148e66[_0x30de('0x37')],_0x148e66[_0x30de('0x34')]);_0x138663[_0x30de('0x38')]=_['intersection'](_0x148e66[_0x30de('0x37')],qs[_0x30de('0x39')](_0x3160e8[_0x30de('0x34')]['fields']));_0x138663['attributes']=_0x138663['attributes'][_0x30de('0x3a')]?_0x138663[_0x30de('0x38')]:_0x148e66[_0x30de('0x37')];if(!_0x3160e8[_0x30de('0x34')][_0x30de('0x3b')](_0x30de('0x3c'))){_0x138663[_0x30de('0x1d')]=qs[_0x30de('0x1d')](_0x3160e8[_0x30de('0x34')][_0x30de('0x1d')]);_0x138663[_0x30de('0x1b')]=qs[_0x30de('0x1b')](_0x3160e8[_0x30de('0x34')][_0x30de('0x1b')]);}_0x138663['order']=qs[_0x30de('0x3d')](_0x3160e8['query'][_0x30de('0x3d')]);_0x138663[_0x30de('0x3e')]=qs[_0x30de('0x3f')](_[_0x30de('0x40')](_0x3160e8[_0x30de('0x34')],_0x148e66[_0x30de('0x3f')]),_0x29955f);if(_0x3160e8['query'][_0x30de('0x41')]){_0x138663['where']=_['merge'](_0x138663[_0x30de('0x3e')],{'$or':_[_0x30de('0x2f')](_0x29955f,function(_0x1bf348){if(_0x1bf348[_0x30de('0x42')]!==_0x30de('0x43')){var _0xf7238e={};_0xf7238e[_0x1bf348[_0x30de('0x2c')]]={'$like':'%'+_0x3160e8['query'][_0x30de('0x41')]+'%'};return _0xf7238e;}})});}_0x138663=_['merge']({},_0x138663,_0x3160e8[_0x30de('0x44')]);var _0x3d83fa={'where':_0x138663[_0x30de('0x3e')]};return db[_0x30de('0x30')][_0x30de('0x1c')](_0x3d83fa)[_0x30de('0x25')](function(_0x2fdf0e){_0xb8beeb[_0x30de('0x1c')]=_0x2fdf0e;if(_0x3160e8[_0x30de('0x34')][_0x30de('0x45')]){_0x138663[_0x30de('0x46')]=[{'all':!![]}];}return db[_0x30de('0x30')][_0x30de('0x47')](_0x138663);})[_0x30de('0x25')](function(_0x2c2456){_0xb8beeb[_0x30de('0x48')]=_0x2c2456;return _0xb8beeb;})['then'](respondWithFilteredResult(_0x4ffa71,_0x138663))['catch'](handleError(_0x4ffa71,null));};exports[_0x30de('0x49')]=function(_0x4f6921,_0x327de1){var _0x42d68e={'raw':![],'where':{'id':_0x4f6921['params']['id']}},_0xd50def={};_0xd50def[_0x30de('0x37')]=_['keys'](db['JscriptyProject']['rawAttributes']);_0xd50def[_0x30de('0x34')]=_[_0x30de('0x35')](_0x4f6921[_0x30de('0x34')]);_0xd50def['filters']=_[_0x30de('0x36')](_0xd50def[_0x30de('0x37')],_0xd50def[_0x30de('0x34')]);_0x42d68e['attributes']=_['intersection'](_0xd50def[_0x30de('0x37')],qs[_0x30de('0x39')](_0x4f6921[_0x30de('0x34')][_0x30de('0x39')]));_0x42d68e[_0x30de('0x38')]=_0x42d68e[_0x30de('0x38')][_0x30de('0x3a')]?_0x42d68e[_0x30de('0x38')]:_0xd50def['model'];if(_0x4f6921[_0x30de('0x34')]['includeAll']){_0x42d68e[_0x30de('0x46')]=[{'all':!![]}];}_0x42d68e=_[_0x30de('0x4a')]({},_0x42d68e,_0x4f6921['options']);return db[_0x30de('0x30')][_0x30de('0x4b')](_0x42d68e)['then'](handleEntityNotFound(_0x327de1,null))[_0x30de('0x25')](respondWithResult(_0x327de1,null))[_0x30de('0x4c')](handleError(_0x327de1,null));};exports[_0x30de('0x4d')]=function(_0x597513,_0x48db62){return db['JscriptyProject'][_0x30de('0x4d')](_0x597513[_0x30de('0x4e')],{})['then'](function(_0x5195e8){var _0x21dffb=_0x597513[_0x30de('0x4f')][_0x30de('0x27')]({'plain':!![]});if(!_0x21dffb)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x21dffb[_0x30de('0x50')]===_0x30de('0x4f')){var _0x5ed1d6=_0x5195e8[_0x30de('0x27')]({'plain':!![]});var _0x16be92=_0x30de('0x28');return db['UserProfileSection']['find']({'where':{'name':_0x16be92,'userProfileId':_0x21dffb[_0x30de('0x51')]},'raw':!![]})['then'](function(_0x26e3aa){if(_0x26e3aa&&_0x26e3aa[_0x30de('0x52')]===0x0){return db[_0x30de('0x53')][_0x30de('0x4d')]({'name':_0x5ed1d6[_0x30de('0x2c')],'resourceId':_0x5ed1d6['id'],'type':_0x26e3aa[_0x30de('0x2c')],'sectionId':_0x26e3aa['id']},{})[_0x30de('0x25')](function(){return _0x5195e8;});}else{return _0x5195e8;}})[_0x30de('0x4c')](function(_0xeea5c9){logger['error'](_0x30de('0x54'),_0xeea5c9);throw _0xeea5c9;});}return _0x5195e8;})['then'](respondWithResult(_0x48db62,0xc9))[_0x30de('0x4c')](handleError(_0x48db62,null));};exports[_0x30de('0x55')]=function(_0x5853b9,_0x5ad703){var _0x1dc52b={'where':{'id':_0x5853b9[_0x30de('0x56')]['id']}},_0x516fa0={};_0x516fa0[_0x30de('0x37')]=_['keys'](db[_0x30de('0x30')][_0x30de('0x31')]);_0x1dc52b[_0x30de('0x38')]=_['intersection'](_0x516fa0[_0x30de('0x37')],qs[_0x30de('0x39')](_0x5853b9[_0x30de('0x34')]['fields']));_0x1dc52b[_0x30de('0x38')]=_0x1dc52b[_0x30de('0x38')]['length']?_0x1dc52b[_0x30de('0x38')]:_0x516fa0['model'];if(_0x5853b9[_0x30de('0x34')][_0x30de('0x45')]){_0x1dc52b['include']=[{'all':!![]}];}_0x1dc52b=_[_0x30de('0x4a')]({},_0x1dc52b,_0x5853b9['options']);return db[_0x30de('0x30')]['find'](_0x1dc52b)[_0x30de('0x25')](handleEntityNotFound(_0x5ad703,null))['then'](function(_0x381a90){if(_0x381a90){var _0x4953c4=_0x381a90[_0x30de('0x27')]({'plain':!![]});_0x4953c4=qs[_0x30de('0x57')](_0x4953c4,['id','createdAt',_0x30de('0x58')]);_0x5853b9['body']=_[_0x30de('0x57')](_0x5853b9[_0x30de('0x4e')],['id',_0x30de('0x59'),_0x30de('0x58')]);return db[_0x30de('0x30')][_0x30de('0x4d')](_[_0x30de('0x4a')](_0x4953c4,_0x5853b9[_0x30de('0x4e')]),{'include':_0x5853b9[_0x30de('0x34')][_0x30de('0x45')]?[{'all':!![]}]:undefined})['then'](function(_0xa58fb0){var _0x467812=_0x5853b9[_0x30de('0x4f')]['get']({'plain':!![]});if(!_0x467812)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x467812[_0x30de('0x50')]===_0x30de('0x4f')){var _0x493e17=_0xa58fb0[_0x30de('0x27')]({'plain':!![]});var _0x12dea8='Projects';return db[_0x30de('0x5a')][_0x30de('0x4b')]({'where':{'name':_0x12dea8,'userProfileId':_0x467812[_0x30de('0x51')]},'raw':!![]})[_0x30de('0x25')](function(_0x1f88d4){if(_0x1f88d4&&_0x1f88d4[_0x30de('0x52')]===0x0){return db[_0x30de('0x53')][_0x30de('0x4d')]({'name':_0x493e17[_0x30de('0x2c')],'resourceId':_0x493e17['id'],'type':_0x1f88d4['name'],'sectionId':_0x1f88d4['id']},{})[_0x30de('0x25')](function(){return _0xa58fb0;});}else{return _0xa58fb0;}})['catch'](function(_0x51b88f){logger[_0x30de('0x2a')](_0x30de('0x54'),_0x51b88f);throw _0x51b88f;});}return _0xa58fb0;});}})[_0x30de('0x25')](respondWithResult(_0x5ad703,0xc9))[_0x30de('0x4c')](handleError(_0x5ad703,null));};exports['update']=function(_0x572c04,_0x3f12a1){if(_0x572c04[_0x30de('0x4e')]['id']){delete _0x572c04[_0x30de('0x4e')]['id'];}return db[_0x30de('0x30')][_0x30de('0x4b')]({'where':{'id':_0x572c04[_0x30de('0x56')]['id']}})['then'](handleEntityNotFound(_0x3f12a1,null))[_0x30de('0x25')](saveUpdates(_0x572c04['body'],null))[_0x30de('0x25')](respondWithResult(_0x3f12a1,null))['catch'](handleError(_0x3f12a1,null));};exports[_0x30de('0x26')]=function(_0x4b96bf,_0x35c47c){return db[_0x30de('0x30')]['find']({'where':{'id':_0x4b96bf[_0x30de('0x56')]['id']}})[_0x30de('0x25')](handleEntityNotFound(_0x35c47c,null))[_0x30de('0x25')](removeEntity(_0x35c47c,null))[_0x30de('0x4c')](handleError(_0x35c47c,null));};exports[_0x30de('0x5b')]=function(_0x17e1bb,_0x5c4513,_0x39efa1){var _0x216a55={'raw':!![],'where':{}};var _0x15faa0={};var _0x298b4a={'count':0x0,'rows':[]};return db[_0x30de('0x30')]['findOne']({'where':{'id':_0x17e1bb['params']['id']}})[_0x30de('0x25')](handleEntityNotFound(_0x5c4513,null))[_0x30de('0x25')](function(_0x19c083){if(_0x19c083){_0x15faa0[_0x30de('0x37')]=_[_0x30de('0x35')](db[_0x30de('0x5c')][_0x30de('0x31')]);_0x15faa0[_0x30de('0x34')]=_['keys'](_0x17e1bb[_0x30de('0x34')]);_0x15faa0[_0x30de('0x3f')]=_[_0x30de('0x36')](_0x15faa0[_0x30de('0x37')],_0x15faa0[_0x30de('0x34')]);_0x216a55[_0x30de('0x38')]=_[_0x30de('0x36')](_0x15faa0[_0x30de('0x37')],qs['fields'](_0x17e1bb[_0x30de('0x34')][_0x30de('0x39')]));_0x216a55[_0x30de('0x38')]=_0x216a55[_0x30de('0x38')][_0x30de('0x3a')]?_0x216a55['attributes']:_0x15faa0[_0x30de('0x37')];if(!_0x17e1bb[_0x30de('0x34')]['hasOwnProperty'](_0x30de('0x3c'))){_0x216a55['limit']=qs[_0x30de('0x1d')](_0x17e1bb[_0x30de('0x34')][_0x30de('0x1d')]);_0x216a55[_0x30de('0x1b')]=qs['offset'](_0x17e1bb[_0x30de('0x34')][_0x30de('0x1b')]);}_0x216a55[_0x30de('0x5d')]=qs[_0x30de('0x3d')](_0x17e1bb['query']['sort']);_0x216a55[_0x30de('0x3e')]=qs[_0x30de('0x3f')](_['pick'](_0x17e1bb[_0x30de('0x34')],_0x15faa0[_0x30de('0x3f')]));_0x216a55[_0x30de('0x3e')][_0x30de('0x5e')]=_0x19c083['id'];if(_0x17e1bb[_0x30de('0x34')][_0x30de('0x41')]){_0x216a55[_0x30de('0x3e')]=_['merge'](_0x216a55[_0x30de('0x3e')],{'$or':_[_0x30de('0x2f')](_0x216a55[_0x30de('0x38')],function(_0x46e5aa){var _0x5c6f36={};_0x5c6f36[_0x46e5aa]={'$like':'%'+_0x17e1bb[_0x30de('0x34')][_0x30de('0x41')]+'%'};return _0x5c6f36;})});}_0x216a55=_[_0x30de('0x4a')]({},_0x216a55,_0x17e1bb['options']);return db[_0x30de('0x5c')][_0x30de('0x1c')]({'where':_0x216a55['where']})[_0x30de('0x25')](function(_0x591c07){_0x298b4a[_0x30de('0x1c')]=_0x591c07;if(_0x17e1bb[_0x30de('0x34')][_0x30de('0x45')]){_0x216a55[_0x30de('0x46')]=[{'all':!![]}];}return db[_0x30de('0x5c')]['findAll'](_0x216a55);})[_0x30de('0x25')](function(_0x32b26f){_0x298b4a[_0x30de('0x48')]=_0x32b26f;return _0x298b4a;});}})[_0x30de('0x25')](respondWithFilteredResult(_0x5c4513,_0x216a55))[_0x30de('0x4c')](handleError(_0x5c4513,null));};exports[_0x30de('0x5f')]=function(_0x3e5dda,_0x568086,_0x382db5){var _0x473362={'raw':!![],'where':{}};var _0x44b99e={};var _0x54da93={'count':0x0,'rows':[]};return db['JscriptyProject']['findOne']({'where':{'id':_0x3e5dda[_0x30de('0x56')]['id']}})[_0x30de('0x25')](handleEntityNotFound(_0x568086,null))['then'](function(_0x24bcaa){if(_0x24bcaa){_0x44b99e[_0x30de('0x37')]=_[_0x30de('0x35')](db['JscriptyAnswerReport'][_0x30de('0x31')]);_0x44b99e['query']=_[_0x30de('0x35')](_0x3e5dda[_0x30de('0x34')]);_0x44b99e[_0x30de('0x3f')]=_[_0x30de('0x36')](_0x44b99e[_0x30de('0x37')],_0x44b99e[_0x30de('0x34')]);_0x473362[_0x30de('0x38')]=_[_0x30de('0x36')](_0x44b99e['model'],qs[_0x30de('0x39')](_0x3e5dda[_0x30de('0x34')][_0x30de('0x39')]));_0x473362[_0x30de('0x38')]=_0x473362[_0x30de('0x38')][_0x30de('0x3a')]?_0x473362[_0x30de('0x38')]:_0x44b99e[_0x30de('0x37')];if(!_0x3e5dda[_0x30de('0x34')][_0x30de('0x3b')]('nolimit')){_0x473362[_0x30de('0x1d')]=qs['limit'](_0x3e5dda['query'][_0x30de('0x1d')]);_0x473362['offset']=qs['offset'](_0x3e5dda[_0x30de('0x34')]['offset']);}_0x473362[_0x30de('0x5d')]=qs[_0x30de('0x3d')](_0x3e5dda['query']['sort']);_0x473362[_0x30de('0x3e')]=qs[_0x30de('0x3f')](_[_0x30de('0x40')](_0x3e5dda['query'],_0x44b99e[_0x30de('0x3f')]));_0x473362[_0x30de('0x3e')]['ProjectId']=_0x24bcaa['id'];if(_0x3e5dda[_0x30de('0x34')][_0x30de('0x41')]){_0x473362[_0x30de('0x3e')]=_['merge'](_0x473362[_0x30de('0x3e')],{'$or':_[_0x30de('0x2f')](_0x473362['attributes'],function(_0x2d6d7c){var _0x4f6de0={};_0x4f6de0[_0x2d6d7c]={'$like':'%'+_0x3e5dda['query']['filter']+'%'};return _0x4f6de0;})});}_0x473362=_[_0x30de('0x4a')]({},_0x473362,_0x3e5dda[_0x30de('0x44')]);return db[_0x30de('0x60')][_0x30de('0x1c')]({'where':_0x473362[_0x30de('0x3e')]})['then'](function(_0x3f81c6){_0x54da93[_0x30de('0x1c')]=_0x3f81c6;if(_0x3e5dda[_0x30de('0x34')][_0x30de('0x45')]){_0x473362['include']=[{'all':!![]}];}return db['JscriptyAnswerReport'][_0x30de('0x47')](_0x473362);})[_0x30de('0x25')](function(_0x161aea){_0x54da93['rows']=_0x161aea;return _0x54da93;});}})[_0x30de('0x25')](respondWithFilteredResult(_0x568086,_0x473362))[_0x30de('0x4c')](handleError(_0x568086,null));};function char(_0x1867b2){return _0x30de('0x61')===typeof _0x1867b2?String[_0x30de('0x62')][_0x30de('0x21')](null,arguments):_0x1867b2;}function needsEncapsulation(_0x1b008a){return!!_0x1b008a&&(_0x1b008a[_0x30de('0x63')]()[_0x30de('0x64')](char(0xd))>=0x0||_0x1b008a['toString']()[_0x30de('0x64')](char(0xa))>=0x0||_0x1b008a[_0x30de('0x63')]()[_0x30de('0x64')](char(0x2c))>=0x0||_0x1b008a['toString']()[_0x30de('0x64')](char(0x22))>=0x0);}function encapsulate(_0x36556c){var _0x4f1d0d=char(0x22),_0x1e4d57='\x5c'+char(0x22),_0x4056ce=_0x36556c[_0x30de('0x63')]()[_0x30de('0x65')](new RegExp(_0x4f1d0d,'g'),_0x1e4d57);return _0x4f1d0d+_0x4056ce+_0x4f1d0d;}exports['getSummary']=function(_0x3b2eeb,_0x56f41d,_0x400ce7){var _0x4f640f,_0x40e2cd;var _0x301cc9={'where':{'ProjectId':_0x3b2eeb['params']['id']}};if(_0x3b2eeb[_0x30de('0x34')][_0x30de('0x66')]){_0x301cc9[_0x30de('0x3e')][_0x30de('0x67')]=JSON[_0x30de('0x68')](_0x3b2eeb[_0x30de('0x34')][_0x30de('0x66')]);}return db[_0x30de('0x5c')]['findAll'](_0x301cc9)[_0x30de('0x25')](handleEntityNotFound(_0x56f41d,null))[_0x30de('0x25')](function(_0xea8adf){if(_0xea8adf){_0x4f640f=_0xea8adf;return db[_0x30de('0x69')][_0x30de('0x47')]({'where':{'SessionId':{'$in':_[_0x30de('0x2f')](_0x4f640f,'id')},'ProjectId':_0x3b2eeb[_0x30de('0x56')]['id']},'order':_0x30de('0x6a')});}})['then'](handleEntityNotFound(_0x56f41d,null))['then'](function(_0x426311){if(_0x426311){_0x40e2cd=_0x426311;var _0x438e6f={};for(var _0x3f7c11=0x0,_0xb94bd5=_0x40e2cd[_0x30de('0x3a')];_0x3f7c11<_0xb94bd5;_0x3f7c11++){if(!_0x438e6f[_0x30de('0x3b')](_0x40e2cd[_0x3f7c11][_0x30de('0x6b')])){_0x438e6f[_0x40e2cd[_0x3f7c11][_0x30de('0x6b')]]=needsEncapsulation(_0x40e2cd[_0x3f7c11][_0x30de('0x6c')])?encapsulate(_0x40e2cd[_0x3f7c11][_0x30de('0x6c')]):_0x40e2cd[_0x3f7c11][_0x30de('0x6c')];}}var _0x4c5904=[],_0x48d212={};for(var _0x18c2a5=0x0,_0x2c33d2=_0x4f640f['length'];_0x18c2a5<_0x2c33d2;_0x18c2a5++){_0x48d212={'ProjectId':_0x3b2eeb['params']['id'],'SessionId':_0x4f640f[_0x18c2a5]['id'],'StartTime':moment(_0x4f640f[_0x18c2a5][_0x30de('0x67')])[_0x30de('0x6d')](_0x30de('0x6e'))};for(var _0x22148d=0x0,_0x23dbcb=_0x40e2cd[_0x30de('0x3a')];_0x22148d<_0x23dbcb;_0x22148d++){if(_0x40e2cd[_0x22148d][_0x30de('0x6f')]==_0x4f640f[_0x18c2a5]['id']&&_0x438e6f['hasOwnProperty'](_0x40e2cd[_0x22148d][_0x30de('0x6b')])){_0x48d212[_0x438e6f[_0x40e2cd[_0x22148d][_0x30de('0x6b')]]]=_0x40e2cd[_0x22148d][_0x30de('0x70')];}}for(var _0x241ee5 in _0x438e6f){if(!_0x48d212['hasOwnProperty'](_0x438e6f[_0x241ee5])){_0x48d212[_0x438e6f[_0x241ee5]]=null;}}_0x4c5904[_0x30de('0x71')](_0x48d212);}return _0x4c5904;}})['then'](function(_0x328507){if(!_['isEmpty'](_0x328507)){var _0x1d93ab=toCsv(_0x328507);var _0x244bc9=Date[_0x30de('0x72')]();fs[_0x30de('0x73')](util['format'](_0x30de('0x74'),_0x3b2eeb[_0x30de('0x56')]['id'],_0x244bc9),_0x1d93ab);_0x56f41d['setHeader'](_0x30de('0x75'),_0x30de('0x76')+util[_0x30de('0x6d')](_0x30de('0x77'),_0x3b2eeb[_0x30de('0x56')]['id'],_0x244bc9));_0x56f41d[_0x30de('0x78')](_0x30de('0x79'),'text/csv');return _0x56f41d[_0x30de('0x7a')](util[_0x30de('0x6d')]('/tmp/Jscripty_Project_%d_Summary_%s.csv',_0x3b2eeb[_0x30de('0x56')]['id'],_0x244bc9));}else{return _0x56f41d[_0x30de('0x18')](0xcc);}})[_0x30de('0x4c')](handleError(_0x56f41d,null));};