Built motion from commit (unavailable).|2.5.15
[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 _0xdcde=['bluebird','mustache','util','sox','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','offset','limit','set','Content-Range','apply','save','update','destroy','UserProfileResource','then','name','send','index','map','rawAttributes','fieldName','type','key','model','query','keys','intersection','attributes','fields','hasOwnProperty','nolimit','order','sort','where','filters','pick','merge','VIRTUAL','JscriptyProject','count','include','findAll','rows','catch','show','params','length','options','find','create','body','user','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','Projects','UserProfileSection','error','clone','includeAll','updatedAt','omit','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','getSessions','findOne','JscriptySessionReport','filter','getAnswers','JscriptyAnswerReport','ProjectId','number','fromCharCode','indexOf','toString','replace','getSummary','startTime','parse','JscriptyQuestionReport','-createdAt','questionId','question','starttime','format','YYYY-MM-DD\x20HH:mm:ss','SessionId','answer','push','isEmpty','now','writeFileSync','/tmp/Jscripty_Project_%d_Summary_%s.csv','setHeader','attachment;\x20filename=','Jscripty_Project_%d_Summary_%s.csv','Content-type','text/csv','download','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise','moment'];(function(_0x55c485,_0x3fe77e){var _0x6bb521=function(_0x466a3d){while(--_0x466a3d){_0x55c485['push'](_0x55c485['shift']());}};_0x6bb521(++_0x3fe77e);}(_0xdcde,0xf2));var _0xedcd=function(_0x439e06,_0xe6d21c){_0x439e06=_0x439e06-0x0;var _0xaa57c1=_0xdcde[_0x439e06];return _0xaa57c1;};'use strict';var pdf=require(_0xedcd('0x0'));var emlformat=require(_0xedcd('0x1'));var rimraf=require('rimraf');var zipdir=require(_0xedcd('0x2'));var jsonpatch=require(_0xedcd('0x3'));var rp=require(_0xedcd('0x4'));var moment=require(_0xedcd('0x5'));var BPromise=require(_0xedcd('0x6'));var Mustache=require(_0xedcd('0x7'));var util=require(_0xedcd('0x8'));var path=require('path');var sox=require(_0xedcd('0x9'));var csv=require('to-csv');var ejs=require(_0xedcd('0xa'));var fs=require('fs');var _=require(_0xedcd('0xb'));var squel=require(_0xedcd('0xc'));var crypto=require(_0xedcd('0xd'));var jsforce=require(_0xedcd('0xe'));var deskjs=require(_0xedcd('0xf'));var toCsv=require('to-csv');var querystring=require(_0xedcd('0x10'));var Papa=require(_0xedcd('0x11'));var Redis=require(_0xedcd('0x12'));var authService=require(_0xedcd('0x13'));var qs=require(_0xedcd('0x14'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xedcd('0x15'));var logger=require(_0xedcd('0x16'))('api');var utils=require('../../config/utils');var config=require(_0xedcd('0x17'));var licenseUtil=require(_0xedcd('0x18'));var db=require(_0xedcd('0x19'))['db'];function respondWithStatusCode(_0x33e276,_0x4b7063){_0x4b7063=_0x4b7063||0xcc;return function(_0x84e9ce){if(_0x84e9ce){return _0x33e276[_0xedcd('0x1a')](_0x4b7063);}return _0x33e276[_0xedcd('0x1b')](_0x4b7063)['end']();};}function respondWithResult(_0x2510a4,_0x3279bb){_0x3279bb=_0x3279bb||0xc8;return function(_0x4d2413){if(_0x4d2413){return _0x2510a4['status'](_0x3279bb)[_0xedcd('0x1c')](_0x4d2413);}};}function respondWithFilteredResult(_0x3e0117,_0x13768a){return function(_0x36f769){if(_0x36f769){var _0x11fcd8=_0x36f769['count'],_0x326df1=_0x13768a[_0xedcd('0x1d')],_0x571132=_0x13768a[_0xedcd('0x1d')]+_0x13768a[_0xedcd('0x1e')],_0xd8bed0;if(_0x571132>=_0x11fcd8){_0x571132=_0x11fcd8;_0xd8bed0=0xc8;}else{_0xd8bed0=0xce;}_0x3e0117['status'](_0xd8bed0);return _0x3e0117[_0xedcd('0x1f')](_0xedcd('0x20'),_0x326df1+'-'+_0x571132+'/'+_0x11fcd8)['json'](_0x36f769);}return null;};}function patchUpdates(_0x590a5d){return function(_0x59ae68){try{jsonpatch[_0xedcd('0x21')](_0x59ae68,_0x590a5d,!![]);}catch(_0x3fcde8){return BPromise['reject'](_0x3fcde8);}return _0x59ae68[_0xedcd('0x22')]();};}function saveUpdates(_0x39123d,_0x76eb01){return function(_0x3a757e){if(_0x3a757e){return _0x3a757e[_0xedcd('0x23')](_0x39123d)['then'](function(_0x517665){return _0x517665;});}return null;};}function removeEntity(_0x38f58c,_0xfb299e){return function(_0x23749f){if(_0x23749f){return _0x23749f[_0xedcd('0x24')]()['then'](function(){var _0x26e726=_0x23749f['get']({'plain':!![]});var _0x269e82='Projects';return db[_0xedcd('0x25')][_0xedcd('0x24')]({'where':{'type':_0x269e82,'resourceId':_0x26e726['id']}})[_0xedcd('0x26')](function(){return _0x23749f;});})[_0xedcd('0x26')](function(){_0x38f58c[_0xedcd('0x1b')](0xcc)['end']();});}};}function handleEntityNotFound(_0x47a96f,_0x5d36a9){return function(_0x143cde){if(!_0x143cde){_0x47a96f[_0xedcd('0x1a')](0x194);}return _0x143cde;};}function handleError(_0x5dec70,_0x2d4afa){_0x2d4afa=_0x2d4afa||0x1f4;return function(_0x1096dc){logger['error'](_0x1096dc['stack']);if(_0x1096dc[_0xedcd('0x27')]){delete _0x1096dc[_0xedcd('0x27')];}_0x5dec70[_0xedcd('0x1b')](_0x2d4afa)[_0xedcd('0x28')](_0x1096dc);};}exports[_0xedcd('0x29')]=function(_0x3a81eb,_0x346d1c){var _0x4ae5db={},_0x232d74={},_0x5b6e58={'count':0x0,'rows':[]};var _0x5dd59c=_[_0xedcd('0x2a')](db['JscriptyProject'][_0xedcd('0x2b')],function(_0x264909){return{'name':_0x264909[_0xedcd('0x2c')],'type':_0x264909[_0xedcd('0x2d')][_0xedcd('0x2e')]};});_0x232d74[_0xedcd('0x2f')]=_[_0xedcd('0x2a')](_0x5dd59c,_0xedcd('0x27'));_0x232d74[_0xedcd('0x30')]=_[_0xedcd('0x31')](_0x3a81eb['query']);_0x232d74['filters']=_[_0xedcd('0x32')](_0x232d74[_0xedcd('0x2f')],_0x232d74[_0xedcd('0x30')]);_0x4ae5db[_0xedcd('0x33')]=_[_0xedcd('0x32')](_0x232d74[_0xedcd('0x2f')],qs['fields'](_0x3a81eb[_0xedcd('0x30')][_0xedcd('0x34')]));_0x4ae5db[_0xedcd('0x33')]=_0x4ae5db[_0xedcd('0x33')]['length']?_0x4ae5db['attributes']:_0x232d74[_0xedcd('0x2f')];if(!_0x3a81eb['query'][_0xedcd('0x35')](_0xedcd('0x36'))){_0x4ae5db[_0xedcd('0x1e')]=qs[_0xedcd('0x1e')](_0x3a81eb[_0xedcd('0x30')][_0xedcd('0x1e')]);_0x4ae5db[_0xedcd('0x1d')]=qs[_0xedcd('0x1d')](_0x3a81eb[_0xedcd('0x30')][_0xedcd('0x1d')]);}_0x4ae5db[_0xedcd('0x37')]=qs[_0xedcd('0x38')](_0x3a81eb[_0xedcd('0x30')][_0xedcd('0x38')]);_0x4ae5db[_0xedcd('0x39')]=qs[_0xedcd('0x3a')](_[_0xedcd('0x3b')](_0x3a81eb[_0xedcd('0x30')],_0x232d74[_0xedcd('0x3a')]),_0x5dd59c);if(_0x3a81eb['query']['filter']){_0x4ae5db['where']=_[_0xedcd('0x3c')](_0x4ae5db['where'],{'$or':_[_0xedcd('0x2a')](_0x5dd59c,function(_0x4beefc){if(_0x4beefc[_0xedcd('0x2d')]!==_0xedcd('0x3d')){var _0x2e67f3={};_0x2e67f3[_0x4beefc[_0xedcd('0x27')]]={'$like':'%'+_0x3a81eb[_0xedcd('0x30')]['filter']+'%'};return _0x2e67f3;}})});}_0x4ae5db=_[_0xedcd('0x3c')]({},_0x4ae5db,_0x3a81eb['options']);var _0x380828={'where':_0x4ae5db[_0xedcd('0x39')]};return db[_0xedcd('0x3e')][_0xedcd('0x3f')](_0x380828)[_0xedcd('0x26')](function(_0x29c570){_0x5b6e58[_0xedcd('0x3f')]=_0x29c570;if(_0x3a81eb['query']['includeAll']){_0x4ae5db[_0xedcd('0x40')]=[{'all':!![]}];}return db[_0xedcd('0x3e')][_0xedcd('0x41')](_0x4ae5db);})['then'](function(_0x341638){_0x5b6e58[_0xedcd('0x42')]=_0x341638;return _0x5b6e58;})[_0xedcd('0x26')](respondWithFilteredResult(_0x346d1c,_0x4ae5db))[_0xedcd('0x43')](handleError(_0x346d1c,null));};exports[_0xedcd('0x44')]=function(_0x241885,_0x59f557){var _0x36cc2a={'raw':![],'where':{'id':_0x241885[_0xedcd('0x45')]['id']}},_0x40d5c9={};_0x40d5c9[_0xedcd('0x2f')]=_[_0xedcd('0x31')](db[_0xedcd('0x3e')]['rawAttributes']);_0x40d5c9[_0xedcd('0x30')]=_[_0xedcd('0x31')](_0x241885['query']);_0x40d5c9[_0xedcd('0x3a')]=_['intersection'](_0x40d5c9['model'],_0x40d5c9['query']);_0x36cc2a['attributes']=_['intersection'](_0x40d5c9[_0xedcd('0x2f')],qs[_0xedcd('0x34')](_0x241885[_0xedcd('0x30')]['fields']));_0x36cc2a[_0xedcd('0x33')]=_0x36cc2a[_0xedcd('0x33')][_0xedcd('0x46')]?_0x36cc2a[_0xedcd('0x33')]:_0x40d5c9['model'];if(_0x241885['query']['includeAll']){_0x36cc2a[_0xedcd('0x40')]=[{'all':!![]}];}_0x36cc2a=_['merge']({},_0x36cc2a,_0x241885[_0xedcd('0x47')]);return db['JscriptyProject'][_0xedcd('0x48')](_0x36cc2a)['then'](handleEntityNotFound(_0x59f557,null))['then'](respondWithResult(_0x59f557,null))[_0xedcd('0x43')](handleError(_0x59f557,null));};exports[_0xedcd('0x49')]=function(_0x1d93e5,_0x43c112){return db[_0xedcd('0x3e')][_0xedcd('0x49')](_0x1d93e5[_0xedcd('0x4a')],{})['then'](function(_0x129ff6){var _0x49f2af=_0x1d93e5[_0xedcd('0x4b')][_0xedcd('0x4c')]({'plain':!![]});if(!_0x49f2af)throw new Error(_0xedcd('0x4d'));if(_0x49f2af[_0xedcd('0x4e')]==='user'){var _0x16f37f=_0x129ff6[_0xedcd('0x4c')]({'plain':!![]});var _0x2c0100=_0xedcd('0x4f');return db[_0xedcd('0x50')]['find']({'where':{'name':_0x2c0100,'userProfileId':_0x49f2af['userProfileId']},'raw':!![]})[_0xedcd('0x26')](function(_0x378703){if(_0x378703&&_0x378703['autoAssociation']===0x0){return db['UserProfileResource'][_0xedcd('0x49')]({'name':_0x16f37f[_0xedcd('0x27')],'resourceId':_0x16f37f['id'],'type':_0x378703[_0xedcd('0x27')],'sectionId':_0x378703['id']},{})[_0xedcd('0x26')](function(){return _0x129ff6;});}else{return _0x129ff6;}})[_0xedcd('0x43')](function(_0x5b723c){logger[_0xedcd('0x51')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x5b723c);throw _0x5b723c;});}return _0x129ff6;})[_0xedcd('0x26')](respondWithResult(_0x43c112,0xc9))[_0xedcd('0x43')](handleError(_0x43c112,null));};exports[_0xedcd('0x52')]=function(_0x43e25b,_0x3c48b8){var _0x3a088c={'where':{'id':_0x43e25b['params']['id']}},_0xba585e={};_0xba585e[_0xedcd('0x2f')]=_[_0xedcd('0x31')](db[_0xedcd('0x3e')]['rawAttributes']);_0x3a088c[_0xedcd('0x33')]=_[_0xedcd('0x32')](_0xba585e['model'],qs['fields'](_0x43e25b[_0xedcd('0x30')][_0xedcd('0x34')]));_0x3a088c[_0xedcd('0x33')]=_0x3a088c[_0xedcd('0x33')][_0xedcd('0x46')]?_0x3a088c[_0xedcd('0x33')]:_0xba585e[_0xedcd('0x2f')];if(_0x43e25b[_0xedcd('0x30')][_0xedcd('0x53')]){_0x3a088c[_0xedcd('0x40')]=[{'all':!![]}];}_0x3a088c=_['merge']({},_0x3a088c,_0x43e25b[_0xedcd('0x47')]);return db[_0xedcd('0x3e')]['find'](_0x3a088c)[_0xedcd('0x26')](handleEntityNotFound(_0x3c48b8,null))[_0xedcd('0x26')](function(_0x51bea2){if(_0x51bea2){var _0x3d5848=_0x51bea2[_0xedcd('0x4c')]({'plain':!![]});_0x3d5848=qs['omit'](_0x3d5848,['id','createdAt',_0xedcd('0x54')]);_0x43e25b[_0xedcd('0x4a')]=_[_0xedcd('0x55')](_0x43e25b[_0xedcd('0x4a')],['id','createdAt',_0xedcd('0x54')]);return db['JscriptyProject'][_0xedcd('0x49')](_[_0xedcd('0x3c')](_0x3d5848,_0x43e25b[_0xedcd('0x4a')]),{'include':_0x43e25b[_0xedcd('0x30')]['includeAll']?[{'all':!![]}]:undefined})[_0xedcd('0x26')](function(_0x303293){var _0x1fe99d=_0x43e25b[_0xedcd('0x4b')][_0xedcd('0x4c')]({'plain':!![]});if(!_0x1fe99d)throw new Error(_0xedcd('0x4d'));if(_0x1fe99d[_0xedcd('0x4e')]===_0xedcd('0x4b')){var _0x2b3d3b=_0x303293['get']({'plain':!![]});var _0x59cc78=_0xedcd('0x4f');return db['UserProfileSection']['find']({'where':{'name':_0x59cc78,'userProfileId':_0x1fe99d[_0xedcd('0x56')]},'raw':!![]})[_0xedcd('0x26')](function(_0x1d8f20){if(_0x1d8f20&&_0x1d8f20[_0xedcd('0x57')]===0x0){return db[_0xedcd('0x25')][_0xedcd('0x49')]({'name':_0x2b3d3b[_0xedcd('0x27')],'resourceId':_0x2b3d3b['id'],'type':_0x1d8f20['name'],'sectionId':_0x1d8f20['id']},{})[_0xedcd('0x26')](function(){return _0x303293;});}else{return _0x303293;}})[_0xedcd('0x43')](function(_0xeddb2){logger[_0xedcd('0x51')](_0xedcd('0x58'),_0xeddb2);throw _0xeddb2;});}return _0x303293;});}})[_0xedcd('0x26')](respondWithResult(_0x3c48b8,0xc9))[_0xedcd('0x43')](handleError(_0x3c48b8,null));};exports['update']=function(_0x3bcaa0,_0x233481){if(_0x3bcaa0[_0xedcd('0x4a')]['id']){delete _0x3bcaa0[_0xedcd('0x4a')]['id'];}return db['JscriptyProject'][_0xedcd('0x48')]({'where':{'id':_0x3bcaa0[_0xedcd('0x45')]['id']}})[_0xedcd('0x26')](handleEntityNotFound(_0x233481,null))[_0xedcd('0x26')](saveUpdates(_0x3bcaa0['body'],null))[_0xedcd('0x26')](respondWithResult(_0x233481,null))[_0xedcd('0x43')](handleError(_0x233481,null));};exports[_0xedcd('0x24')]=function(_0x286f9e,_0x6e165c){return db[_0xedcd('0x3e')][_0xedcd('0x48')]({'where':{'id':_0x286f9e[_0xedcd('0x45')]['id']}})[_0xedcd('0x26')](handleEntityNotFound(_0x6e165c,null))[_0xedcd('0x26')](removeEntity(_0x6e165c,null))[_0xedcd('0x43')](handleError(_0x6e165c,null));};exports[_0xedcd('0x59')]=function(_0x37102c,_0x3c90e0,_0x1afdf7){var _0x480ff3={'raw':!![],'where':{}};var _0x1afc6b={};var _0x4a8b83={'count':0x0,'rows':[]};return db[_0xedcd('0x3e')][_0xedcd('0x5a')]({'where':{'id':_0x37102c['params']['id']}})[_0xedcd('0x26')](handleEntityNotFound(_0x3c90e0,null))[_0xedcd('0x26')](function(_0x42f907){if(_0x42f907){_0x1afc6b['model']=_['keys'](db[_0xedcd('0x5b')]['rawAttributes']);_0x1afc6b[_0xedcd('0x30')]=_[_0xedcd('0x31')](_0x37102c[_0xedcd('0x30')]);_0x1afc6b[_0xedcd('0x3a')]=_[_0xedcd('0x32')](_0x1afc6b['model'],_0x1afc6b[_0xedcd('0x30')]);_0x480ff3[_0xedcd('0x33')]=_[_0xedcd('0x32')](_0x1afc6b[_0xedcd('0x2f')],qs['fields'](_0x37102c[_0xedcd('0x30')]['fields']));_0x480ff3[_0xedcd('0x33')]=_0x480ff3[_0xedcd('0x33')][_0xedcd('0x46')]?_0x480ff3[_0xedcd('0x33')]:_0x1afc6b[_0xedcd('0x2f')];if(!_0x37102c[_0xedcd('0x30')][_0xedcd('0x35')](_0xedcd('0x36'))){_0x480ff3[_0xedcd('0x1e')]=qs[_0xedcd('0x1e')](_0x37102c['query'][_0xedcd('0x1e')]);_0x480ff3[_0xedcd('0x1d')]=qs[_0xedcd('0x1d')](_0x37102c[_0xedcd('0x30')][_0xedcd('0x1d')]);}_0x480ff3[_0xedcd('0x37')]=qs['sort'](_0x37102c[_0xedcd('0x30')]['sort']);_0x480ff3[_0xedcd('0x39')]=qs[_0xedcd('0x3a')](_['pick'](_0x37102c[_0xedcd('0x30')],_0x1afc6b[_0xedcd('0x3a')]));_0x480ff3['where']['ProjectId']=_0x42f907['id'];if(_0x37102c['query'][_0xedcd('0x5c')]){_0x480ff3[_0xedcd('0x39')]=_[_0xedcd('0x3c')](_0x480ff3[_0xedcd('0x39')],{'$or':_['map'](_0x480ff3[_0xedcd('0x33')],function(_0x31b744){var _0x4e8597={};_0x4e8597[_0x31b744]={'$like':'%'+_0x37102c[_0xedcd('0x30')][_0xedcd('0x5c')]+'%'};return _0x4e8597;})});}_0x480ff3=_[_0xedcd('0x3c')]({},_0x480ff3,_0x37102c[_0xedcd('0x47')]);return db[_0xedcd('0x5b')][_0xedcd('0x3f')]({'where':_0x480ff3[_0xedcd('0x39')]})['then'](function(_0x50da63){_0x4a8b83[_0xedcd('0x3f')]=_0x50da63;if(_0x37102c[_0xedcd('0x30')][_0xedcd('0x53')]){_0x480ff3['include']=[{'all':!![]}];}return db[_0xedcd('0x5b')][_0xedcd('0x41')](_0x480ff3);})[_0xedcd('0x26')](function(_0x59a6a9){_0x4a8b83[_0xedcd('0x42')]=_0x59a6a9;return _0x4a8b83;});}})[_0xedcd('0x26')](respondWithFilteredResult(_0x3c90e0,_0x480ff3))[_0xedcd('0x43')](handleError(_0x3c90e0,null));};exports[_0xedcd('0x5d')]=function(_0x5b6c7d,_0x4f41a9,_0x3c264e){var _0x456eed={'raw':!![],'where':{}};var _0x10e252={};var _0x4f189a={'count':0x0,'rows':[]};return db[_0xedcd('0x3e')][_0xedcd('0x5a')]({'where':{'id':_0x5b6c7d[_0xedcd('0x45')]['id']}})[_0xedcd('0x26')](handleEntityNotFound(_0x4f41a9,null))[_0xedcd('0x26')](function(_0x27c950){if(_0x27c950){_0x10e252['model']=_[_0xedcd('0x31')](db[_0xedcd('0x5e')][_0xedcd('0x2b')]);_0x10e252['query']=_[_0xedcd('0x31')](_0x5b6c7d[_0xedcd('0x30')]);_0x10e252[_0xedcd('0x3a')]=_[_0xedcd('0x32')](_0x10e252[_0xedcd('0x2f')],_0x10e252[_0xedcd('0x30')]);_0x456eed[_0xedcd('0x33')]=_[_0xedcd('0x32')](_0x10e252[_0xedcd('0x2f')],qs['fields'](_0x5b6c7d[_0xedcd('0x30')][_0xedcd('0x34')]));_0x456eed[_0xedcd('0x33')]=_0x456eed[_0xedcd('0x33')][_0xedcd('0x46')]?_0x456eed['attributes']:_0x10e252['model'];if(!_0x5b6c7d[_0xedcd('0x30')][_0xedcd('0x35')]('nolimit')){_0x456eed[_0xedcd('0x1e')]=qs['limit'](_0x5b6c7d['query'][_0xedcd('0x1e')]);_0x456eed['offset']=qs[_0xedcd('0x1d')](_0x5b6c7d[_0xedcd('0x30')][_0xedcd('0x1d')]);}_0x456eed[_0xedcd('0x37')]=qs[_0xedcd('0x38')](_0x5b6c7d['query'][_0xedcd('0x38')]);_0x456eed[_0xedcd('0x39')]=qs['filters'](_[_0xedcd('0x3b')](_0x5b6c7d[_0xedcd('0x30')],_0x10e252[_0xedcd('0x3a')]));_0x456eed[_0xedcd('0x39')][_0xedcd('0x5f')]=_0x27c950['id'];if(_0x5b6c7d[_0xedcd('0x30')]['filter']){_0x456eed[_0xedcd('0x39')]=_[_0xedcd('0x3c')](_0x456eed[_0xedcd('0x39')],{'$or':_['map'](_0x456eed['attributes'],function(_0x4540a2){var _0x5bbe26={};_0x5bbe26[_0x4540a2]={'$like':'%'+_0x5b6c7d['query']['filter']+'%'};return _0x5bbe26;})});}_0x456eed=_[_0xedcd('0x3c')]({},_0x456eed,_0x5b6c7d[_0xedcd('0x47')]);return db[_0xedcd('0x5e')][_0xedcd('0x3f')]({'where':_0x456eed[_0xedcd('0x39')]})[_0xedcd('0x26')](function(_0x368c4a){_0x4f189a['count']=_0x368c4a;if(_0x5b6c7d[_0xedcd('0x30')][_0xedcd('0x53')]){_0x456eed[_0xedcd('0x40')]=[{'all':!![]}];}return db['JscriptyAnswerReport']['findAll'](_0x456eed);})[_0xedcd('0x26')](function(_0xc287af){_0x4f189a[_0xedcd('0x42')]=_0xc287af;return _0x4f189a;});}})[_0xedcd('0x26')](respondWithFilteredResult(_0x4f41a9,_0x456eed))[_0xedcd('0x43')](handleError(_0x4f41a9,null));};function char(_0x10bf4b){return _0xedcd('0x60')===typeof _0x10bf4b?String[_0xedcd('0x61')][_0xedcd('0x21')](null,arguments):_0x10bf4b;}function needsEncapsulation(_0x33fa1d){return!!_0x33fa1d&&(_0x33fa1d['toString']()[_0xedcd('0x62')](char(0xd))>=0x0||_0x33fa1d[_0xedcd('0x63')]()[_0xedcd('0x62')](char(0xa))>=0x0||_0x33fa1d[_0xedcd('0x63')]()[_0xedcd('0x62')](char(0x2c))>=0x0||_0x33fa1d[_0xedcd('0x63')]()[_0xedcd('0x62')](char(0x22))>=0x0);}function encapsulate(_0x179ff9){var _0x876fa7=char(0x22),_0x285737='\x5c'+char(0x22),_0x3fe118=_0x179ff9['toString']()[_0xedcd('0x64')](new RegExp(_0x876fa7,'g'),_0x285737);return _0x876fa7+_0x3fe118+_0x876fa7;}exports[_0xedcd('0x65')]=function(_0x3526ad,_0x116e64,_0x4c35c8){var _0x588e1e,_0x5698fd;var _0x575130={'where':{'ProjectId':_0x3526ad['params']['id']}};if(_0x3526ad[_0xedcd('0x30')][_0xedcd('0x66')]){_0x575130[_0xedcd('0x39')]['starttime']=JSON[_0xedcd('0x67')](_0x3526ad[_0xedcd('0x30')]['startTime']);}return db[_0xedcd('0x5b')][_0xedcd('0x41')](_0x575130)[_0xedcd('0x26')](handleEntityNotFound(_0x116e64,null))[_0xedcd('0x26')](function(_0x16f279){if(_0x16f279){_0x588e1e=_0x16f279;return db[_0xedcd('0x68')][_0xedcd('0x41')]({'where':{'SessionId':{'$in':_[_0xedcd('0x2a')](_0x588e1e,'id')},'ProjectId':_0x3526ad[_0xedcd('0x45')]['id']},'order':_0xedcd('0x69')});}})[_0xedcd('0x26')](handleEntityNotFound(_0x116e64,null))[_0xedcd('0x26')](function(_0x4fdb7d){if(_0x4fdb7d){_0x5698fd=_0x4fdb7d;var _0x4fcec4={};for(var _0x18c087=0x0,_0x5058a4=_0x5698fd['length'];_0x18c087<_0x5058a4;_0x18c087++){if(!_0x4fcec4[_0xedcd('0x35')](_0x5698fd[_0x18c087][_0xedcd('0x6a')])){_0x4fcec4[_0x5698fd[_0x18c087][_0xedcd('0x6a')]]=needsEncapsulation(_0x5698fd[_0x18c087]['question'])?encapsulate(_0x5698fd[_0x18c087][_0xedcd('0x6b')]):_0x5698fd[_0x18c087]['question'];}}var _0x3c5b4f=[],_0x296acb={};for(var _0x1758b3=0x0,_0x4c3531=_0x588e1e['length'];_0x1758b3<_0x4c3531;_0x1758b3++){_0x296acb={'ProjectId':_0x3526ad[_0xedcd('0x45')]['id'],'SessionId':_0x588e1e[_0x1758b3]['id'],'StartTime':moment(_0x588e1e[_0x1758b3][_0xedcd('0x6c')])[_0xedcd('0x6d')](_0xedcd('0x6e'))};for(var _0x4996bb=0x0,_0x172475=_0x5698fd[_0xedcd('0x46')];_0x4996bb<_0x172475;_0x4996bb++){if(_0x5698fd[_0x4996bb][_0xedcd('0x6f')]==_0x588e1e[_0x1758b3]['id']&&_0x4fcec4[_0xedcd('0x35')](_0x5698fd[_0x4996bb][_0xedcd('0x6a')])){_0x296acb[_0x4fcec4[_0x5698fd[_0x4996bb][_0xedcd('0x6a')]]]=_0x5698fd[_0x4996bb][_0xedcd('0x70')];}}for(var _0xf8d4ba in _0x4fcec4){if(!_0x296acb[_0xedcd('0x35')](_0x4fcec4[_0xf8d4ba])){_0x296acb[_0x4fcec4[_0xf8d4ba]]=null;}}_0x3c5b4f[_0xedcd('0x71')](_0x296acb);}return _0x3c5b4f;}})[_0xedcd('0x26')](function(_0x402905){if(!_[_0xedcd('0x72')](_0x402905)){var _0x387040=toCsv(_0x402905);var _0x1db6f1=Date[_0xedcd('0x73')]();fs[_0xedcd('0x74')](util['format'](_0xedcd('0x75'),_0x3526ad['params']['id'],_0x1db6f1),_0x387040);_0x116e64[_0xedcd('0x76')]('Content-disposition',_0xedcd('0x77')+util[_0xedcd('0x6d')](_0xedcd('0x78'),_0x3526ad['params']['id'],_0x1db6f1));_0x116e64[_0xedcd('0x76')](_0xedcd('0x79'),_0xedcd('0x7a'));return _0x116e64[_0xedcd('0x7b')](util[_0xedcd('0x6d')](_0xedcd('0x75'),_0x3526ad[_0xedcd('0x45')]['id'],_0x1db6f1));}else{return _0x116e64['sendStatus'](0xcc);}})[_0xedcd('0x43')](handleError(_0x116e64,null));};