Built motion from commit (unavailable).|2.5.4
[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 _0x0996=['include','findAll','rows','catch','show','params','rawAttributes','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','clone','createdAt','updatedAt','omit','getSessions','JscriptySessionReport','hasOwnProperty','ProjectId','getAnswers','findOne','JscriptyAnswerReport','fromCharCode','toString','indexOf','startTime','starttime','parse','-createdAt','questionId','question','format','YYYY-MM-DD\x20HH:mm:ss','answer','push','isEmpty','writeFileSync','setHeader','Content-disposition','Jscripty_Project_%d_Summary_%s.csv','text/csv','download','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','lodash','squel','desk.js','to-csv','papaparse','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','sendStatus','status','count','offset','limit','Content-Range','json','apply','reject','save','update','then','destroy','get','Projects','UserProfileResource','end','error','stack','name','index','map','fieldName','type','key','model','keys','query','filters','intersection','attributes','fields','length','nolimit','order','sort','where','pick','merge','VIRTUAL','filter','options','JscriptyProject','includeAll'];(function(_0x37ac1b,_0x512f02){var _0x1abd0e=function(_0x59df36){while(--_0x59df36){_0x37ac1b['push'](_0x37ac1b['shift']());}};_0x1abd0e(++_0x512f02);}(_0x0996,0xa2));var _0x6099=function(_0x2dced1,_0x1c3f60){_0x2dced1=_0x2dced1-0x0;var _0x321fdc=_0x0996[_0x2dced1];return _0x321fdc;};'use strict';var pdf=require(_0x6099('0x0'));var emlformat=require(_0x6099('0x1'));var rimraf=require(_0x6099('0x2'));var zipdir=require(_0x6099('0x3'));var jsonpatch=require(_0x6099('0x4'));var rp=require(_0x6099('0x5'));var moment=require(_0x6099('0x6'));var BPromise=require(_0x6099('0x7'));var Mustache=require(_0x6099('0x8'));var util=require(_0x6099('0x9'));var path=require('path');var sox=require(_0x6099('0xa'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var _=require(_0x6099('0xb'));var squel=require(_0x6099('0xc'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0x6099('0xd'));var toCsv=require(_0x6099('0xe'));var querystring=require('querystring');var Papa=require(_0x6099('0xf'));var Redis=require('ioredis');var authService=require(_0x6099('0x10'));var qs=require(_0x6099('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x6099('0x12'));var logger=require(_0x6099('0x13'))(_0x6099('0x14'));var utils=require(_0x6099('0x15'));var config=require('../../config/environment');var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x266c27,_0x93f8ab){_0x93f8ab=_0x93f8ab||0xcc;return function(_0xa78c3e){if(_0xa78c3e){return _0x266c27[_0x6099('0x16')](_0x93f8ab);}return _0x266c27[_0x6099('0x17')](_0x93f8ab)['end']();};}function respondWithResult(_0x41300a,_0x13db13){_0x13db13=_0x13db13||0xc8;return function(_0x3ff244){if(_0x3ff244){return _0x41300a[_0x6099('0x17')](_0x13db13)['json'](_0x3ff244);}};}function respondWithFilteredResult(_0x842e42,_0x4743e6){return function(_0x1fdd02){if(_0x1fdd02){var _0x3afd4a=_0x1fdd02[_0x6099('0x18')],_0x187188=_0x4743e6[_0x6099('0x19')],_0x2db099=_0x4743e6['offset']+_0x4743e6[_0x6099('0x1a')],_0x18c8e0;if(_0x2db099>=_0x3afd4a){_0x2db099=_0x3afd4a;_0x18c8e0=0xc8;}else{_0x18c8e0=0xce;}_0x842e42[_0x6099('0x17')](_0x18c8e0);return _0x842e42['set'](_0x6099('0x1b'),_0x187188+'-'+_0x2db099+'/'+_0x3afd4a)[_0x6099('0x1c')](_0x1fdd02);}return null;};}function patchUpdates(_0x3faa50){return function(_0x177b2c){try{jsonpatch[_0x6099('0x1d')](_0x177b2c,_0x3faa50,!![]);}catch(_0x34c34f){return BPromise[_0x6099('0x1e')](_0x34c34f);}return _0x177b2c[_0x6099('0x1f')]();};}function saveUpdates(_0x19b720,_0x10a2c4){return function(_0x1946bb){if(_0x1946bb){return _0x1946bb[_0x6099('0x20')](_0x19b720)[_0x6099('0x21')](function(_0x1c253c){return _0x1c253c;});}return null;};}function removeEntity(_0x3db511,_0x5d4239){return function(_0xba4686){if(_0xba4686){return _0xba4686[_0x6099('0x22')]()[_0x6099('0x21')](function(){var _0x83c35c=_0xba4686[_0x6099('0x23')]({'plain':!![]});var _0x1d27c1=_0x6099('0x24');return db[_0x6099('0x25')][_0x6099('0x22')]({'where':{'type':_0x1d27c1,'resourceId':_0x83c35c['id']}})[_0x6099('0x21')](function(){return _0xba4686;});})[_0x6099('0x21')](function(){_0x3db511['status'](0xcc)[_0x6099('0x26')]();});}};}function handleEntityNotFound(_0x47ab94,_0x988f7){return function(_0x1595dc){if(!_0x1595dc){_0x47ab94[_0x6099('0x16')](0x194);}return _0x1595dc;};}function handleError(_0x4c2ec5,_0x4e622b){_0x4e622b=_0x4e622b||0x1f4;return function(_0x4799a5){logger[_0x6099('0x27')](_0x4799a5[_0x6099('0x28')]);if(_0x4799a5[_0x6099('0x29')]){delete _0x4799a5['name'];}_0x4c2ec5[_0x6099('0x17')](_0x4e622b)['send'](_0x4799a5);};}exports[_0x6099('0x2a')]=function(_0x1a9b59,_0x473771){var _0x29258d={},_0x1498cc={},_0x55f786={'count':0x0,'rows':[]};var _0xd9ba90=_[_0x6099('0x2b')](db['JscriptyProject']['rawAttributes'],function(_0x377ef6){return{'name':_0x377ef6[_0x6099('0x2c')],'type':_0x377ef6[_0x6099('0x2d')][_0x6099('0x2e')]};});_0x1498cc[_0x6099('0x2f')]=_[_0x6099('0x2b')](_0xd9ba90,_0x6099('0x29'));_0x1498cc['query']=_[_0x6099('0x30')](_0x1a9b59[_0x6099('0x31')]);_0x1498cc[_0x6099('0x32')]=_[_0x6099('0x33')](_0x1498cc['model'],_0x1498cc[_0x6099('0x31')]);_0x29258d[_0x6099('0x34')]=_[_0x6099('0x33')](_0x1498cc[_0x6099('0x2f')],qs[_0x6099('0x35')](_0x1a9b59[_0x6099('0x31')][_0x6099('0x35')]));_0x29258d[_0x6099('0x34')]=_0x29258d[_0x6099('0x34')][_0x6099('0x36')]?_0x29258d[_0x6099('0x34')]:_0x1498cc['model'];if(!_0x1a9b59[_0x6099('0x31')]['hasOwnProperty'](_0x6099('0x37'))){_0x29258d[_0x6099('0x1a')]=qs['limit'](_0x1a9b59['query'][_0x6099('0x1a')]);_0x29258d[_0x6099('0x19')]=qs['offset'](_0x1a9b59[_0x6099('0x31')][_0x6099('0x19')]);}_0x29258d[_0x6099('0x38')]=qs['sort'](_0x1a9b59[_0x6099('0x31')][_0x6099('0x39')]);_0x29258d[_0x6099('0x3a')]=qs[_0x6099('0x32')](_[_0x6099('0x3b')](_0x1a9b59[_0x6099('0x31')],_0x1498cc['filters']),_0xd9ba90);if(_0x1a9b59[_0x6099('0x31')]['filter']){_0x29258d[_0x6099('0x3a')]=_[_0x6099('0x3c')](_0x29258d['where'],{'$or':_[_0x6099('0x2b')](_0xd9ba90,function(_0x4d95f7){if(_0x4d95f7[_0x6099('0x2d')]!==_0x6099('0x3d')){var _0x2b188c={};_0x2b188c[_0x4d95f7[_0x6099('0x29')]]={'$like':'%'+_0x1a9b59[_0x6099('0x31')][_0x6099('0x3e')]+'%'};return _0x2b188c;}})});}_0x29258d=_[_0x6099('0x3c')]({},_0x29258d,_0x1a9b59[_0x6099('0x3f')]);var _0x3a6604={'where':_0x29258d['where']};return db[_0x6099('0x40')][_0x6099('0x18')](_0x3a6604)['then'](function(_0x55b2a3){_0x55f786['count']=_0x55b2a3;if(_0x1a9b59[_0x6099('0x31')][_0x6099('0x41')]){_0x29258d[_0x6099('0x42')]=[{'all':!![]}];}return db[_0x6099('0x40')][_0x6099('0x43')](_0x29258d);})[_0x6099('0x21')](function(_0x2509b0){_0x55f786[_0x6099('0x44')]=_0x2509b0;return _0x55f786;})[_0x6099('0x21')](respondWithFilteredResult(_0x473771,_0x29258d))[_0x6099('0x45')](handleError(_0x473771,null));};exports[_0x6099('0x46')]=function(_0x326c75,_0x379f6a){var _0xf3efa5={'raw':![],'where':{'id':_0x326c75[_0x6099('0x47')]['id']}},_0x4d04a2={};_0x4d04a2['model']=_[_0x6099('0x30')](db['JscriptyProject'][_0x6099('0x48')]);_0x4d04a2[_0x6099('0x31')]=_[_0x6099('0x30')](_0x326c75[_0x6099('0x31')]);_0x4d04a2['filters']=_['intersection'](_0x4d04a2[_0x6099('0x2f')],_0x4d04a2[_0x6099('0x31')]);_0xf3efa5['attributes']=_[_0x6099('0x33')](_0x4d04a2['model'],qs[_0x6099('0x35')](_0x326c75[_0x6099('0x31')][_0x6099('0x35')]));_0xf3efa5[_0x6099('0x34')]=_0xf3efa5['attributes'][_0x6099('0x36')]?_0xf3efa5['attributes']:_0x4d04a2[_0x6099('0x2f')];if(_0x326c75[_0x6099('0x31')][_0x6099('0x41')]){_0xf3efa5['include']=[{'all':!![]}];}_0xf3efa5=_[_0x6099('0x3c')]({},_0xf3efa5,_0x326c75['options']);return db[_0x6099('0x40')][_0x6099('0x49')](_0xf3efa5)[_0x6099('0x21')](handleEntityNotFound(_0x379f6a,null))[_0x6099('0x21')](respondWithResult(_0x379f6a,null))['catch'](handleError(_0x379f6a,null));};exports[_0x6099('0x4a')]=function(_0x1ac5db,_0x3652e2){return db['JscriptyProject'][_0x6099('0x4a')](_0x1ac5db[_0x6099('0x4b')],{})[_0x6099('0x21')](function(_0x8f0090){var _0x5b587a=_0x1ac5db[_0x6099('0x4c')][_0x6099('0x23')]({'plain':!![]});if(!_0x5b587a)throw new Error(_0x6099('0x4d'));if(_0x5b587a[_0x6099('0x4e')]===_0x6099('0x4c')){var _0x497ada=_0x8f0090[_0x6099('0x23')]({'plain':!![]});var _0x28c5bd='Projects';return db[_0x6099('0x4f')][_0x6099('0x49')]({'where':{'name':_0x28c5bd,'userProfileId':_0x5b587a[_0x6099('0x50')]},'raw':!![]})[_0x6099('0x21')](function(_0x1e56cf){if(_0x1e56cf&&_0x1e56cf[_0x6099('0x51')]===0x0){return db[_0x6099('0x25')][_0x6099('0x4a')]({'name':_0x497ada[_0x6099('0x29')],'resourceId':_0x497ada['id'],'type':_0x1e56cf[_0x6099('0x29')],'sectionId':_0x1e56cf['id']},{})['then'](function(){return _0x8f0090;});}else{return _0x8f0090;}})[_0x6099('0x45')](function(_0x444ebf){logger[_0x6099('0x27')](_0x6099('0x52'),_0x444ebf);throw _0x444ebf;});}return _0x8f0090;})[_0x6099('0x21')](respondWithResult(_0x3652e2,0xc9))['catch'](handleError(_0x3652e2,null));};exports[_0x6099('0x53')]=function(_0x336d28,_0x4ae6d){var _0x47bfbf={'where':{'id':_0x336d28['params']['id']}},_0x151d1e={};_0x151d1e[_0x6099('0x2f')]=_[_0x6099('0x30')](db[_0x6099('0x40')]['rawAttributes']);_0x47bfbf[_0x6099('0x34')]=_[_0x6099('0x33')](_0x151d1e[_0x6099('0x2f')],qs[_0x6099('0x35')](_0x336d28[_0x6099('0x31')]['fields']));_0x47bfbf[_0x6099('0x34')]=_0x47bfbf['attributes']['length']?_0x47bfbf[_0x6099('0x34')]:_0x151d1e[_0x6099('0x2f')];if(_0x336d28['query'][_0x6099('0x41')]){_0x47bfbf[_0x6099('0x42')]=[{'all':!![]}];}_0x47bfbf=_[_0x6099('0x3c')]({},_0x47bfbf,_0x336d28[_0x6099('0x3f')]);return db[_0x6099('0x40')][_0x6099('0x49')](_0x47bfbf)[_0x6099('0x21')](handleEntityNotFound(_0x4ae6d,null))[_0x6099('0x21')](function(_0xebfc4d){if(_0xebfc4d){var _0x21e093=_0xebfc4d[_0x6099('0x23')]({'plain':!![]});_0x21e093=qs['omit'](_0x21e093,['id',_0x6099('0x54'),_0x6099('0x55')]);_0x336d28[_0x6099('0x4b')]=_[_0x6099('0x56')](_0x336d28[_0x6099('0x4b')],['id','createdAt','updatedAt']);return db['JscriptyProject'][_0x6099('0x4a')](_[_0x6099('0x3c')](_0x21e093,_0x336d28[_0x6099('0x4b')]),{'include':_0x336d28[_0x6099('0x31')][_0x6099('0x41')]?[{'all':!![]}]:undefined})[_0x6099('0x21')](function(_0x257d95){var _0x388104=_0x336d28[_0x6099('0x4c')][_0x6099('0x23')]({'plain':!![]});if(!_0x388104)throw new Error(_0x6099('0x4d'));if(_0x388104[_0x6099('0x4e')]==='user'){var _0x45a2bd=_0x257d95['get']({'plain':!![]});var _0x4664a5=_0x6099('0x24');return db['UserProfileSection'][_0x6099('0x49')]({'where':{'name':_0x4664a5,'userProfileId':_0x388104[_0x6099('0x50')]},'raw':!![]})[_0x6099('0x21')](function(_0x56dade){if(_0x56dade&&_0x56dade[_0x6099('0x51')]===0x0){return db['UserProfileResource'][_0x6099('0x4a')]({'name':_0x45a2bd[_0x6099('0x29')],'resourceId':_0x45a2bd['id'],'type':_0x56dade[_0x6099('0x29')],'sectionId':_0x56dade['id']},{})[_0x6099('0x21')](function(){return _0x257d95;});}else{return _0x257d95;}})['catch'](function(_0x21e81b){logger[_0x6099('0x27')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x21e81b);throw _0x21e81b;});}return _0x257d95;});}})[_0x6099('0x21')](respondWithResult(_0x4ae6d,0xc9))['catch'](handleError(_0x4ae6d,null));};exports['update']=function(_0x294330,_0x3c8a4f){if(_0x294330[_0x6099('0x4b')]['id']){delete _0x294330[_0x6099('0x4b')]['id'];}return db[_0x6099('0x40')][_0x6099('0x49')]({'where':{'id':_0x294330[_0x6099('0x47')]['id']}})[_0x6099('0x21')](handleEntityNotFound(_0x3c8a4f,null))[_0x6099('0x21')](saveUpdates(_0x294330[_0x6099('0x4b')],null))[_0x6099('0x21')](respondWithResult(_0x3c8a4f,null))[_0x6099('0x45')](handleError(_0x3c8a4f,null));};exports[_0x6099('0x22')]=function(_0x1bcbbb,_0x4dae71){return db[_0x6099('0x40')][_0x6099('0x49')]({'where':{'id':_0x1bcbbb['params']['id']}})[_0x6099('0x21')](handleEntityNotFound(_0x4dae71,null))[_0x6099('0x21')](removeEntity(_0x4dae71,null))[_0x6099('0x45')](handleError(_0x4dae71,null));};exports[_0x6099('0x57')]=function(_0x4a39e3,_0x210876,_0x17abe8){var _0x4b68cd={'raw':!![],'where':{}};var _0x5bcfeb={};var _0x5b8871={'count':0x0,'rows':[]};return db[_0x6099('0x40')]['findOne']({'where':{'id':_0x4a39e3[_0x6099('0x47')]['id']}})['then'](handleEntityNotFound(_0x210876,null))['then'](function(_0x10fb3e){if(_0x10fb3e){_0x5bcfeb[_0x6099('0x2f')]=_[_0x6099('0x30')](db[_0x6099('0x58')][_0x6099('0x48')]);_0x5bcfeb[_0x6099('0x31')]=_['keys'](_0x4a39e3['query']);_0x5bcfeb[_0x6099('0x32')]=_['intersection'](_0x5bcfeb[_0x6099('0x2f')],_0x5bcfeb[_0x6099('0x31')]);_0x4b68cd[_0x6099('0x34')]=_[_0x6099('0x33')](_0x5bcfeb[_0x6099('0x2f')],qs[_0x6099('0x35')](_0x4a39e3[_0x6099('0x31')][_0x6099('0x35')]));_0x4b68cd[_0x6099('0x34')]=_0x4b68cd[_0x6099('0x34')]['length']?_0x4b68cd[_0x6099('0x34')]:_0x5bcfeb[_0x6099('0x2f')];if(!_0x4a39e3[_0x6099('0x31')][_0x6099('0x59')](_0x6099('0x37'))){_0x4b68cd[_0x6099('0x1a')]=qs[_0x6099('0x1a')](_0x4a39e3[_0x6099('0x31')][_0x6099('0x1a')]);_0x4b68cd[_0x6099('0x19')]=qs['offset'](_0x4a39e3[_0x6099('0x31')][_0x6099('0x19')]);}_0x4b68cd[_0x6099('0x38')]=qs[_0x6099('0x39')](_0x4a39e3[_0x6099('0x31')][_0x6099('0x39')]);_0x4b68cd['where']=qs[_0x6099('0x32')](_[_0x6099('0x3b')](_0x4a39e3['query'],_0x5bcfeb[_0x6099('0x32')]));_0x4b68cd['where'][_0x6099('0x5a')]=_0x10fb3e['id'];if(_0x4a39e3[_0x6099('0x31')]['filter']){_0x4b68cd[_0x6099('0x3a')]=_[_0x6099('0x3c')](_0x4b68cd['where'],{'$or':_[_0x6099('0x2b')](_0x4b68cd[_0x6099('0x34')],function(_0x114b79){var _0x1eb373={};_0x1eb373[_0x114b79]={'$like':'%'+_0x4a39e3[_0x6099('0x31')][_0x6099('0x3e')]+'%'};return _0x1eb373;})});}_0x4b68cd=_['merge']({},_0x4b68cd,_0x4a39e3[_0x6099('0x3f')]);return db[_0x6099('0x58')][_0x6099('0x18')]({'where':_0x4b68cd[_0x6099('0x3a')]})[_0x6099('0x21')](function(_0x5e198c){_0x5b8871[_0x6099('0x18')]=_0x5e198c;if(_0x4a39e3[_0x6099('0x31')]['includeAll']){_0x4b68cd['include']=[{'all':!![]}];}return db[_0x6099('0x58')][_0x6099('0x43')](_0x4b68cd);})[_0x6099('0x21')](function(_0x277a82){_0x5b8871[_0x6099('0x44')]=_0x277a82;return _0x5b8871;});}})[_0x6099('0x21')](respondWithFilteredResult(_0x210876,_0x4b68cd))[_0x6099('0x45')](handleError(_0x210876,null));};exports[_0x6099('0x5b')]=function(_0x3b5de0,_0x4b31c0,_0x32f21a){var _0x1ceea6={'raw':!![],'where':{}};var _0x51e4ad={};var _0x5e6645={'count':0x0,'rows':[]};return db[_0x6099('0x40')][_0x6099('0x5c')]({'where':{'id':_0x3b5de0['params']['id']}})[_0x6099('0x21')](handleEntityNotFound(_0x4b31c0,null))['then'](function(_0x1dfcd2){if(_0x1dfcd2){_0x51e4ad[_0x6099('0x2f')]=_[_0x6099('0x30')](db[_0x6099('0x5d')]['rawAttributes']);_0x51e4ad[_0x6099('0x31')]=_['keys'](_0x3b5de0[_0x6099('0x31')]);_0x51e4ad[_0x6099('0x32')]=_[_0x6099('0x33')](_0x51e4ad['model'],_0x51e4ad['query']);_0x1ceea6[_0x6099('0x34')]=_[_0x6099('0x33')](_0x51e4ad[_0x6099('0x2f')],qs[_0x6099('0x35')](_0x3b5de0['query'][_0x6099('0x35')]));_0x1ceea6['attributes']=_0x1ceea6[_0x6099('0x34')][_0x6099('0x36')]?_0x1ceea6[_0x6099('0x34')]:_0x51e4ad['model'];if(!_0x3b5de0[_0x6099('0x31')]['hasOwnProperty']('nolimit')){_0x1ceea6[_0x6099('0x1a')]=qs['limit'](_0x3b5de0[_0x6099('0x31')][_0x6099('0x1a')]);_0x1ceea6['offset']=qs[_0x6099('0x19')](_0x3b5de0[_0x6099('0x31')][_0x6099('0x19')]);}_0x1ceea6[_0x6099('0x38')]=qs[_0x6099('0x39')](_0x3b5de0[_0x6099('0x31')]['sort']);_0x1ceea6[_0x6099('0x3a')]=qs[_0x6099('0x32')](_[_0x6099('0x3b')](_0x3b5de0[_0x6099('0x31')],_0x51e4ad[_0x6099('0x32')]));_0x1ceea6[_0x6099('0x3a')][_0x6099('0x5a')]=_0x1dfcd2['id'];if(_0x3b5de0[_0x6099('0x31')][_0x6099('0x3e')]){_0x1ceea6[_0x6099('0x3a')]=_[_0x6099('0x3c')](_0x1ceea6[_0x6099('0x3a')],{'$or':_[_0x6099('0x2b')](_0x1ceea6[_0x6099('0x34')],function(_0x1c25ef){var _0x492d7b={};_0x492d7b[_0x1c25ef]={'$like':'%'+_0x3b5de0[_0x6099('0x31')][_0x6099('0x3e')]+'%'};return _0x492d7b;})});}_0x1ceea6=_[_0x6099('0x3c')]({},_0x1ceea6,_0x3b5de0['options']);return db['JscriptyAnswerReport'][_0x6099('0x18')]({'where':_0x1ceea6['where']})[_0x6099('0x21')](function(_0x539494){_0x5e6645['count']=_0x539494;if(_0x3b5de0[_0x6099('0x31')][_0x6099('0x41')]){_0x1ceea6[_0x6099('0x42')]=[{'all':!![]}];}return db[_0x6099('0x5d')][_0x6099('0x43')](_0x1ceea6);})['then'](function(_0x2a9371){_0x5e6645[_0x6099('0x44')]=_0x2a9371;return _0x5e6645;});}})[_0x6099('0x21')](respondWithFilteredResult(_0x4b31c0,_0x1ceea6))[_0x6099('0x45')](handleError(_0x4b31c0,null));};function char(_0x566772){return'number'===typeof _0x566772?String[_0x6099('0x5e')][_0x6099('0x1d')](null,arguments):_0x566772;}function needsEncapsulation(_0xa3c920){return!!_0xa3c920&&(_0xa3c920[_0x6099('0x5f')]()[_0x6099('0x60')](char(0xd))>=0x0||_0xa3c920[_0x6099('0x5f')]()[_0x6099('0x60')](char(0xa))>=0x0||_0xa3c920[_0x6099('0x5f')]()[_0x6099('0x60')](char(0x2c))>=0x0||_0xa3c920['toString']()['indexOf'](char(0x22))>=0x0);}function encapsulate(_0x3d807c){var _0x28c755=char(0x22),_0x44dd30='\x5c'+char(0x22),_0x238bf0=_0x3d807c[_0x6099('0x5f')]()['replace'](new RegExp(_0x28c755,'g'),_0x44dd30);return _0x28c755+_0x238bf0+_0x28c755;}exports['getSummary']=function(_0x435f9e,_0x48fbfc,_0x3fdd01){var _0x33d394,_0x1093f4;var _0x38cb6e={'where':{'ProjectId':_0x435f9e['params']['id']}};if(_0x435f9e['query'][_0x6099('0x61')]){_0x38cb6e[_0x6099('0x3a')][_0x6099('0x62')]=JSON[_0x6099('0x63')](_0x435f9e[_0x6099('0x31')][_0x6099('0x61')]);}return db['JscriptySessionReport']['findAll'](_0x38cb6e)[_0x6099('0x21')](handleEntityNotFound(_0x48fbfc,null))[_0x6099('0x21')](function(_0x574706){if(_0x574706){_0x33d394=_0x574706;return db['JscriptyQuestionReport'][_0x6099('0x43')]({'where':{'SessionId':{'$in':_[_0x6099('0x2b')](_0x33d394,'id')},'ProjectId':_0x435f9e[_0x6099('0x47')]['id']},'order':_0x6099('0x64')});}})['then'](handleEntityNotFound(_0x48fbfc,null))['then'](function(_0x11274a){if(_0x11274a){_0x1093f4=_0x11274a;var _0x451b5f={};for(var _0x3aa8ba=0x0,_0x467873=_0x1093f4['length'];_0x3aa8ba<_0x467873;_0x3aa8ba++){if(!_0x451b5f[_0x6099('0x59')](_0x1093f4[_0x3aa8ba][_0x6099('0x65')])){_0x451b5f[_0x1093f4[_0x3aa8ba][_0x6099('0x65')]]=needsEncapsulation(_0x1093f4[_0x3aa8ba][_0x6099('0x66')])?encapsulate(_0x1093f4[_0x3aa8ba][_0x6099('0x66')]):_0x1093f4[_0x3aa8ba][_0x6099('0x66')];}}var _0x13bba6=[],_0x551ae5={};for(var _0x158d4=0x0,_0x32156f=_0x33d394[_0x6099('0x36')];_0x158d4<_0x32156f;_0x158d4++){_0x551ae5={'ProjectId':_0x435f9e[_0x6099('0x47')]['id'],'SessionId':_0x33d394[_0x158d4]['id'],'StartTime':moment(_0x33d394[_0x158d4]['starttime'])[_0x6099('0x67')](_0x6099('0x68'))};for(var _0x56e285=0x0,_0x578682=_0x1093f4[_0x6099('0x36')];_0x56e285<_0x578682;_0x56e285++){if(_0x1093f4[_0x56e285]['SessionId']==_0x33d394[_0x158d4]['id']&&_0x451b5f[_0x6099('0x59')](_0x1093f4[_0x56e285]['questionId'])){_0x551ae5[_0x451b5f[_0x1093f4[_0x56e285][_0x6099('0x65')]]]=_0x1093f4[_0x56e285][_0x6099('0x69')];}}for(var _0x3fa88b in _0x451b5f){if(!_0x551ae5[_0x6099('0x59')](_0x451b5f[_0x3fa88b])){_0x551ae5[_0x451b5f[_0x3fa88b]]=null;}}_0x13bba6[_0x6099('0x6a')](_0x551ae5);}return _0x13bba6;}})[_0x6099('0x21')](function(_0x4cf035){if(!_[_0x6099('0x6b')](_0x4cf035)){var _0x58bc10=toCsv(_0x4cf035);var _0x57d1e3=Date['now']();fs[_0x6099('0x6c')](util[_0x6099('0x67')]('/tmp/Jscripty_Project_%d_Summary_%s.csv',_0x435f9e['params']['id'],_0x57d1e3),_0x58bc10);_0x48fbfc[_0x6099('0x6d')](_0x6099('0x6e'),'attachment;\x20filename='+util[_0x6099('0x67')](_0x6099('0x6f'),_0x435f9e[_0x6099('0x47')]['id'],_0x57d1e3));_0x48fbfc[_0x6099('0x6d')]('Content-type',_0x6099('0x70'));return _0x48fbfc[_0x6099('0x71')](util[_0x6099('0x67')]('/tmp/Jscripty_Project_%d_Summary_%s.csv',_0x435f9e[_0x6099('0x47')]['id'],_0x57d1e3));}else{return _0x48fbfc[_0x6099('0x16')](0xcc);}})[_0x6099('0x45')](handleError(_0x48fbfc,null));};