Built motion from commit (unavailable).|2.4.16
[motion2.git] / server / api / plugin / plugin.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 _0x299d=['Error\x20while\x20downloading\x20the\x20plugin','unlinkSync','info','Temporary\x20file\x20removed','upload','file','filename','extname','root','Plugin\x20upload\x20filepath:\x20%s','Plugin\x20upload\x20destination:\x20%s','readdirSync','Invalid\x20plugin\x20structure','lstatSync','isFile','some','manifest.json','Plugin\x20manifest\x20missing','readFileSync','parse','undefined','Invalid\x20manifest:\x20name\x20missing','version','Invalid\x20manifest:\x20version\x20not\x20specified','parameters','Invalid\x20manifest:\x20parameters\x20missing','views','Invalid\x20manifest:\x20views\x20missing','admin','Invalid\x20manifest:\x20no\x20view\x20specified','script','scriptName','Invalid\x20manifest:\x20script\x20name\x20missing','scriptPath','Invalid\x20manifest:\x20script\x20path\x20missing','Invalid\x20manifest:\x20invalid\x20type','description','sidebar','icon','icon-apps','html','test','plugins','Warning:\x20admin\x20view\x20not\x20specified','agent','Warning:\x20agent\x20view\x20not\x20specified','body','role','userProfileId','Unable\x20to\x20retrieve\x20the\x20current\x20user','autoAssociation','create','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','Zip\x20archive\x20removed','Extracted\x20folder\x20removed','delete','\x27PATH\x27\x20parameter\x20not\x20specified','port','\x27PORT\x27\x20parameter\x20not\x20specified','hostname','http://localhost:','encoding','%s%s','headers','content-length','content-type','endsWith','statusCode','webhookPost','resolve','method','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','extract-zip','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','defaults','redis','localhost','./plugin.socket','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','reject','update','then','destroy','get','Plugins','UserProfileResource','stack','name','send','index','map','Plugin','rawAttributes','fieldName','type','key','model','query','keys','intersection','fields','attributes','length','nolimit','sort','where','filters','pick','filter','merge','VIRTUAL','options','includeAll','include','findAll','rows','catch','show','find','download','params','join','server/files/plugins','%s.zip','basename','createWriteStream','zip','warning','ENOENT','error','Sequelize','Error','Error\x20while\x20generating\x20the\x20zip\x20archive','glob','**/*','dirname','attachments/**/*','finalize','close','existsSync','format'];(function(_0x572498,_0x253b3a){var _0x128a67=function(_0x149980){while(--_0x149980){_0x572498['push'](_0x572498['shift']());}};_0x128a67(++_0x253b3a);}(_0x299d,0xf7));var _0xd299=function(_0x501510,_0x61caa9){_0x501510=_0x501510-0x0;var _0x1e6ee5=_0x299d[_0x501510];return _0x1e6ee5;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0xd299('0x0'));var rimraf=require(_0xd299('0x1'));var zipdir=require(_0xd299('0x2'));var jsonpatch=require(_0xd299('0x3'));var rp=require(_0xd299('0x4'));var moment=require(_0xd299('0x5'));var BPromise=require(_0xd299('0x6'));var Mustache=require('mustache');var util=require(_0xd299('0x7'));var path=require(_0xd299('0x8'));var sox=require(_0xd299('0x9'));var csv=require(_0xd299('0xa'));var ejs=require(_0xd299('0xb'));var fs=require('fs');var _=require(_0xd299('0xc'));var squel=require(_0xd299('0xd'));var crypto=require(_0xd299('0xe'));var jsforce=require(_0xd299('0xf'));var deskjs=require(_0xd299('0x10'));var toCsv=require(_0xd299('0xa'));var querystring=require(_0xd299('0x11'));var Papa=require(_0xd299('0x12'));var extract=require(_0xd299('0x13'));var rimraf=require('rimraf');var archiver=require('archiver');var Redis=require('ioredis');var authService=require(_0xd299('0x14'));var qs=require(_0xd299('0x15'));var as=require(_0xd299('0x16'));var hardwareService=require(_0xd299('0x17'));var logger=require(_0xd299('0x18'))(_0xd299('0x19'));var utils=require(_0xd299('0x1a'));var config=require(_0xd299('0x1b'));var db=require(_0xd299('0x1c'))['db'];config['redis']=_[_0xd299('0x1d')](config[_0xd299('0x1e')],{'host':_0xd299('0x1f'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config['redis']));require(_0xd299('0x20'))['register'](socket);function respondWithStatusCode(_0x368f3a,_0x1eedda){_0x1eedda=_0x1eedda||0xcc;return function(_0x24ed9f){if(_0x24ed9f){return _0x368f3a[_0xd299('0x21')](_0x1eedda);}return _0x368f3a[_0xd299('0x22')](_0x1eedda)[_0xd299('0x23')]();};}function respondWithResult(_0x162daa,_0x13825a){_0x13825a=_0x13825a||0xc8;return function(_0x1b5819){if(_0x1b5819){return _0x162daa[_0xd299('0x22')](_0x13825a)[_0xd299('0x24')](_0x1b5819);}};}function respondWithFilteredResult(_0x20f2b1,_0x5b9dd1){return function(_0x4401a1){if(_0x4401a1){var _0x31d283=_0x4401a1[_0xd299('0x25')],_0x1617c7=_0x5b9dd1[_0xd299('0x26')],_0x179c77=_0x5b9dd1[_0xd299('0x26')]+_0x5b9dd1[_0xd299('0x27')],_0xc303fc;if(_0x179c77>=_0x31d283){_0x179c77=_0x31d283;_0xc303fc=0xc8;}else{_0xc303fc=0xce;}_0x20f2b1[_0xd299('0x22')](_0xc303fc);return _0x20f2b1[_0xd299('0x28')](_0xd299('0x29'),_0x1617c7+'-'+_0x179c77+'/'+_0x31d283)[_0xd299('0x24')](_0x4401a1);}return null;};}function patchUpdates(_0x13e29d){return function(_0x59c813){try{jsonpatch[_0xd299('0x2a')](_0x59c813,_0x13e29d,!![]);}catch(_0x59a8c5){return BPromise[_0xd299('0x2b')](_0x59a8c5);}return _0x59c813['save']();};}function saveUpdates(_0x2807d2,_0x3ca8bf){return function(_0x33770d){if(_0x33770d){return _0x33770d[_0xd299('0x2c')](_0x2807d2)[_0xd299('0x2d')](function(_0xd8ce0f){return _0xd8ce0f;});}return null;};}function removeEntity(_0x225bd5,_0x10338d){return function(_0x4d5a62){if(_0x4d5a62){return _0x4d5a62[_0xd299('0x2e')]()['then'](function(){var _0x4cae68=_0x4d5a62[_0xd299('0x2f')]({'plain':!![]});var _0x4b4333=_0xd299('0x30');return db[_0xd299('0x31')]['destroy']({'where':{'type':_0x4b4333,'resourceId':_0x4cae68['id']}})['then'](function(){return _0x4d5a62;});})[_0xd299('0x2d')](function(){_0x225bd5[_0xd299('0x22')](0xcc)[_0xd299('0x23')]();});}};}function handleEntityNotFound(_0xe2c941,_0x912d6e){return function(_0x17aff3){if(!_0x17aff3){_0xe2c941[_0xd299('0x21')](0x194);}return _0x17aff3;};}function handleError(_0x214329,_0x2f01b3){_0x2f01b3=_0x2f01b3||0x1f4;return function(_0x2fc862){logger['error'](_0x2fc862[_0xd299('0x32')]);if(_0x2fc862['name']){delete _0x2fc862[_0xd299('0x33')];}_0x214329['status'](_0x2f01b3)[_0xd299('0x34')](_0x2fc862);};}exports[_0xd299('0x35')]=function(_0x3bdb9f,_0x12ee1c){var _0x14bec1={},_0x52b516={},_0x255c33={'count':0x0,'rows':[]};var _0xb91dcb=_[_0xd299('0x36')](db[_0xd299('0x37')][_0xd299('0x38')],function(_0x191e0a){return{'name':_0x191e0a[_0xd299('0x39')],'type':_0x191e0a[_0xd299('0x3a')][_0xd299('0x3b')]};});_0x52b516[_0xd299('0x3c')]=_[_0xd299('0x36')](_0xb91dcb,_0xd299('0x33'));_0x52b516[_0xd299('0x3d')]=_[_0xd299('0x3e')](_0x3bdb9f[_0xd299('0x3d')]);_0x52b516['filters']=_[_0xd299('0x3f')](_0x52b516[_0xd299('0x3c')],_0x52b516[_0xd299('0x3d')]);_0x14bec1['attributes']=_['intersection'](_0x52b516[_0xd299('0x3c')],qs[_0xd299('0x40')](_0x3bdb9f[_0xd299('0x3d')][_0xd299('0x40')]));_0x14bec1[_0xd299('0x41')]=_0x14bec1['attributes'][_0xd299('0x42')]?_0x14bec1[_0xd299('0x41')]:_0x52b516[_0xd299('0x3c')];if(!_0x3bdb9f[_0xd299('0x3d')]['hasOwnProperty'](_0xd299('0x43'))){_0x14bec1['limit']=qs[_0xd299('0x27')](_0x3bdb9f[_0xd299('0x3d')][_0xd299('0x27')]);_0x14bec1[_0xd299('0x26')]=qs[_0xd299('0x26')](_0x3bdb9f[_0xd299('0x3d')][_0xd299('0x26')]);}_0x14bec1['order']=qs[_0xd299('0x44')](_0x3bdb9f[_0xd299('0x3d')][_0xd299('0x44')]);_0x14bec1[_0xd299('0x45')]=qs[_0xd299('0x46')](_[_0xd299('0x47')](_0x3bdb9f[_0xd299('0x3d')],_0x52b516[_0xd299('0x46')]));if(_0x3bdb9f[_0xd299('0x3d')][_0xd299('0x48')]){_0x14bec1[_0xd299('0x45')]=_[_0xd299('0x49')](_0x14bec1['where'],{'$or':_[_0xd299('0x36')](_0xb91dcb,function(_0x2bb96b){if(_0x2bb96b[_0xd299('0x3a')]!==_0xd299('0x4a')){var _0x3246f2={};_0x3246f2[_0x2bb96b['name']]={'$like':'%'+_0x3bdb9f[_0xd299('0x3d')]['filter']+'%'};return _0x3246f2;}})});}_0x14bec1=_[_0xd299('0x49')]({},_0x14bec1,_0x3bdb9f[_0xd299('0x4b')]);var _0x208dce={'where':_0x14bec1[_0xd299('0x45')]};return db[_0xd299('0x37')][_0xd299('0x25')](_0x208dce)['then'](function(_0x3fab16){_0x255c33['count']=_0x3fab16;if(_0x3bdb9f[_0xd299('0x3d')][_0xd299('0x4c')]){_0x14bec1[_0xd299('0x4d')]=[{'all':!![]}];}return db['Plugin'][_0xd299('0x4e')](_0x14bec1);})[_0xd299('0x2d')](function(_0x50b34d){_0x255c33[_0xd299('0x4f')]=_0x50b34d;return _0x255c33;})[_0xd299('0x2d')](respondWithFilteredResult(_0x12ee1c,_0x14bec1))[_0xd299('0x50')](handleError(_0x12ee1c,null));};exports[_0xd299('0x51')]=function(_0x1d0d34,_0x4783e9){var _0x2dd981={'raw':!![],'where':{'id':_0x1d0d34['params']['id']}},_0x199d65={};_0x199d65['model']=_[_0xd299('0x3e')](db[_0xd299('0x37')][_0xd299('0x38')]);_0x199d65[_0xd299('0x3d')]=_[_0xd299('0x3e')](_0x1d0d34[_0xd299('0x3d')]);_0x199d65['filters']=_[_0xd299('0x3f')](_0x199d65[_0xd299('0x3c')],_0x199d65[_0xd299('0x3d')]);_0x2dd981['attributes']=_[_0xd299('0x3f')](_0x199d65[_0xd299('0x3c')],qs['fields'](_0x1d0d34['query'][_0xd299('0x40')]));_0x2dd981[_0xd299('0x41')]=_0x2dd981[_0xd299('0x41')][_0xd299('0x42')]?_0x2dd981['attributes']:_0x199d65[_0xd299('0x3c')];if(_0x1d0d34[_0xd299('0x3d')][_0xd299('0x4c')]){_0x2dd981[_0xd299('0x4d')]=[{'all':!![]}];}_0x2dd981=_[_0xd299('0x49')]({},_0x2dd981,_0x1d0d34[_0xd299('0x4b')]);return db[_0xd299('0x37')][_0xd299('0x52')](_0x2dd981)[_0xd299('0x2d')](handleEntityNotFound(_0x4783e9,null))[_0xd299('0x2d')](respondWithResult(_0x4783e9,null))[_0xd299('0x50')](handleError(_0x4783e9,null));};exports[_0xd299('0x53')]=function(_0x3ae0ff,_0x5b00ee,_0x37791e){return db[_0xd299('0x37')][_0xd299('0x52')]({'where':{'id':_0x3ae0ff[_0xd299('0x54')]['id']},'attributes':['name',_0xd299('0x8')],'raw':!![]})[_0xd299('0x2d')](handleEntityNotFound(_0x5b00ee,null))['then'](function(_0x3f78b5){if(_0x3f78b5){var _0x42d7f7=path[_0xd299('0x55')](config['root'],_0xd299('0x56'),util['format'](_0xd299('0x57'),path[_0xd299('0x58')](_0x3f78b5[_0xd299('0x8')])));var _0x4a7d7d=fs[_0xd299('0x59')](_0x42d7f7);var _0x1ce9b7=archiver(_0xd299('0x5a'),{'zlib':{'level':0x9}});_0x1ce9b7['on'](_0xd299('0x5b'),function(_0x45e4f0){if(_0x45e4f0['code']===_0xd299('0x5c')){logger[_0xd299('0x5d')](_0x45e4f0);}else{throw new db[(_0xd299('0x5e'))][(_0xd299('0x5f'))](_0xd299('0x60'));}});_0x1ce9b7['on'](_0xd299('0x5d'),function(_0x2b54e6){throw new db['Sequelize'][(_0xd299('0x5f'))](_0xd299('0x60'));});_0x1ce9b7['pipe'](_0x4a7d7d);_0x1ce9b7[_0xd299('0x61')](_0xd299('0x62'),{'cwd':path[_0xd299('0x55')](config['root'],'server/files/plugins',path[_0xd299('0x63')](_0x3f78b5[_0xd299('0x8')])),'ignore':[path[_0xd299('0x55')](path['basename'](_0x3f78b5[_0xd299('0x8')]),'node_modules/**/*'),path[_0xd299('0x55')](path[_0xd299('0x58')](_0x3f78b5[_0xd299('0x8')]),_0xd299('0x64'))],'nodir':!![]})[_0xd299('0x65')]();_0x4a7d7d['on'](_0xd299('0x66'),function(){if(!fs[_0xd299('0x67')](_0x42d7f7)){throw new db[(_0xd299('0x5e'))]['Error']('Plugin\x20not\x20found');}return _0x5b00ee['download'](_0x42d7f7,util[_0xd299('0x68')](_0xd299('0x57'),path[_0xd299('0x58')](_0x3f78b5[_0xd299('0x8')])),function(_0x26eeec){if(_0x26eeec){throw new db[(_0xd299('0x5e'))]['Error'](_0xd299('0x69'));}fs[_0xd299('0x6a')](_0x42d7f7);logger[_0xd299('0x6b')]('Download\x20completed');logger[_0xd299('0x6b')](_0xd299('0x6c'));});});}return null;})['catch'](handleError(_0x5b00ee,null));};exports[_0xd299('0x6d')]=function(_0x402399,_0x1081cc,_0x482a7a){var _0x595f63=path[_0xd299('0x58')](_0x402399[_0xd299('0x6e')][_0xd299('0x6f')],path[_0xd299('0x70')](_0x402399[_0xd299('0x6e')][_0xd299('0x6f')]));var _0x4b91dd=path[_0xd299('0x55')](config[_0xd299('0x71')],'server/files/plugins',_0x402399[_0xd299('0x6e')][_0xd299('0x6f')]);var _0x2a1576=path[_0xd299('0x55')](config[_0xd299('0x71')],_0xd299('0x56'),_0x595f63);logger[_0xd299('0x6b')](_0xd299('0x72'),_0x4b91dd);logger['info'](_0xd299('0x73'),_0x2a1576);try{fs['chmodSync'](_0x4b91dd,parseInt('0777',0x8));extract(_0x4b91dd,{'dir':_0x2a1576},function(_0x32c0c6){if(_0x32c0c6){logger[_0xd299('0x5d')](_0x32c0c6);handleError(_0x32c0c6,!![]);};var _0x3e242c=fs[_0xd299('0x74')](_0x2a1576);if(_0x3e242c[_0xd299('0x42')]>0x1){removeReferences(_0x4b91dd,_0x2a1576);logger[_0xd299('0x5d')](_0xd299('0x75'));return _0x482a7a(new Error(_0xd299('0x75')));}var _0x353880=fs[_0xd299('0x76')](path[_0xd299('0x55')](_0x2a1576,_0x3e242c[0x0]));if(_0x353880[_0xd299('0x77')]()){removeReferences(_0x4b91dd,_0x2a1576);logger[_0xd299('0x5d')](_0xd299('0x75'));return _0x482a7a(new Error('Invalid\x20plugin\x20structure'));}if(_0x353880['isDirectory']()){var _0x2f2e3f=fs[_0xd299('0x74')](path[_0xd299('0x55')](_0x2a1576,_0x3e242c[0x0]));if(_0x2f2e3f[_0xd299('0x42')]===0x0){removeReferences(_0x4b91dd,_0x2a1576);logger['error'](_0xd299('0x75'));return _0x482a7a(new Error('Invalid\x20plugin\x20structure'));}var _0x5ddefc=_0x2f2e3f[_0xd299('0x78')](function(_0x34be4b){return _0x34be4b===_0xd299('0x79');});if(!_0x5ddefc){return _0x482a7a(new Error(_0xd299('0x7a')));}var _0x347469=fs[_0xd299('0x7b')](path['join'](_0x2a1576,_0x3e242c[0x0],'manifest.json'));var _0x4e9c9b=JSON[_0xd299('0x7c')](_0x347469);if(_0xd299('0x7d')==typeof _0x4e9c9b[_0xd299('0x33')]){return _0x482a7a(new Error(_0xd299('0x7e')));}if(_0xd299('0x7d')==typeof _0x4e9c9b[_0xd299('0x3a')]){return _0x482a7a(new Error('Invalid\x20manifest:\x20type\x20missing'));}if(_0xd299('0x7d')==typeof _0x4e9c9b[_0xd299('0x7f')]){return _0x482a7a(new Error(_0xd299('0x80')));}if(_0xd299('0x7d')==typeof _0x4e9c9b[_0xd299('0x81')]){return _0x482a7a(new Error(_0xd299('0x82')));}if(_0x4e9c9b['type']==='html'){if(_0xd299('0x7d')==typeof _0x4e9c9b['parameters'][_0xd299('0x83')]){return _0x482a7a(new Error(_0xd299('0x84')));}if(_0xd299('0x7d')==typeof _0x4e9c9b[_0xd299('0x81')][_0xd299('0x83')][_0xd299('0x85')]&&_0xd299('0x7d')==typeof _0x4e9c9b[_0xd299('0x81')][_0xd299('0x83')]['agent']){return _0x482a7a(new Error(_0xd299('0x86')));}}else if(_0x4e9c9b[_0xd299('0x3a')]===_0xd299('0x87')){if(_0xd299('0x7d')==typeof _0x4e9c9b[_0xd299('0x81')][_0xd299('0x88')]){return _0x482a7a(new Error(_0xd299('0x89')));}if('undefined'==typeof _0x4e9c9b['parameters'][_0xd299('0x8a')]){return _0x482a7a(new Error(_0xd299('0x8b')));}}else{return _0x482a7a(new Error(_0xd299('0x8c')));}var _0x5dfedf=_0x4e9c9b[_0xd299('0x33')];var _0x16b1e5=_0x4e9c9b[_0xd299('0x8d')];var _0x2f348d=_0x4e9c9b['type'];var _0x427efd=_0x4e9c9b['sidebar']?_0x4e9c9b[_0xd299('0x8e')]:'always';var _0x18705d=_0x4e9c9b[_0xd299('0x8f')]?_0x4e9c9b[_0xd299('0x8f')]:_0xd299('0x90');var _0x38db1f='';var _0x20fb46='';var _0x25c8e1='';var _0x52d778='';var _0x31098e=_0x4e9c9b['version'];if(_0x2f348d===_0xd299('0x91')){if(_0xd299('0x7d')!=typeof _0x4e9c9b[_0xd299('0x81')][_0xd299('0x83')][_0xd299('0x85')]){var _0x7c6d67=_0x4e9c9b['parameters']['views'][_0xd299('0x85')];if(!/^(f|ht)tps?:\/\//i[_0xd299('0x92')](_0x7c6d67)){_0x38db1f=path[_0xd299('0x55')](_0xd299('0x93'),_0x595f63,_0x3e242c[0x0],_0x7c6d67);}else{_0x38db1f=_0x7c6d67;}}else{logger[_0xd299('0x6b')](_0xd299('0x94'));}if(_0xd299('0x7d')!=typeof _0x4e9c9b[_0xd299('0x81')][_0xd299('0x83')][_0xd299('0x95')]){var _0x1516bf=_0x4e9c9b[_0xd299('0x81')][_0xd299('0x83')][_0xd299('0x95')];if(!/^(f|ht)tps?:\/\//i['test'](_0x1516bf)){_0x20fb46=path[_0xd299('0x55')](_0xd299('0x93'),_0x595f63,_0x3e242c[0x0],_0x1516bf);}else{_0x20fb46=_0x1516bf;}}else{logger[_0xd299('0x6b')](_0xd299('0x96'));}}else if(_0x2f348d===_0xd299('0x87')){_0x25c8e1=_0x4e9c9b['parameters'][_0xd299('0x88')];_0x52d778=_0x4e9c9b[_0xd299('0x81')][_0xd299('0x8a')];if(_0xd299('0x7d')!=typeof _0x4e9c9b[_0xd299('0x81')][_0xd299('0x83')]){if(_0xd299('0x7d')!=typeof _0x4e9c9b[_0xd299('0x81')]['views'][_0xd299('0x85')]){var _0x7c6d67=_0x4e9c9b['parameters'][_0xd299('0x83')]['admin'];if(!/^(f|ht)tps?:\/\//i[_0xd299('0x92')](_0x7c6d67)){_0x38db1f=path['join']('plugins',_0x595f63,_0x3e242c[0x0],_0x7c6d67);}else{_0x38db1f=_0x7c6d67;}}if('undefined'!=typeof _0x4e9c9b['parameters'][_0xd299('0x83')][_0xd299('0x95')]){var _0x1516bf=_0x4e9c9b[_0xd299('0x81')][_0xd299('0x83')]['agent'];if(!/^(f|ht)tps?:\/\//i[_0xd299('0x92')](_0x1516bf)){_0x20fb46=path[_0xd299('0x55')](_0xd299('0x93'),_0x595f63,_0x3e242c[0x0],_0x1516bf);}else{_0x20fb46=_0x1516bf;}}}}var _0x210d8c={'name':_0x5dfedf,'description':_0x16b1e5,'path':path[_0xd299('0x55')](_0x595f63,_0x3e242c[0x0]),'type':_0x2f348d,'sidebar':_0x427efd,'icon':_0x18705d,'adminUrl':_0x38db1f,'agentUrl':_0x20fb46,'scriptName':_0x25c8e1,'scriptPath':_0x52d778,'version':_0x31098e};removeReferences(_0x4b91dd,null);return db[_0xd299('0x37')]['create'](_0x210d8c)['then'](function(_0x37b842){var _0x4e2bd3={'role':_0x402399[_0xd299('0x97')][_0xd299('0x98')],'userProfileId':_0x402399[_0xd299('0x97')][_0xd299('0x99')]};if(!_0x4e2bd3)throw new Error(_0xd299('0x9a'));if(_0x4e2bd3[_0xd299('0x98')]==='user'){var _0x15c4b0=_0x37b842['get']({'plain':!![]});return db['UserProfileSection'][_0xd299('0x52')]({'where':{'name':_0xd299('0x30'),'userProfileId':_0x4e2bd3['userProfileId']},'raw':!![]})[_0xd299('0x2d')](function(_0x14f5a6){if(_0x14f5a6&&_0x14f5a6[_0xd299('0x9b')]===0x0){return db['UserProfileResource'][_0xd299('0x9c')]({'name':_0x15c4b0[_0xd299('0x33')],'resourceId':_0x15c4b0['id'],'type':_0x14f5a6['name'],'sectionId':_0x14f5a6['id']},{})[_0xd299('0x2d')](function(){return _0x37b842;});}else{return _0x37b842;}})['catch'](function(_0xe6bf41){logger[_0xd299('0x5d')](_0xd299('0x9d'),_0xe6bf41);throw _0xe6bf41;});}return _0x37b842;})['then'](respondWithResult(_0x1081cc,null))[_0xd299('0x50')](handleError(_0x1081cc,null));}});}catch(_0x120560){_0x1081cc[_0xd299('0x22')](0x1f4)['send'](_0x120560);}};function removeReferences(_0x13efca,_0x122a1e){try{if(_0x13efca){fs[_0xd299('0x6a')](_0x13efca);logger[_0xd299('0x6b')](_0xd299('0x9e'));}if(_0x122a1e){rimraf(_0x122a1e,function(){});logger[_0xd299('0x6b')](_0xd299('0x9f'));}}catch(_0x78387c){logger['error'](_0x78387c);}}exports[_0xd299('0x2c')]=function(_0x54d87f,_0x4b8594,_0x1654b6){return db[_0xd299('0x37')][_0xd299('0x52')]({'where':{'id':_0x54d87f[_0xd299('0x54')]['id']}})[_0xd299('0x2d')](handleEntityNotFound(_0x4b8594,null))[_0xd299('0x2d')](saveUpdates(_0x54d87f['body'],null))['then'](respondWithResult(_0x4b8594,null))[_0xd299('0x50')](handleError(_0x4b8594,null));};exports[_0xd299('0xa0')]=function(_0x526dac,_0x265541,_0x41ade3){return db['Plugin']['find']({'where':{'id':_0x526dac['params']['id']}})['then'](function(_0x1aba29){if(_0x1aba29){return _0x1aba29[_0xd299('0x2e')]();}})[_0xd299('0x2d')](function(_0x47d0fa){rimraf(path[_0xd299('0x55')](config[_0xd299('0x71')],_0xd299('0x56'),path[_0xd299('0x63')](_0x47d0fa[_0xd299('0x8')])),function(){});return _0x47d0fa;})[_0xd299('0x2d')](handleEntityNotFound(_0x265541,null))[_0xd299('0x2d')](respondWithStatusCode(_0x265541,null))['catch'](handleError(_0x265541,null));};exports['webhookGet']=function(_0x5243a8,_0x386bea,_0x4b0bd4){return BPromise['resolve']()[_0xd299('0x2d')](function(){if(!_0x5243a8[_0xd299('0x3d')][_0xd299('0x8')]){throw new Error(_0xd299('0xa1'));}if(!_0x5243a8['query'][_0xd299('0xa2')]){throw new Error(_0xd299('0xa3'));}var _0xf96ecb=_0x5243a8[_0xd299('0x3d')][_0xd299('0xa4')]?_0x5243a8[_0xd299('0x3d')][_0xd299('0xa4')]+':'+_0x5243a8[_0xd299('0x3d')][_0xd299('0xa2')]:_0xd299('0xa5')+_0x5243a8[_0xd299('0x3d')][_0xd299('0xa2')];var _0x53f14e=_0x5243a8['query'][_0xd299('0x24')]?_0x5243a8[_0xd299('0x3d')][_0xd299('0x24')]:!![];var _0x33518f=_0x5243a8[_0xd299('0x3d')][_0xd299('0xa6')]?_0x5243a8[_0xd299('0x3d')][_0xd299('0xa6')]:null;var _0x5c40c5={'method':_0x5243a8['method'],'uri':util[_0xd299('0x68')](_0xd299('0xa7'),_0xf96ecb,_0x5243a8[_0xd299('0x3d')][_0xd299('0x8')]),'json':_0x53f14e,'resolveWithFullResponse':!![],'encoding':_0x33518f,'qs':_0x5243a8[_0xd299('0x3d')]};if(_0x5243a8[_0xd299('0xa8')]){_0x5c40c5[_0xd299('0xa8')]=_0x5243a8[_0xd299('0xa8')];if(_0x5c40c5[_0xd299('0xa8')][_0xd299('0xa9')]){delete _0x5c40c5['headers'][_0xd299('0xa9')];}}if(_0x5c40c5['headers'][_0xd299('0xaa')]){delete _0x5c40c5[_0xd299('0xa8')]['content-type'];}return rp(_0x5c40c5);})[_0xd299('0x2d')](function(_0x146da2){if(_0x146da2){_0x386bea[_0xd299('0x28')](_0x146da2[_0xd299('0xa8')]);logger[_0xd299('0x6b')](_0x146da2[_0xd299('0x97')]);if(_[_0xd299('0xab')](_0x5243a8[_0xd299('0x3d')][_0xd299('0x8')],'download')&&_0x146da2[_0xd299('0xac')]==0x1f4){return _0x386bea[_0xd299('0x21')](_0x146da2[_0xd299('0xac')]);}else{return _0x386bea[_0xd299('0x22')](_0x146da2['statusCode'])[_0xd299('0x34')](_0x146da2[_0xd299('0x97')]);}}else{return _0x386bea[_0xd299('0x21')](0xc8);}})[_0xd299('0x50')](handleError(_0x386bea,null));};exports[_0xd299('0xad')]=function(_0x16e73a,_0x481909,_0x504205){return BPromise[_0xd299('0xae')]()[_0xd299('0x2d')](function(){if(!_0x16e73a[_0xd299('0x3d')][_0xd299('0x8')]){throw new Error(_0xd299('0xa1'));}if(!_0x16e73a[_0xd299('0x3d')][_0xd299('0xa2')]){throw new Error('\x27PORT\x27\x20parameter\x20not\x20specified');}var _0x3ffb52=_0x16e73a['query'][_0xd299('0xa4')]?_0x16e73a['query'][_0xd299('0xa4')]+':'+_0x16e73a[_0xd299('0x3d')][_0xd299('0xa2')]:_0xd299('0xa5')+_0x16e73a[_0xd299('0x3d')][_0xd299('0xa2')];var _0x50185f=_0x16e73a[_0xd299('0x3d')][_0xd299('0x24')]?_0x16e73a['query']['json']:!![];var _0x502567=_0x16e73a[_0xd299('0x3d')]['encoding']?_0x16e73a[_0xd299('0x3d')][_0xd299('0xa6')]:null;var _0x53d4b0={'method':_0x16e73a[_0xd299('0xaf')],'uri':util[_0xd299('0x68')](_0xd299('0xa7'),_0x3ffb52,_0x16e73a['query'][_0xd299('0x8')]),'json':_0x50185f,'resolveWithFullResponse':!![],'encoding':_0x502567,'body':_0x16e73a['body']};if(_0x16e73a['headers']){_0x53d4b0['headers']=_0x16e73a[_0xd299('0xa8')];if(_0x53d4b0['headers'][_0xd299('0xa9')]){delete _0x53d4b0[_0xd299('0xa8')][_0xd299('0xa9')];}}if(_0x53d4b0[_0xd299('0xa8')]['content-type']){delete _0x53d4b0['headers'][_0xd299('0xaa')];}return rp(_0x53d4b0);})['then'](function(_0x4578ae){if(_0x4578ae){_0x481909['set'](_0x4578ae[_0xd299('0xa8')]);logger[_0xd299('0x6b')](_0x4578ae[_0xd299('0x97')]);return _0x481909[_0xd299('0x22')](_0x4578ae['statusCode'])[_0xd299('0x34')](_0x4578ae[_0xd299('0x97')]);}else{return _0x481909[_0xd299('0x21')](0xc8);}})[_0xd299('0x50')](handleError(_0x481909,null));};