Built motion from commit (unavailable).|2.5.14
[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 _0x2e3e=['map','rawAttributes','fieldName','type','key','name','query','keys','filters','model','attributes','intersection','length','limit','order','sort','where','filter','merge','VIRTUAL','options','includeAll','include','findAll','rows','catch','show','params','fields','JscriptyProject','find','create','body','user','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','userProfileId','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','createdAt','updatedAt','UserProfileSection','error','getSessions','findOne','hasOwnProperty','nolimit','ProjectId','JscriptySessionReport','getAnswers','pick','JscriptyAnswerReport','fromCharCode','toString','indexOf','replace','getSummary','parse','startTime','-createdAt','questionId','question','starttime','format','YYYY-MM-DD\x20HH:mm:ss','SessionId','answer','push','isEmpty','now','writeFileSync','Content-disposition','attachment;\x20filename=','Jscripty_Project_%d_Summary_%s.csv','setHeader','Content-type','text/csv','/tmp/Jscripty_Project_%d_Summary_%s.csv','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','count','offset','set','Content-Range','apply','reject','save','update','then','destroy','Projects','UserProfileResource','stack','index'];(function(_0x34558b,_0x1c7753){var _0x3fbca7=function(_0x3c557c){while(--_0x3c557c){_0x34558b['push'](_0x34558b['shift']());}};_0x3fbca7(++_0x1c7753);}(_0x2e3e,0x140));var _0xe2e3=function(_0x347b6e,_0x4c885){_0x347b6e=_0x347b6e-0x0;var _0x1b6dfc=_0x2e3e[_0x347b6e];return _0x1b6dfc;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0xe2e3('0x0'));var rimraf=require(_0xe2e3('0x1'));var zipdir=require(_0xe2e3('0x2'));var jsonpatch=require(_0xe2e3('0x3'));var rp=require(_0xe2e3('0x4'));var moment=require('moment');var BPromise=require(_0xe2e3('0x5'));var Mustache=require(_0xe2e3('0x6'));var util=require('util');var path=require('path');var sox=require('sox');var csv=require(_0xe2e3('0x7'));var ejs=require(_0xe2e3('0x8'));var fs=require('fs');var _=require(_0xe2e3('0x9'));var squel=require(_0xe2e3('0xa'));var crypto=require(_0xe2e3('0xb'));var jsforce=require(_0xe2e3('0xc'));var deskjs=require(_0xe2e3('0xd'));var toCsv=require(_0xe2e3('0x7'));var querystring=require(_0xe2e3('0xe'));var Papa=require(_0xe2e3('0xf'));var Redis=require(_0xe2e3('0x10'));var authService=require('../../components/auth/service');var qs=require(_0xe2e3('0x11'));var as=require(_0xe2e3('0x12'));var hardwareService=require(_0xe2e3('0x13'));var logger=require(_0xe2e3('0x14'))(_0xe2e3('0x15'));var utils=require(_0xe2e3('0x16'));var config=require(_0xe2e3('0x17'));var licenseUtil=require(_0xe2e3('0x18'));var db=require(_0xe2e3('0x19'))['db'];function respondWithStatusCode(_0x40fd97,_0x24b64a){_0x24b64a=_0x24b64a||0xcc;return function(_0x5422ab){if(_0x5422ab){return _0x40fd97[_0xe2e3('0x1a')](_0x24b64a);}return _0x40fd97[_0xe2e3('0x1b')](_0x24b64a)['end']();};}function respondWithResult(_0x10b652,_0x14cd39){_0x14cd39=_0x14cd39||0xc8;return function(_0x3459e2){if(_0x3459e2){return _0x10b652[_0xe2e3('0x1b')](_0x14cd39)[_0xe2e3('0x1c')](_0x3459e2);}};}function respondWithFilteredResult(_0x5b0b43,_0x4afa58){return function(_0x3b1154){if(_0x3b1154){var _0x520fe2=_0x3b1154[_0xe2e3('0x1d')],_0x2e7b5b=_0x4afa58[_0xe2e3('0x1e')],_0x57b11f=_0x4afa58['offset']+_0x4afa58['limit'],_0x597c22;if(_0x57b11f>=_0x520fe2){_0x57b11f=_0x520fe2;_0x597c22=0xc8;}else{_0x597c22=0xce;}_0x5b0b43[_0xe2e3('0x1b')](_0x597c22);return _0x5b0b43[_0xe2e3('0x1f')](_0xe2e3('0x20'),_0x2e7b5b+'-'+_0x57b11f+'/'+_0x520fe2)[_0xe2e3('0x1c')](_0x3b1154);}return null;};}function patchUpdates(_0x33cdaa){return function(_0x34c445){try{jsonpatch[_0xe2e3('0x21')](_0x34c445,_0x33cdaa,!![]);}catch(_0x521227){return BPromise[_0xe2e3('0x22')](_0x521227);}return _0x34c445[_0xe2e3('0x23')]();};}function saveUpdates(_0x4890c7,_0x1316c1){return function(_0x21530e){if(_0x21530e){return _0x21530e[_0xe2e3('0x24')](_0x4890c7)[_0xe2e3('0x25')](function(_0x4b93b2){return _0x4b93b2;});}return null;};}function removeEntity(_0x221689,_0x10e0b4){return function(_0x116867){if(_0x116867){return _0x116867[_0xe2e3('0x26')]()['then'](function(){var _0x4b4865=_0x116867['get']({'plain':!![]});var _0xb327e1=_0xe2e3('0x27');return db[_0xe2e3('0x28')][_0xe2e3('0x26')]({'where':{'type':_0xb327e1,'resourceId':_0x4b4865['id']}})[_0xe2e3('0x25')](function(){return _0x116867;});})['then'](function(){_0x221689[_0xe2e3('0x1b')](0xcc)['end']();});}};}function handleEntityNotFound(_0x351c3c,_0x3e6444){return function(_0x1aa0e8){if(!_0x1aa0e8){_0x351c3c[_0xe2e3('0x1a')](0x194);}return _0x1aa0e8;};}function handleError(_0x28d853,_0x2f69ef){_0x2f69ef=_0x2f69ef||0x1f4;return function(_0x86a9cc){logger['error'](_0x86a9cc[_0xe2e3('0x29')]);if(_0x86a9cc['name']){delete _0x86a9cc['name'];}_0x28d853['status'](_0x2f69ef)['send'](_0x86a9cc);};}exports[_0xe2e3('0x2a')]=function(_0x536556,_0x1280eb){var _0x40f49d={},_0x3c5608={},_0x3ec6c3={'count':0x0,'rows':[]};var _0x3c93ca=_[_0xe2e3('0x2b')](db['JscriptyProject'][_0xe2e3('0x2c')],function(_0x3cddc1){return{'name':_0x3cddc1[_0xe2e3('0x2d')],'type':_0x3cddc1[_0xe2e3('0x2e')][_0xe2e3('0x2f')]};});_0x3c5608['model']=_[_0xe2e3('0x2b')](_0x3c93ca,_0xe2e3('0x30'));_0x3c5608[_0xe2e3('0x31')]=_[_0xe2e3('0x32')](_0x536556[_0xe2e3('0x31')]);_0x3c5608[_0xe2e3('0x33')]=_['intersection'](_0x3c5608[_0xe2e3('0x34')],_0x3c5608[_0xe2e3('0x31')]);_0x40f49d[_0xe2e3('0x35')]=_[_0xe2e3('0x36')](_0x3c5608[_0xe2e3('0x34')],qs['fields'](_0x536556[_0xe2e3('0x31')]['fields']));_0x40f49d['attributes']=_0x40f49d['attributes'][_0xe2e3('0x37')]?_0x40f49d['attributes']:_0x3c5608['model'];if(!_0x536556['query']['hasOwnProperty']('nolimit')){_0x40f49d['limit']=qs[_0xe2e3('0x38')](_0x536556[_0xe2e3('0x31')][_0xe2e3('0x38')]);_0x40f49d[_0xe2e3('0x1e')]=qs['offset'](_0x536556[_0xe2e3('0x31')]['offset']);}_0x40f49d[_0xe2e3('0x39')]=qs[_0xe2e3('0x3a')](_0x536556[_0xe2e3('0x31')]['sort']);_0x40f49d[_0xe2e3('0x3b')]=qs['filters'](_['pick'](_0x536556[_0xe2e3('0x31')],_0x3c5608[_0xe2e3('0x33')]),_0x3c93ca);if(_0x536556[_0xe2e3('0x31')][_0xe2e3('0x3c')]){_0x40f49d[_0xe2e3('0x3b')]=_[_0xe2e3('0x3d')](_0x40f49d['where'],{'$or':_['map'](_0x3c93ca,function(_0x11bc50){if(_0x11bc50['type']!==_0xe2e3('0x3e')){var _0x3ea30f={};_0x3ea30f[_0x11bc50[_0xe2e3('0x30')]]={'$like':'%'+_0x536556[_0xe2e3('0x31')][_0xe2e3('0x3c')]+'%'};return _0x3ea30f;}})});}_0x40f49d=_[_0xe2e3('0x3d')]({},_0x40f49d,_0x536556[_0xe2e3('0x3f')]);var _0x1b9633={'where':_0x40f49d[_0xe2e3('0x3b')]};return db['JscriptyProject']['count'](_0x1b9633)[_0xe2e3('0x25')](function(_0x57218b){_0x3ec6c3[_0xe2e3('0x1d')]=_0x57218b;if(_0x536556[_0xe2e3('0x31')][_0xe2e3('0x40')]){_0x40f49d[_0xe2e3('0x41')]=[{'all':!![]}];}return db['JscriptyProject'][_0xe2e3('0x42')](_0x40f49d);})[_0xe2e3('0x25')](function(_0x3316b8){_0x3ec6c3[_0xe2e3('0x43')]=_0x3316b8;return _0x3ec6c3;})[_0xe2e3('0x25')](respondWithFilteredResult(_0x1280eb,_0x40f49d))[_0xe2e3('0x44')](handleError(_0x1280eb,null));};exports[_0xe2e3('0x45')]=function(_0x66b92a,_0x3a23ac){var _0xc40f74={'raw':![],'where':{'id':_0x66b92a[_0xe2e3('0x46')]['id']}},_0x44babe={};_0x44babe[_0xe2e3('0x34')]=_[_0xe2e3('0x32')](db['JscriptyProject']['rawAttributes']);_0x44babe[_0xe2e3('0x31')]=_[_0xe2e3('0x32')](_0x66b92a[_0xe2e3('0x31')]);_0x44babe[_0xe2e3('0x33')]=_[_0xe2e3('0x36')](_0x44babe[_0xe2e3('0x34')],_0x44babe[_0xe2e3('0x31')]);_0xc40f74[_0xe2e3('0x35')]=_[_0xe2e3('0x36')](_0x44babe[_0xe2e3('0x34')],qs['fields'](_0x66b92a[_0xe2e3('0x31')][_0xe2e3('0x47')]));_0xc40f74[_0xe2e3('0x35')]=_0xc40f74[_0xe2e3('0x35')][_0xe2e3('0x37')]?_0xc40f74[_0xe2e3('0x35')]:_0x44babe[_0xe2e3('0x34')];if(_0x66b92a[_0xe2e3('0x31')][_0xe2e3('0x40')]){_0xc40f74[_0xe2e3('0x41')]=[{'all':!![]}];}_0xc40f74=_['merge']({},_0xc40f74,_0x66b92a[_0xe2e3('0x3f')]);return db[_0xe2e3('0x48')][_0xe2e3('0x49')](_0xc40f74)[_0xe2e3('0x25')](handleEntityNotFound(_0x3a23ac,null))[_0xe2e3('0x25')](respondWithResult(_0x3a23ac,null))[_0xe2e3('0x44')](handleError(_0x3a23ac,null));};exports['create']=function(_0x46d078,_0x168fc0){return db['JscriptyProject'][_0xe2e3('0x4a')](_0x46d078[_0xe2e3('0x4b')],{})[_0xe2e3('0x25')](function(_0x249c2b){var _0xbc7fa7=_0x46d078[_0xe2e3('0x4c')][_0xe2e3('0x4d')]({'plain':!![]});if(!_0xbc7fa7)throw new Error(_0xe2e3('0x4e'));if(_0xbc7fa7[_0xe2e3('0x4f')]===_0xe2e3('0x4c')){var _0xb32a26=_0x249c2b[_0xe2e3('0x4d')]({'plain':!![]});var _0x3eb4e1=_0xe2e3('0x27');return db['UserProfileSection'][_0xe2e3('0x49')]({'where':{'name':_0x3eb4e1,'userProfileId':_0xbc7fa7[_0xe2e3('0x50')]},'raw':!![]})['then'](function(_0x20fd57){if(_0x20fd57&&_0x20fd57['autoAssociation']===0x0){return db[_0xe2e3('0x28')][_0xe2e3('0x4a')]({'name':_0xb32a26[_0xe2e3('0x30')],'resourceId':_0xb32a26['id'],'type':_0x20fd57[_0xe2e3('0x30')],'sectionId':_0x20fd57['id']},{})[_0xe2e3('0x25')](function(){return _0x249c2b;});}else{return _0x249c2b;}})[_0xe2e3('0x44')](function(_0x586270){logger['error'](_0xe2e3('0x51'),_0x586270);throw _0x586270;});}return _0x249c2b;})['then'](respondWithResult(_0x168fc0,0xc9))[_0xe2e3('0x44')](handleError(_0x168fc0,null));};exports['clone']=function(_0xfe1e79,_0x2e880d){var _0x3abfea={'where':{'id':_0xfe1e79[_0xe2e3('0x46')]['id']}},_0x425c4f={};_0x425c4f['model']=_['keys'](db[_0xe2e3('0x48')][_0xe2e3('0x2c')]);_0x3abfea[_0xe2e3('0x35')]=_[_0xe2e3('0x36')](_0x425c4f[_0xe2e3('0x34')],qs['fields'](_0xfe1e79['query'][_0xe2e3('0x47')]));_0x3abfea[_0xe2e3('0x35')]=_0x3abfea[_0xe2e3('0x35')][_0xe2e3('0x37')]?_0x3abfea[_0xe2e3('0x35')]:_0x425c4f[_0xe2e3('0x34')];if(_0xfe1e79[_0xe2e3('0x31')][_0xe2e3('0x40')]){_0x3abfea['include']=[{'all':!![]}];}_0x3abfea=_[_0xe2e3('0x3d')]({},_0x3abfea,_0xfe1e79[_0xe2e3('0x3f')]);return db['JscriptyProject'][_0xe2e3('0x49')](_0x3abfea)[_0xe2e3('0x25')](handleEntityNotFound(_0x2e880d,null))[_0xe2e3('0x25')](function(_0x7a67f5){if(_0x7a67f5){var _0x5816b9=_0x7a67f5[_0xe2e3('0x4d')]({'plain':!![]});_0x5816b9=qs['omit'](_0x5816b9,['id',_0xe2e3('0x52'),_0xe2e3('0x53')]);_0xfe1e79[_0xe2e3('0x4b')]=_['omit'](_0xfe1e79['body'],['id',_0xe2e3('0x52'),_0xe2e3('0x53')]);return db[_0xe2e3('0x48')][_0xe2e3('0x4a')](_[_0xe2e3('0x3d')](_0x5816b9,_0xfe1e79[_0xe2e3('0x4b')]),{'include':_0xfe1e79['query'][_0xe2e3('0x40')]?[{'all':!![]}]:undefined})[_0xe2e3('0x25')](function(_0x42ee87){var _0x563cc3=_0xfe1e79[_0xe2e3('0x4c')][_0xe2e3('0x4d')]({'plain':!![]});if(!_0x563cc3)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x563cc3[_0xe2e3('0x4f')]===_0xe2e3('0x4c')){var _0x35a876=_0x42ee87[_0xe2e3('0x4d')]({'plain':!![]});var _0x167ee5=_0xe2e3('0x27');return db[_0xe2e3('0x54')][_0xe2e3('0x49')]({'where':{'name':_0x167ee5,'userProfileId':_0x563cc3['userProfileId']},'raw':!![]})[_0xe2e3('0x25')](function(_0xd80964){if(_0xd80964&&_0xd80964['autoAssociation']===0x0){return db[_0xe2e3('0x28')][_0xe2e3('0x4a')]({'name':_0x35a876[_0xe2e3('0x30')],'resourceId':_0x35a876['id'],'type':_0xd80964[_0xe2e3('0x30')],'sectionId':_0xd80964['id']},{})[_0xe2e3('0x25')](function(){return _0x42ee87;});}else{return _0x42ee87;}})['catch'](function(_0x527bbc){logger[_0xe2e3('0x55')](_0xe2e3('0x51'),_0x527bbc);throw _0x527bbc;});}return _0x42ee87;});}})[_0xe2e3('0x25')](respondWithResult(_0x2e880d,0xc9))[_0xe2e3('0x44')](handleError(_0x2e880d,null));};exports[_0xe2e3('0x24')]=function(_0x7b1c48,_0x199f73){if(_0x7b1c48[_0xe2e3('0x4b')]['id']){delete _0x7b1c48[_0xe2e3('0x4b')]['id'];}return db[_0xe2e3('0x48')][_0xe2e3('0x49')]({'where':{'id':_0x7b1c48['params']['id']}})[_0xe2e3('0x25')](handleEntityNotFound(_0x199f73,null))[_0xe2e3('0x25')](saveUpdates(_0x7b1c48['body'],null))['then'](respondWithResult(_0x199f73,null))[_0xe2e3('0x44')](handleError(_0x199f73,null));};exports[_0xe2e3('0x26')]=function(_0xbfbb9e,_0x3af8b8){return db[_0xe2e3('0x48')][_0xe2e3('0x49')]({'where':{'id':_0xbfbb9e[_0xe2e3('0x46')]['id']}})[_0xe2e3('0x25')](handleEntityNotFound(_0x3af8b8,null))[_0xe2e3('0x25')](removeEntity(_0x3af8b8,null))[_0xe2e3('0x44')](handleError(_0x3af8b8,null));};exports[_0xe2e3('0x56')]=function(_0xb44ed9,_0x33b405,_0x1d9af5){var _0x4b3585={'raw':!![],'where':{}};var _0x5d3b7a={};var _0x112b01={'count':0x0,'rows':[]};return db[_0xe2e3('0x48')][_0xe2e3('0x57')]({'where':{'id':_0xb44ed9[_0xe2e3('0x46')]['id']}})[_0xe2e3('0x25')](handleEntityNotFound(_0x33b405,null))[_0xe2e3('0x25')](function(_0xb9e62f){if(_0xb9e62f){_0x5d3b7a[_0xe2e3('0x34')]=_['keys'](db['JscriptySessionReport'][_0xe2e3('0x2c')]);_0x5d3b7a[_0xe2e3('0x31')]=_[_0xe2e3('0x32')](_0xb44ed9[_0xe2e3('0x31')]);_0x5d3b7a[_0xe2e3('0x33')]=_['intersection'](_0x5d3b7a[_0xe2e3('0x34')],_0x5d3b7a[_0xe2e3('0x31')]);_0x4b3585[_0xe2e3('0x35')]=_[_0xe2e3('0x36')](_0x5d3b7a[_0xe2e3('0x34')],qs[_0xe2e3('0x47')](_0xb44ed9[_0xe2e3('0x31')][_0xe2e3('0x47')]));_0x4b3585['attributes']=_0x4b3585[_0xe2e3('0x35')]['length']?_0x4b3585[_0xe2e3('0x35')]:_0x5d3b7a[_0xe2e3('0x34')];if(!_0xb44ed9[_0xe2e3('0x31')][_0xe2e3('0x58')](_0xe2e3('0x59'))){_0x4b3585[_0xe2e3('0x38')]=qs['limit'](_0xb44ed9[_0xe2e3('0x31')]['limit']);_0x4b3585['offset']=qs[_0xe2e3('0x1e')](_0xb44ed9[_0xe2e3('0x31')][_0xe2e3('0x1e')]);}_0x4b3585[_0xe2e3('0x39')]=qs[_0xe2e3('0x3a')](_0xb44ed9[_0xe2e3('0x31')][_0xe2e3('0x3a')]);_0x4b3585[_0xe2e3('0x3b')]=qs[_0xe2e3('0x33')](_['pick'](_0xb44ed9['query'],_0x5d3b7a['filters']));_0x4b3585[_0xe2e3('0x3b')][_0xe2e3('0x5a')]=_0xb9e62f['id'];if(_0xb44ed9[_0xe2e3('0x31')][_0xe2e3('0x3c')]){_0x4b3585[_0xe2e3('0x3b')]=_[_0xe2e3('0x3d')](_0x4b3585[_0xe2e3('0x3b')],{'$or':_[_0xe2e3('0x2b')](_0x4b3585[_0xe2e3('0x35')],function(_0x30a30d){var _0x3b4316={};_0x3b4316[_0x30a30d]={'$like':'%'+_0xb44ed9[_0xe2e3('0x31')]['filter']+'%'};return _0x3b4316;})});}_0x4b3585=_[_0xe2e3('0x3d')]({},_0x4b3585,_0xb44ed9[_0xe2e3('0x3f')]);return db[_0xe2e3('0x5b')][_0xe2e3('0x1d')]({'where':_0x4b3585[_0xe2e3('0x3b')]})[_0xe2e3('0x25')](function(_0x57a835){_0x112b01[_0xe2e3('0x1d')]=_0x57a835;if(_0xb44ed9[_0xe2e3('0x31')]['includeAll']){_0x4b3585[_0xe2e3('0x41')]=[{'all':!![]}];}return db[_0xe2e3('0x5b')][_0xe2e3('0x42')](_0x4b3585);})[_0xe2e3('0x25')](function(_0x471089){_0x112b01[_0xe2e3('0x43')]=_0x471089;return _0x112b01;});}})[_0xe2e3('0x25')](respondWithFilteredResult(_0x33b405,_0x4b3585))[_0xe2e3('0x44')](handleError(_0x33b405,null));};exports[_0xe2e3('0x5c')]=function(_0x26313c,_0x172abf,_0x2b1d28){var _0x1832d4={'raw':!![],'where':{}};var _0x1fc0c2={};var _0x592c46={'count':0x0,'rows':[]};return db['JscriptyProject'][_0xe2e3('0x57')]({'where':{'id':_0x26313c[_0xe2e3('0x46')]['id']}})[_0xe2e3('0x25')](handleEntityNotFound(_0x172abf,null))[_0xe2e3('0x25')](function(_0x3816cf){if(_0x3816cf){_0x1fc0c2['model']=_[_0xe2e3('0x32')](db['JscriptyAnswerReport'][_0xe2e3('0x2c')]);_0x1fc0c2[_0xe2e3('0x31')]=_[_0xe2e3('0x32')](_0x26313c[_0xe2e3('0x31')]);_0x1fc0c2[_0xe2e3('0x33')]=_['intersection'](_0x1fc0c2[_0xe2e3('0x34')],_0x1fc0c2[_0xe2e3('0x31')]);_0x1832d4[_0xe2e3('0x35')]=_[_0xe2e3('0x36')](_0x1fc0c2[_0xe2e3('0x34')],qs[_0xe2e3('0x47')](_0x26313c[_0xe2e3('0x31')][_0xe2e3('0x47')]));_0x1832d4['attributes']=_0x1832d4[_0xe2e3('0x35')][_0xe2e3('0x37')]?_0x1832d4['attributes']:_0x1fc0c2['model'];if(!_0x26313c[_0xe2e3('0x31')][_0xe2e3('0x58')](_0xe2e3('0x59'))){_0x1832d4[_0xe2e3('0x38')]=qs['limit'](_0x26313c[_0xe2e3('0x31')][_0xe2e3('0x38')]);_0x1832d4['offset']=qs[_0xe2e3('0x1e')](_0x26313c[_0xe2e3('0x31')][_0xe2e3('0x1e')]);}_0x1832d4[_0xe2e3('0x39')]=qs[_0xe2e3('0x3a')](_0x26313c[_0xe2e3('0x31')][_0xe2e3('0x3a')]);_0x1832d4[_0xe2e3('0x3b')]=qs[_0xe2e3('0x33')](_[_0xe2e3('0x5d')](_0x26313c[_0xe2e3('0x31')],_0x1fc0c2[_0xe2e3('0x33')]));_0x1832d4['where']['ProjectId']=_0x3816cf['id'];if(_0x26313c['query']['filter']){_0x1832d4[_0xe2e3('0x3b')]=_[_0xe2e3('0x3d')](_0x1832d4[_0xe2e3('0x3b')],{'$or':_[_0xe2e3('0x2b')](_0x1832d4['attributes'],function(_0xa5baf7){var _0x4de283={};_0x4de283[_0xa5baf7]={'$like':'%'+_0x26313c[_0xe2e3('0x31')]['filter']+'%'};return _0x4de283;})});}_0x1832d4=_[_0xe2e3('0x3d')]({},_0x1832d4,_0x26313c[_0xe2e3('0x3f')]);return db['JscriptyAnswerReport'][_0xe2e3('0x1d')]({'where':_0x1832d4[_0xe2e3('0x3b')]})['then'](function(_0x45602e){_0x592c46[_0xe2e3('0x1d')]=_0x45602e;if(_0x26313c['query'][_0xe2e3('0x40')]){_0x1832d4[_0xe2e3('0x41')]=[{'all':!![]}];}return db[_0xe2e3('0x5e')][_0xe2e3('0x42')](_0x1832d4);})[_0xe2e3('0x25')](function(_0x366b5d){_0x592c46['rows']=_0x366b5d;return _0x592c46;});}})[_0xe2e3('0x25')](respondWithFilteredResult(_0x172abf,_0x1832d4))[_0xe2e3('0x44')](handleError(_0x172abf,null));};function char(_0x376ba2){return'number'===typeof _0x376ba2?String[_0xe2e3('0x5f')][_0xe2e3('0x21')](null,arguments):_0x376ba2;}function needsEncapsulation(_0x2db18a){return!!_0x2db18a&&(_0x2db18a[_0xe2e3('0x60')]()['indexOf'](char(0xd))>=0x0||_0x2db18a[_0xe2e3('0x60')]()['indexOf'](char(0xa))>=0x0||_0x2db18a[_0xe2e3('0x60')]()[_0xe2e3('0x61')](char(0x2c))>=0x0||_0x2db18a[_0xe2e3('0x60')]()[_0xe2e3('0x61')](char(0x22))>=0x0);}function encapsulate(_0x2e54e){var _0x41726e=char(0x22),_0x512628='\x5c'+char(0x22),_0x3f18b8=_0x2e54e['toString']()[_0xe2e3('0x62')](new RegExp(_0x41726e,'g'),_0x512628);return _0x41726e+_0x3f18b8+_0x41726e;}exports[_0xe2e3('0x63')]=function(_0x169818,_0x52e784,_0x1df784){var _0x3354e8,_0xa61a9e;var _0x7cd34b={'where':{'ProjectId':_0x169818['params']['id']}};if(_0x169818[_0xe2e3('0x31')]['startTime']){_0x7cd34b[_0xe2e3('0x3b')]['starttime']=JSON[_0xe2e3('0x64')](_0x169818[_0xe2e3('0x31')][_0xe2e3('0x65')]);}return db[_0xe2e3('0x5b')][_0xe2e3('0x42')](_0x7cd34b)[_0xe2e3('0x25')](handleEntityNotFound(_0x52e784,null))[_0xe2e3('0x25')](function(_0x38365d){if(_0x38365d){_0x3354e8=_0x38365d;return db['JscriptyQuestionReport'][_0xe2e3('0x42')]({'where':{'SessionId':{'$in':_[_0xe2e3('0x2b')](_0x3354e8,'id')},'ProjectId':_0x169818[_0xe2e3('0x46')]['id']},'order':_0xe2e3('0x66')});}})[_0xe2e3('0x25')](handleEntityNotFound(_0x52e784,null))[_0xe2e3('0x25')](function(_0x3b79a4){if(_0x3b79a4){_0xa61a9e=_0x3b79a4;var _0x11efea={};for(var _0x2d9612=0x0,_0x120a95=_0xa61a9e[_0xe2e3('0x37')];_0x2d9612<_0x120a95;_0x2d9612++){if(!_0x11efea[_0xe2e3('0x58')](_0xa61a9e[_0x2d9612][_0xe2e3('0x67')])){_0x11efea[_0xa61a9e[_0x2d9612][_0xe2e3('0x67')]]=needsEncapsulation(_0xa61a9e[_0x2d9612][_0xe2e3('0x68')])?encapsulate(_0xa61a9e[_0x2d9612][_0xe2e3('0x68')]):_0xa61a9e[_0x2d9612][_0xe2e3('0x68')];}}var _0x25ea2f=[],_0x55ac4c={};for(var _0x5c6015=0x0,_0x2fe13f=_0x3354e8[_0xe2e3('0x37')];_0x5c6015<_0x2fe13f;_0x5c6015++){_0x55ac4c={'ProjectId':_0x169818[_0xe2e3('0x46')]['id'],'SessionId':_0x3354e8[_0x5c6015]['id'],'StartTime':moment(_0x3354e8[_0x5c6015][_0xe2e3('0x69')])[_0xe2e3('0x6a')](_0xe2e3('0x6b'))};for(var _0x1134c7=0x0,_0x576a54=_0xa61a9e[_0xe2e3('0x37')];_0x1134c7<_0x576a54;_0x1134c7++){if(_0xa61a9e[_0x1134c7][_0xe2e3('0x6c')]==_0x3354e8[_0x5c6015]['id']&&_0x11efea[_0xe2e3('0x58')](_0xa61a9e[_0x1134c7][_0xe2e3('0x67')])){_0x55ac4c[_0x11efea[_0xa61a9e[_0x1134c7]['questionId']]]=_0xa61a9e[_0x1134c7][_0xe2e3('0x6d')];}}for(var _0x47e286 in _0x11efea){if(!_0x55ac4c[_0xe2e3('0x58')](_0x11efea[_0x47e286])){_0x55ac4c[_0x11efea[_0x47e286]]=null;}}_0x25ea2f[_0xe2e3('0x6e')](_0x55ac4c);}return _0x25ea2f;}})[_0xe2e3('0x25')](function(_0xad7b9c){if(!_[_0xe2e3('0x6f')](_0xad7b9c)){var _0x22883e=toCsv(_0xad7b9c);var _0x44a7fe=Date[_0xe2e3('0x70')]();fs[_0xe2e3('0x71')](util[_0xe2e3('0x6a')]('/tmp/Jscripty_Project_%d_Summary_%s.csv',_0x169818[_0xe2e3('0x46')]['id'],_0x44a7fe),_0x22883e);_0x52e784['setHeader'](_0xe2e3('0x72'),_0xe2e3('0x73')+util['format'](_0xe2e3('0x74'),_0x169818['params']['id'],_0x44a7fe));_0x52e784[_0xe2e3('0x75')](_0xe2e3('0x76'),_0xe2e3('0x77'));return _0x52e784['download'](util[_0xe2e3('0x6a')](_0xe2e3('0x78'),_0x169818[_0xe2e3('0x46')]['id'],_0x44a7fe));}else{return _0x52e784['sendStatus'](0xcc);}})[_0xe2e3('0x44')](handleError(_0x52e784,null));};