Built motion from commit 10af8726.|2.6.34
[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 _0x3f9b=['params','keys','rawAttributes','find','catch','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','UserProfileResource','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','clone','omit','createdAt','updatedAt','getSessions','findOne','JscriptySessionReport','nolimit','order','ProjectId','findAll','getAnswers','JscriptyAnswerReport','number','apply','toString','indexOf','startTime','starttime','JscriptyQuestionReport','-createdAt','questionId','question','format','YYYY-MM-DD\x20HH:mm:ss','answer','push','isEmpty','now','writeFileSync','/tmp/Jscripty_Project_%d_Summary_%s.csv','setHeader','Content-disposition','attachment;\x20filename=','Jscripty_Project_%d_Summary_%s.csv','text/csv','download','zip-dir','request-promise','moment','path','sox','to-csv','fs-extra','lodash','squel','crypto','jsforce','querystring','papaparse','../../components/auth/service','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','end','offset','undefined','limit','count','set','Content-Range','json','reject','save','update','then','destroy','get','Projects','error','stack','name','send','index','map','fieldName','type','model','query','intersection','fields','attributes','length','hasOwnProperty','sort','filters','pick','filter','where','merge','VIRTUAL','options','JscriptyProject','includeAll','include','rows','show'];(function(_0x19a6c4,_0x32bd60){var _0x3eac2f=function(_0x5ee9ec){while(--_0x5ee9ec){_0x19a6c4['push'](_0x19a6c4['shift']());}};_0x3eac2f(++_0x32bd60);}(_0x3f9b,0x11e));var _0xb3f9=function(_0xc2dcd8,_0x69768){_0xc2dcd8=_0xc2dcd8-0x0;var _0x53f809=_0x3f9b[_0xc2dcd8];return _0x53f809;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0xb3f9('0x0'));var jsonpatch=require('fast-json-patch');var rp=require(_0xb3f9('0x1'));var moment=require(_0xb3f9('0x2'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require('util');var path=require(_0xb3f9('0x3'));var sox=require(_0xb3f9('0x4'));var csv=require(_0xb3f9('0x5'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xb3f9('0x6'));var _=require(_0xb3f9('0x7'));var squel=require(_0xb3f9('0x8'));var crypto=require(_0xb3f9('0x9'));var jsforce=require(_0xb3f9('0xa'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0xb3f9('0xb'));var Papa=require(_0xb3f9('0xc'));var Redis=require('ioredis');var authService=require(_0xb3f9('0xd'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xb3f9('0xe'));var logger=require(_0xb3f9('0xf'))(_0xb3f9('0x10'));var utils=require(_0xb3f9('0x11'));var config=require(_0xb3f9('0x12'));var licenseUtil=require(_0xb3f9('0x13'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x1cdce2,_0xbbc1cb){_0xbbc1cb=_0xbbc1cb||0xcc;return function(_0x395561){if(_0x395561){return _0x1cdce2[_0xb3f9('0x14')](_0xbbc1cb);}return _0x1cdce2[_0xb3f9('0x15')](_0xbbc1cb)[_0xb3f9('0x16')]();};}function respondWithResult(_0x36c56c,_0x67f3ee){_0x67f3ee=_0x67f3ee||0xc8;return function(_0x590d44){if(_0x590d44){return _0x36c56c[_0xb3f9('0x15')](_0x67f3ee)['json'](_0x590d44);}};}function respondWithFilteredResult(_0x55256c,_0x214c4b){return function(_0x86b55c){if(_0x86b55c){var _0x171378=typeof _0x214c4b[_0xb3f9('0x17')]===_0xb3f9('0x18')&&typeof _0x214c4b[_0xb3f9('0x19')]===_0xb3f9('0x18');var _0x3f89e5=_0x86b55c['count'];var _0x2c69d4=_0x171378?0x0:_0x214c4b['offset'];var _0x5e7e42=_0x171378?_0x86b55c[_0xb3f9('0x1a')]:_0x214c4b['offset']+_0x214c4b[_0xb3f9('0x19')];var _0x33cf23;if(_0x5e7e42>=_0x3f89e5){_0x5e7e42=_0x3f89e5;_0x33cf23=0xc8;}else{_0x33cf23=0xce;}_0x55256c[_0xb3f9('0x15')](_0x33cf23);return _0x55256c[_0xb3f9('0x1b')](_0xb3f9('0x1c'),_0x2c69d4+'-'+_0x5e7e42+'/'+_0x3f89e5)[_0xb3f9('0x1d')](_0x86b55c);}return null;};}function patchUpdates(_0x4b7da0){return function(_0x51b607){try{jsonpatch['apply'](_0x51b607,_0x4b7da0,!![]);}catch(_0xb17d2e){return BPromise[_0xb3f9('0x1e')](_0xb17d2e);}return _0x51b607[_0xb3f9('0x1f')]();};}function saveUpdates(_0x4bffc7,_0x53f664){return function(_0x3446ea){if(_0x3446ea){return _0x3446ea[_0xb3f9('0x20')](_0x4bffc7)[_0xb3f9('0x21')](function(_0x560077){return _0x560077;});}return null;};}function removeEntity(_0x3b8738,_0x503ba7){return function(_0x20e804){if(_0x20e804){return _0x20e804[_0xb3f9('0x22')]()[_0xb3f9('0x21')](function(){var _0x539f7a=_0x20e804[_0xb3f9('0x23')]({'plain':!![]});var _0x1ffd67=_0xb3f9('0x24');return db['UserProfileResource'][_0xb3f9('0x22')]({'where':{'type':_0x1ffd67,'resourceId':_0x539f7a['id']}})[_0xb3f9('0x21')](function(){return _0x20e804;});})['then'](function(){_0x3b8738[_0xb3f9('0x15')](0xcc)[_0xb3f9('0x16')]();});}};}function handleEntityNotFound(_0x138f3d,_0x2bcb3e){return function(_0x1f65df){if(!_0x1f65df){_0x138f3d['sendStatus'](0x194);}return _0x1f65df;};}function handleError(_0x73d0a3,_0x35912b){_0x35912b=_0x35912b||0x1f4;return function(_0x2939f8){logger[_0xb3f9('0x25')](_0x2939f8[_0xb3f9('0x26')]);if(_0x2939f8[_0xb3f9('0x27')]){delete _0x2939f8[_0xb3f9('0x27')];}_0x73d0a3[_0xb3f9('0x15')](_0x35912b)[_0xb3f9('0x28')](_0x2939f8);};}exports[_0xb3f9('0x29')]=function(_0x2752c5,_0xacbe01){var _0x3e990d={},_0x564977={},_0x5d7762={'count':0x0,'rows':[]};var _0x4ccacb=_[_0xb3f9('0x2a')](db['JscriptyProject']['rawAttributes'],function(_0x5c810c){return{'name':_0x5c810c[_0xb3f9('0x2b')],'type':_0x5c810c[_0xb3f9('0x2c')]['key']};});_0x564977[_0xb3f9('0x2d')]=_[_0xb3f9('0x2a')](_0x4ccacb,_0xb3f9('0x27'));_0x564977['query']=_['keys'](_0x2752c5[_0xb3f9('0x2e')]);_0x564977['filters']=_[_0xb3f9('0x2f')](_0x564977[_0xb3f9('0x2d')],_0x564977[_0xb3f9('0x2e')]);_0x3e990d['attributes']=_[_0xb3f9('0x2f')](_0x564977[_0xb3f9('0x2d')],qs[_0xb3f9('0x30')](_0x2752c5['query'][_0xb3f9('0x30')]));_0x3e990d[_0xb3f9('0x31')]=_0x3e990d['attributes'][_0xb3f9('0x32')]?_0x3e990d['attributes']:_0x564977['model'];if(!_0x2752c5[_0xb3f9('0x2e')][_0xb3f9('0x33')]('nolimit')){_0x3e990d['limit']=qs[_0xb3f9('0x19')](_0x2752c5['query'][_0xb3f9('0x19')]);_0x3e990d[_0xb3f9('0x17')]=qs[_0xb3f9('0x17')](_0x2752c5[_0xb3f9('0x2e')]['offset']);}_0x3e990d['order']=qs[_0xb3f9('0x34')](_0x2752c5['query'][_0xb3f9('0x34')]);_0x3e990d['where']=qs[_0xb3f9('0x35')](_[_0xb3f9('0x36')](_0x2752c5[_0xb3f9('0x2e')],_0x564977[_0xb3f9('0x35')]),_0x4ccacb);if(_0x2752c5[_0xb3f9('0x2e')][_0xb3f9('0x37')]){_0x3e990d[_0xb3f9('0x38')]=_[_0xb3f9('0x39')](_0x3e990d[_0xb3f9('0x38')],{'$or':_['map'](_0x4ccacb,function(_0x169b66){if(_0x169b66[_0xb3f9('0x2c')]!==_0xb3f9('0x3a')){var _0x912986={};_0x912986[_0x169b66[_0xb3f9('0x27')]]={'$like':'%'+_0x2752c5[_0xb3f9('0x2e')][_0xb3f9('0x37')]+'%'};return _0x912986;}})});}_0x3e990d=_['merge']({},_0x3e990d,_0x2752c5[_0xb3f9('0x3b')]);var _0x65a948={'where':_0x3e990d[_0xb3f9('0x38')]};return db[_0xb3f9('0x3c')][_0xb3f9('0x1a')](_0x65a948)[_0xb3f9('0x21')](function(_0x3388b7){_0x5d7762[_0xb3f9('0x1a')]=_0x3388b7;if(_0x2752c5['query'][_0xb3f9('0x3d')]){_0x3e990d[_0xb3f9('0x3e')]=[{'all':!![]}];}return db[_0xb3f9('0x3c')]['findAll'](_0x3e990d);})[_0xb3f9('0x21')](function(_0x25d4e7){_0x5d7762[_0xb3f9('0x3f')]=_0x25d4e7;return _0x5d7762;})[_0xb3f9('0x21')](respondWithFilteredResult(_0xacbe01,_0x3e990d))['catch'](handleError(_0xacbe01,null));};exports[_0xb3f9('0x40')]=function(_0x52fe89,_0x1f5616){var _0x81235c={'raw':![],'where':{'id':_0x52fe89[_0xb3f9('0x41')]['id']}},_0xbdc4eb={};_0xbdc4eb[_0xb3f9('0x2d')]=_[_0xb3f9('0x42')](db[_0xb3f9('0x3c')][_0xb3f9('0x43')]);_0xbdc4eb[_0xb3f9('0x2e')]=_['keys'](_0x52fe89['query']);_0xbdc4eb[_0xb3f9('0x35')]=_[_0xb3f9('0x2f')](_0xbdc4eb['model'],_0xbdc4eb[_0xb3f9('0x2e')]);_0x81235c[_0xb3f9('0x31')]=_[_0xb3f9('0x2f')](_0xbdc4eb['model'],qs[_0xb3f9('0x30')](_0x52fe89['query'][_0xb3f9('0x30')]));_0x81235c['attributes']=_0x81235c[_0xb3f9('0x31')][_0xb3f9('0x32')]?_0x81235c[_0xb3f9('0x31')]:_0xbdc4eb[_0xb3f9('0x2d')];if(_0x52fe89[_0xb3f9('0x2e')][_0xb3f9('0x3d')]){_0x81235c['include']=[{'all':!![]}];}_0x81235c=_[_0xb3f9('0x39')]({},_0x81235c,_0x52fe89[_0xb3f9('0x3b')]);return db[_0xb3f9('0x3c')][_0xb3f9('0x44')](_0x81235c)[_0xb3f9('0x21')](handleEntityNotFound(_0x1f5616,null))[_0xb3f9('0x21')](respondWithResult(_0x1f5616,null))[_0xb3f9('0x45')](handleError(_0x1f5616,null));};exports[_0xb3f9('0x46')]=function(_0x245ddd,_0x5d0e91){return db[_0xb3f9('0x3c')][_0xb3f9('0x46')](_0x245ddd[_0xb3f9('0x47')],{})['then'](function(_0x1715af){var _0x555e29=_0x245ddd[_0xb3f9('0x48')][_0xb3f9('0x23')]({'plain':!![]});if(!_0x555e29)throw new Error(_0xb3f9('0x49'));if(_0x555e29[_0xb3f9('0x4a')]==='user'){var _0x184f7b=_0x1715af[_0xb3f9('0x23')]({'plain':!![]});var _0x2a3a6b=_0xb3f9('0x24');return db[_0xb3f9('0x4b')]['find']({'where':{'name':_0x2a3a6b,'userProfileId':_0x555e29[_0xb3f9('0x4c')]},'raw':!![]})[_0xb3f9('0x21')](function(_0x254846){if(_0x254846&&_0x254846[_0xb3f9('0x4d')]===0x0){return db[_0xb3f9('0x4e')][_0xb3f9('0x46')]({'name':_0x184f7b[_0xb3f9('0x27')],'resourceId':_0x184f7b['id'],'type':_0x254846['name'],'sectionId':_0x254846['id']},{})[_0xb3f9('0x21')](function(){return _0x1715af;});}else{return _0x1715af;}})[_0xb3f9('0x45')](function(_0x136362){logger[_0xb3f9('0x25')](_0xb3f9('0x4f'),_0x136362);throw _0x136362;});}return _0x1715af;})['then'](respondWithResult(_0x5d0e91,0xc9))[_0xb3f9('0x45')](handleError(_0x5d0e91,null));};exports[_0xb3f9('0x50')]=function(_0x30579e,_0x1214ce){var _0x565513={'where':{'id':_0x30579e[_0xb3f9('0x41')]['id']}},_0x3fa7b0={};_0x3fa7b0[_0xb3f9('0x2d')]=_['keys'](db[_0xb3f9('0x3c')][_0xb3f9('0x43')]);_0x565513[_0xb3f9('0x31')]=_[_0xb3f9('0x2f')](_0x3fa7b0[_0xb3f9('0x2d')],qs[_0xb3f9('0x30')](_0x30579e[_0xb3f9('0x2e')][_0xb3f9('0x30')]));_0x565513[_0xb3f9('0x31')]=_0x565513[_0xb3f9('0x31')][_0xb3f9('0x32')]?_0x565513[_0xb3f9('0x31')]:_0x3fa7b0[_0xb3f9('0x2d')];if(_0x30579e[_0xb3f9('0x2e')]['includeAll']){_0x565513[_0xb3f9('0x3e')]=[{'all':!![]}];}_0x565513=_[_0xb3f9('0x39')]({},_0x565513,_0x30579e[_0xb3f9('0x3b')]);return db[_0xb3f9('0x3c')][_0xb3f9('0x44')](_0x565513)[_0xb3f9('0x21')](handleEntityNotFound(_0x1214ce,null))[_0xb3f9('0x21')](function(_0x5a8bfb){if(_0x5a8bfb){var _0x165840=_0x5a8bfb[_0xb3f9('0x23')]({'plain':!![]});_0x165840=qs[_0xb3f9('0x51')](_0x165840,['id',_0xb3f9('0x52'),_0xb3f9('0x53')]);_0x30579e['body']=_[_0xb3f9('0x51')](_0x30579e['body'],['id',_0xb3f9('0x52'),_0xb3f9('0x53')]);return db[_0xb3f9('0x3c')][_0xb3f9('0x46')](_[_0xb3f9('0x39')](_0x165840,_0x30579e[_0xb3f9('0x47')]),{'include':_0x30579e['query'][_0xb3f9('0x3d')]?[{'all':!![]}]:undefined})['then'](function(_0x23a3b6){var _0x3e3775=_0x30579e[_0xb3f9('0x48')][_0xb3f9('0x23')]({'plain':!![]});if(!_0x3e3775)throw new Error(_0xb3f9('0x49'));if(_0x3e3775[_0xb3f9('0x4a')]===_0xb3f9('0x48')){var _0x4c7335=_0x23a3b6[_0xb3f9('0x23')]({'plain':!![]});var _0x20f128=_0xb3f9('0x24');return db['UserProfileSection'][_0xb3f9('0x44')]({'where':{'name':_0x20f128,'userProfileId':_0x3e3775[_0xb3f9('0x4c')]},'raw':!![]})[_0xb3f9('0x21')](function(_0x2d287b){if(_0x2d287b&&_0x2d287b[_0xb3f9('0x4d')]===0x0){return db['UserProfileResource']['create']({'name':_0x4c7335[_0xb3f9('0x27')],'resourceId':_0x4c7335['id'],'type':_0x2d287b['name'],'sectionId':_0x2d287b['id']},{})['then'](function(){return _0x23a3b6;});}else{return _0x23a3b6;}})[_0xb3f9('0x45')](function(_0x552032){logger['error']('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x552032);throw _0x552032;});}return _0x23a3b6;});}})[_0xb3f9('0x21')](respondWithResult(_0x1214ce,0xc9))['catch'](handleError(_0x1214ce,null));};exports['update']=function(_0x533597,_0x5bd7af){if(_0x533597['body']['id']){delete _0x533597[_0xb3f9('0x47')]['id'];}return db['JscriptyProject'][_0xb3f9('0x44')]({'where':{'id':_0x533597[_0xb3f9('0x41')]['id']}})['then'](handleEntityNotFound(_0x5bd7af,null))[_0xb3f9('0x21')](saveUpdates(_0x533597['body'],null))[_0xb3f9('0x21')](respondWithResult(_0x5bd7af,null))[_0xb3f9('0x45')](handleError(_0x5bd7af,null));};exports[_0xb3f9('0x22')]=function(_0x1e8135,_0x199077){return db['JscriptyProject'][_0xb3f9('0x44')]({'where':{'id':_0x1e8135['params']['id']}})[_0xb3f9('0x21')](handleEntityNotFound(_0x199077,null))['then'](removeEntity(_0x199077,null))[_0xb3f9('0x45')](handleError(_0x199077,null));};exports[_0xb3f9('0x54')]=function(_0x2af8a5,_0x3d01e6,_0x4c0ac8){var _0x440c6e={'raw':!![],'where':{}};var _0x334e72={};var _0xd32eff={'count':0x0,'rows':[]};return db[_0xb3f9('0x3c')][_0xb3f9('0x55')]({'where':{'id':_0x2af8a5['params']['id']}})[_0xb3f9('0x21')](handleEntityNotFound(_0x3d01e6,null))['then'](function(_0x14c39c){if(_0x14c39c){_0x334e72['model']=_[_0xb3f9('0x42')](db[_0xb3f9('0x56')][_0xb3f9('0x43')]);_0x334e72[_0xb3f9('0x2e')]=_[_0xb3f9('0x42')](_0x2af8a5[_0xb3f9('0x2e')]);_0x334e72[_0xb3f9('0x35')]=_[_0xb3f9('0x2f')](_0x334e72['model'],_0x334e72[_0xb3f9('0x2e')]);_0x440c6e[_0xb3f9('0x31')]=_['intersection'](_0x334e72['model'],qs['fields'](_0x2af8a5[_0xb3f9('0x2e')][_0xb3f9('0x30')]));_0x440c6e['attributes']=_0x440c6e[_0xb3f9('0x31')]['length']?_0x440c6e['attributes']:_0x334e72[_0xb3f9('0x2d')];if(!_0x2af8a5[_0xb3f9('0x2e')]['hasOwnProperty'](_0xb3f9('0x57'))){_0x440c6e[_0xb3f9('0x19')]=qs[_0xb3f9('0x19')](_0x2af8a5[_0xb3f9('0x2e')][_0xb3f9('0x19')]);_0x440c6e[_0xb3f9('0x17')]=qs[_0xb3f9('0x17')](_0x2af8a5[_0xb3f9('0x2e')]['offset']);}_0x440c6e[_0xb3f9('0x58')]=qs[_0xb3f9('0x34')](_0x2af8a5['query'][_0xb3f9('0x34')]);_0x440c6e[_0xb3f9('0x38')]=qs[_0xb3f9('0x35')](_[_0xb3f9('0x36')](_0x2af8a5['query'],_0x334e72[_0xb3f9('0x35')]));_0x440c6e[_0xb3f9('0x38')][_0xb3f9('0x59')]=_0x14c39c['id'];if(_0x2af8a5[_0xb3f9('0x2e')][_0xb3f9('0x37')]){_0x440c6e[_0xb3f9('0x38')]=_[_0xb3f9('0x39')](_0x440c6e['where'],{'$or':_[_0xb3f9('0x2a')](_0x440c6e['attributes'],function(_0x5840d4){var _0x1b08be={};_0x1b08be[_0x5840d4]={'$like':'%'+_0x2af8a5[_0xb3f9('0x2e')][_0xb3f9('0x37')]+'%'};return _0x1b08be;})});}_0x440c6e=_[_0xb3f9('0x39')]({},_0x440c6e,_0x2af8a5[_0xb3f9('0x3b')]);return db[_0xb3f9('0x56')][_0xb3f9('0x1a')]({'where':_0x440c6e['where']})[_0xb3f9('0x21')](function(_0x24d0ab){_0xd32eff[_0xb3f9('0x1a')]=_0x24d0ab;if(_0x2af8a5['query']['includeAll']){_0x440c6e[_0xb3f9('0x3e')]=[{'all':!![]}];}return db[_0xb3f9('0x56')][_0xb3f9('0x5a')](_0x440c6e);})['then'](function(_0x32fd02){_0xd32eff[_0xb3f9('0x3f')]=_0x32fd02;return _0xd32eff;});}})[_0xb3f9('0x21')](respondWithFilteredResult(_0x3d01e6,_0x440c6e))[_0xb3f9('0x45')](handleError(_0x3d01e6,null));};exports[_0xb3f9('0x5b')]=function(_0x3c1ac5,_0x49d328,_0x46da75){var _0x42035d={'raw':!![],'where':{}};var _0xb589a2={};var _0x35b3f2={'count':0x0,'rows':[]};return db[_0xb3f9('0x3c')][_0xb3f9('0x55')]({'where':{'id':_0x3c1ac5[_0xb3f9('0x41')]['id']}})[_0xb3f9('0x21')](handleEntityNotFound(_0x49d328,null))[_0xb3f9('0x21')](function(_0x17d689){if(_0x17d689){_0xb589a2[_0xb3f9('0x2d')]=_['keys'](db['JscriptyAnswerReport'][_0xb3f9('0x43')]);_0xb589a2[_0xb3f9('0x2e')]=_[_0xb3f9('0x42')](_0x3c1ac5['query']);_0xb589a2['filters']=_['intersection'](_0xb589a2[_0xb3f9('0x2d')],_0xb589a2[_0xb3f9('0x2e')]);_0x42035d['attributes']=_[_0xb3f9('0x2f')](_0xb589a2['model'],qs[_0xb3f9('0x30')](_0x3c1ac5[_0xb3f9('0x2e')]['fields']));_0x42035d[_0xb3f9('0x31')]=_0x42035d[_0xb3f9('0x31')][_0xb3f9('0x32')]?_0x42035d[_0xb3f9('0x31')]:_0xb589a2['model'];if(!_0x3c1ac5[_0xb3f9('0x2e')][_0xb3f9('0x33')]('nolimit')){_0x42035d[_0xb3f9('0x19')]=qs[_0xb3f9('0x19')](_0x3c1ac5['query'][_0xb3f9('0x19')]);_0x42035d[_0xb3f9('0x17')]=qs['offset'](_0x3c1ac5['query'][_0xb3f9('0x17')]);}_0x42035d[_0xb3f9('0x58')]=qs['sort'](_0x3c1ac5[_0xb3f9('0x2e')]['sort']);_0x42035d['where']=qs[_0xb3f9('0x35')](_[_0xb3f9('0x36')](_0x3c1ac5['query'],_0xb589a2[_0xb3f9('0x35')]));_0x42035d[_0xb3f9('0x38')][_0xb3f9('0x59')]=_0x17d689['id'];if(_0x3c1ac5['query'][_0xb3f9('0x37')]){_0x42035d[_0xb3f9('0x38')]=_['merge'](_0x42035d[_0xb3f9('0x38')],{'$or':_[_0xb3f9('0x2a')](_0x42035d[_0xb3f9('0x31')],function(_0x1b936d){var _0x2ba530={};_0x2ba530[_0x1b936d]={'$like':'%'+_0x3c1ac5[_0xb3f9('0x2e')][_0xb3f9('0x37')]+'%'};return _0x2ba530;})});}_0x42035d=_['merge']({},_0x42035d,_0x3c1ac5[_0xb3f9('0x3b')]);return db[_0xb3f9('0x5c')][_0xb3f9('0x1a')]({'where':_0x42035d['where']})[_0xb3f9('0x21')](function(_0x3c81ad){_0x35b3f2[_0xb3f9('0x1a')]=_0x3c81ad;if(_0x3c1ac5[_0xb3f9('0x2e')][_0xb3f9('0x3d')]){_0x42035d[_0xb3f9('0x3e')]=[{'all':!![]}];}return db[_0xb3f9('0x5c')][_0xb3f9('0x5a')](_0x42035d);})[_0xb3f9('0x21')](function(_0x4ee843){_0x35b3f2[_0xb3f9('0x3f')]=_0x4ee843;return _0x35b3f2;});}})['then'](respondWithFilteredResult(_0x49d328,_0x42035d))[_0xb3f9('0x45')](handleError(_0x49d328,null));};function char(_0xfc60d2){return _0xb3f9('0x5d')===typeof _0xfc60d2?String['fromCharCode'][_0xb3f9('0x5e')](null,arguments):_0xfc60d2;}function needsEncapsulation(_0x2a4495){return!!_0x2a4495&&(_0x2a4495[_0xb3f9('0x5f')]()[_0xb3f9('0x60')](char(0xd))>=0x0||_0x2a4495[_0xb3f9('0x5f')]()['indexOf'](char(0xa))>=0x0||_0x2a4495[_0xb3f9('0x5f')]()['indexOf'](char(0x2c))>=0x0||_0x2a4495['toString']()['indexOf'](char(0x22))>=0x0);}function encapsulate(_0x3752ce){var _0x165b78=char(0x22),_0x23264a='\x5c'+char(0x22),_0x4f005d=_0x3752ce[_0xb3f9('0x5f')]()['replace'](new RegExp(_0x165b78,'g'),_0x23264a);return _0x165b78+_0x4f005d+_0x165b78;}exports['getSummary']=function(_0x3ff615,_0x4b9afd,_0x2ecf8a){var _0x20856a,_0xbceda5;var _0x1738b7={'where':{'ProjectId':_0x3ff615['params']['id']}};if(_0x3ff615[_0xb3f9('0x2e')][_0xb3f9('0x61')]){_0x1738b7[_0xb3f9('0x38')][_0xb3f9('0x62')]=JSON['parse'](_0x3ff615[_0xb3f9('0x2e')][_0xb3f9('0x61')]);}return db[_0xb3f9('0x56')][_0xb3f9('0x5a')](_0x1738b7)[_0xb3f9('0x21')](handleEntityNotFound(_0x4b9afd,null))[_0xb3f9('0x21')](function(_0x17d1e4){if(_0x17d1e4){_0x20856a=_0x17d1e4;return db[_0xb3f9('0x63')][_0xb3f9('0x5a')]({'where':{'SessionId':{'$in':_[_0xb3f9('0x2a')](_0x20856a,'id')},'ProjectId':_0x3ff615[_0xb3f9('0x41')]['id']},'order':_0xb3f9('0x64')});}})[_0xb3f9('0x21')](handleEntityNotFound(_0x4b9afd,null))[_0xb3f9('0x21')](function(_0x45108d){if(_0x45108d){_0xbceda5=_0x45108d;var _0x337784={};for(var _0x1043c6=0x0,_0x36da53=_0xbceda5[_0xb3f9('0x32')];_0x1043c6<_0x36da53;_0x1043c6++){if(!_0x337784['hasOwnProperty'](_0xbceda5[_0x1043c6][_0xb3f9('0x65')])){_0x337784[_0xbceda5[_0x1043c6][_0xb3f9('0x65')]]=needsEncapsulation(_0xbceda5[_0x1043c6][_0xb3f9('0x66')])?encapsulate(_0xbceda5[_0x1043c6][_0xb3f9('0x66')]):_0xbceda5[_0x1043c6][_0xb3f9('0x66')];}}var _0x483b34=[],_0x4b4d95={};for(var _0x166867=0x0,_0x5a3e41=_0x20856a['length'];_0x166867<_0x5a3e41;_0x166867++){_0x4b4d95={'ProjectId':_0x3ff615['params']['id'],'SessionId':_0x20856a[_0x166867]['id'],'StartTime':moment(_0x20856a[_0x166867][_0xb3f9('0x62')])[_0xb3f9('0x67')](_0xb3f9('0x68'))};for(var _0x9f4382=0x0,_0xcbdb52=_0xbceda5['length'];_0x9f4382<_0xcbdb52;_0x9f4382++){if(_0xbceda5[_0x9f4382]['SessionId']==_0x20856a[_0x166867]['id']&&_0x337784[_0xb3f9('0x33')](_0xbceda5[_0x9f4382][_0xb3f9('0x65')])){_0x4b4d95[_0x337784[_0xbceda5[_0x9f4382]['questionId']]]=_0xbceda5[_0x9f4382][_0xb3f9('0x69')];}}for(var _0x4a0d83 in _0x337784){if(!_0x4b4d95[_0xb3f9('0x33')](_0x337784[_0x4a0d83])){_0x4b4d95[_0x337784[_0x4a0d83]]=null;}}_0x483b34[_0xb3f9('0x6a')](_0x4b4d95);}return _0x483b34;}})[_0xb3f9('0x21')](function(_0x30a07b){if(!_[_0xb3f9('0x6b')](_0x30a07b)){var _0x3d24f5=toCsv(_0x30a07b);var _0x28c291=Date[_0xb3f9('0x6c')]();fs[_0xb3f9('0x6d')](util[_0xb3f9('0x67')](_0xb3f9('0x6e'),_0x3ff615[_0xb3f9('0x41')]['id'],_0x28c291),_0x3d24f5);_0x4b9afd[_0xb3f9('0x6f')](_0xb3f9('0x70'),_0xb3f9('0x71')+util[_0xb3f9('0x67')](_0xb3f9('0x72'),_0x3ff615[_0xb3f9('0x41')]['id'],_0x28c291));_0x4b9afd[_0xb3f9('0x6f')]('Content-type',_0xb3f9('0x73'));return _0x4b9afd[_0xb3f9('0x74')](util[_0xb3f9('0x67')]('/tmp/Jscripty_Project_%d_Summary_%s.csv',_0x3ff615[_0xb3f9('0x41')]['id'],_0x28c291));}else{return _0x4b9afd[_0xb3f9('0x14')](0xcc);}})['catch'](handleError(_0x4b9afd,null));};