Built motion from commit 3c2ce842.|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 _0x2d6d=['jsforce','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/license/util','../../mysqldb','sendStatus','end','offset','undefined','count','status','Content-Range','json','apply','reject','update','then','destroy','get','Projects','UserProfileResource','error','stack','name','send','rawAttributes','type','key','model','keys','query','intersection','attributes','fields','length','hasOwnProperty','nolimit','limit','sort','filters','pick','filter','where','merge','map','JscriptyProject','includeAll','include','rows','show','options','catch','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','find','userProfileId','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','clone','params','createdAt','updatedAt','UserProfileSection','JscriptySessionReport','order','ProjectId','findAll','getAnswers','findOne','JscriptyAnswerReport','number','fromCharCode','toString','indexOf','replace','startTime','starttime','parse','JscriptyQuestionReport','questionId','question','format','YYYY-MM-DD\x20HH:mm:ss','SessionId','answer','push','isEmpty','now','/tmp/Jscripty_Project_%d_Summary_%s.csv','setHeader','Content-disposition','attachment;\x20filename=','Jscripty_Project_%d_Summary_%s.csv','text/csv','download','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','squel'];(function(_0x50a0c2,_0x4befab){var _0x5ebadd=function(_0x3a3342){while(--_0x3a3342){_0x50a0c2['push'](_0x50a0c2['shift']());}};_0x5ebadd(++_0x4befab);}(_0x2d6d,0x66));var _0xd2d6=function(_0x109371,_0x441c8e){_0x109371=_0x109371-0x0;var _0x4fd858=_0x2d6d[_0x109371];return _0x4fd858;};'use strict';var emlformat=require(_0xd2d6('0x0'));var rimraf=require(_0xd2d6('0x1'));var zipdir=require(_0xd2d6('0x2'));var jsonpatch=require(_0xd2d6('0x3'));var rp=require(_0xd2d6('0x4'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0xd2d6('0x5'));var util=require(_0xd2d6('0x6'));var path=require(_0xd2d6('0x7'));var sox=require(_0xd2d6('0x8'));var csv=require(_0xd2d6('0x9'));var ejs=require(_0xd2d6('0xa'));var fs=require('fs');var fs_extra=require(_0xd2d6('0xb'));var _=require(_0xd2d6('0xc'));var squel=require(_0xd2d6('0xd'));var crypto=require('crypto');var jsforce=require(_0xd2d6('0xe'));var deskjs=require('desk.js');var toCsv=require(_0xd2d6('0x9'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0xd2d6('0xf'));var authService=require(_0xd2d6('0x10'));var qs=require(_0xd2d6('0x11'));var as=require(_0xd2d6('0x12'));var hardwareService=require(_0xd2d6('0x13'));var logger=require(_0xd2d6('0x14'))(_0xd2d6('0x15'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0xd2d6('0x16'));var db=require(_0xd2d6('0x17'))['db'];function respondWithStatusCode(_0x43dbae,_0x199206){_0x199206=_0x199206||0xcc;return function(_0x38a8be){if(_0x38a8be){return _0x43dbae[_0xd2d6('0x18')](_0x199206);}return _0x43dbae['status'](_0x199206)[_0xd2d6('0x19')]();};}function respondWithResult(_0x1ed2e8,_0xb0a34){_0xb0a34=_0xb0a34||0xc8;return function(_0x439e3d){if(_0x439e3d){return _0x1ed2e8['status'](_0xb0a34)['json'](_0x439e3d);}};}function respondWithFilteredResult(_0x37a6bc,_0x352619){return function(_0x2a4b1a){if(_0x2a4b1a){var _0x8ba7fb=typeof _0x352619[_0xd2d6('0x1a')]===_0xd2d6('0x1b')&&typeof _0x352619['limit']===_0xd2d6('0x1b');var _0x57a7ea=_0x2a4b1a['count'];var _0x568aff=_0x8ba7fb?0x0:_0x352619[_0xd2d6('0x1a')];var _0x322a52=_0x8ba7fb?_0x2a4b1a[_0xd2d6('0x1c')]:_0x352619[_0xd2d6('0x1a')]+_0x352619['limit'];var _0x2d3bcb;if(_0x322a52>=_0x57a7ea){_0x322a52=_0x57a7ea;_0x2d3bcb=0xc8;}else{_0x2d3bcb=0xce;}_0x37a6bc[_0xd2d6('0x1d')](_0x2d3bcb);return _0x37a6bc['set'](_0xd2d6('0x1e'),_0x568aff+'-'+_0x322a52+'/'+_0x57a7ea)[_0xd2d6('0x1f')](_0x2a4b1a);}return null;};}function patchUpdates(_0x4313ae){return function(_0x5666e9){try{jsonpatch[_0xd2d6('0x20')](_0x5666e9,_0x4313ae,!![]);}catch(_0x213e96){return BPromise[_0xd2d6('0x21')](_0x213e96);}return _0x5666e9['save']();};}function saveUpdates(_0x39d3f0,_0x2422c0){return function(_0x5d4f17){if(_0x5d4f17){return _0x5d4f17[_0xd2d6('0x22')](_0x39d3f0)[_0xd2d6('0x23')](function(_0x485ea5){return _0x485ea5;});}return null;};}function removeEntity(_0x47f7a1,_0x1f296e){return function(_0x50544a){if(_0x50544a){return _0x50544a[_0xd2d6('0x24')]()[_0xd2d6('0x23')](function(){var _0x1eb5b7=_0x50544a[_0xd2d6('0x25')]({'plain':!![]});var _0x4f52bb=_0xd2d6('0x26');return db[_0xd2d6('0x27')][_0xd2d6('0x24')]({'where':{'type':_0x4f52bb,'resourceId':_0x1eb5b7['id']}})[_0xd2d6('0x23')](function(){return _0x50544a;});})['then'](function(){_0x47f7a1[_0xd2d6('0x1d')](0xcc)[_0xd2d6('0x19')]();});}};}function handleEntityNotFound(_0x1ffd00,_0xa7925f){return function(_0x5ee73e){if(!_0x5ee73e){_0x1ffd00[_0xd2d6('0x18')](0x194);}return _0x5ee73e;};}function handleError(_0x4999a5,_0x381afa){_0x381afa=_0x381afa||0x1f4;return function(_0x4c1828){logger[_0xd2d6('0x28')](_0x4c1828[_0xd2d6('0x29')]);if(_0x4c1828[_0xd2d6('0x2a')]){delete _0x4c1828[_0xd2d6('0x2a')];}_0x4999a5[_0xd2d6('0x1d')](_0x381afa)[_0xd2d6('0x2b')](_0x4c1828);};}exports['index']=function(_0x50b68a,_0x26c198){var _0x4adb9d={},_0x469e19={},_0x2fd3cf={'count':0x0,'rows':[]};var _0x2553a7=_['map'](db['JscriptyProject'][_0xd2d6('0x2c')],function(_0x45c134){return{'name':_0x45c134['fieldName'],'type':_0x45c134[_0xd2d6('0x2d')][_0xd2d6('0x2e')]};});_0x469e19[_0xd2d6('0x2f')]=_['map'](_0x2553a7,'name');_0x469e19['query']=_[_0xd2d6('0x30')](_0x50b68a[_0xd2d6('0x31')]);_0x469e19['filters']=_[_0xd2d6('0x32')](_0x469e19[_0xd2d6('0x2f')],_0x469e19[_0xd2d6('0x31')]);_0x4adb9d[_0xd2d6('0x33')]=_[_0xd2d6('0x32')](_0x469e19[_0xd2d6('0x2f')],qs[_0xd2d6('0x34')](_0x50b68a[_0xd2d6('0x31')][_0xd2d6('0x34')]));_0x4adb9d[_0xd2d6('0x33')]=_0x4adb9d[_0xd2d6('0x33')][_0xd2d6('0x35')]?_0x4adb9d[_0xd2d6('0x33')]:_0x469e19[_0xd2d6('0x2f')];if(!_0x50b68a[_0xd2d6('0x31')][_0xd2d6('0x36')](_0xd2d6('0x37'))){_0x4adb9d[_0xd2d6('0x38')]=qs[_0xd2d6('0x38')](_0x50b68a[_0xd2d6('0x31')][_0xd2d6('0x38')]);_0x4adb9d[_0xd2d6('0x1a')]=qs[_0xd2d6('0x1a')](_0x50b68a['query'][_0xd2d6('0x1a')]);}_0x4adb9d['order']=qs[_0xd2d6('0x39')](_0x50b68a[_0xd2d6('0x31')][_0xd2d6('0x39')]);_0x4adb9d['where']=qs[_0xd2d6('0x3a')](_[_0xd2d6('0x3b')](_0x50b68a[_0xd2d6('0x31')],_0x469e19[_0xd2d6('0x3a')]),_0x2553a7);if(_0x50b68a['query'][_0xd2d6('0x3c')]){_0x4adb9d[_0xd2d6('0x3d')]=_[_0xd2d6('0x3e')](_0x4adb9d[_0xd2d6('0x3d')],{'$or':_[_0xd2d6('0x3f')](_0x2553a7,function(_0x5c9cbf){if(_0x5c9cbf[_0xd2d6('0x2d')]!=='VIRTUAL'){var _0x43fdaa={};_0x43fdaa[_0x5c9cbf['name']]={'$like':'%'+_0x50b68a['query'][_0xd2d6('0x3c')]+'%'};return _0x43fdaa;}})});}_0x4adb9d=_[_0xd2d6('0x3e')]({},_0x4adb9d,_0x50b68a['options']);var _0x12c794={'where':_0x4adb9d[_0xd2d6('0x3d')]};return db[_0xd2d6('0x40')]['count'](_0x12c794)[_0xd2d6('0x23')](function(_0x5baf88){_0x2fd3cf[_0xd2d6('0x1c')]=_0x5baf88;if(_0x50b68a[_0xd2d6('0x31')][_0xd2d6('0x41')]){_0x4adb9d[_0xd2d6('0x42')]=[{'all':!![]}];}return db['JscriptyProject']['findAll'](_0x4adb9d);})[_0xd2d6('0x23')](function(_0x18ed22){_0x2fd3cf[_0xd2d6('0x43')]=_0x18ed22;return _0x2fd3cf;})['then'](respondWithFilteredResult(_0x26c198,_0x4adb9d))['catch'](handleError(_0x26c198,null));};exports[_0xd2d6('0x44')]=function(_0x354474,_0x2ea506){var _0x4f37f0={'raw':![],'where':{'id':_0x354474['params']['id']}},_0x548015={};_0x548015[_0xd2d6('0x2f')]=_[_0xd2d6('0x30')](db['JscriptyProject']['rawAttributes']);_0x548015[_0xd2d6('0x31')]=_['keys'](_0x354474[_0xd2d6('0x31')]);_0x548015[_0xd2d6('0x3a')]=_[_0xd2d6('0x32')](_0x548015[_0xd2d6('0x2f')],_0x548015[_0xd2d6('0x31')]);_0x4f37f0[_0xd2d6('0x33')]=_['intersection'](_0x548015[_0xd2d6('0x2f')],qs[_0xd2d6('0x34')](_0x354474['query'][_0xd2d6('0x34')]));_0x4f37f0[_0xd2d6('0x33')]=_0x4f37f0[_0xd2d6('0x33')][_0xd2d6('0x35')]?_0x4f37f0[_0xd2d6('0x33')]:_0x548015[_0xd2d6('0x2f')];if(_0x354474[_0xd2d6('0x31')][_0xd2d6('0x41')]){_0x4f37f0[_0xd2d6('0x42')]=[{'all':!![]}];}_0x4f37f0=_['merge']({},_0x4f37f0,_0x354474[_0xd2d6('0x45')]);return db['JscriptyProject']['find'](_0x4f37f0)[_0xd2d6('0x23')](handleEntityNotFound(_0x2ea506,null))[_0xd2d6('0x23')](respondWithResult(_0x2ea506,null))[_0xd2d6('0x46')](handleError(_0x2ea506,null));};exports[_0xd2d6('0x47')]=function(_0x3c3db5,_0x1e30b2){return db[_0xd2d6('0x40')][_0xd2d6('0x47')](_0x3c3db5[_0xd2d6('0x48')],{})[_0xd2d6('0x23')](function(_0x1a41a9){var _0x2be7fc=_0x3c3db5[_0xd2d6('0x49')][_0xd2d6('0x25')]({'plain':!![]});if(!_0x2be7fc)throw new Error(_0xd2d6('0x4a'));if(_0x2be7fc[_0xd2d6('0x4b')]==='user'){var _0x1ae825=_0x1a41a9[_0xd2d6('0x25')]({'plain':!![]});var _0x28ca97=_0xd2d6('0x26');return db['UserProfileSection'][_0xd2d6('0x4c')]({'where':{'name':_0x28ca97,'userProfileId':_0x2be7fc[_0xd2d6('0x4d')]},'raw':!![]})[_0xd2d6('0x23')](function(_0x277fe9){if(_0x277fe9&&_0x277fe9['autoAssociation']===0x0){return db[_0xd2d6('0x27')][_0xd2d6('0x47')]({'name':_0x1ae825[_0xd2d6('0x2a')],'resourceId':_0x1ae825['id'],'type':_0x277fe9[_0xd2d6('0x2a')],'sectionId':_0x277fe9['id']},{})['then'](function(){return _0x1a41a9;});}else{return _0x1a41a9;}})[_0xd2d6('0x46')](function(_0x1de120){logger[_0xd2d6('0x28')](_0xd2d6('0x4e'),_0x1de120);throw _0x1de120;});}return _0x1a41a9;})['then'](respondWithResult(_0x1e30b2,0xc9))[_0xd2d6('0x46')](handleError(_0x1e30b2,null));};exports[_0xd2d6('0x4f')]=function(_0xf27361,_0x4ddb3a){var _0x4fbb28={'where':{'id':_0xf27361[_0xd2d6('0x50')]['id']}},_0x291731={};_0x291731['model']=_[_0xd2d6('0x30')](db[_0xd2d6('0x40')][_0xd2d6('0x2c')]);_0x4fbb28[_0xd2d6('0x33')]=_['intersection'](_0x291731[_0xd2d6('0x2f')],qs[_0xd2d6('0x34')](_0xf27361['query'][_0xd2d6('0x34')]));_0x4fbb28[_0xd2d6('0x33')]=_0x4fbb28[_0xd2d6('0x33')]['length']?_0x4fbb28[_0xd2d6('0x33')]:_0x291731[_0xd2d6('0x2f')];if(_0xf27361[_0xd2d6('0x31')]['includeAll']){_0x4fbb28['include']=[{'all':!![]}];}_0x4fbb28=_[_0xd2d6('0x3e')]({},_0x4fbb28,_0xf27361['options']);return db[_0xd2d6('0x40')][_0xd2d6('0x4c')](_0x4fbb28)[_0xd2d6('0x23')](handleEntityNotFound(_0x4ddb3a,null))[_0xd2d6('0x23')](function(_0x4652a9){if(_0x4652a9){var _0x2861e7=_0x4652a9[_0xd2d6('0x25')]({'plain':!![]});_0x2861e7=qs['omit'](_0x2861e7,['id',_0xd2d6('0x51'),'updatedAt']);_0xf27361[_0xd2d6('0x48')]=_['omit'](_0xf27361['body'],['id',_0xd2d6('0x51'),_0xd2d6('0x52')]);return db[_0xd2d6('0x40')][_0xd2d6('0x47')](_['merge'](_0x2861e7,_0xf27361[_0xd2d6('0x48')]),{'include':_0xf27361[_0xd2d6('0x31')][_0xd2d6('0x41')]?[{'all':!![]}]:undefined})[_0xd2d6('0x23')](function(_0xdda55c){var _0x37e5c0=_0xf27361['user'][_0xd2d6('0x25')]({'plain':!![]});if(!_0x37e5c0)throw new Error(_0xd2d6('0x4a'));if(_0x37e5c0[_0xd2d6('0x4b')]===_0xd2d6('0x49')){var _0x55f370=_0xdda55c['get']({'plain':!![]});var _0x43548e=_0xd2d6('0x26');return db[_0xd2d6('0x53')][_0xd2d6('0x4c')]({'where':{'name':_0x43548e,'userProfileId':_0x37e5c0[_0xd2d6('0x4d')]},'raw':!![]})[_0xd2d6('0x23')](function(_0x28ef08){if(_0x28ef08&&_0x28ef08['autoAssociation']===0x0){return db[_0xd2d6('0x27')]['create']({'name':_0x55f370['name'],'resourceId':_0x55f370['id'],'type':_0x28ef08[_0xd2d6('0x2a')],'sectionId':_0x28ef08['id']},{})[_0xd2d6('0x23')](function(){return _0xdda55c;});}else{return _0xdda55c;}})[_0xd2d6('0x46')](function(_0x31dc25){logger[_0xd2d6('0x28')](_0xd2d6('0x4e'),_0x31dc25);throw _0x31dc25;});}return _0xdda55c;});}})[_0xd2d6('0x23')](respondWithResult(_0x4ddb3a,0xc9))['catch'](handleError(_0x4ddb3a,null));};exports[_0xd2d6('0x22')]=function(_0x451d44,_0x26f9b3){if(_0x451d44[_0xd2d6('0x48')]['id']){delete _0x451d44['body']['id'];}return db[_0xd2d6('0x40')]['find']({'where':{'id':_0x451d44['params']['id']}})[_0xd2d6('0x23')](handleEntityNotFound(_0x26f9b3,null))[_0xd2d6('0x23')](saveUpdates(_0x451d44[_0xd2d6('0x48')],null))[_0xd2d6('0x23')](respondWithResult(_0x26f9b3,null))[_0xd2d6('0x46')](handleError(_0x26f9b3,null));};exports[_0xd2d6('0x24')]=function(_0x5a745e,_0x2d1334){return db[_0xd2d6('0x40')][_0xd2d6('0x4c')]({'where':{'id':_0x5a745e[_0xd2d6('0x50')]['id']}})[_0xd2d6('0x23')](handleEntityNotFound(_0x2d1334,null))[_0xd2d6('0x23')](removeEntity(_0x2d1334,null))[_0xd2d6('0x46')](handleError(_0x2d1334,null));};exports['getSessions']=function(_0x26688e,_0x8b8a8a,_0x5e74a7){var _0x4a8eb2={'raw':!![],'where':{}};var _0x405477={};var _0x463edb={'count':0x0,'rows':[]};return db[_0xd2d6('0x40')]['findOne']({'where':{'id':_0x26688e['params']['id']}})['then'](handleEntityNotFound(_0x8b8a8a,null))['then'](function(_0x3594a3){if(_0x3594a3){_0x405477[_0xd2d6('0x2f')]=_[_0xd2d6('0x30')](db[_0xd2d6('0x54')]['rawAttributes']);_0x405477['query']=_[_0xd2d6('0x30')](_0x26688e[_0xd2d6('0x31')]);_0x405477[_0xd2d6('0x3a')]=_[_0xd2d6('0x32')](_0x405477['model'],_0x405477['query']);_0x4a8eb2[_0xd2d6('0x33')]=_['intersection'](_0x405477[_0xd2d6('0x2f')],qs['fields'](_0x26688e['query'][_0xd2d6('0x34')]));_0x4a8eb2[_0xd2d6('0x33')]=_0x4a8eb2[_0xd2d6('0x33')][_0xd2d6('0x35')]?_0x4a8eb2[_0xd2d6('0x33')]:_0x405477[_0xd2d6('0x2f')];if(!_0x26688e['query'][_0xd2d6('0x36')](_0xd2d6('0x37'))){_0x4a8eb2[_0xd2d6('0x38')]=qs[_0xd2d6('0x38')](_0x26688e['query'][_0xd2d6('0x38')]);_0x4a8eb2['offset']=qs[_0xd2d6('0x1a')](_0x26688e[_0xd2d6('0x31')][_0xd2d6('0x1a')]);}_0x4a8eb2[_0xd2d6('0x55')]=qs[_0xd2d6('0x39')](_0x26688e[_0xd2d6('0x31')][_0xd2d6('0x39')]);_0x4a8eb2['where']=qs['filters'](_[_0xd2d6('0x3b')](_0x26688e[_0xd2d6('0x31')],_0x405477[_0xd2d6('0x3a')]));_0x4a8eb2['where'][_0xd2d6('0x56')]=_0x3594a3['id'];if(_0x26688e[_0xd2d6('0x31')][_0xd2d6('0x3c')]){_0x4a8eb2[_0xd2d6('0x3d')]=_[_0xd2d6('0x3e')](_0x4a8eb2[_0xd2d6('0x3d')],{'$or':_[_0xd2d6('0x3f')](_0x4a8eb2['attributes'],function(_0x639743){var _0x58465d={};_0x58465d[_0x639743]={'$like':'%'+_0x26688e[_0xd2d6('0x31')][_0xd2d6('0x3c')]+'%'};return _0x58465d;})});}_0x4a8eb2=_['merge']({},_0x4a8eb2,_0x26688e[_0xd2d6('0x45')]);return db[_0xd2d6('0x54')][_0xd2d6('0x1c')]({'where':_0x4a8eb2[_0xd2d6('0x3d')]})[_0xd2d6('0x23')](function(_0x16c54d){_0x463edb['count']=_0x16c54d;if(_0x26688e[_0xd2d6('0x31')][_0xd2d6('0x41')]){_0x4a8eb2[_0xd2d6('0x42')]=[{'all':!![]}];}return db['JscriptySessionReport'][_0xd2d6('0x57')](_0x4a8eb2);})[_0xd2d6('0x23')](function(_0x1c229f){_0x463edb[_0xd2d6('0x43')]=_0x1c229f;return _0x463edb;});}})[_0xd2d6('0x23')](respondWithFilteredResult(_0x8b8a8a,_0x4a8eb2))['catch'](handleError(_0x8b8a8a,null));};exports[_0xd2d6('0x58')]=function(_0x1ccc10,_0x7975c8,_0x50a4ab){var _0x1a42b7={'raw':!![],'where':{}};var _0x469947={};var _0x55ea79={'count':0x0,'rows':[]};return db[_0xd2d6('0x40')][_0xd2d6('0x59')]({'where':{'id':_0x1ccc10[_0xd2d6('0x50')]['id']}})[_0xd2d6('0x23')](handleEntityNotFound(_0x7975c8,null))[_0xd2d6('0x23')](function(_0x4ecd77){if(_0x4ecd77){_0x469947[_0xd2d6('0x2f')]=_[_0xd2d6('0x30')](db[_0xd2d6('0x5a')]['rawAttributes']);_0x469947[_0xd2d6('0x31')]=_['keys'](_0x1ccc10[_0xd2d6('0x31')]);_0x469947['filters']=_['intersection'](_0x469947[_0xd2d6('0x2f')],_0x469947[_0xd2d6('0x31')]);_0x1a42b7[_0xd2d6('0x33')]=_[_0xd2d6('0x32')](_0x469947[_0xd2d6('0x2f')],qs[_0xd2d6('0x34')](_0x1ccc10['query']['fields']));_0x1a42b7[_0xd2d6('0x33')]=_0x1a42b7[_0xd2d6('0x33')][_0xd2d6('0x35')]?_0x1a42b7['attributes']:_0x469947[_0xd2d6('0x2f')];if(!_0x1ccc10['query'][_0xd2d6('0x36')](_0xd2d6('0x37'))){_0x1a42b7['limit']=qs[_0xd2d6('0x38')](_0x1ccc10['query'][_0xd2d6('0x38')]);_0x1a42b7[_0xd2d6('0x1a')]=qs[_0xd2d6('0x1a')](_0x1ccc10['query'][_0xd2d6('0x1a')]);}_0x1a42b7['order']=qs[_0xd2d6('0x39')](_0x1ccc10[_0xd2d6('0x31')][_0xd2d6('0x39')]);_0x1a42b7[_0xd2d6('0x3d')]=qs[_0xd2d6('0x3a')](_[_0xd2d6('0x3b')](_0x1ccc10[_0xd2d6('0x31')],_0x469947[_0xd2d6('0x3a')]));_0x1a42b7['where']['ProjectId']=_0x4ecd77['id'];if(_0x1ccc10[_0xd2d6('0x31')][_0xd2d6('0x3c')]){_0x1a42b7[_0xd2d6('0x3d')]=_['merge'](_0x1a42b7[_0xd2d6('0x3d')],{'$or':_[_0xd2d6('0x3f')](_0x1a42b7[_0xd2d6('0x33')],function(_0x46bee6){var _0x4e79eb={};_0x4e79eb[_0x46bee6]={'$like':'%'+_0x1ccc10[_0xd2d6('0x31')][_0xd2d6('0x3c')]+'%'};return _0x4e79eb;})});}_0x1a42b7=_[_0xd2d6('0x3e')]({},_0x1a42b7,_0x1ccc10['options']);return db['JscriptyAnswerReport'][_0xd2d6('0x1c')]({'where':_0x1a42b7[_0xd2d6('0x3d')]})['then'](function(_0x586034){_0x55ea79['count']=_0x586034;if(_0x1ccc10[_0xd2d6('0x31')][_0xd2d6('0x41')]){_0x1a42b7[_0xd2d6('0x42')]=[{'all':!![]}];}return db['JscriptyAnswerReport'][_0xd2d6('0x57')](_0x1a42b7);})[_0xd2d6('0x23')](function(_0x422dc5){_0x55ea79['rows']=_0x422dc5;return _0x55ea79;});}})['then'](respondWithFilteredResult(_0x7975c8,_0x1a42b7))[_0xd2d6('0x46')](handleError(_0x7975c8,null));};function char(_0x2c3e7b){return _0xd2d6('0x5b')===typeof _0x2c3e7b?String[_0xd2d6('0x5c')][_0xd2d6('0x20')](null,arguments):_0x2c3e7b;}function needsEncapsulation(_0x4f362e){return!!_0x4f362e&&(_0x4f362e[_0xd2d6('0x5d')]()['indexOf'](char(0xd))>=0x0||_0x4f362e[_0xd2d6('0x5d')]()[_0xd2d6('0x5e')](char(0xa))>=0x0||_0x4f362e[_0xd2d6('0x5d')]()[_0xd2d6('0x5e')](char(0x2c))>=0x0||_0x4f362e[_0xd2d6('0x5d')]()[_0xd2d6('0x5e')](char(0x22))>=0x0);}function encapsulate(_0x32ed95){var _0x343623=char(0x22),_0x9a4aca='\x5c'+char(0x22),_0x2ef7fe=_0x32ed95[_0xd2d6('0x5d')]()[_0xd2d6('0x5f')](new RegExp(_0x343623,'g'),_0x9a4aca);return _0x343623+_0x2ef7fe+_0x343623;}exports['getSummary']=function(_0x137e27,_0x49ca03,_0x44fed0){var _0x3192cc,_0x11831c;var _0x14ece9={'where':{'ProjectId':_0x137e27['params']['id']}};if(_0x137e27[_0xd2d6('0x31')][_0xd2d6('0x60')]){_0x14ece9[_0xd2d6('0x3d')][_0xd2d6('0x61')]=JSON[_0xd2d6('0x62')](_0x137e27[_0xd2d6('0x31')]['startTime']);}return db[_0xd2d6('0x54')][_0xd2d6('0x57')](_0x14ece9)['then'](handleEntityNotFound(_0x49ca03,null))[_0xd2d6('0x23')](function(_0x6ec79f){if(_0x6ec79f){_0x3192cc=_0x6ec79f;return db[_0xd2d6('0x63')][_0xd2d6('0x57')]({'where':{'SessionId':{'$in':_[_0xd2d6('0x3f')](_0x3192cc,'id')},'ProjectId':_0x137e27[_0xd2d6('0x50')]['id']},'order':'-createdAt'});}})[_0xd2d6('0x23')](handleEntityNotFound(_0x49ca03,null))[_0xd2d6('0x23')](function(_0x3059ac){if(_0x3059ac){_0x11831c=_0x3059ac;var _0x4d0e8c={};for(var _0x65556d=0x0,_0x152803=_0x11831c[_0xd2d6('0x35')];_0x65556d<_0x152803;_0x65556d++){if(!_0x4d0e8c[_0xd2d6('0x36')](_0x11831c[_0x65556d][_0xd2d6('0x64')])){_0x4d0e8c[_0x11831c[_0x65556d][_0xd2d6('0x64')]]=needsEncapsulation(_0x11831c[_0x65556d][_0xd2d6('0x65')])?encapsulate(_0x11831c[_0x65556d]['question']):_0x11831c[_0x65556d][_0xd2d6('0x65')];}}var _0xb08af8=[],_0x3b1ad5={};for(var _0x3f53c6=0x0,_0x50b1c3=_0x3192cc[_0xd2d6('0x35')];_0x3f53c6<_0x50b1c3;_0x3f53c6++){_0x3b1ad5={'ProjectId':_0x137e27[_0xd2d6('0x50')]['id'],'SessionId':_0x3192cc[_0x3f53c6]['id'],'StartTime':moment(_0x3192cc[_0x3f53c6][_0xd2d6('0x61')])[_0xd2d6('0x66')](_0xd2d6('0x67'))};for(var _0x4bb643=0x0,_0xf03e72=_0x11831c[_0xd2d6('0x35')];_0x4bb643<_0xf03e72;_0x4bb643++){if(_0x11831c[_0x4bb643][_0xd2d6('0x68')]==_0x3192cc[_0x3f53c6]['id']&&_0x4d0e8c['hasOwnProperty'](_0x11831c[_0x4bb643][_0xd2d6('0x64')])){_0x3b1ad5[_0x4d0e8c[_0x11831c[_0x4bb643]['questionId']]]=_0x11831c[_0x4bb643][_0xd2d6('0x69')];}}for(var _0x56d098 in _0x4d0e8c){if(!_0x3b1ad5[_0xd2d6('0x36')](_0x4d0e8c[_0x56d098])){_0x3b1ad5[_0x4d0e8c[_0x56d098]]=null;}}_0xb08af8[_0xd2d6('0x6a')](_0x3b1ad5);}return _0xb08af8;}})[_0xd2d6('0x23')](function(_0xf599e8){if(!_[_0xd2d6('0x6b')](_0xf599e8)){var _0x4eb454=toCsv(_0xf599e8);var _0x2e119c=Date[_0xd2d6('0x6c')]();fs['writeFileSync'](util[_0xd2d6('0x66')](_0xd2d6('0x6d'),_0x137e27[_0xd2d6('0x50')]['id'],_0x2e119c),_0x4eb454);_0x49ca03[_0xd2d6('0x6e')](_0xd2d6('0x6f'),_0xd2d6('0x70')+util[_0xd2d6('0x66')](_0xd2d6('0x71'),_0x137e27[_0xd2d6('0x50')]['id'],_0x2e119c));_0x49ca03['setHeader']('Content-type',_0xd2d6('0x72'));return _0x49ca03[_0xd2d6('0x73')](util[_0xd2d6('0x66')](_0xd2d6('0x6d'),_0x137e27[_0xd2d6('0x50')]['id'],_0x2e119c));}else{return _0x49ca03[_0xd2d6('0x18')](0xcc);}})[_0xd2d6('0x46')](handleError(_0x49ca03,null));};