72cd341a8bad109ae25da45948701c0f51272681
[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 _0x6ea9=['YYYY-MM-DD\x20HH:mm:ss','SessionId','answer','push','isEmpty','now','writeFileSync','format','setHeader','Content-disposition','attachment;\x20filename=','Jscripty_Project_%d_Summary_%s.csv','download','/tmp/Jscripty_Project_%d_Summary_%s.csv','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','sox','ejs','lodash','crypto','jsforce','desk.js','to-csv','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','offset','undefined','count','limit','Content-Range','apply','reject','save','then','destroy','Projects','end','error','stack','name','send','index','map','rawAttributes','type','key','query','keys','filters','intersection','model','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','merge','VIRTUAL','filter','options','JscriptyProject','includeAll','include','findAll','rows','catch','params','create','user','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','find','autoAssociation','UserProfileResource','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','clone','createdAt','updatedAt','body','omit','userProfileId','update','getSessions','findOne','JscriptySessionReport','JscriptyAnswerReport','ProjectId','number','fromCharCode','toString','indexOf','replace','startTime','starttime','parse','-createdAt','questionId','question'];(function(_0x5ddb1c,_0x5ea4df){var _0x354adc=function(_0x2dfb1f){while(--_0x2dfb1f){_0x5ddb1c['push'](_0x5ddb1c['shift']());}};_0x354adc(++_0x5ea4df);}(_0x6ea9,0x89));var _0x96ea=function(_0x582e3e,_0xf36da5){_0x582e3e=_0x582e3e-0x0;var _0x156d9c=_0x6ea9[_0x582e3e];return _0x156d9c;};'use strict';var emlformat=require(_0x96ea('0x0'));var rimraf=require(_0x96ea('0x1'));var zipdir=require(_0x96ea('0x2'));var jsonpatch=require(_0x96ea('0x3'));var rp=require(_0x96ea('0x4'));var moment=require('moment');var BPromise=require(_0x96ea('0x5'));var Mustache=require(_0x96ea('0x6'));var util=require(_0x96ea('0x7'));var path=require('path');var sox=require(_0x96ea('0x8'));var csv=require('to-csv');var ejs=require(_0x96ea('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x96ea('0xa'));var squel=require('squel');var crypto=require(_0x96ea('0xb'));var jsforce=require(_0x96ea('0xc'));var deskjs=require(_0x96ea('0xd'));var toCsv=require(_0x96ea('0xe'));var querystring=require(_0x96ea('0xf'));var Papa=require(_0x96ea('0x10'));var Redis=require('ioredis');var authService=require(_0x96ea('0x11'));var qs=require(_0x96ea('0x12'));var as=require(_0x96ea('0x13'));var hardwareService=require(_0x96ea('0x14'));var logger=require(_0x96ea('0x15'))(_0x96ea('0x16'));var utils=require(_0x96ea('0x17'));var config=require(_0x96ea('0x18'));var licenseUtil=require(_0x96ea('0x19'));var db=require(_0x96ea('0x1a'))['db'];function respondWithStatusCode(_0x593f80,_0x2384b1){_0x2384b1=_0x2384b1||0xcc;return function(_0x5f4c12){if(_0x5f4c12){return _0x593f80[_0x96ea('0x1b')](_0x2384b1);}return _0x593f80[_0x96ea('0x1c')](_0x2384b1)['end']();};}function respondWithResult(_0x1df101,_0x1ce6e9){_0x1ce6e9=_0x1ce6e9||0xc8;return function(_0xc1059e){if(_0xc1059e){return _0x1df101[_0x96ea('0x1c')](_0x1ce6e9)[_0x96ea('0x1d')](_0xc1059e);}};}function respondWithFilteredResult(_0x19308f,_0x1dd4f1){return function(_0x237f2c){if(_0x237f2c){var _0x4a847d=typeof _0x1dd4f1[_0x96ea('0x1e')]==='undefined'&&typeof _0x1dd4f1['limit']===_0x96ea('0x1f');var _0x3cb1e0=_0x237f2c['count'];var _0x47444c=_0x4a847d?0x0:_0x1dd4f1[_0x96ea('0x1e')];var _0x24c940=_0x4a847d?_0x237f2c[_0x96ea('0x20')]:_0x1dd4f1[_0x96ea('0x1e')]+_0x1dd4f1[_0x96ea('0x21')];var _0x43dd6f;if(_0x24c940>=_0x3cb1e0){_0x24c940=_0x3cb1e0;_0x43dd6f=0xc8;}else{_0x43dd6f=0xce;}_0x19308f['status'](_0x43dd6f);return _0x19308f['set'](_0x96ea('0x22'),_0x47444c+'-'+_0x24c940+'/'+_0x3cb1e0)[_0x96ea('0x1d')](_0x237f2c);}return null;};}function patchUpdates(_0xfaec11){return function(_0x1e1bcd){try{jsonpatch[_0x96ea('0x23')](_0x1e1bcd,_0xfaec11,!![]);}catch(_0xa3941){return BPromise[_0x96ea('0x24')](_0xa3941);}return _0x1e1bcd[_0x96ea('0x25')]();};}function saveUpdates(_0x2235e7,_0x3a618c){return function(_0x3a99f6){if(_0x3a99f6){return _0x3a99f6['update'](_0x2235e7)[_0x96ea('0x26')](function(_0x22cdc4){return _0x22cdc4;});}return null;};}function removeEntity(_0x3dc8bd,_0x3634e7){return function(_0x396117){if(_0x396117){return _0x396117[_0x96ea('0x27')]()['then'](function(){var _0x33e05b=_0x396117['get']({'plain':!![]});var _0x36143a=_0x96ea('0x28');return db['UserProfileResource']['destroy']({'where':{'type':_0x36143a,'resourceId':_0x33e05b['id']}})[_0x96ea('0x26')](function(){return _0x396117;});})[_0x96ea('0x26')](function(){_0x3dc8bd[_0x96ea('0x1c')](0xcc)[_0x96ea('0x29')]();});}};}function handleEntityNotFound(_0x197af7,_0x49a7bd){return function(_0xf31340){if(!_0xf31340){_0x197af7[_0x96ea('0x1b')](0x194);}return _0xf31340;};}function handleError(_0x108043,_0x247c8c){_0x247c8c=_0x247c8c||0x1f4;return function(_0x2aa9e9){logger[_0x96ea('0x2a')](_0x2aa9e9[_0x96ea('0x2b')]);if(_0x2aa9e9[_0x96ea('0x2c')]){delete _0x2aa9e9[_0x96ea('0x2c')];}_0x108043[_0x96ea('0x1c')](_0x247c8c)[_0x96ea('0x2d')](_0x2aa9e9);};}exports[_0x96ea('0x2e')]=function(_0x91a2a2,_0x30ec3f){var _0x1c6f08={},_0x5a73a2={},_0x114450={'count':0x0,'rows':[]};var _0x13be02=_[_0x96ea('0x2f')](db['JscriptyProject'][_0x96ea('0x30')],function(_0x4e60e8){return{'name':_0x4e60e8['fieldName'],'type':_0x4e60e8[_0x96ea('0x31')][_0x96ea('0x32')]};});_0x5a73a2['model']=_[_0x96ea('0x2f')](_0x13be02,_0x96ea('0x2c'));_0x5a73a2[_0x96ea('0x33')]=_[_0x96ea('0x34')](_0x91a2a2[_0x96ea('0x33')]);_0x5a73a2[_0x96ea('0x35')]=_[_0x96ea('0x36')](_0x5a73a2[_0x96ea('0x37')],_0x5a73a2['query']);_0x1c6f08[_0x96ea('0x38')]=_[_0x96ea('0x36')](_0x5a73a2['model'],qs[_0x96ea('0x39')](_0x91a2a2[_0x96ea('0x33')][_0x96ea('0x39')]));_0x1c6f08[_0x96ea('0x38')]=_0x1c6f08[_0x96ea('0x38')][_0x96ea('0x3a')]?_0x1c6f08[_0x96ea('0x38')]:_0x5a73a2['model'];if(!_0x91a2a2[_0x96ea('0x33')][_0x96ea('0x3b')](_0x96ea('0x3c'))){_0x1c6f08[_0x96ea('0x21')]=qs[_0x96ea('0x21')](_0x91a2a2[_0x96ea('0x33')][_0x96ea('0x21')]);_0x1c6f08[_0x96ea('0x1e')]=qs[_0x96ea('0x1e')](_0x91a2a2[_0x96ea('0x33')][_0x96ea('0x1e')]);}_0x1c6f08[_0x96ea('0x3d')]=qs[_0x96ea('0x3e')](_0x91a2a2[_0x96ea('0x33')][_0x96ea('0x3e')]);_0x1c6f08[_0x96ea('0x3f')]=qs[_0x96ea('0x35')](_[_0x96ea('0x40')](_0x91a2a2[_0x96ea('0x33')],_0x5a73a2['filters']),_0x13be02);if(_0x91a2a2[_0x96ea('0x33')]['filter']){_0x1c6f08[_0x96ea('0x3f')]=_[_0x96ea('0x41')](_0x1c6f08[_0x96ea('0x3f')],{'$or':_[_0x96ea('0x2f')](_0x13be02,function(_0x2b9966){if(_0x2b9966['type']!==_0x96ea('0x42')){var _0x35266f={};_0x35266f[_0x2b9966[_0x96ea('0x2c')]]={'$like':'%'+_0x91a2a2['query'][_0x96ea('0x43')]+'%'};return _0x35266f;}})});}_0x1c6f08=_['merge']({},_0x1c6f08,_0x91a2a2[_0x96ea('0x44')]);var _0x47ed8e={'where':_0x1c6f08['where']};return db[_0x96ea('0x45')][_0x96ea('0x20')](_0x47ed8e)[_0x96ea('0x26')](function(_0x249456){_0x114450['count']=_0x249456;if(_0x91a2a2[_0x96ea('0x33')][_0x96ea('0x46')]){_0x1c6f08[_0x96ea('0x47')]=[{'all':!![]}];}return db[_0x96ea('0x45')][_0x96ea('0x48')](_0x1c6f08);})['then'](function(_0x5a346a){_0x114450[_0x96ea('0x49')]=_0x5a346a;return _0x114450;})[_0x96ea('0x26')](respondWithFilteredResult(_0x30ec3f,_0x1c6f08))[_0x96ea('0x4a')](handleError(_0x30ec3f,null));};exports['show']=function(_0x3d46ec,_0x2430b8){var _0x496dd9={'raw':![],'where':{'id':_0x3d46ec[_0x96ea('0x4b')]['id']}},_0x48d9be={};_0x48d9be[_0x96ea('0x37')]=_['keys'](db['JscriptyProject'][_0x96ea('0x30')]);_0x48d9be[_0x96ea('0x33')]=_[_0x96ea('0x34')](_0x3d46ec['query']);_0x48d9be[_0x96ea('0x35')]=_[_0x96ea('0x36')](_0x48d9be[_0x96ea('0x37')],_0x48d9be[_0x96ea('0x33')]);_0x496dd9['attributes']=_[_0x96ea('0x36')](_0x48d9be[_0x96ea('0x37')],qs[_0x96ea('0x39')](_0x3d46ec['query'][_0x96ea('0x39')]));_0x496dd9[_0x96ea('0x38')]=_0x496dd9[_0x96ea('0x38')]['length']?_0x496dd9[_0x96ea('0x38')]:_0x48d9be[_0x96ea('0x37')];if(_0x3d46ec[_0x96ea('0x33')][_0x96ea('0x46')]){_0x496dd9[_0x96ea('0x47')]=[{'all':!![]}];}_0x496dd9=_[_0x96ea('0x41')]({},_0x496dd9,_0x3d46ec[_0x96ea('0x44')]);return db['JscriptyProject']['find'](_0x496dd9)[_0x96ea('0x26')](handleEntityNotFound(_0x2430b8,null))[_0x96ea('0x26')](respondWithResult(_0x2430b8,null))[_0x96ea('0x4a')](handleError(_0x2430b8,null));};exports[_0x96ea('0x4c')]=function(_0x31a8af,_0xf921c5){return db[_0x96ea('0x45')]['create'](_0x31a8af['body'],{})[_0x96ea('0x26')](function(_0x131395){var _0x351440=_0x31a8af[_0x96ea('0x4d')][_0x96ea('0x4e')]({'plain':!![]});if(!_0x351440)throw new Error(_0x96ea('0x4f'));if(_0x351440[_0x96ea('0x50')]==='user'){var _0x440b35=_0x131395[_0x96ea('0x4e')]({'plain':!![]});var _0x5dc96a=_0x96ea('0x28');return db[_0x96ea('0x51')][_0x96ea('0x52')]({'where':{'name':_0x5dc96a,'userProfileId':_0x351440['userProfileId']},'raw':!![]})['then'](function(_0x4b15af){if(_0x4b15af&&_0x4b15af[_0x96ea('0x53')]===0x0){return db[_0x96ea('0x54')][_0x96ea('0x4c')]({'name':_0x440b35[_0x96ea('0x2c')],'resourceId':_0x440b35['id'],'type':_0x4b15af[_0x96ea('0x2c')],'sectionId':_0x4b15af['id']},{})[_0x96ea('0x26')](function(){return _0x131395;});}else{return _0x131395;}})['catch'](function(_0x3ef29b){logger[_0x96ea('0x2a')](_0x96ea('0x55'),_0x3ef29b);throw _0x3ef29b;});}return _0x131395;})['then'](respondWithResult(_0xf921c5,0xc9))[_0x96ea('0x4a')](handleError(_0xf921c5,null));};exports[_0x96ea('0x56')]=function(_0x9e64c4,_0x28db59){var _0x2faa1f={'where':{'id':_0x9e64c4['params']['id']}},_0x26e92f={};_0x26e92f['model']=_['keys'](db[_0x96ea('0x45')]['rawAttributes']);_0x2faa1f[_0x96ea('0x38')]=_[_0x96ea('0x36')](_0x26e92f[_0x96ea('0x37')],qs[_0x96ea('0x39')](_0x9e64c4[_0x96ea('0x33')]['fields']));_0x2faa1f[_0x96ea('0x38')]=_0x2faa1f['attributes'][_0x96ea('0x3a')]?_0x2faa1f['attributes']:_0x26e92f[_0x96ea('0x37')];if(_0x9e64c4[_0x96ea('0x33')][_0x96ea('0x46')]){_0x2faa1f[_0x96ea('0x47')]=[{'all':!![]}];}_0x2faa1f=_[_0x96ea('0x41')]({},_0x2faa1f,_0x9e64c4[_0x96ea('0x44')]);return db['JscriptyProject'][_0x96ea('0x52')](_0x2faa1f)[_0x96ea('0x26')](handleEntityNotFound(_0x28db59,null))[_0x96ea('0x26')](function(_0x31a532){if(_0x31a532){var _0x3ed8eb=_0x31a532[_0x96ea('0x4e')]({'plain':!![]});_0x3ed8eb=qs['omit'](_0x3ed8eb,['id',_0x96ea('0x57'),_0x96ea('0x58')]);_0x9e64c4[_0x96ea('0x59')]=_[_0x96ea('0x5a')](_0x9e64c4['body'],['id',_0x96ea('0x57'),_0x96ea('0x58')]);return db[_0x96ea('0x45')][_0x96ea('0x4c')](_[_0x96ea('0x41')](_0x3ed8eb,_0x9e64c4[_0x96ea('0x59')]),{'include':_0x9e64c4[_0x96ea('0x33')][_0x96ea('0x46')]?[{'all':!![]}]:undefined})['then'](function(_0x5744b7){var _0x3d9461=_0x9e64c4[_0x96ea('0x4d')]['get']({'plain':!![]});if(!_0x3d9461)throw new Error(_0x96ea('0x4f'));if(_0x3d9461[_0x96ea('0x50')]===_0x96ea('0x4d')){var _0x34cc52=_0x5744b7['get']({'plain':!![]});var _0x73a0f6=_0x96ea('0x28');return db['UserProfileSection'][_0x96ea('0x52')]({'where':{'name':_0x73a0f6,'userProfileId':_0x3d9461[_0x96ea('0x5b')]},'raw':!![]})['then'](function(_0x246392){if(_0x246392&&_0x246392['autoAssociation']===0x0){return db[_0x96ea('0x54')][_0x96ea('0x4c')]({'name':_0x34cc52[_0x96ea('0x2c')],'resourceId':_0x34cc52['id'],'type':_0x246392[_0x96ea('0x2c')],'sectionId':_0x246392['id']},{})[_0x96ea('0x26')](function(){return _0x5744b7;});}else{return _0x5744b7;}})[_0x96ea('0x4a')](function(_0x1d199f){logger[_0x96ea('0x2a')](_0x96ea('0x55'),_0x1d199f);throw _0x1d199f;});}return _0x5744b7;});}})[_0x96ea('0x26')](respondWithResult(_0x28db59,0xc9))['catch'](handleError(_0x28db59,null));};exports[_0x96ea('0x5c')]=function(_0x2536ff,_0x38e94f){if(_0x2536ff[_0x96ea('0x59')]['id']){delete _0x2536ff['body']['id'];}return db['JscriptyProject']['find']({'where':{'id':_0x2536ff[_0x96ea('0x4b')]['id']}})[_0x96ea('0x26')](handleEntityNotFound(_0x38e94f,null))['then'](saveUpdates(_0x2536ff[_0x96ea('0x59')],null))['then'](respondWithResult(_0x38e94f,null))['catch'](handleError(_0x38e94f,null));};exports[_0x96ea('0x27')]=function(_0x42fd19,_0x37756d){return db[_0x96ea('0x45')][_0x96ea('0x52')]({'where':{'id':_0x42fd19[_0x96ea('0x4b')]['id']}})[_0x96ea('0x26')](handleEntityNotFound(_0x37756d,null))['then'](removeEntity(_0x37756d,null))[_0x96ea('0x4a')](handleError(_0x37756d,null));};exports[_0x96ea('0x5d')]=function(_0x22a4d2,_0x4960ea,_0x4f6831){var _0x3701b5={'raw':!![],'where':{}};var _0x1737d3={};var _0x25f8ee={'count':0x0,'rows':[]};return db[_0x96ea('0x45')][_0x96ea('0x5e')]({'where':{'id':_0x22a4d2[_0x96ea('0x4b')]['id']}})[_0x96ea('0x26')](handleEntityNotFound(_0x4960ea,null))[_0x96ea('0x26')](function(_0xd56ef0){if(_0xd56ef0){_0x1737d3['model']=_[_0x96ea('0x34')](db[_0x96ea('0x5f')][_0x96ea('0x30')]);_0x1737d3['query']=_[_0x96ea('0x34')](_0x22a4d2['query']);_0x1737d3[_0x96ea('0x35')]=_[_0x96ea('0x36')](_0x1737d3[_0x96ea('0x37')],_0x1737d3[_0x96ea('0x33')]);_0x3701b5[_0x96ea('0x38')]=_[_0x96ea('0x36')](_0x1737d3[_0x96ea('0x37')],qs['fields'](_0x22a4d2[_0x96ea('0x33')]['fields']));_0x3701b5[_0x96ea('0x38')]=_0x3701b5['attributes'][_0x96ea('0x3a')]?_0x3701b5['attributes']:_0x1737d3['model'];if(!_0x22a4d2[_0x96ea('0x33')]['hasOwnProperty'](_0x96ea('0x3c'))){_0x3701b5[_0x96ea('0x21')]=qs[_0x96ea('0x21')](_0x22a4d2[_0x96ea('0x33')][_0x96ea('0x21')]);_0x3701b5['offset']=qs['offset'](_0x22a4d2['query']['offset']);}_0x3701b5['order']=qs[_0x96ea('0x3e')](_0x22a4d2['query'][_0x96ea('0x3e')]);_0x3701b5[_0x96ea('0x3f')]=qs[_0x96ea('0x35')](_['pick'](_0x22a4d2[_0x96ea('0x33')],_0x1737d3[_0x96ea('0x35')]));_0x3701b5[_0x96ea('0x3f')]['ProjectId']=_0xd56ef0['id'];if(_0x22a4d2['query'][_0x96ea('0x43')]){_0x3701b5[_0x96ea('0x3f')]=_[_0x96ea('0x41')](_0x3701b5[_0x96ea('0x3f')],{'$or':_[_0x96ea('0x2f')](_0x3701b5['attributes'],function(_0x35401a){var _0x566692={};_0x566692[_0x35401a]={'$like':'%'+_0x22a4d2['query'][_0x96ea('0x43')]+'%'};return _0x566692;})});}_0x3701b5=_['merge']({},_0x3701b5,_0x22a4d2['options']);return db[_0x96ea('0x5f')]['count']({'where':_0x3701b5[_0x96ea('0x3f')]})[_0x96ea('0x26')](function(_0x3f2eab){_0x25f8ee[_0x96ea('0x20')]=_0x3f2eab;if(_0x22a4d2[_0x96ea('0x33')][_0x96ea('0x46')]){_0x3701b5[_0x96ea('0x47')]=[{'all':!![]}];}return db[_0x96ea('0x5f')][_0x96ea('0x48')](_0x3701b5);})['then'](function(_0x33534b){_0x25f8ee['rows']=_0x33534b;return _0x25f8ee;});}})[_0x96ea('0x26')](respondWithFilteredResult(_0x4960ea,_0x3701b5))[_0x96ea('0x4a')](handleError(_0x4960ea,null));};exports['getAnswers']=function(_0x25ed8a,_0x53ab95,_0x2f5434){var _0x2612c3={'raw':!![],'where':{}};var _0x123936={};var _0x33f9ef={'count':0x0,'rows':[]};return db[_0x96ea('0x45')]['findOne']({'where':{'id':_0x25ed8a[_0x96ea('0x4b')]['id']}})[_0x96ea('0x26')](handleEntityNotFound(_0x53ab95,null))[_0x96ea('0x26')](function(_0x2d8098){if(_0x2d8098){_0x123936[_0x96ea('0x37')]=_[_0x96ea('0x34')](db[_0x96ea('0x60')][_0x96ea('0x30')]);_0x123936[_0x96ea('0x33')]=_['keys'](_0x25ed8a[_0x96ea('0x33')]);_0x123936[_0x96ea('0x35')]=_[_0x96ea('0x36')](_0x123936['model'],_0x123936[_0x96ea('0x33')]);_0x2612c3[_0x96ea('0x38')]=_[_0x96ea('0x36')](_0x123936[_0x96ea('0x37')],qs[_0x96ea('0x39')](_0x25ed8a['query'][_0x96ea('0x39')]));_0x2612c3[_0x96ea('0x38')]=_0x2612c3['attributes'][_0x96ea('0x3a')]?_0x2612c3['attributes']:_0x123936['model'];if(!_0x25ed8a['query']['hasOwnProperty'](_0x96ea('0x3c'))){_0x2612c3[_0x96ea('0x21')]=qs[_0x96ea('0x21')](_0x25ed8a['query'][_0x96ea('0x21')]);_0x2612c3['offset']=qs['offset'](_0x25ed8a[_0x96ea('0x33')]['offset']);}_0x2612c3[_0x96ea('0x3d')]=qs[_0x96ea('0x3e')](_0x25ed8a[_0x96ea('0x33')][_0x96ea('0x3e')]);_0x2612c3[_0x96ea('0x3f')]=qs[_0x96ea('0x35')](_[_0x96ea('0x40')](_0x25ed8a[_0x96ea('0x33')],_0x123936[_0x96ea('0x35')]));_0x2612c3['where'][_0x96ea('0x61')]=_0x2d8098['id'];if(_0x25ed8a[_0x96ea('0x33')]['filter']){_0x2612c3[_0x96ea('0x3f')]=_['merge'](_0x2612c3[_0x96ea('0x3f')],{'$or':_[_0x96ea('0x2f')](_0x2612c3[_0x96ea('0x38')],function(_0x3419bf){var _0xdba9dd={};_0xdba9dd[_0x3419bf]={'$like':'%'+_0x25ed8a[_0x96ea('0x33')]['filter']+'%'};return _0xdba9dd;})});}_0x2612c3=_[_0x96ea('0x41')]({},_0x2612c3,_0x25ed8a[_0x96ea('0x44')]);return db[_0x96ea('0x60')][_0x96ea('0x20')]({'where':_0x2612c3[_0x96ea('0x3f')]})[_0x96ea('0x26')](function(_0x3b06e7){_0x33f9ef['count']=_0x3b06e7;if(_0x25ed8a[_0x96ea('0x33')]['includeAll']){_0x2612c3['include']=[{'all':!![]}];}return db[_0x96ea('0x60')][_0x96ea('0x48')](_0x2612c3);})[_0x96ea('0x26')](function(_0x53833a){_0x33f9ef[_0x96ea('0x49')]=_0x53833a;return _0x33f9ef;});}})['then'](respondWithFilteredResult(_0x53ab95,_0x2612c3))[_0x96ea('0x4a')](handleError(_0x53ab95,null));};function char(_0x171e94){return _0x96ea('0x62')===typeof _0x171e94?String[_0x96ea('0x63')][_0x96ea('0x23')](null,arguments):_0x171e94;}function needsEncapsulation(_0x15da1b){return!!_0x15da1b&&(_0x15da1b[_0x96ea('0x64')]()[_0x96ea('0x65')](char(0xd))>=0x0||_0x15da1b['toString']()[_0x96ea('0x65')](char(0xa))>=0x0||_0x15da1b[_0x96ea('0x64')]()[_0x96ea('0x65')](char(0x2c))>=0x0||_0x15da1b['toString']()['indexOf'](char(0x22))>=0x0);}function encapsulate(_0x1baced){var _0x426ec2=char(0x22),_0x50f372='\x5c'+char(0x22),_0x917222=_0x1baced[_0x96ea('0x64')]()[_0x96ea('0x66')](new RegExp(_0x426ec2,'g'),_0x50f372);return _0x426ec2+_0x917222+_0x426ec2;}exports['getSummary']=function(_0x1906c0,_0x2691c4,_0x4691ec){var _0x125773,_0x362eeb;var _0x1601cc={'where':{'ProjectId':_0x1906c0[_0x96ea('0x4b')]['id']}};if(_0x1906c0['query'][_0x96ea('0x67')]){_0x1601cc[_0x96ea('0x3f')][_0x96ea('0x68')]=JSON[_0x96ea('0x69')](_0x1906c0[_0x96ea('0x33')][_0x96ea('0x67')]);}return db[_0x96ea('0x5f')][_0x96ea('0x48')](_0x1601cc)[_0x96ea('0x26')](handleEntityNotFound(_0x2691c4,null))[_0x96ea('0x26')](function(_0x1977d5){if(_0x1977d5){_0x125773=_0x1977d5;return db['JscriptyQuestionReport'][_0x96ea('0x48')]({'where':{'SessionId':{'$in':_['map'](_0x125773,'id')},'ProjectId':_0x1906c0['params']['id']},'order':_0x96ea('0x6a')});}})['then'](handleEntityNotFound(_0x2691c4,null))[_0x96ea('0x26')](function(_0x21a30e){if(_0x21a30e){_0x362eeb=_0x21a30e;var _0x468643={};for(var _0x3678d0=0x0,_0x551348=_0x362eeb['length'];_0x3678d0<_0x551348;_0x3678d0++){if(!_0x468643[_0x96ea('0x3b')](_0x362eeb[_0x3678d0][_0x96ea('0x6b')])){_0x468643[_0x362eeb[_0x3678d0][_0x96ea('0x6b')]]=needsEncapsulation(_0x362eeb[_0x3678d0][_0x96ea('0x6c')])?encapsulate(_0x362eeb[_0x3678d0][_0x96ea('0x6c')]):_0x362eeb[_0x3678d0][_0x96ea('0x6c')];}}var _0x467740=[],_0x2d0f41={};for(var _0x5cb296=0x0,_0x105ddb=_0x125773[_0x96ea('0x3a')];_0x5cb296<_0x105ddb;_0x5cb296++){_0x2d0f41={'ProjectId':_0x1906c0[_0x96ea('0x4b')]['id'],'SessionId':_0x125773[_0x5cb296]['id'],'StartTime':moment(_0x125773[_0x5cb296][_0x96ea('0x68')])['format'](_0x96ea('0x6d'))};for(var _0x295b10=0x0,_0x14e08c=_0x362eeb['length'];_0x295b10<_0x14e08c;_0x295b10++){if(_0x362eeb[_0x295b10][_0x96ea('0x6e')]==_0x125773[_0x5cb296]['id']&&_0x468643[_0x96ea('0x3b')](_0x362eeb[_0x295b10][_0x96ea('0x6b')])){_0x2d0f41[_0x468643[_0x362eeb[_0x295b10][_0x96ea('0x6b')]]]=_0x362eeb[_0x295b10][_0x96ea('0x6f')];}}for(var _0x5ecf7f in _0x468643){if(!_0x2d0f41[_0x96ea('0x3b')](_0x468643[_0x5ecf7f])){_0x2d0f41[_0x468643[_0x5ecf7f]]=null;}}_0x467740[_0x96ea('0x70')](_0x2d0f41);}return _0x467740;}})['then'](function(_0x42a085){if(!_[_0x96ea('0x71')](_0x42a085)){var _0x5ef086=toCsv(_0x42a085);var _0x370cbe=Date[_0x96ea('0x72')]();fs[_0x96ea('0x73')](util[_0x96ea('0x74')]('/tmp/Jscripty_Project_%d_Summary_%s.csv',_0x1906c0[_0x96ea('0x4b')]['id'],_0x370cbe),_0x5ef086);_0x2691c4[_0x96ea('0x75')](_0x96ea('0x76'),_0x96ea('0x77')+util[_0x96ea('0x74')](_0x96ea('0x78'),_0x1906c0['params']['id'],_0x370cbe));_0x2691c4[_0x96ea('0x75')]('Content-type','text/csv');return _0x2691c4[_0x96ea('0x79')](util[_0x96ea('0x74')](_0x96ea('0x7a'),_0x1906c0[_0x96ea('0x4b')]['id'],_0x370cbe));}else{return _0x2691c4['sendStatus'](0xcc);}})['catch'](handleError(_0x2691c4,null));};