Built motion from commit 616d3211.|2.6.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 _0xb5fd=['number','fromCharCode','toString','indexOf','getSummary','startTime','questionId','question','starttime','format','answer','push','now','/tmp/Jscripty_Project_%d_Summary_%s.csv','setHeader','attachment;\x20filename=','download','eml-format','fast-json-patch','request-promise','moment','bluebird','util','path','sox','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','json','limit','undefined','count','offset','set','Content-Range','apply','update','get','UserProfileResource','destroy','then','error','name','send','map','type','key','model','query','keys','filters','intersection','attributes','hasOwnProperty','order','sort','where','pick','filter','VIRTUAL','JscriptyProject','includeAll','include','findAll','catch','show','params','rawAttributes','fields','length','options','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','Projects','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','clone','omit','createdAt','updatedAt','getSessions','JscriptySessionReport','ProjectId','merge','rows','getAnswers','findOne','JscriptyAnswerReport','nolimit'];(function(_0x328938,_0x186ca2){var _0x2aed4b=function(_0x5e0951){while(--_0x5e0951){_0x328938['push'](_0x328938['shift']());}};_0x2aed4b(++_0x186ca2);}(_0xb5fd,0x82));var _0xdb5f=function(_0xc7a1f3,_0x49aefd){_0xc7a1f3=_0xc7a1f3-0x0;var _0x3d2bdb=_0xb5fd[_0xc7a1f3];return _0x3d2bdb;};'use strict';var emlformat=require(_0xdb5f('0x0'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0xdb5f('0x1'));var rp=require(_0xdb5f('0x2'));var moment=require(_0xdb5f('0x3'));var BPromise=require(_0xdb5f('0x4'));var Mustache=require('mustache');var util=require(_0xdb5f('0x5'));var path=require(_0xdb5f('0x6'));var sox=require(_0xdb5f('0x7'));var csv=require('to-csv');var ejs=require(_0xdb5f('0x8'));var fs=require('fs');var fs_extra=require(_0xdb5f('0x9'));var _=require(_0xdb5f('0xa'));var squel=require(_0xdb5f('0xb'));var crypto=require(_0xdb5f('0xc'));var jsforce=require(_0xdb5f('0xd'));var deskjs=require(_0xdb5f('0xe'));var toCsv=require(_0xdb5f('0xf'));var querystring=require(_0xdb5f('0x10'));var Papa=require(_0xdb5f('0x11'));var Redis=require(_0xdb5f('0x12'));var authService=require(_0xdb5f('0x13'));var qs=require(_0xdb5f('0x14'));var as=require(_0xdb5f('0x15'));var hardwareService=require(_0xdb5f('0x16'));var logger=require('../../config/logger')(_0xdb5f('0x17'));var utils=require(_0xdb5f('0x18'));var config=require(_0xdb5f('0x19'));var licenseUtil=require(_0xdb5f('0x1a'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x47c31d,_0x29eac8){_0x29eac8=_0x29eac8||0xcc;return function(_0x26b651){if(_0x26b651){return _0x47c31d[_0xdb5f('0x1b')](_0x29eac8);}return _0x47c31d['status'](_0x29eac8)['end']();};}function respondWithResult(_0x513000,_0x5c222d){_0x5c222d=_0x5c222d||0xc8;return function(_0x4aebc8){if(_0x4aebc8){return _0x513000[_0xdb5f('0x1c')](_0x5c222d)[_0xdb5f('0x1d')](_0x4aebc8);}};}function respondWithFilteredResult(_0x106979,_0x31e6b3){return function(_0x5b3126){if(_0x5b3126){var _0x23da6f=typeof _0x31e6b3['offset']==='undefined'&&typeof _0x31e6b3[_0xdb5f('0x1e')]===_0xdb5f('0x1f');var _0x29f691=_0x5b3126[_0xdb5f('0x20')];var _0x5037f4=_0x23da6f?0x0:_0x31e6b3[_0xdb5f('0x21')];var _0x1fa7ff=_0x23da6f?_0x5b3126['count']:_0x31e6b3[_0xdb5f('0x21')]+_0x31e6b3[_0xdb5f('0x1e')];var _0x5d191b;if(_0x1fa7ff>=_0x29f691){_0x1fa7ff=_0x29f691;_0x5d191b=0xc8;}else{_0x5d191b=0xce;}_0x106979[_0xdb5f('0x1c')](_0x5d191b);return _0x106979[_0xdb5f('0x22')](_0xdb5f('0x23'),_0x5037f4+'-'+_0x1fa7ff+'/'+_0x29f691)[_0xdb5f('0x1d')](_0x5b3126);}return null;};}function patchUpdates(_0x104efd){return function(_0x3e7002){try{jsonpatch[_0xdb5f('0x24')](_0x3e7002,_0x104efd,!![]);}catch(_0x6b1b32){return BPromise['reject'](_0x6b1b32);}return _0x3e7002['save']();};}function saveUpdates(_0xe94735,_0x53a85b){return function(_0x44d974){if(_0x44d974){return _0x44d974[_0xdb5f('0x25')](_0xe94735)['then'](function(_0x2ff0cc){return _0x2ff0cc;});}return null;};}function removeEntity(_0x232b83,_0x33158d){return function(_0x20d38e){if(_0x20d38e){return _0x20d38e['destroy']()['then'](function(){var _0x3fdd47=_0x20d38e[_0xdb5f('0x26')]({'plain':!![]});var _0xe4658='Projects';return db[_0xdb5f('0x27')][_0xdb5f('0x28')]({'where':{'type':_0xe4658,'resourceId':_0x3fdd47['id']}})[_0xdb5f('0x29')](function(){return _0x20d38e;});})[_0xdb5f('0x29')](function(){_0x232b83['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0xe0b460,_0x27558e){return function(_0x48c17d){if(!_0x48c17d){_0xe0b460[_0xdb5f('0x1b')](0x194);}return _0x48c17d;};}function handleError(_0x2137de,_0x2991a3){_0x2991a3=_0x2991a3||0x1f4;return function(_0x10576d){logger[_0xdb5f('0x2a')](_0x10576d['stack']);if(_0x10576d[_0xdb5f('0x2b')]){delete _0x10576d['name'];}_0x2137de['status'](_0x2991a3)[_0xdb5f('0x2c')](_0x10576d);};}exports['index']=function(_0x2b8bbf,_0xf06bbb){var _0x5650ff={},_0x5b0212={},_0x2d34a0={'count':0x0,'rows':[]};var _0x1fcc03=_[_0xdb5f('0x2d')](db['JscriptyProject']['rawAttributes'],function(_0x2b8c3f){return{'name':_0x2b8c3f['fieldName'],'type':_0x2b8c3f[_0xdb5f('0x2e')][_0xdb5f('0x2f')]};});_0x5b0212[_0xdb5f('0x30')]=_[_0xdb5f('0x2d')](_0x1fcc03,_0xdb5f('0x2b'));_0x5b0212[_0xdb5f('0x31')]=_[_0xdb5f('0x32')](_0x2b8bbf[_0xdb5f('0x31')]);_0x5b0212[_0xdb5f('0x33')]=_[_0xdb5f('0x34')](_0x5b0212[_0xdb5f('0x30')],_0x5b0212[_0xdb5f('0x31')]);_0x5650ff[_0xdb5f('0x35')]=_[_0xdb5f('0x34')](_0x5b0212['model'],qs['fields'](_0x2b8bbf[_0xdb5f('0x31')]['fields']));_0x5650ff['attributes']=_0x5650ff[_0xdb5f('0x35')]['length']?_0x5650ff[_0xdb5f('0x35')]:_0x5b0212[_0xdb5f('0x30')];if(!_0x2b8bbf[_0xdb5f('0x31')][_0xdb5f('0x36')]('nolimit')){_0x5650ff['limit']=qs[_0xdb5f('0x1e')](_0x2b8bbf[_0xdb5f('0x31')]['limit']);_0x5650ff['offset']=qs[_0xdb5f('0x21')](_0x2b8bbf[_0xdb5f('0x31')][_0xdb5f('0x21')]);}_0x5650ff[_0xdb5f('0x37')]=qs['sort'](_0x2b8bbf[_0xdb5f('0x31')][_0xdb5f('0x38')]);_0x5650ff[_0xdb5f('0x39')]=qs[_0xdb5f('0x33')](_[_0xdb5f('0x3a')](_0x2b8bbf[_0xdb5f('0x31')],_0x5b0212['filters']),_0x1fcc03);if(_0x2b8bbf[_0xdb5f('0x31')][_0xdb5f('0x3b')]){_0x5650ff[_0xdb5f('0x39')]=_['merge'](_0x5650ff['where'],{'$or':_['map'](_0x1fcc03,function(_0x53c8e1){if(_0x53c8e1['type']!==_0xdb5f('0x3c')){var _0x1a5165={};_0x1a5165[_0x53c8e1[_0xdb5f('0x2b')]]={'$like':'%'+_0x2b8bbf[_0xdb5f('0x31')][_0xdb5f('0x3b')]+'%'};return _0x1a5165;}})});}_0x5650ff=_['merge']({},_0x5650ff,_0x2b8bbf['options']);var _0x2a1a15={'where':_0x5650ff[_0xdb5f('0x39')]};return db[_0xdb5f('0x3d')][_0xdb5f('0x20')](_0x2a1a15)['then'](function(_0x432a7d){_0x2d34a0['count']=_0x432a7d;if(_0x2b8bbf[_0xdb5f('0x31')][_0xdb5f('0x3e')]){_0x5650ff[_0xdb5f('0x3f')]=[{'all':!![]}];}return db[_0xdb5f('0x3d')][_0xdb5f('0x40')](_0x5650ff);})[_0xdb5f('0x29')](function(_0x1a618e){_0x2d34a0['rows']=_0x1a618e;return _0x2d34a0;})[_0xdb5f('0x29')](respondWithFilteredResult(_0xf06bbb,_0x5650ff))[_0xdb5f('0x41')](handleError(_0xf06bbb,null));};exports[_0xdb5f('0x42')]=function(_0x5ef591,_0x5d47ac){var _0x758c23={'raw':![],'where':{'id':_0x5ef591[_0xdb5f('0x43')]['id']}},_0x503db1={};_0x503db1[_0xdb5f('0x30')]=_[_0xdb5f('0x32')](db['JscriptyProject'][_0xdb5f('0x44')]);_0x503db1['query']=_[_0xdb5f('0x32')](_0x5ef591[_0xdb5f('0x31')]);_0x503db1['filters']=_[_0xdb5f('0x34')](_0x503db1['model'],_0x503db1['query']);_0x758c23['attributes']=_[_0xdb5f('0x34')](_0x503db1[_0xdb5f('0x30')],qs[_0xdb5f('0x45')](_0x5ef591[_0xdb5f('0x31')]['fields']));_0x758c23[_0xdb5f('0x35')]=_0x758c23[_0xdb5f('0x35')][_0xdb5f('0x46')]?_0x758c23['attributes']:_0x503db1[_0xdb5f('0x30')];if(_0x5ef591['query'][_0xdb5f('0x3e')]){_0x758c23[_0xdb5f('0x3f')]=[{'all':!![]}];}_0x758c23=_['merge']({},_0x758c23,_0x5ef591[_0xdb5f('0x47')]);return db[_0xdb5f('0x3d')][_0xdb5f('0x48')](_0x758c23)[_0xdb5f('0x29')](handleEntityNotFound(_0x5d47ac,null))[_0xdb5f('0x29')](respondWithResult(_0x5d47ac,null))[_0xdb5f('0x41')](handleError(_0x5d47ac,null));};exports[_0xdb5f('0x49')]=function(_0x280abc,_0x47359a){return db[_0xdb5f('0x3d')]['create'](_0x280abc[_0xdb5f('0x4a')],{})[_0xdb5f('0x29')](function(_0x2a3d73){var _0x41ae3e=_0x280abc[_0xdb5f('0x4b')]['get']({'plain':!![]});if(!_0x41ae3e)throw new Error(_0xdb5f('0x4c'));if(_0x41ae3e[_0xdb5f('0x4d')]==='user'){var _0x5c0138=_0x2a3d73[_0xdb5f('0x26')]({'plain':!![]});var _0x225545=_0xdb5f('0x4e');return db[_0xdb5f('0x4f')]['find']({'where':{'name':_0x225545,'userProfileId':_0x41ae3e[_0xdb5f('0x50')]},'raw':!![]})[_0xdb5f('0x29')](function(_0x2ae8d9){if(_0x2ae8d9&&_0x2ae8d9[_0xdb5f('0x51')]===0x0){return db[_0xdb5f('0x27')]['create']({'name':_0x5c0138['name'],'resourceId':_0x5c0138['id'],'type':_0x2ae8d9[_0xdb5f('0x2b')],'sectionId':_0x2ae8d9['id']},{})['then'](function(){return _0x2a3d73;});}else{return _0x2a3d73;}})['catch'](function(_0x321aee){logger[_0xdb5f('0x2a')](_0xdb5f('0x52'),_0x321aee);throw _0x321aee;});}return _0x2a3d73;})[_0xdb5f('0x29')](respondWithResult(_0x47359a,0xc9))[_0xdb5f('0x41')](handleError(_0x47359a,null));};exports[_0xdb5f('0x53')]=function(_0x3768dc,_0x43234b){var _0x2a80fb={'where':{'id':_0x3768dc['params']['id']}},_0x2640ec={};_0x2640ec[_0xdb5f('0x30')]=_[_0xdb5f('0x32')](db[_0xdb5f('0x3d')][_0xdb5f('0x44')]);_0x2a80fb[_0xdb5f('0x35')]=_[_0xdb5f('0x34')](_0x2640ec['model'],qs[_0xdb5f('0x45')](_0x3768dc[_0xdb5f('0x31')][_0xdb5f('0x45')]));_0x2a80fb['attributes']=_0x2a80fb['attributes'][_0xdb5f('0x46')]?_0x2a80fb[_0xdb5f('0x35')]:_0x2640ec[_0xdb5f('0x30')];if(_0x3768dc[_0xdb5f('0x31')][_0xdb5f('0x3e')]){_0x2a80fb[_0xdb5f('0x3f')]=[{'all':!![]}];}_0x2a80fb=_['merge']({},_0x2a80fb,_0x3768dc['options']);return db[_0xdb5f('0x3d')][_0xdb5f('0x48')](_0x2a80fb)[_0xdb5f('0x29')](handleEntityNotFound(_0x43234b,null))[_0xdb5f('0x29')](function(_0x3e2aa8){if(_0x3e2aa8){var _0x3b7e40=_0x3e2aa8['get']({'plain':!![]});_0x3b7e40=qs[_0xdb5f('0x54')](_0x3b7e40,['id','createdAt','updatedAt']);_0x3768dc[_0xdb5f('0x4a')]=_[_0xdb5f('0x54')](_0x3768dc[_0xdb5f('0x4a')],['id',_0xdb5f('0x55'),_0xdb5f('0x56')]);return db[_0xdb5f('0x3d')][_0xdb5f('0x49')](_['merge'](_0x3b7e40,_0x3768dc[_0xdb5f('0x4a')]),{'include':_0x3768dc['query']['includeAll']?[{'all':!![]}]:undefined})[_0xdb5f('0x29')](function(_0x318a7f){var _0x23cabe=_0x3768dc[_0xdb5f('0x4b')]['get']({'plain':!![]});if(!_0x23cabe)throw new Error(_0xdb5f('0x4c'));if(_0x23cabe[_0xdb5f('0x4d')]==='user'){var _0xdbc3fa=_0x318a7f[_0xdb5f('0x26')]({'plain':!![]});var _0x102327=_0xdb5f('0x4e');return db[_0xdb5f('0x4f')][_0xdb5f('0x48')]({'where':{'name':_0x102327,'userProfileId':_0x23cabe[_0xdb5f('0x50')]},'raw':!![]})[_0xdb5f('0x29')](function(_0x1f30f1){if(_0x1f30f1&&_0x1f30f1[_0xdb5f('0x51')]===0x0){return db[_0xdb5f('0x27')][_0xdb5f('0x49')]({'name':_0xdbc3fa['name'],'resourceId':_0xdbc3fa['id'],'type':_0x1f30f1[_0xdb5f('0x2b')],'sectionId':_0x1f30f1['id']},{})[_0xdb5f('0x29')](function(){return _0x318a7f;});}else{return _0x318a7f;}})[_0xdb5f('0x41')](function(_0x15fe0b){logger[_0xdb5f('0x2a')](_0xdb5f('0x52'),_0x15fe0b);throw _0x15fe0b;});}return _0x318a7f;});}})[_0xdb5f('0x29')](respondWithResult(_0x43234b,0xc9))[_0xdb5f('0x41')](handleError(_0x43234b,null));};exports[_0xdb5f('0x25')]=function(_0x365542,_0x1eab98){if(_0x365542[_0xdb5f('0x4a')]['id']){delete _0x365542[_0xdb5f('0x4a')]['id'];}return db['JscriptyProject'][_0xdb5f('0x48')]({'where':{'id':_0x365542[_0xdb5f('0x43')]['id']}})['then'](handleEntityNotFound(_0x1eab98,null))[_0xdb5f('0x29')](saveUpdates(_0x365542['body'],null))[_0xdb5f('0x29')](respondWithResult(_0x1eab98,null))[_0xdb5f('0x41')](handleError(_0x1eab98,null));};exports[_0xdb5f('0x28')]=function(_0x4ce92f,_0x49488a){return db[_0xdb5f('0x3d')]['find']({'where':{'id':_0x4ce92f[_0xdb5f('0x43')]['id']}})['then'](handleEntityNotFound(_0x49488a,null))[_0xdb5f('0x29')](removeEntity(_0x49488a,null))[_0xdb5f('0x41')](handleError(_0x49488a,null));};exports[_0xdb5f('0x57')]=function(_0xd3405c,_0xa0f459,_0x303329){var _0x1da3a3={'raw':!![],'where':{}};var _0x16e235={};var _0x3c3401={'count':0x0,'rows':[]};return db[_0xdb5f('0x3d')]['findOne']({'where':{'id':_0xd3405c[_0xdb5f('0x43')]['id']}})[_0xdb5f('0x29')](handleEntityNotFound(_0xa0f459,null))[_0xdb5f('0x29')](function(_0x43db44){if(_0x43db44){_0x16e235[_0xdb5f('0x30')]=_['keys'](db[_0xdb5f('0x58')][_0xdb5f('0x44')]);_0x16e235['query']=_[_0xdb5f('0x32')](_0xd3405c[_0xdb5f('0x31')]);_0x16e235[_0xdb5f('0x33')]=_[_0xdb5f('0x34')](_0x16e235['model'],_0x16e235[_0xdb5f('0x31')]);_0x1da3a3['attributes']=_[_0xdb5f('0x34')](_0x16e235[_0xdb5f('0x30')],qs[_0xdb5f('0x45')](_0xd3405c[_0xdb5f('0x31')][_0xdb5f('0x45')]));_0x1da3a3['attributes']=_0x1da3a3[_0xdb5f('0x35')]['length']?_0x1da3a3[_0xdb5f('0x35')]:_0x16e235[_0xdb5f('0x30')];if(!_0xd3405c[_0xdb5f('0x31')][_0xdb5f('0x36')]('nolimit')){_0x1da3a3[_0xdb5f('0x1e')]=qs['limit'](_0xd3405c[_0xdb5f('0x31')]['limit']);_0x1da3a3[_0xdb5f('0x21')]=qs[_0xdb5f('0x21')](_0xd3405c[_0xdb5f('0x31')][_0xdb5f('0x21')]);}_0x1da3a3[_0xdb5f('0x37')]=qs['sort'](_0xd3405c[_0xdb5f('0x31')][_0xdb5f('0x38')]);_0x1da3a3[_0xdb5f('0x39')]=qs[_0xdb5f('0x33')](_['pick'](_0xd3405c[_0xdb5f('0x31')],_0x16e235[_0xdb5f('0x33')]));_0x1da3a3[_0xdb5f('0x39')][_0xdb5f('0x59')]=_0x43db44['id'];if(_0xd3405c[_0xdb5f('0x31')][_0xdb5f('0x3b')]){_0x1da3a3['where']=_[_0xdb5f('0x5a')](_0x1da3a3[_0xdb5f('0x39')],{'$or':_['map'](_0x1da3a3['attributes'],function(_0x250b0c){var _0x2147ee={};_0x2147ee[_0x250b0c]={'$like':'%'+_0xd3405c[_0xdb5f('0x31')][_0xdb5f('0x3b')]+'%'};return _0x2147ee;})});}_0x1da3a3=_[_0xdb5f('0x5a')]({},_0x1da3a3,_0xd3405c[_0xdb5f('0x47')]);return db['JscriptySessionReport']['count']({'where':_0x1da3a3[_0xdb5f('0x39')]})[_0xdb5f('0x29')](function(_0x2a58df){_0x3c3401[_0xdb5f('0x20')]=_0x2a58df;if(_0xd3405c[_0xdb5f('0x31')][_0xdb5f('0x3e')]){_0x1da3a3[_0xdb5f('0x3f')]=[{'all':!![]}];}return db['JscriptySessionReport'][_0xdb5f('0x40')](_0x1da3a3);})[_0xdb5f('0x29')](function(_0x510428){_0x3c3401[_0xdb5f('0x5b')]=_0x510428;return _0x3c3401;});}})[_0xdb5f('0x29')](respondWithFilteredResult(_0xa0f459,_0x1da3a3))['catch'](handleError(_0xa0f459,null));};exports[_0xdb5f('0x5c')]=function(_0x1e770f,_0x5098b1,_0x19eb3b){var _0x212e6e={'raw':!![],'where':{}};var _0x4e55c3={};var _0x31282e={'count':0x0,'rows':[]};return db[_0xdb5f('0x3d')][_0xdb5f('0x5d')]({'where':{'id':_0x1e770f[_0xdb5f('0x43')]['id']}})[_0xdb5f('0x29')](handleEntityNotFound(_0x5098b1,null))[_0xdb5f('0x29')](function(_0x142732){if(_0x142732){_0x4e55c3[_0xdb5f('0x30')]=_['keys'](db[_0xdb5f('0x5e')][_0xdb5f('0x44')]);_0x4e55c3[_0xdb5f('0x31')]=_[_0xdb5f('0x32')](_0x1e770f[_0xdb5f('0x31')]);_0x4e55c3[_0xdb5f('0x33')]=_[_0xdb5f('0x34')](_0x4e55c3[_0xdb5f('0x30')],_0x4e55c3['query']);_0x212e6e[_0xdb5f('0x35')]=_[_0xdb5f('0x34')](_0x4e55c3[_0xdb5f('0x30')],qs['fields'](_0x1e770f[_0xdb5f('0x31')][_0xdb5f('0x45')]));_0x212e6e[_0xdb5f('0x35')]=_0x212e6e[_0xdb5f('0x35')]['length']?_0x212e6e[_0xdb5f('0x35')]:_0x4e55c3[_0xdb5f('0x30')];if(!_0x1e770f['query']['hasOwnProperty'](_0xdb5f('0x5f'))){_0x212e6e[_0xdb5f('0x1e')]=qs['limit'](_0x1e770f[_0xdb5f('0x31')][_0xdb5f('0x1e')]);_0x212e6e[_0xdb5f('0x21')]=qs[_0xdb5f('0x21')](_0x1e770f['query'][_0xdb5f('0x21')]);}_0x212e6e[_0xdb5f('0x37')]=qs[_0xdb5f('0x38')](_0x1e770f[_0xdb5f('0x31')][_0xdb5f('0x38')]);_0x212e6e[_0xdb5f('0x39')]=qs[_0xdb5f('0x33')](_['pick'](_0x1e770f[_0xdb5f('0x31')],_0x4e55c3[_0xdb5f('0x33')]));_0x212e6e[_0xdb5f('0x39')]['ProjectId']=_0x142732['id'];if(_0x1e770f['query'][_0xdb5f('0x3b')]){_0x212e6e[_0xdb5f('0x39')]=_[_0xdb5f('0x5a')](_0x212e6e['where'],{'$or':_[_0xdb5f('0x2d')](_0x212e6e[_0xdb5f('0x35')],function(_0x369c5f){var _0x39ab97={};_0x39ab97[_0x369c5f]={'$like':'%'+_0x1e770f[_0xdb5f('0x31')][_0xdb5f('0x3b')]+'%'};return _0x39ab97;})});}_0x212e6e=_[_0xdb5f('0x5a')]({},_0x212e6e,_0x1e770f[_0xdb5f('0x47')]);return db[_0xdb5f('0x5e')][_0xdb5f('0x20')]({'where':_0x212e6e[_0xdb5f('0x39')]})[_0xdb5f('0x29')](function(_0x2dddef){_0x31282e[_0xdb5f('0x20')]=_0x2dddef;if(_0x1e770f[_0xdb5f('0x31')][_0xdb5f('0x3e')]){_0x212e6e[_0xdb5f('0x3f')]=[{'all':!![]}];}return db[_0xdb5f('0x5e')][_0xdb5f('0x40')](_0x212e6e);})['then'](function(_0x3c2842){_0x31282e[_0xdb5f('0x5b')]=_0x3c2842;return _0x31282e;});}})[_0xdb5f('0x29')](respondWithFilteredResult(_0x5098b1,_0x212e6e))[_0xdb5f('0x41')](handleError(_0x5098b1,null));};function char(_0x366f2c){return _0xdb5f('0x60')===typeof _0x366f2c?String[_0xdb5f('0x61')][_0xdb5f('0x24')](null,arguments):_0x366f2c;}function needsEncapsulation(_0x219158){return!!_0x219158&&(_0x219158[_0xdb5f('0x62')]()[_0xdb5f('0x63')](char(0xd))>=0x0||_0x219158[_0xdb5f('0x62')]()[_0xdb5f('0x63')](char(0xa))>=0x0||_0x219158[_0xdb5f('0x62')]()['indexOf'](char(0x2c))>=0x0||_0x219158['toString']()[_0xdb5f('0x63')](char(0x22))>=0x0);}function encapsulate(_0x133aa7){var _0x24cdbd=char(0x22),_0x252df2='\x5c'+char(0x22),_0x3bff7a=_0x133aa7[_0xdb5f('0x62')]()['replace'](new RegExp(_0x24cdbd,'g'),_0x252df2);return _0x24cdbd+_0x3bff7a+_0x24cdbd;}exports[_0xdb5f('0x64')]=function(_0x3fda46,_0xe025b0,_0x260e0f){var _0x178ec3,_0x569fff;var _0x2e1370={'where':{'ProjectId':_0x3fda46[_0xdb5f('0x43')]['id']}};if(_0x3fda46[_0xdb5f('0x31')]['startTime']){_0x2e1370[_0xdb5f('0x39')]['starttime']=JSON['parse'](_0x3fda46['query'][_0xdb5f('0x65')]);}return db[_0xdb5f('0x58')]['findAll'](_0x2e1370)[_0xdb5f('0x29')](handleEntityNotFound(_0xe025b0,null))[_0xdb5f('0x29')](function(_0x108447){if(_0x108447){_0x178ec3=_0x108447;return db['JscriptyQuestionReport']['findAll']({'where':{'SessionId':{'$in':_[_0xdb5f('0x2d')](_0x178ec3,'id')},'ProjectId':_0x3fda46[_0xdb5f('0x43')]['id']},'order':'-createdAt'});}})[_0xdb5f('0x29')](handleEntityNotFound(_0xe025b0,null))[_0xdb5f('0x29')](function(_0x1ac31f){if(_0x1ac31f){_0x569fff=_0x1ac31f;var _0x3273fb={};for(var _0x3c7ec9=0x0,_0x4271d7=_0x569fff['length'];_0x3c7ec9<_0x4271d7;_0x3c7ec9++){if(!_0x3273fb[_0xdb5f('0x36')](_0x569fff[_0x3c7ec9][_0xdb5f('0x66')])){_0x3273fb[_0x569fff[_0x3c7ec9][_0xdb5f('0x66')]]=needsEncapsulation(_0x569fff[_0x3c7ec9]['question'])?encapsulate(_0x569fff[_0x3c7ec9][_0xdb5f('0x67')]):_0x569fff[_0x3c7ec9]['question'];}}var _0x201089=[],_0x25b599={};for(var _0x55df2b=0x0,_0x1c8698=_0x178ec3[_0xdb5f('0x46')];_0x55df2b<_0x1c8698;_0x55df2b++){_0x25b599={'ProjectId':_0x3fda46[_0xdb5f('0x43')]['id'],'SessionId':_0x178ec3[_0x55df2b]['id'],'StartTime':moment(_0x178ec3[_0x55df2b][_0xdb5f('0x68')])[_0xdb5f('0x69')]('YYYY-MM-DD\x20HH:mm:ss')};for(var _0x2b6d2b=0x0,_0x478e23=_0x569fff['length'];_0x2b6d2b<_0x478e23;_0x2b6d2b++){if(_0x569fff[_0x2b6d2b]['SessionId']==_0x178ec3[_0x55df2b]['id']&&_0x3273fb['hasOwnProperty'](_0x569fff[_0x2b6d2b][_0xdb5f('0x66')])){_0x25b599[_0x3273fb[_0x569fff[_0x2b6d2b]['questionId']]]=_0x569fff[_0x2b6d2b][_0xdb5f('0x6a')];}}for(var _0x3b687c in _0x3273fb){if(!_0x25b599[_0xdb5f('0x36')](_0x3273fb[_0x3b687c])){_0x25b599[_0x3273fb[_0x3b687c]]=null;}}_0x201089[_0xdb5f('0x6b')](_0x25b599);}return _0x201089;}})[_0xdb5f('0x29')](function(_0x302623){if(!_['isEmpty'](_0x302623)){var _0x2f8ae7=toCsv(_0x302623);var _0x3f1474=Date[_0xdb5f('0x6c')]();fs['writeFileSync'](util['format'](_0xdb5f('0x6d'),_0x3fda46[_0xdb5f('0x43')]['id'],_0x3f1474),_0x2f8ae7);_0xe025b0[_0xdb5f('0x6e')]('Content-disposition',_0xdb5f('0x6f')+util['format']('Jscripty_Project_%d_Summary_%s.csv',_0x3fda46['params']['id'],_0x3f1474));_0xe025b0[_0xdb5f('0x6e')]('Content-type','text/csv');return _0xe025b0[_0xdb5f('0x70')](util[_0xdb5f('0x69')]('/tmp/Jscripty_Project_%d_Summary_%s.csv',_0x3fda46[_0xdb5f('0x43')]['id'],_0x3f1474));}else{return _0xe025b0['sendStatus'](0xcc);}})[_0xdb5f('0x41')](handleError(_0xe025b0,null));};