Built motion from commit (unavailable).|2.5.3
[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 _0xd999=['html-pdf','eml-format','zip-dir','mustache','path','sox','to-csv','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','../../mysqldb','sendStatus','status','end','json','count','offset','set','apply','reject','update','then','destroy','get','Projects','UserProfileResource','error','stack','name','send','index','map','JscriptyProject','rawAttributes','fieldName','type','key','model','query','keys','intersection','attributes','fields','hasOwnProperty','nolimit','limit','sort','where','filters','pick','filter','VIRTUAL','merge','options','includeAll','include','findAll','rows','catch','show','params','length','create','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','user','find','userProfileId','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','clone','omit','updatedAt','body','createdAt','UserProfileSection','autoAssociation','getSessions','JscriptySessionReport','JscriptyAnswerReport','order','ProjectId','number','toString','indexOf','replace','getSummary','startTime','starttime','parse','JscriptyQuestionReport','-createdAt','questionId','question','YYYY-MM-DD\x20HH:mm:ss','answer','writeFileSync','format','/tmp/Jscripty_Project_%d_Summary_%s.csv','setHeader','Content-disposition','Jscripty_Project_%d_Summary_%s.csv','Content-type','download'];(function(_0x357f41,_0x443963){var _0x332d0d=function(_0x43ddfb){while(--_0x43ddfb){_0x357f41['push'](_0x357f41['shift']());}};_0x332d0d(++_0x443963);}(_0xd999,0x6e));var _0x9d99=function(_0x4973ff,_0x30abe4){_0x4973ff=_0x4973ff-0x0;var _0x4dd6b6=_0xd999[_0x4973ff];return _0x4dd6b6;};'use strict';var pdf=require(_0x9d99('0x0'));var emlformat=require(_0x9d99('0x1'));var rimraf=require('rimraf');var zipdir=require(_0x9d99('0x2'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0x9d99('0x3'));var util=require('util');var path=require(_0x9d99('0x4'));var sox=require(_0x9d99('0x5'));var csv=require(_0x9d99('0x6'));var ejs=require('ejs');var fs=require('fs');var _=require('lodash');var squel=require(_0x9d99('0x7'));var crypto=require('crypto');var jsforce=require(_0x9d99('0x8'));var deskjs=require(_0x9d99('0x9'));var toCsv=require(_0x9d99('0x6'));var querystring=require(_0x9d99('0xa'));var Papa=require(_0x9d99('0xb'));var Redis=require(_0x9d99('0xc'));var authService=require(_0x9d99('0xd'));var qs=require(_0x9d99('0xe'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x9d99('0xf'));var logger=require(_0x9d99('0x10'))('api');var utils=require('../../config/utils');var config=require('../../config/environment');var db=require(_0x9d99('0x11'))['db'];function respondWithStatusCode(_0x4b9954,_0x5dc94e){_0x5dc94e=_0x5dc94e||0xcc;return function(_0xf3e768){if(_0xf3e768){return _0x4b9954[_0x9d99('0x12')](_0x5dc94e);}return _0x4b9954[_0x9d99('0x13')](_0x5dc94e)[_0x9d99('0x14')]();};}function respondWithResult(_0x4cf75a,_0x481414){_0x481414=_0x481414||0xc8;return function(_0x49a68b){if(_0x49a68b){return _0x4cf75a['status'](_0x481414)[_0x9d99('0x15')](_0x49a68b);}};}function respondWithFilteredResult(_0x375652,_0x174964){return function(_0x386e15){if(_0x386e15){var _0x4d0f8a=_0x386e15[_0x9d99('0x16')],_0x1911ea=_0x174964[_0x9d99('0x17')],_0x29868b=_0x174964['offset']+_0x174964['limit'],_0x2e8ac1;if(_0x29868b>=_0x4d0f8a){_0x29868b=_0x4d0f8a;_0x2e8ac1=0xc8;}else{_0x2e8ac1=0xce;}_0x375652[_0x9d99('0x13')](_0x2e8ac1);return _0x375652[_0x9d99('0x18')]('Content-Range',_0x1911ea+'-'+_0x29868b+'/'+_0x4d0f8a)[_0x9d99('0x15')](_0x386e15);}return null;};}function patchUpdates(_0x1b6ff3){return function(_0x2be4bd){try{jsonpatch[_0x9d99('0x19')](_0x2be4bd,_0x1b6ff3,!![]);}catch(_0x12e4a9){return BPromise[_0x9d99('0x1a')](_0x12e4a9);}return _0x2be4bd['save']();};}function saveUpdates(_0x21f866,_0x563a97){return function(_0x31bad8){if(_0x31bad8){return _0x31bad8[_0x9d99('0x1b')](_0x21f866)[_0x9d99('0x1c')](function(_0xf68e68){return _0xf68e68;});}return null;};}function removeEntity(_0x4ee7da,_0x4e5da3){return function(_0x400bbe){if(_0x400bbe){return _0x400bbe[_0x9d99('0x1d')]()['then'](function(){var _0x5aa456=_0x400bbe[_0x9d99('0x1e')]({'plain':!![]});var _0x495b3b=_0x9d99('0x1f');return db[_0x9d99('0x20')]['destroy']({'where':{'type':_0x495b3b,'resourceId':_0x5aa456['id']}})[_0x9d99('0x1c')](function(){return _0x400bbe;});})['then'](function(){_0x4ee7da['status'](0xcc)[_0x9d99('0x14')]();});}};}function handleEntityNotFound(_0xa99df9,_0x3aa904){return function(_0x2d3310){if(!_0x2d3310){_0xa99df9['sendStatus'](0x194);}return _0x2d3310;};}function handleError(_0x230be4,_0x3476c1){_0x3476c1=_0x3476c1||0x1f4;return function(_0x3fee4f){logger[_0x9d99('0x21')](_0x3fee4f[_0x9d99('0x22')]);if(_0x3fee4f[_0x9d99('0x23')]){delete _0x3fee4f[_0x9d99('0x23')];}_0x230be4[_0x9d99('0x13')](_0x3476c1)[_0x9d99('0x24')](_0x3fee4f);};}exports[_0x9d99('0x25')]=function(_0x52e02e,_0x370c1c){var _0x2db3cb={},_0x2ad1cb={},_0x48865a={'count':0x0,'rows':[]};var _0x3ad0d8=_[_0x9d99('0x26')](db[_0x9d99('0x27')][_0x9d99('0x28')],function(_0x2bc7bc){return{'name':_0x2bc7bc[_0x9d99('0x29')],'type':_0x2bc7bc[_0x9d99('0x2a')][_0x9d99('0x2b')]};});_0x2ad1cb[_0x9d99('0x2c')]=_[_0x9d99('0x26')](_0x3ad0d8,_0x9d99('0x23'));_0x2ad1cb[_0x9d99('0x2d')]=_[_0x9d99('0x2e')](_0x52e02e[_0x9d99('0x2d')]);_0x2ad1cb['filters']=_[_0x9d99('0x2f')](_0x2ad1cb[_0x9d99('0x2c')],_0x2ad1cb['query']);_0x2db3cb[_0x9d99('0x30')]=_[_0x9d99('0x2f')](_0x2ad1cb[_0x9d99('0x2c')],qs['fields'](_0x52e02e['query'][_0x9d99('0x31')]));_0x2db3cb['attributes']=_0x2db3cb[_0x9d99('0x30')]['length']?_0x2db3cb[_0x9d99('0x30')]:_0x2ad1cb[_0x9d99('0x2c')];if(!_0x52e02e[_0x9d99('0x2d')][_0x9d99('0x32')](_0x9d99('0x33'))){_0x2db3cb[_0x9d99('0x34')]=qs[_0x9d99('0x34')](_0x52e02e[_0x9d99('0x2d')]['limit']);_0x2db3cb[_0x9d99('0x17')]=qs[_0x9d99('0x17')](_0x52e02e[_0x9d99('0x2d')][_0x9d99('0x17')]);}_0x2db3cb['order']=qs[_0x9d99('0x35')](_0x52e02e[_0x9d99('0x2d')]['sort']);_0x2db3cb[_0x9d99('0x36')]=qs[_0x9d99('0x37')](_[_0x9d99('0x38')](_0x52e02e['query'],_0x2ad1cb[_0x9d99('0x37')]),_0x3ad0d8);if(_0x52e02e[_0x9d99('0x2d')][_0x9d99('0x39')]){_0x2db3cb[_0x9d99('0x36')]=_['merge'](_0x2db3cb['where'],{'$or':_[_0x9d99('0x26')](_0x3ad0d8,function(_0x3f0455){if(_0x3f0455[_0x9d99('0x2a')]!==_0x9d99('0x3a')){var _0x510345={};_0x510345[_0x3f0455[_0x9d99('0x23')]]={'$like':'%'+_0x52e02e[_0x9d99('0x2d')][_0x9d99('0x39')]+'%'};return _0x510345;}})});}_0x2db3cb=_[_0x9d99('0x3b')]({},_0x2db3cb,_0x52e02e[_0x9d99('0x3c')]);var _0xdaedb9={'where':_0x2db3cb['where']};return db[_0x9d99('0x27')][_0x9d99('0x16')](_0xdaedb9)[_0x9d99('0x1c')](function(_0x12a898){_0x48865a[_0x9d99('0x16')]=_0x12a898;if(_0x52e02e['query'][_0x9d99('0x3d')]){_0x2db3cb[_0x9d99('0x3e')]=[{'all':!![]}];}return db[_0x9d99('0x27')][_0x9d99('0x3f')](_0x2db3cb);})['then'](function(_0x31def6){_0x48865a[_0x9d99('0x40')]=_0x31def6;return _0x48865a;})[_0x9d99('0x1c')](respondWithFilteredResult(_0x370c1c,_0x2db3cb))[_0x9d99('0x41')](handleError(_0x370c1c,null));};exports[_0x9d99('0x42')]=function(_0x4d0c41,_0x24b2f6){var _0x5868e6={'raw':![],'where':{'id':_0x4d0c41[_0x9d99('0x43')]['id']}},_0x23dc81={};_0x23dc81[_0x9d99('0x2c')]=_[_0x9d99('0x2e')](db[_0x9d99('0x27')]['rawAttributes']);_0x23dc81[_0x9d99('0x2d')]=_[_0x9d99('0x2e')](_0x4d0c41[_0x9d99('0x2d')]);_0x23dc81[_0x9d99('0x37')]=_[_0x9d99('0x2f')](_0x23dc81[_0x9d99('0x2c')],_0x23dc81[_0x9d99('0x2d')]);_0x5868e6[_0x9d99('0x30')]=_['intersection'](_0x23dc81['model'],qs[_0x9d99('0x31')](_0x4d0c41[_0x9d99('0x2d')]['fields']));_0x5868e6[_0x9d99('0x30')]=_0x5868e6[_0x9d99('0x30')][_0x9d99('0x44')]?_0x5868e6[_0x9d99('0x30')]:_0x23dc81[_0x9d99('0x2c')];if(_0x4d0c41[_0x9d99('0x2d')][_0x9d99('0x3d')]){_0x5868e6[_0x9d99('0x3e')]=[{'all':!![]}];}_0x5868e6=_[_0x9d99('0x3b')]({},_0x5868e6,_0x4d0c41[_0x9d99('0x3c')]);return db[_0x9d99('0x27')]['find'](_0x5868e6)[_0x9d99('0x1c')](handleEntityNotFound(_0x24b2f6,null))[_0x9d99('0x1c')](respondWithResult(_0x24b2f6,null))['catch'](handleError(_0x24b2f6,null));};exports['create']=function(_0xb878dd,_0x45e8b1){return db[_0x9d99('0x27')][_0x9d99('0x45')](_0xb878dd['body'],{})[_0x9d99('0x1c')](function(_0x2bfa41){var _0xde2b59=_0xb878dd['user']['get']({'plain':!![]});if(!_0xde2b59)throw new Error(_0x9d99('0x46'));if(_0xde2b59[_0x9d99('0x47')]===_0x9d99('0x48')){var _0x53dcf4=_0x2bfa41[_0x9d99('0x1e')]({'plain':!![]});var _0x2c2261='Projects';return db['UserProfileSection'][_0x9d99('0x49')]({'where':{'name':_0x2c2261,'userProfileId':_0xde2b59[_0x9d99('0x4a')]},'raw':!![]})[_0x9d99('0x1c')](function(_0x4b37b5){if(_0x4b37b5&&_0x4b37b5['autoAssociation']===0x0){return db[_0x9d99('0x20')][_0x9d99('0x45')]({'name':_0x53dcf4[_0x9d99('0x23')],'resourceId':_0x53dcf4['id'],'type':_0x4b37b5[_0x9d99('0x23')],'sectionId':_0x4b37b5['id']},{})[_0x9d99('0x1c')](function(){return _0x2bfa41;});}else{return _0x2bfa41;}})['catch'](function(_0x196b29){logger['error'](_0x9d99('0x4b'),_0x196b29);throw _0x196b29;});}return _0x2bfa41;})['then'](respondWithResult(_0x45e8b1,0xc9))[_0x9d99('0x41')](handleError(_0x45e8b1,null));};exports[_0x9d99('0x4c')]=function(_0x7eb622,_0x2cc689){var _0x42969b={'where':{'id':_0x7eb622[_0x9d99('0x43')]['id']}},_0x2a8b67={};_0x2a8b67[_0x9d99('0x2c')]=_[_0x9d99('0x2e')](db[_0x9d99('0x27')][_0x9d99('0x28')]);_0x42969b['attributes']=_[_0x9d99('0x2f')](_0x2a8b67[_0x9d99('0x2c')],qs[_0x9d99('0x31')](_0x7eb622[_0x9d99('0x2d')][_0x9d99('0x31')]));_0x42969b[_0x9d99('0x30')]=_0x42969b[_0x9d99('0x30')]['length']?_0x42969b[_0x9d99('0x30')]:_0x2a8b67[_0x9d99('0x2c')];if(_0x7eb622[_0x9d99('0x2d')][_0x9d99('0x3d')]){_0x42969b['include']=[{'all':!![]}];}_0x42969b=_[_0x9d99('0x3b')]({},_0x42969b,_0x7eb622[_0x9d99('0x3c')]);return db[_0x9d99('0x27')]['find'](_0x42969b)[_0x9d99('0x1c')](handleEntityNotFound(_0x2cc689,null))[_0x9d99('0x1c')](function(_0x2485f1){if(_0x2485f1){var _0x30c05d=_0x2485f1[_0x9d99('0x1e')]({'plain':!![]});_0x30c05d=qs[_0x9d99('0x4d')](_0x30c05d,['id','createdAt',_0x9d99('0x4e')]);_0x7eb622[_0x9d99('0x4f')]=_[_0x9d99('0x4d')](_0x7eb622[_0x9d99('0x4f')],['id',_0x9d99('0x50'),_0x9d99('0x4e')]);return db[_0x9d99('0x27')][_0x9d99('0x45')](_[_0x9d99('0x3b')](_0x30c05d,_0x7eb622[_0x9d99('0x4f')]),{'include':_0x7eb622[_0x9d99('0x2d')][_0x9d99('0x3d')]?[{'all':!![]}]:undefined})[_0x9d99('0x1c')](function(_0x5050d3){var _0xd517e2=_0x7eb622[_0x9d99('0x48')]['get']({'plain':!![]});if(!_0xd517e2)throw new Error(_0x9d99('0x46'));if(_0xd517e2[_0x9d99('0x47')]==='user'){var _0x22fc35=_0x5050d3[_0x9d99('0x1e')]({'plain':!![]});var _0xf88d=_0x9d99('0x1f');return db[_0x9d99('0x51')][_0x9d99('0x49')]({'where':{'name':_0xf88d,'userProfileId':_0xd517e2[_0x9d99('0x4a')]},'raw':!![]})[_0x9d99('0x1c')](function(_0x44a3a3){if(_0x44a3a3&&_0x44a3a3[_0x9d99('0x52')]===0x0){return db[_0x9d99('0x20')][_0x9d99('0x45')]({'name':_0x22fc35['name'],'resourceId':_0x22fc35['id'],'type':_0x44a3a3[_0x9d99('0x23')],'sectionId':_0x44a3a3['id']},{})[_0x9d99('0x1c')](function(){return _0x5050d3;});}else{return _0x5050d3;}})[_0x9d99('0x41')](function(_0x2e2fe6){logger[_0x9d99('0x21')](_0x9d99('0x4b'),_0x2e2fe6);throw _0x2e2fe6;});}return _0x5050d3;});}})[_0x9d99('0x1c')](respondWithResult(_0x2cc689,0xc9))[_0x9d99('0x41')](handleError(_0x2cc689,null));};exports[_0x9d99('0x1b')]=function(_0x3c00fb,_0x19148f){if(_0x3c00fb[_0x9d99('0x4f')]['id']){delete _0x3c00fb[_0x9d99('0x4f')]['id'];}return db[_0x9d99('0x27')][_0x9d99('0x49')]({'where':{'id':_0x3c00fb[_0x9d99('0x43')]['id']}})[_0x9d99('0x1c')](handleEntityNotFound(_0x19148f,null))['then'](saveUpdates(_0x3c00fb[_0x9d99('0x4f')],null))['then'](respondWithResult(_0x19148f,null))['catch'](handleError(_0x19148f,null));};exports[_0x9d99('0x1d')]=function(_0x5d22a2,_0x1fefab){return db[_0x9d99('0x27')][_0x9d99('0x49')]({'where':{'id':_0x5d22a2[_0x9d99('0x43')]['id']}})[_0x9d99('0x1c')](handleEntityNotFound(_0x1fefab,null))[_0x9d99('0x1c')](removeEntity(_0x1fefab,null))[_0x9d99('0x41')](handleError(_0x1fefab,null));};exports[_0x9d99('0x53')]=function(_0x2203d4,_0x59807c,_0x5f1f13){var _0x2dd3bb={'raw':!![],'where':{}};var _0x3fccc8={};var _0x25d573={'count':0x0,'rows':[]};return db[_0x9d99('0x27')]['findOne']({'where':{'id':_0x2203d4[_0x9d99('0x43')]['id']}})[_0x9d99('0x1c')](handleEntityNotFound(_0x59807c,null))[_0x9d99('0x1c')](function(_0x3161b2){if(_0x3161b2){_0x3fccc8[_0x9d99('0x2c')]=_['keys'](db[_0x9d99('0x54')][_0x9d99('0x28')]);_0x3fccc8[_0x9d99('0x2d')]=_[_0x9d99('0x2e')](_0x2203d4[_0x9d99('0x2d')]);_0x3fccc8[_0x9d99('0x37')]=_[_0x9d99('0x2f')](_0x3fccc8[_0x9d99('0x2c')],_0x3fccc8[_0x9d99('0x2d')]);_0x2dd3bb[_0x9d99('0x30')]=_[_0x9d99('0x2f')](_0x3fccc8[_0x9d99('0x2c')],qs[_0x9d99('0x31')](_0x2203d4['query']['fields']));_0x2dd3bb[_0x9d99('0x30')]=_0x2dd3bb[_0x9d99('0x30')][_0x9d99('0x44')]?_0x2dd3bb[_0x9d99('0x30')]:_0x3fccc8['model'];if(!_0x2203d4['query'][_0x9d99('0x32')](_0x9d99('0x33'))){_0x2dd3bb[_0x9d99('0x34')]=qs['limit'](_0x2203d4[_0x9d99('0x2d')][_0x9d99('0x34')]);_0x2dd3bb[_0x9d99('0x17')]=qs[_0x9d99('0x17')](_0x2203d4[_0x9d99('0x2d')]['offset']);}_0x2dd3bb['order']=qs[_0x9d99('0x35')](_0x2203d4[_0x9d99('0x2d')]['sort']);_0x2dd3bb[_0x9d99('0x36')]=qs['filters'](_[_0x9d99('0x38')](_0x2203d4[_0x9d99('0x2d')],_0x3fccc8['filters']));_0x2dd3bb[_0x9d99('0x36')]['ProjectId']=_0x3161b2['id'];if(_0x2203d4[_0x9d99('0x2d')][_0x9d99('0x39')]){_0x2dd3bb['where']=_[_0x9d99('0x3b')](_0x2dd3bb[_0x9d99('0x36')],{'$or':_[_0x9d99('0x26')](_0x2dd3bb[_0x9d99('0x30')],function(_0x2a5fd2){var _0x364ca8={};_0x364ca8[_0x2a5fd2]={'$like':'%'+_0x2203d4[_0x9d99('0x2d')][_0x9d99('0x39')]+'%'};return _0x364ca8;})});}_0x2dd3bb=_[_0x9d99('0x3b')]({},_0x2dd3bb,_0x2203d4['options']);return db[_0x9d99('0x54')][_0x9d99('0x16')]({'where':_0x2dd3bb[_0x9d99('0x36')]})[_0x9d99('0x1c')](function(_0x2c86c7){_0x25d573['count']=_0x2c86c7;if(_0x2203d4[_0x9d99('0x2d')][_0x9d99('0x3d')]){_0x2dd3bb['include']=[{'all':!![]}];}return db[_0x9d99('0x54')]['findAll'](_0x2dd3bb);})[_0x9d99('0x1c')](function(_0x13f5bc){_0x25d573[_0x9d99('0x40')]=_0x13f5bc;return _0x25d573;});}})[_0x9d99('0x1c')](respondWithFilteredResult(_0x59807c,_0x2dd3bb))['catch'](handleError(_0x59807c,null));};exports['getAnswers']=function(_0x391085,_0x3440e0,_0x194700){var _0x1b8f93={'raw':!![],'where':{}};var _0x53b3c8={};var _0x203d12={'count':0x0,'rows':[]};return db[_0x9d99('0x27')]['findOne']({'where':{'id':_0x391085['params']['id']}})[_0x9d99('0x1c')](handleEntityNotFound(_0x3440e0,null))['then'](function(_0x1e1e65){if(_0x1e1e65){_0x53b3c8[_0x9d99('0x2c')]=_['keys'](db[_0x9d99('0x55')][_0x9d99('0x28')]);_0x53b3c8[_0x9d99('0x2d')]=_['keys'](_0x391085[_0x9d99('0x2d')]);_0x53b3c8[_0x9d99('0x37')]=_[_0x9d99('0x2f')](_0x53b3c8[_0x9d99('0x2c')],_0x53b3c8[_0x9d99('0x2d')]);_0x1b8f93[_0x9d99('0x30')]=_['intersection'](_0x53b3c8[_0x9d99('0x2c')],qs[_0x9d99('0x31')](_0x391085['query'][_0x9d99('0x31')]));_0x1b8f93['attributes']=_0x1b8f93[_0x9d99('0x30')][_0x9d99('0x44')]?_0x1b8f93[_0x9d99('0x30')]:_0x53b3c8['model'];if(!_0x391085['query']['hasOwnProperty'](_0x9d99('0x33'))){_0x1b8f93[_0x9d99('0x34')]=qs[_0x9d99('0x34')](_0x391085[_0x9d99('0x2d')][_0x9d99('0x34')]);_0x1b8f93[_0x9d99('0x17')]=qs[_0x9d99('0x17')](_0x391085[_0x9d99('0x2d')]['offset']);}_0x1b8f93[_0x9d99('0x56')]=qs[_0x9d99('0x35')](_0x391085[_0x9d99('0x2d')][_0x9d99('0x35')]);_0x1b8f93[_0x9d99('0x36')]=qs[_0x9d99('0x37')](_[_0x9d99('0x38')](_0x391085[_0x9d99('0x2d')],_0x53b3c8[_0x9d99('0x37')]));_0x1b8f93['where'][_0x9d99('0x57')]=_0x1e1e65['id'];if(_0x391085[_0x9d99('0x2d')]['filter']){_0x1b8f93[_0x9d99('0x36')]=_[_0x9d99('0x3b')](_0x1b8f93['where'],{'$or':_[_0x9d99('0x26')](_0x1b8f93[_0x9d99('0x30')],function(_0x584245){var _0x394f9c={};_0x394f9c[_0x584245]={'$like':'%'+_0x391085[_0x9d99('0x2d')][_0x9d99('0x39')]+'%'};return _0x394f9c;})});}_0x1b8f93=_['merge']({},_0x1b8f93,_0x391085['options']);return db['JscriptyAnswerReport'][_0x9d99('0x16')]({'where':_0x1b8f93[_0x9d99('0x36')]})['then'](function(_0x334e3a){_0x203d12[_0x9d99('0x16')]=_0x334e3a;if(_0x391085[_0x9d99('0x2d')][_0x9d99('0x3d')]){_0x1b8f93[_0x9d99('0x3e')]=[{'all':!![]}];}return db[_0x9d99('0x55')][_0x9d99('0x3f')](_0x1b8f93);})[_0x9d99('0x1c')](function(_0xe334a4){_0x203d12[_0x9d99('0x40')]=_0xe334a4;return _0x203d12;});}})['then'](respondWithFilteredResult(_0x3440e0,_0x1b8f93))[_0x9d99('0x41')](handleError(_0x3440e0,null));};function char(_0x3e1d67){return _0x9d99('0x58')===typeof _0x3e1d67?String['fromCharCode'][_0x9d99('0x19')](null,arguments):_0x3e1d67;}function needsEncapsulation(_0x999ac1){return!!_0x999ac1&&(_0x999ac1[_0x9d99('0x59')]()[_0x9d99('0x5a')](char(0xd))>=0x0||_0x999ac1[_0x9d99('0x59')]()[_0x9d99('0x5a')](char(0xa))>=0x0||_0x999ac1[_0x9d99('0x59')]()['indexOf'](char(0x2c))>=0x0||_0x999ac1['toString']()[_0x9d99('0x5a')](char(0x22))>=0x0);}function encapsulate(_0xb335b2){var _0x3bd19d=char(0x22),_0x52bd77='\x5c'+char(0x22),_0x310c40=_0xb335b2['toString']()[_0x9d99('0x5b')](new RegExp(_0x3bd19d,'g'),_0x52bd77);return _0x3bd19d+_0x310c40+_0x3bd19d;}exports[_0x9d99('0x5c')]=function(_0x5b83b8,_0x1c3f6e,_0x4d2a02){var _0x1a2dec,_0x1b8174;var _0x56a694={'where':{'ProjectId':_0x5b83b8[_0x9d99('0x43')]['id']}};if(_0x5b83b8[_0x9d99('0x2d')][_0x9d99('0x5d')]){_0x56a694[_0x9d99('0x36')][_0x9d99('0x5e')]=JSON[_0x9d99('0x5f')](_0x5b83b8[_0x9d99('0x2d')][_0x9d99('0x5d')]);}return db['JscriptySessionReport']['findAll'](_0x56a694)[_0x9d99('0x1c')](handleEntityNotFound(_0x1c3f6e,null))['then'](function(_0x2db2f5){if(_0x2db2f5){_0x1a2dec=_0x2db2f5;return db[_0x9d99('0x60')][_0x9d99('0x3f')]({'where':{'SessionId':{'$in':_[_0x9d99('0x26')](_0x1a2dec,'id')},'ProjectId':_0x5b83b8['params']['id']},'order':_0x9d99('0x61')});}})[_0x9d99('0x1c')](handleEntityNotFound(_0x1c3f6e,null))[_0x9d99('0x1c')](function(_0x49f5e7){if(_0x49f5e7){_0x1b8174=_0x49f5e7;var _0x334bb1={};for(var _0x313d90=0x0,_0x3d3616=_0x1b8174[_0x9d99('0x44')];_0x313d90<_0x3d3616;_0x313d90++){if(!_0x334bb1[_0x9d99('0x32')](_0x1b8174[_0x313d90][_0x9d99('0x62')])){_0x334bb1[_0x1b8174[_0x313d90][_0x9d99('0x62')]]=needsEncapsulation(_0x1b8174[_0x313d90][_0x9d99('0x63')])?encapsulate(_0x1b8174[_0x313d90][_0x9d99('0x63')]):_0x1b8174[_0x313d90][_0x9d99('0x63')];}}var _0x325c62=[],_0x263abe={};for(var _0x44374b=0x0,_0x803bf3=_0x1a2dec['length'];_0x44374b<_0x803bf3;_0x44374b++){_0x263abe={'ProjectId':_0x5b83b8[_0x9d99('0x43')]['id'],'SessionId':_0x1a2dec[_0x44374b]['id'],'StartTime':moment(_0x1a2dec[_0x44374b][_0x9d99('0x5e')])['format'](_0x9d99('0x64'))};for(var _0x2ae480=0x0,_0x3f6848=_0x1b8174[_0x9d99('0x44')];_0x2ae480<_0x3f6848;_0x2ae480++){if(_0x1b8174[_0x2ae480]['SessionId']==_0x1a2dec[_0x44374b]['id']&&_0x334bb1[_0x9d99('0x32')](_0x1b8174[_0x2ae480][_0x9d99('0x62')])){_0x263abe[_0x334bb1[_0x1b8174[_0x2ae480][_0x9d99('0x62')]]]=_0x1b8174[_0x2ae480][_0x9d99('0x65')];}}for(var _0x488573 in _0x334bb1){if(!_0x263abe[_0x9d99('0x32')](_0x334bb1[_0x488573])){_0x263abe[_0x334bb1[_0x488573]]=null;}}_0x325c62['push'](_0x263abe);}return _0x325c62;}})[_0x9d99('0x1c')](function(_0x3929c2){if(!_['isEmpty'](_0x3929c2)){var _0x2020da=toCsv(_0x3929c2);var _0x46a92d=Date['now']();fs[_0x9d99('0x66')](util[_0x9d99('0x67')](_0x9d99('0x68'),_0x5b83b8[_0x9d99('0x43')]['id'],_0x46a92d),_0x2020da);_0x1c3f6e[_0x9d99('0x69')](_0x9d99('0x6a'),'attachment;\x20filename='+util[_0x9d99('0x67')](_0x9d99('0x6b'),_0x5b83b8['params']['id'],_0x46a92d));_0x1c3f6e['setHeader'](_0x9d99('0x6c'),'text/csv');return _0x1c3f6e[_0x9d99('0x6d')](util[_0x9d99('0x67')](_0x9d99('0x68'),_0x5b83b8[_0x9d99('0x43')]['id'],_0x46a92d));}else{return _0x1c3f6e[_0x9d99('0x12')](0xcc);}})[_0x9d99('0x41')](handleError(_0x1c3f6e,null));};