Built motion from commit 85328c08.|2.5.50
[motion2.git] / server / api / plugin / plugin.controller.js
index 59453d3..c687716 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x5425=['squel','crypto','jsforce','desk.js','querystring','papaparse','extract-zip','archiver','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','./plugin.socket','register','sendStatus','status','json','offset','limit','count','set','Content-Range','apply','reject','save','update','destroy','then','get','Plugins','UserProfileResource','end','error','stack','name','send','index','map','Plugin','rawAttributes','fieldName','type','query','filters','intersection','model','fields','attributes','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','include','rows','show','params','keys','length','find','catch','download','join','root','server/files/plugins','format','%s.zip','createWriteStream','zip','warning','code','ENOENT','Sequelize','Error','Error\x20while\x20generating\x20the\x20zip\x20archive','**/*','dirname','basename','node_modules/**/*','attachments/**/*','finalize','close','existsSync','Error\x20while\x20downloading\x20the\x20plugin','unlinkSync','info','Download\x20completed','upload','file','extname','filename','Plugin\x20upload\x20filepath:\x20%s','Plugin\x20upload\x20destination:\x20%s','chmodSync','Invalid\x20plugin\x20structure','lstatSync','isFile','isDirectory','some','manifest.json','parse','undefined','Invalid\x20manifest:\x20name\x20missing','Invalid\x20manifest:\x20type\x20missing','version','Invalid\x20manifest:\x20version\x20not\x20specified','parameters','Invalid\x20manifest:\x20parameters\x20missing','html','views','Invalid\x20manifest:\x20views\x20missing','admin','agent','Invalid\x20manifest:\x20no\x20view\x20specified','scriptName','Invalid\x20manifest:\x20script\x20path\x20missing','Invalid\x20manifest:\x20invalid\x20type','sidebar','always','icon','icon-apps','test','Warning:\x20admin\x20view\x20not\x20specified','plugins','Warning:\x20agent\x20view\x20not\x20specified','script','scriptPath','body','userProfileId','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','create','Zip\x20archive\x20removed','Extracted\x20folder\x20removed','delete','webhookGet','resolve','\x27PATH\x27\x20parameter\x20not\x20specified','port','\x27PORT\x27\x20parameter\x20not\x20specified','http://localhost:','encoding','method','%s%s','headers','content-length','content-type','statusCode','webhookPost','hostname','eml-format','rimraf','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash'];(function(_0x3340c8,_0x3d67d7){var _0x30ca8a=function(_0x435fff){while(--_0x435fff){_0x3340c8['push'](_0x3340c8['shift']());}};_0x30ca8a(++_0x3d67d7);}(_0x5425,0xa3));var _0x5542=function(_0x36a1d6,_0x5b72a9){_0x36a1d6=_0x36a1d6-0x0;var _0x49734e=_0x5425[_0x36a1d6];return _0x49734e;};'use strict';var emlformat=require(_0x5542('0x0'));var rimraf=require(_0x5542('0x1'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0x5542('0x2'));var moment=require(_0x5542('0x3'));var BPromise=require(_0x5542('0x4'));var Mustache=require(_0x5542('0x5'));var util=require(_0x5542('0x6'));var path=require(_0x5542('0x7'));var sox=require(_0x5542('0x8'));var csv=require(_0x5542('0x9'));var ejs=require(_0x5542('0xa'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x5542('0xb'));var squel=require(_0x5542('0xc'));var crypto=require(_0x5542('0xd'));var jsforce=require(_0x5542('0xe'));var deskjs=require(_0x5542('0xf'));var toCsv=require(_0x5542('0x9'));var querystring=require(_0x5542('0x10'));var Papa=require(_0x5542('0x11'));var extract=require(_0x5542('0x12'));var rimraf=require(_0x5542('0x1'));var archiver=require(_0x5542('0x13'));var Redis=require('ioredis');var authService=require(_0x5542('0x14'));var qs=require(_0x5542('0x15'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x5542('0x16'));var logger=require(_0x5542('0x17'))(_0x5542('0x18'));var utils=require('../../config/utils');var config=require(_0x5542('0x19'));var licenseUtil=require(_0x5542('0x1a'));var db=require(_0x5542('0x1b'))['db'];config[_0x5542('0x1c')]=_[_0x5542('0x1d')](config[_0x5542('0x1c')],{'host':_0x5542('0x1e'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config['redis']));require(_0x5542('0x1f'))[_0x5542('0x20')](socket);function respondWithStatusCode(_0x533e10,_0xf93cf1){_0xf93cf1=_0xf93cf1||0xcc;return function(_0x4bd826){if(_0x4bd826){return _0x533e10[_0x5542('0x21')](_0xf93cf1);}return _0x533e10['status'](_0xf93cf1)['end']();};}function respondWithResult(_0x15deec,_0x46fa0e){_0x46fa0e=_0x46fa0e||0xc8;return function(_0x5d1ad3){if(_0x5d1ad3){return _0x15deec[_0x5542('0x22')](_0x46fa0e)[_0x5542('0x23')](_0x5d1ad3);}};}function respondWithFilteredResult(_0x99ac42,_0xe48937){return function(_0x1a3889){if(_0x1a3889){var _0x177b16=typeof _0xe48937[_0x5542('0x24')]==='undefined'&&typeof _0xe48937[_0x5542('0x25')]==='undefined';var _0x984963=_0x1a3889[_0x5542('0x26')];var _0x23d9e6=_0x177b16?0x0:_0xe48937['offset'];var _0x22d7c0=_0x177b16?_0x1a3889[_0x5542('0x26')]:_0xe48937[_0x5542('0x24')]+_0xe48937[_0x5542('0x25')];var _0x206946;if(_0x22d7c0>=_0x984963){_0x22d7c0=_0x984963;_0x206946=0xc8;}else{_0x206946=0xce;}_0x99ac42[_0x5542('0x22')](_0x206946);return _0x99ac42[_0x5542('0x27')](_0x5542('0x28'),_0x23d9e6+'-'+_0x22d7c0+'/'+_0x984963)[_0x5542('0x23')](_0x1a3889);}return null;};}function patchUpdates(_0x24ed0c){return function(_0x429b80){try{jsonpatch[_0x5542('0x29')](_0x429b80,_0x24ed0c,!![]);}catch(_0x30b7a3){return BPromise[_0x5542('0x2a')](_0x30b7a3);}return _0x429b80[_0x5542('0x2b')]();};}function saveUpdates(_0x779284,_0x892edc){return function(_0x8f6a96){if(_0x8f6a96){return _0x8f6a96[_0x5542('0x2c')](_0x779284)['then'](function(_0x40431c){return _0x40431c;});}return null;};}function removeEntity(_0x36b513,_0x36c4da){return function(_0x5c6543){if(_0x5c6543){return _0x5c6543[_0x5542('0x2d')]()[_0x5542('0x2e')](function(){var _0x115be4=_0x5c6543[_0x5542('0x2f')]({'plain':!![]});var _0x17dd62=_0x5542('0x30');return db[_0x5542('0x31')]['destroy']({'where':{'type':_0x17dd62,'resourceId':_0x115be4['id']}})[_0x5542('0x2e')](function(){return _0x5c6543;});})['then'](function(){_0x36b513['status'](0xcc)[_0x5542('0x32')]();});}};}function handleEntityNotFound(_0xaeb789,_0x22c2f5){return function(_0x581a63){if(!_0x581a63){_0xaeb789[_0x5542('0x21')](0x194);}return _0x581a63;};}function handleError(_0x2f7e7a,_0x3aa8f9){_0x3aa8f9=_0x3aa8f9||0x1f4;return function(_0x178ed9){logger[_0x5542('0x33')](_0x178ed9[_0x5542('0x34')]);if(_0x178ed9[_0x5542('0x35')]){delete _0x178ed9['name'];}_0x2f7e7a['status'](_0x3aa8f9)[_0x5542('0x36')](_0x178ed9);};}exports[_0x5542('0x37')]=function(_0x1207d4,_0x1ab0fd){var _0x3aca48={},_0x319fa1={},_0x59cec4={'count':0x0,'rows':[]};var _0x2e9ed9=_[_0x5542('0x38')](db[_0x5542('0x39')][_0x5542('0x3a')],function(_0x1a3088){return{'name':_0x1a3088[_0x5542('0x3b')],'type':_0x1a3088[_0x5542('0x3c')]['key']};});_0x319fa1['model']=_[_0x5542('0x38')](_0x2e9ed9,_0x5542('0x35'));_0x319fa1[_0x5542('0x3d')]=_['keys'](_0x1207d4[_0x5542('0x3d')]);_0x319fa1[_0x5542('0x3e')]=_[_0x5542('0x3f')](_0x319fa1[_0x5542('0x40')],_0x319fa1[_0x5542('0x3d')]);_0x3aca48['attributes']=_['intersection'](_0x319fa1[_0x5542('0x40')],qs[_0x5542('0x41')](_0x1207d4[_0x5542('0x3d')]['fields']));_0x3aca48[_0x5542('0x42')]=_0x3aca48['attributes']['length']?_0x3aca48[_0x5542('0x42')]:_0x319fa1[_0x5542('0x40')];if(!_0x1207d4['query'][_0x5542('0x43')](_0x5542('0x44'))){_0x3aca48[_0x5542('0x25')]=qs[_0x5542('0x25')](_0x1207d4[_0x5542('0x3d')]['limit']);_0x3aca48[_0x5542('0x24')]=qs['offset'](_0x1207d4[_0x5542('0x3d')]['offset']);}_0x3aca48[_0x5542('0x45')]=qs[_0x5542('0x46')](_0x1207d4[_0x5542('0x3d')]['sort']);_0x3aca48[_0x5542('0x47')]=qs[_0x5542('0x3e')](_[_0x5542('0x48')](_0x1207d4[_0x5542('0x3d')],_0x319fa1[_0x5542('0x3e')]),_0x2e9ed9);if(_0x1207d4[_0x5542('0x3d')][_0x5542('0x49')]){_0x3aca48['where']=_[_0x5542('0x4a')](_0x3aca48['where'],{'$or':_[_0x5542('0x38')](_0x2e9ed9,function(_0x2790aa){if(_0x2790aa[_0x5542('0x3c')]!==_0x5542('0x4b')){var _0x128489={};_0x128489[_0x2790aa[_0x5542('0x35')]]={'$like':'%'+_0x1207d4[_0x5542('0x3d')][_0x5542('0x49')]+'%'};return _0x128489;}})});}_0x3aca48=_[_0x5542('0x4a')]({},_0x3aca48,_0x1207d4[_0x5542('0x4c')]);var _0x14b372={'where':_0x3aca48[_0x5542('0x47')]};return db[_0x5542('0x39')][_0x5542('0x26')](_0x14b372)[_0x5542('0x2e')](function(_0x58bd8d){_0x59cec4[_0x5542('0x26')]=_0x58bd8d;if(_0x1207d4[_0x5542('0x3d')][_0x5542('0x4d')]){_0x3aca48[_0x5542('0x4e')]=[{'all':!![]}];}return db[_0x5542('0x39')]['findAll'](_0x3aca48);})[_0x5542('0x2e')](function(_0x5f2f37){_0x59cec4[_0x5542('0x4f')]=_0x5f2f37;return _0x59cec4;})['then'](respondWithFilteredResult(_0x1ab0fd,_0x3aca48))['catch'](handleError(_0x1ab0fd,null));};exports[_0x5542('0x50')]=function(_0x2a224e,_0x4de8e6){var _0x5955e8={'raw':!![],'where':{'id':_0x2a224e[_0x5542('0x51')]['id']}},_0x362742={};_0x362742['model']=_[_0x5542('0x52')](db[_0x5542('0x39')]['rawAttributes']);_0x362742[_0x5542('0x3d')]=_[_0x5542('0x52')](_0x2a224e[_0x5542('0x3d')]);_0x362742[_0x5542('0x3e')]=_[_0x5542('0x3f')](_0x362742['model'],_0x362742[_0x5542('0x3d')]);_0x5955e8['attributes']=_['intersection'](_0x362742['model'],qs[_0x5542('0x41')](_0x2a224e[_0x5542('0x3d')][_0x5542('0x41')]));_0x5955e8[_0x5542('0x42')]=_0x5955e8[_0x5542('0x42')][_0x5542('0x53')]?_0x5955e8[_0x5542('0x42')]:_0x362742['model'];if(_0x2a224e[_0x5542('0x3d')]['includeAll']){_0x5955e8[_0x5542('0x4e')]=[{'all':!![]}];}_0x5955e8=_[_0x5542('0x4a')]({},_0x5955e8,_0x2a224e['options']);return db[_0x5542('0x39')][_0x5542('0x54')](_0x5955e8)['then'](handleEntityNotFound(_0x4de8e6,null))[_0x5542('0x2e')](respondWithResult(_0x4de8e6,null))[_0x5542('0x55')](handleError(_0x4de8e6,null));};exports[_0x5542('0x56')]=function(_0x54d6c1,_0x3c4d54,_0x25cf4a){return db[_0x5542('0x39')][_0x5542('0x54')]({'where':{'id':_0x54d6c1['params']['id']},'attributes':['name',_0x5542('0x7')],'raw':!![]})[_0x5542('0x2e')](handleEntityNotFound(_0x3c4d54,null))[_0x5542('0x2e')](function(_0x17d661){if(_0x17d661){var _0x384c39=path[_0x5542('0x57')](config[_0x5542('0x58')],_0x5542('0x59'),util[_0x5542('0x5a')](_0x5542('0x5b'),path['basename'](_0x17d661[_0x5542('0x7')])));var _0xfc802c=fs[_0x5542('0x5c')](_0x384c39);var _0x56ddeb=archiver(_0x5542('0x5d'),{'zlib':{'level':0x9}});_0x56ddeb['on'](_0x5542('0x5e'),function(_0x589987){if(_0x589987[_0x5542('0x5f')]===_0x5542('0x60')){logger[_0x5542('0x33')](_0x589987);}else{throw new db[(_0x5542('0x61'))][(_0x5542('0x62'))](_0x5542('0x63'));}});_0x56ddeb['on']('error',function(_0x50a72a){throw new db[(_0x5542('0x61'))][(_0x5542('0x62'))](_0x5542('0x63'));});_0x56ddeb['pipe'](_0xfc802c);_0x56ddeb['glob'](_0x5542('0x64'),{'cwd':path[_0x5542('0x57')](config['root'],_0x5542('0x59'),path[_0x5542('0x65')](_0x17d661['path'])),'ignore':[path[_0x5542('0x57')](path[_0x5542('0x66')](_0x17d661[_0x5542('0x7')]),_0x5542('0x67')),path[_0x5542('0x57')](path[_0x5542('0x66')](_0x17d661['path']),_0x5542('0x68'))],'nodir':!![]})[_0x5542('0x69')]();_0xfc802c['on'](_0x5542('0x6a'),function(){if(!fs[_0x5542('0x6b')](_0x384c39)){throw new db[(_0x5542('0x61'))][(_0x5542('0x62'))]('Plugin\x20not\x20found');}return _0x3c4d54[_0x5542('0x56')](_0x384c39,util[_0x5542('0x5a')](_0x5542('0x5b'),path[_0x5542('0x66')](_0x17d661[_0x5542('0x7')])),function(_0x19545d){if(_0x19545d){throw new db['Sequelize'][(_0x5542('0x62'))](_0x5542('0x6c'));}fs[_0x5542('0x6d')](_0x384c39);logger[_0x5542('0x6e')](_0x5542('0x6f'));logger['info']('Temporary\x20file\x20removed');});});}return null;})[_0x5542('0x55')](handleError(_0x3c4d54,null));};exports[_0x5542('0x70')]=function(_0x553e6b,_0x372e79,_0x4c0f93){var _0x567a08=path['basename'](_0x553e6b[_0x5542('0x71')]['filename'],path[_0x5542('0x72')](_0x553e6b[_0x5542('0x71')]['filename']));var _0x544dec=path['join'](config['root'],'server/files/plugins',_0x553e6b['file'][_0x5542('0x73')]);var _0x2fa2d2=path[_0x5542('0x57')](config[_0x5542('0x58')],'server/files/plugins',_0x567a08);logger[_0x5542('0x6e')](_0x5542('0x74'),_0x544dec);logger['info'](_0x5542('0x75'),_0x2fa2d2);try{fs[_0x5542('0x76')](_0x544dec,parseInt('0777',0x8));extract(_0x544dec,{'dir':_0x2fa2d2},function(_0x345be9){if(_0x345be9){logger[_0x5542('0x33')](_0x345be9);handleError(_0x345be9,!![]);};var _0x3bcb8f=fs['readdirSync'](_0x2fa2d2);if(_0x3bcb8f[_0x5542('0x53')]>0x1){removeReferences(_0x544dec,_0x2fa2d2);logger['error'](_0x5542('0x77'));return _0x4c0f93(new Error(_0x5542('0x77')));}var _0x244c21=fs[_0x5542('0x78')](path['join'](_0x2fa2d2,_0x3bcb8f[0x0]));if(_0x244c21[_0x5542('0x79')]()){removeReferences(_0x544dec,_0x2fa2d2);logger[_0x5542('0x33')](_0x5542('0x77'));return _0x4c0f93(new Error(_0x5542('0x77')));}if(_0x244c21[_0x5542('0x7a')]()){var _0x110889=fs['readdirSync'](path['join'](_0x2fa2d2,_0x3bcb8f[0x0]));if(_0x110889['length']===0x0){removeReferences(_0x544dec,_0x2fa2d2);logger[_0x5542('0x33')](_0x5542('0x77'));return _0x4c0f93(new Error(_0x5542('0x77')));}var _0x1f07fd=_0x110889[_0x5542('0x7b')](function(_0x5f4006){return _0x5f4006===_0x5542('0x7c');});if(!_0x1f07fd){return _0x4c0f93(new Error('Plugin\x20manifest\x20missing'));}var _0xdf679e=fs['readFileSync'](path['join'](_0x2fa2d2,_0x3bcb8f[0x0],_0x5542('0x7c')));var _0x379c5e=JSON[_0x5542('0x7d')](_0xdf679e);if(_0x5542('0x7e')==typeof _0x379c5e[_0x5542('0x35')]){return _0x4c0f93(new Error(_0x5542('0x7f')));}if('undefined'==typeof _0x379c5e[_0x5542('0x3c')]){return _0x4c0f93(new Error(_0x5542('0x80')));}if(_0x5542('0x7e')==typeof _0x379c5e[_0x5542('0x81')]){return _0x4c0f93(new Error(_0x5542('0x82')));}if(_0x5542('0x7e')==typeof _0x379c5e[_0x5542('0x83')]){return _0x4c0f93(new Error(_0x5542('0x84')));}if(_0x379c5e['type']===_0x5542('0x85')){if(_0x5542('0x7e')==typeof _0x379c5e[_0x5542('0x83')][_0x5542('0x86')]){return _0x4c0f93(new Error(_0x5542('0x87')));}if(_0x5542('0x7e')==typeof _0x379c5e[_0x5542('0x83')][_0x5542('0x86')][_0x5542('0x88')]&&_0x5542('0x7e')==typeof _0x379c5e[_0x5542('0x83')]['views'][_0x5542('0x89')]){return _0x4c0f93(new Error(_0x5542('0x8a')));}}else if(_0x379c5e['type']==='script'){if('undefined'==typeof _0x379c5e[_0x5542('0x83')][_0x5542('0x8b')]){return _0x4c0f93(new Error('Invalid\x20manifest:\x20script\x20name\x20missing'));}if(_0x5542('0x7e')==typeof _0x379c5e[_0x5542('0x83')]['scriptPath']){return _0x4c0f93(new Error(_0x5542('0x8c')));}}else{return _0x4c0f93(new Error(_0x5542('0x8d')));}var _0x44dc6d=_0x379c5e['name'];var _0x45df3f=_0x379c5e['description'];var _0x47af09=_0x379c5e['type'];var _0x42afec=_0x379c5e[_0x5542('0x8e')]?_0x379c5e[_0x5542('0x8e')]:_0x5542('0x8f');var _0x230f98=_0x379c5e['icon']?_0x379c5e[_0x5542('0x90')]:_0x5542('0x91');var _0x4c0fad='';var _0xbbb16f='';var _0x2281e8='';var _0x1407b5='';var _0x39dd13=_0x379c5e[_0x5542('0x81')];if(_0x47af09===_0x5542('0x85')){if('undefined'!=typeof _0x379c5e[_0x5542('0x83')][_0x5542('0x86')][_0x5542('0x88')]){var _0xe45f=_0x379c5e['parameters'][_0x5542('0x86')][_0x5542('0x88')];if(!/^(f|ht)tps?:\/\//i[_0x5542('0x92')](_0xe45f)){_0x4c0fad=path[_0x5542('0x57')]('plugins',_0x567a08,_0x3bcb8f[0x0],_0xe45f);}else{_0x4c0fad=_0xe45f;}}else{logger[_0x5542('0x6e')](_0x5542('0x93'));}if(_0x5542('0x7e')!=typeof _0x379c5e[_0x5542('0x83')][_0x5542('0x86')][_0x5542('0x89')]){var _0x1c56ae=_0x379c5e['parameters'][_0x5542('0x86')][_0x5542('0x89')];if(!/^(f|ht)tps?:\/\//i[_0x5542('0x92')](_0x1c56ae)){_0xbbb16f=path[_0x5542('0x57')](_0x5542('0x94'),_0x567a08,_0x3bcb8f[0x0],_0x1c56ae);}else{_0xbbb16f=_0x1c56ae;}}else{logger[_0x5542('0x6e')](_0x5542('0x95'));}}else if(_0x47af09===_0x5542('0x96')){_0x2281e8=_0x379c5e[_0x5542('0x83')]['scriptName'];_0x1407b5=_0x379c5e[_0x5542('0x83')][_0x5542('0x97')];if('undefined'!=typeof _0x379c5e[_0x5542('0x83')]['views']){if(_0x5542('0x7e')!=typeof _0x379c5e[_0x5542('0x83')][_0x5542('0x86')]['admin']){var _0xe45f=_0x379c5e[_0x5542('0x83')][_0x5542('0x86')][_0x5542('0x88')];if(!/^(f|ht)tps?:\/\//i[_0x5542('0x92')](_0xe45f)){_0x4c0fad=path[_0x5542('0x57')](_0x5542('0x94'),_0x567a08,_0x3bcb8f[0x0],_0xe45f);}else{_0x4c0fad=_0xe45f;}}if(_0x5542('0x7e')!=typeof _0x379c5e[_0x5542('0x83')][_0x5542('0x86')][_0x5542('0x89')]){var _0x1c56ae=_0x379c5e[_0x5542('0x83')][_0x5542('0x86')]['agent'];if(!/^(f|ht)tps?:\/\//i[_0x5542('0x92')](_0x1c56ae)){_0xbbb16f=path['join'](_0x5542('0x94'),_0x567a08,_0x3bcb8f[0x0],_0x1c56ae);}else{_0xbbb16f=_0x1c56ae;}}}}var _0x5a928d={'name':_0x44dc6d,'description':_0x45df3f,'path':path['join'](_0x567a08,_0x3bcb8f[0x0]),'type':_0x47af09,'sidebar':_0x42afec,'icon':_0x230f98,'adminUrl':_0x4c0fad,'agentUrl':_0xbbb16f,'scriptName':_0x2281e8,'scriptPath':_0x1407b5,'version':_0x39dd13};removeReferences(_0x544dec,null);return db['Plugin']['create'](_0x5a928d)[_0x5542('0x2e')](function(_0x5959fa){var _0xdd4169={'role':_0x553e6b[_0x5542('0x98')]['role'],'userProfileId':_0x553e6b[_0x5542('0x98')][_0x5542('0x99')]};if(!_0xdd4169)throw new Error(_0x5542('0x9a'));if(_0xdd4169[_0x5542('0x9b')]==='user'){var _0x4551cf=_0x5959fa[_0x5542('0x2f')]({'plain':!![]});return db['UserProfileSection'][_0x5542('0x54')]({'where':{'name':_0x5542('0x30'),'userProfileId':_0xdd4169[_0x5542('0x99')]},'raw':!![]})[_0x5542('0x2e')](function(_0x3fe2e3){if(_0x3fe2e3&&_0x3fe2e3['autoAssociation']===0x0){return db[_0x5542('0x31')][_0x5542('0x9c')]({'name':_0x4551cf[_0x5542('0x35')],'resourceId':_0x4551cf['id'],'type':_0x3fe2e3[_0x5542('0x35')],'sectionId':_0x3fe2e3['id']},{})['then'](function(){return _0x5959fa;});}else{return _0x5959fa;}})[_0x5542('0x55')](function(_0x34832f){logger[_0x5542('0x33')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x34832f);throw _0x34832f;});}return _0x5959fa;})[_0x5542('0x2e')](respondWithResult(_0x372e79,null))[_0x5542('0x55')](handleError(_0x372e79,null));}});}catch(_0x382280){_0x372e79[_0x5542('0x22')](0x1f4)[_0x5542('0x36')](_0x382280);}};function removeReferences(_0x4e799a,_0x4f4f2a){try{if(_0x4e799a){fs[_0x5542('0x6d')](_0x4e799a);logger[_0x5542('0x6e')](_0x5542('0x9d'));}if(_0x4f4f2a){rimraf(_0x4f4f2a,function(){});logger['info'](_0x5542('0x9e'));}}catch(_0x10865c){logger['error'](_0x10865c);}}exports[_0x5542('0x2c')]=function(_0x1754f5,_0x2f2602,_0x3df4ae){return db['Plugin'][_0x5542('0x54')]({'where':{'id':_0x1754f5[_0x5542('0x51')]['id']}})[_0x5542('0x2e')](handleEntityNotFound(_0x2f2602,null))[_0x5542('0x2e')](saveUpdates(_0x1754f5[_0x5542('0x98')],null))[_0x5542('0x2e')](respondWithResult(_0x2f2602,null))[_0x5542('0x55')](handleError(_0x2f2602,null));};exports[_0x5542('0x9f')]=function(_0x3e4eef,_0x5d2403,_0x518eb3){return db[_0x5542('0x39')]['find']({'where':{'id':_0x3e4eef[_0x5542('0x51')]['id']}})[_0x5542('0x2e')](function(_0x3f4be9){if(_0x3f4be9){return _0x3f4be9[_0x5542('0x2d')]();}})[_0x5542('0x2e')](function(_0x3e4b29){rimraf(path[_0x5542('0x57')](config['root'],_0x5542('0x59'),path['dirname'](_0x3e4b29['path'])),function(){});return _0x3e4b29;})[_0x5542('0x2e')](handleEntityNotFound(_0x5d2403,null))['then'](respondWithStatusCode(_0x5d2403,null))[_0x5542('0x55')](handleError(_0x5d2403,null));};exports[_0x5542('0xa0')]=function(_0x170240,_0x167b42,_0x2ea44b){return BPromise[_0x5542('0xa1')]()[_0x5542('0x2e')](function(){if(!_0x170240[_0x5542('0x3d')][_0x5542('0x7')]){throw new Error(_0x5542('0xa2'));}if(!_0x170240['query'][_0x5542('0xa3')]){throw new Error(_0x5542('0xa4'));}var _0x14feeb=_0x170240[_0x5542('0x3d')]['hostname']?_0x170240['query']['hostname']+':'+_0x170240[_0x5542('0x3d')]['port']:_0x5542('0xa5')+_0x170240['query']['port'];var _0x1c2b24=_0x170240[_0x5542('0x3d')][_0x5542('0x23')]?_0x170240[_0x5542('0x3d')]['json']:!![];var _0x52c22b=_0x170240['query'][_0x5542('0xa6')]?_0x170240[_0x5542('0x3d')][_0x5542('0xa6')]:null;var _0x564d78={'method':_0x170240[_0x5542('0xa7')],'uri':util[_0x5542('0x5a')](_0x5542('0xa8'),_0x14feeb,_0x170240['query'][_0x5542('0x7')]),'json':_0x1c2b24,'resolveWithFullResponse':!![],'encoding':_0x52c22b,'qs':_0x170240[_0x5542('0x3d')]};if(_0x170240['headers']){_0x564d78[_0x5542('0xa9')]=_0x170240[_0x5542('0xa9')];if(_0x564d78[_0x5542('0xa9')][_0x5542('0xaa')]){delete _0x564d78[_0x5542('0xa9')][_0x5542('0xaa')];}}if(_0x564d78[_0x5542('0xa9')]['content-type']){delete _0x564d78[_0x5542('0xa9')][_0x5542('0xab')];}return rp(_0x564d78);})[_0x5542('0x2e')](function(_0xab0c65){if(_0xab0c65){_0x167b42[_0x5542('0x27')](_0xab0c65[_0x5542('0xa9')]);logger['info'](_0xab0c65[_0x5542('0x98')]);if(_['endsWith'](_0x170240[_0x5542('0x3d')]['path'],_0x5542('0x56'))&&_0xab0c65[_0x5542('0xac')]==0x1f4){return _0x167b42[_0x5542('0x21')](_0xab0c65[_0x5542('0xac')]);}else{return _0x167b42[_0x5542('0x22')](_0xab0c65[_0x5542('0xac')])[_0x5542('0x36')](_0xab0c65[_0x5542('0x98')]);}}else{return _0x167b42['sendStatus'](0xc8);}})[_0x5542('0x55')](handleError(_0x167b42,null));};exports[_0x5542('0xad')]=function(_0x101de8,_0x231fde,_0x3e1269){return BPromise['resolve']()['then'](function(){if(!_0x101de8[_0x5542('0x3d')][_0x5542('0x7')]){throw new Error(_0x5542('0xa2'));}if(!_0x101de8[_0x5542('0x3d')][_0x5542('0xa3')]){throw new Error('\x27PORT\x27\x20parameter\x20not\x20specified');}var _0x371e29=_0x101de8['query'][_0x5542('0xae')]?_0x101de8[_0x5542('0x3d')]['hostname']+':'+_0x101de8['query'][_0x5542('0xa3')]:'http://localhost:'+_0x101de8[_0x5542('0x3d')][_0x5542('0xa3')];var _0x51a81d=_0x101de8[_0x5542('0x3d')][_0x5542('0x23')]?_0x101de8[_0x5542('0x3d')][_0x5542('0x23')]:!![];var _0x353986=_0x101de8[_0x5542('0x3d')][_0x5542('0xa6')]?_0x101de8[_0x5542('0x3d')]['encoding']:null;var _0x3ccf50={'method':_0x101de8[_0x5542('0xa7')],'uri':util['format']('%s%s',_0x371e29,_0x101de8[_0x5542('0x3d')][_0x5542('0x7')]),'json':_0x51a81d,'resolveWithFullResponse':!![],'encoding':_0x353986,'body':_0x101de8['body']};if(_0x101de8[_0x5542('0xa9')]){_0x3ccf50['headers']=_0x101de8[_0x5542('0xa9')];if(_0x3ccf50[_0x5542('0xa9')][_0x5542('0xaa')]){delete _0x3ccf50[_0x5542('0xa9')][_0x5542('0xaa')];}}if(_0x3ccf50[_0x5542('0xa9')][_0x5542('0xab')]){delete _0x3ccf50[_0x5542('0xa9')]['content-type'];}return rp(_0x3ccf50);})[_0x5542('0x2e')](function(_0x53858d){if(_0x53858d){_0x231fde[_0x5542('0x27')](_0x53858d[_0x5542('0xa9')]);logger[_0x5542('0x6e')](_0x53858d[_0x5542('0x98')]);return _0x231fde[_0x5542('0x22')](_0x53858d[_0x5542('0xac')])['send'](_0x53858d[_0x5542('0x98')]);}else{return _0x231fde[_0x5542('0x21')](0xc8);}})[_0x5542('0x55')](handleError(_0x231fde,null));};
\ No newline at end of file
+var _0x3124=['userProfileId','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','user','UserProfileSection','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','Zip\x20archive\x20removed','Extracted\x20folder\x20removed','delete','webhookGet','resolve','\x27PATH\x27\x20parameter\x20not\x20specified','\x27PORT\x27\x20parameter\x20not\x20specified','hostname','http://localhost:','port','encoding','%s%s','headers','content-length','content-type','statusCode','webhookPost','method','eml-format','zip-dir','fast-json-patch','moment','mustache','util','sox','ejs','fs-extra','squel','crypto','desk.js','to-csv','papaparse','extract-zip','rimraf','archiver','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','api','../../config/environment','redis','defaults','localhost','socket.io-emitter','register','sendStatus','status','end','offset','undefined','limit','count','set','Content-Range','json','apply','save','update','then','destroy','get','Plugins','UserProfileResource','error','stack','name','send','map','Plugin','type','model','query','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','filter','merge','VIRTUAL','options','includeAll','include','findAll','rows','catch','show','params','keys','rawAttributes','download','find','path','join','root','server/files/plugins','format','%s.zip','basename','createWriteStream','zip','warning','ENOENT','Error','Error\x20while\x20generating\x20the\x20zip\x20archive','pipe','glob','**/*','dirname','node_modules/**/*','attachments/**/*','finalize','close','Plugin\x20not\x20found','Sequelize','Error\x20while\x20downloading\x20the\x20plugin','unlinkSync','info','Temporary\x20file\x20removed','upload','file','filename','extname','Plugin\x20upload\x20filepath:\x20%s','Plugin\x20upload\x20destination:\x20%s','readdirSync','Invalid\x20plugin\x20structure','lstatSync','isFile','isDirectory','some','manifest.json','readFileSync','parse','Invalid\x20manifest:\x20name\x20missing','Invalid\x20manifest:\x20type\x20missing','Invalid\x20manifest:\x20version\x20not\x20specified','Invalid\x20manifest:\x20parameters\x20missing','views','Invalid\x20manifest:\x20views\x20missing','parameters','agent','Invalid\x20manifest:\x20no\x20view\x20specified','script','scriptName','Invalid\x20manifest:\x20script\x20name\x20missing','scriptPath','Invalid\x20manifest:\x20script\x20path\x20missing','Invalid\x20manifest:\x20invalid\x20type','description','always','icon','icon-apps','version','html','admin','test','plugins','Warning:\x20admin\x20view\x20not\x20specified','Warning:\x20agent\x20view\x20not\x20specified','create','body'];(function(_0x16f77c,_0x5256b1){var _0x78986e=function(_0x10430){while(--_0x10430){_0x16f77c['push'](_0x16f77c['shift']());}};_0x78986e(++_0x5256b1);}(_0x3124,0xc8));var _0x4312=function(_0x4fc7b6,_0x52b545){_0x4fc7b6=_0x4fc7b6-0x0;var _0xaf122d=_0x3124[_0x4fc7b6];return _0xaf122d;};'use strict';var emlformat=require(_0x4312('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x4312('0x1'));var jsonpatch=require(_0x4312('0x2'));var rp=require('request-promise');var moment=require(_0x4312('0x3'));var BPromise=require('bluebird');var Mustache=require(_0x4312('0x4'));var util=require(_0x4312('0x5'));var path=require('path');var sox=require(_0x4312('0x6'));var csv=require('to-csv');var ejs=require(_0x4312('0x7'));var fs=require('fs');var fs_extra=require(_0x4312('0x8'));var _=require('lodash');var squel=require(_0x4312('0x9'));var crypto=require(_0x4312('0xa'));var jsforce=require('jsforce');var deskjs=require(_0x4312('0xb'));var toCsv=require(_0x4312('0xc'));var querystring=require('querystring');var Papa=require(_0x4312('0xd'));var extract=require(_0x4312('0xe'));var rimraf=require(_0x4312('0xf'));var archiver=require(_0x4312('0x10'));var Redis=require(_0x4312('0x11'));var authService=require(_0x4312('0x12'));var qs=require(_0x4312('0x13'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x4312('0x14'));var logger=require('../../config/logger')(_0x4312('0x15'));var utils=require('../../config/utils');var config=require(_0x4312('0x16'));var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];config[_0x4312('0x17')]=_[_0x4312('0x18')](config[_0x4312('0x17')],{'host':_0x4312('0x19'),'port':0x18eb});var socket=require(_0x4312('0x1a'))(new Redis(config[_0x4312('0x17')]));require('./plugin.socket')[_0x4312('0x1b')](socket);function respondWithStatusCode(_0x9e127b,_0x287d44){_0x287d44=_0x287d44||0xcc;return function(_0x422858){if(_0x422858){return _0x9e127b[_0x4312('0x1c')](_0x287d44);}return _0x9e127b[_0x4312('0x1d')](_0x287d44)[_0x4312('0x1e')]();};}function respondWithResult(_0x580603,_0x25c939){_0x25c939=_0x25c939||0xc8;return function(_0x3e1e6e){if(_0x3e1e6e){return _0x580603['status'](_0x25c939)['json'](_0x3e1e6e);}};}function respondWithFilteredResult(_0x2c6353,_0x11cfa7){return function(_0x1f69f0){if(_0x1f69f0){var _0x4ad6ca=typeof _0x11cfa7[_0x4312('0x1f')]===_0x4312('0x20')&&typeof _0x11cfa7[_0x4312('0x21')]===_0x4312('0x20');var _0x42e285=_0x1f69f0[_0x4312('0x22')];var _0x3beccc=_0x4ad6ca?0x0:_0x11cfa7['offset'];var _0x37ef2e=_0x4ad6ca?_0x1f69f0[_0x4312('0x22')]:_0x11cfa7[_0x4312('0x1f')]+_0x11cfa7['limit'];var _0x6e4544;if(_0x37ef2e>=_0x42e285){_0x37ef2e=_0x42e285;_0x6e4544=0xc8;}else{_0x6e4544=0xce;}_0x2c6353[_0x4312('0x1d')](_0x6e4544);return _0x2c6353[_0x4312('0x23')](_0x4312('0x24'),_0x3beccc+'-'+_0x37ef2e+'/'+_0x42e285)[_0x4312('0x25')](_0x1f69f0);}return null;};}function patchUpdates(_0x42ac19){return function(_0x68f3d9){try{jsonpatch[_0x4312('0x26')](_0x68f3d9,_0x42ac19,!![]);}catch(_0x2c70d9){return BPromise['reject'](_0x2c70d9);}return _0x68f3d9[_0x4312('0x27')]();};}function saveUpdates(_0x3f37a1,_0x23e43b){return function(_0x2bb65b){if(_0x2bb65b){return _0x2bb65b[_0x4312('0x28')](_0x3f37a1)[_0x4312('0x29')](function(_0x18ca68){return _0x18ca68;});}return null;};}function removeEntity(_0x2a30ae,_0x2e17c6){return function(_0x56163e){if(_0x56163e){return _0x56163e[_0x4312('0x2a')]()[_0x4312('0x29')](function(){var _0x22a271=_0x56163e[_0x4312('0x2b')]({'plain':!![]});var _0x2eae61=_0x4312('0x2c');return db[_0x4312('0x2d')][_0x4312('0x2a')]({'where':{'type':_0x2eae61,'resourceId':_0x22a271['id']}})[_0x4312('0x29')](function(){return _0x56163e;});})[_0x4312('0x29')](function(){_0x2a30ae[_0x4312('0x1d')](0xcc)[_0x4312('0x1e')]();});}};}function handleEntityNotFound(_0x1a87b8,_0x48f70e){return function(_0x218007){if(!_0x218007){_0x1a87b8[_0x4312('0x1c')](0x194);}return _0x218007;};}function handleError(_0x47f204,_0x13c92b){_0x13c92b=_0x13c92b||0x1f4;return function(_0x5d28b6){logger[_0x4312('0x2e')](_0x5d28b6[_0x4312('0x2f')]);if(_0x5d28b6[_0x4312('0x30')]){delete _0x5d28b6[_0x4312('0x30')];}_0x47f204['status'](_0x13c92b)[_0x4312('0x31')](_0x5d28b6);};}exports['index']=function(_0xdf18cd,_0x1398d8){var _0xc1a307={},_0x32c0d7={},_0x1dd060={'count':0x0,'rows':[]};var _0x5bc571=_[_0x4312('0x32')](db[_0x4312('0x33')]['rawAttributes'],function(_0x26a6bf){return{'name':_0x26a6bf['fieldName'],'type':_0x26a6bf[_0x4312('0x34')]['key']};});_0x32c0d7[_0x4312('0x35')]=_[_0x4312('0x32')](_0x5bc571,'name');_0x32c0d7[_0x4312('0x36')]=_['keys'](_0xdf18cd[_0x4312('0x36')]);_0x32c0d7[_0x4312('0x37')]=_[_0x4312('0x38')](_0x32c0d7[_0x4312('0x35')],_0x32c0d7[_0x4312('0x36')]);_0xc1a307['attributes']=_[_0x4312('0x38')](_0x32c0d7[_0x4312('0x35')],qs[_0x4312('0x39')](_0xdf18cd['query'][_0x4312('0x39')]));_0xc1a307['attributes']=_0xc1a307[_0x4312('0x3a')][_0x4312('0x3b')]?_0xc1a307[_0x4312('0x3a')]:_0x32c0d7[_0x4312('0x35')];if(!_0xdf18cd['query'][_0x4312('0x3c')](_0x4312('0x3d'))){_0xc1a307['limit']=qs['limit'](_0xdf18cd[_0x4312('0x36')][_0x4312('0x21')]);_0xc1a307[_0x4312('0x1f')]=qs[_0x4312('0x1f')](_0xdf18cd['query'][_0x4312('0x1f')]);}_0xc1a307[_0x4312('0x3e')]=qs[_0x4312('0x3f')](_0xdf18cd[_0x4312('0x36')]['sort']);_0xc1a307[_0x4312('0x40')]=qs['filters'](_['pick'](_0xdf18cd['query'],_0x32c0d7['filters']),_0x5bc571);if(_0xdf18cd[_0x4312('0x36')][_0x4312('0x41')]){_0xc1a307[_0x4312('0x40')]=_[_0x4312('0x42')](_0xc1a307[_0x4312('0x40')],{'$or':_[_0x4312('0x32')](_0x5bc571,function(_0xe2130e){if(_0xe2130e[_0x4312('0x34')]!==_0x4312('0x43')){var _0x5b2ed1={};_0x5b2ed1[_0xe2130e[_0x4312('0x30')]]={'$like':'%'+_0xdf18cd[_0x4312('0x36')][_0x4312('0x41')]+'%'};return _0x5b2ed1;}})});}_0xc1a307=_[_0x4312('0x42')]({},_0xc1a307,_0xdf18cd[_0x4312('0x44')]);var _0x3cfaa5={'where':_0xc1a307[_0x4312('0x40')]};return db[_0x4312('0x33')][_0x4312('0x22')](_0x3cfaa5)[_0x4312('0x29')](function(_0xb46ba5){_0x1dd060[_0x4312('0x22')]=_0xb46ba5;if(_0xdf18cd[_0x4312('0x36')][_0x4312('0x45')]){_0xc1a307[_0x4312('0x46')]=[{'all':!![]}];}return db[_0x4312('0x33')][_0x4312('0x47')](_0xc1a307);})[_0x4312('0x29')](function(_0x34c2c1){_0x1dd060[_0x4312('0x48')]=_0x34c2c1;return _0x1dd060;})[_0x4312('0x29')](respondWithFilteredResult(_0x1398d8,_0xc1a307))[_0x4312('0x49')](handleError(_0x1398d8,null));};exports[_0x4312('0x4a')]=function(_0x2c1aff,_0x1e2a9b){var _0x331be5={'raw':!![],'where':{'id':_0x2c1aff[_0x4312('0x4b')]['id']}},_0x3dbd39={};_0x3dbd39[_0x4312('0x35')]=_[_0x4312('0x4c')](db[_0x4312('0x33')][_0x4312('0x4d')]);_0x3dbd39[_0x4312('0x36')]=_['keys'](_0x2c1aff[_0x4312('0x36')]);_0x3dbd39['filters']=_[_0x4312('0x38')](_0x3dbd39[_0x4312('0x35')],_0x3dbd39[_0x4312('0x36')]);_0x331be5[_0x4312('0x3a')]=_[_0x4312('0x38')](_0x3dbd39[_0x4312('0x35')],qs[_0x4312('0x39')](_0x2c1aff[_0x4312('0x36')][_0x4312('0x39')]));_0x331be5[_0x4312('0x3a')]=_0x331be5['attributes'][_0x4312('0x3b')]?_0x331be5[_0x4312('0x3a')]:_0x3dbd39[_0x4312('0x35')];if(_0x2c1aff[_0x4312('0x36')][_0x4312('0x45')]){_0x331be5[_0x4312('0x46')]=[{'all':!![]}];}_0x331be5=_[_0x4312('0x42')]({},_0x331be5,_0x2c1aff['options']);return db[_0x4312('0x33')]['find'](_0x331be5)[_0x4312('0x29')](handleEntityNotFound(_0x1e2a9b,null))['then'](respondWithResult(_0x1e2a9b,null))['catch'](handleError(_0x1e2a9b,null));};exports[_0x4312('0x4e')]=function(_0x2fea2d,_0x47a99f,_0x37992e){return db[_0x4312('0x33')][_0x4312('0x4f')]({'where':{'id':_0x2fea2d[_0x4312('0x4b')]['id']},'attributes':[_0x4312('0x30'),_0x4312('0x50')],'raw':!![]})[_0x4312('0x29')](handleEntityNotFound(_0x47a99f,null))[_0x4312('0x29')](function(_0x204776){if(_0x204776){var _0x58ade7=path[_0x4312('0x51')](config[_0x4312('0x52')],_0x4312('0x53'),util[_0x4312('0x54')](_0x4312('0x55'),path[_0x4312('0x56')](_0x204776[_0x4312('0x50')])));var _0x5022e7=fs[_0x4312('0x57')](_0x58ade7);var _0x580c8a=archiver(_0x4312('0x58'),{'zlib':{'level':0x9}});_0x580c8a['on'](_0x4312('0x59'),function(_0x7a79a0){if(_0x7a79a0['code']===_0x4312('0x5a')){logger['error'](_0x7a79a0);}else{throw new db['Sequelize'][(_0x4312('0x5b'))](_0x4312('0x5c'));}});_0x580c8a['on'](_0x4312('0x2e'),function(_0x216a11){throw new db['Sequelize'][(_0x4312('0x5b'))](_0x4312('0x5c'));});_0x580c8a[_0x4312('0x5d')](_0x5022e7);_0x580c8a[_0x4312('0x5e')](_0x4312('0x5f'),{'cwd':path[_0x4312('0x51')](config['root'],'server/files/plugins',path[_0x4312('0x60')](_0x204776[_0x4312('0x50')])),'ignore':[path[_0x4312('0x51')](path['basename'](_0x204776['path']),_0x4312('0x61')),path[_0x4312('0x51')](path[_0x4312('0x56')](_0x204776[_0x4312('0x50')]),_0x4312('0x62'))],'nodir':!![]})[_0x4312('0x63')]();_0x5022e7['on'](_0x4312('0x64'),function(){if(!fs['existsSync'](_0x58ade7)){throw new db['Sequelize'][(_0x4312('0x5b'))](_0x4312('0x65'));}return _0x47a99f[_0x4312('0x4e')](_0x58ade7,util[_0x4312('0x54')](_0x4312('0x55'),path['basename'](_0x204776[_0x4312('0x50')])),function(_0xfb9aa6){if(_0xfb9aa6){throw new db[(_0x4312('0x66'))][(_0x4312('0x5b'))](_0x4312('0x67'));}fs[_0x4312('0x68')](_0x58ade7);logger[_0x4312('0x69')]('Download\x20completed');logger[_0x4312('0x69')](_0x4312('0x6a'));});});}return null;})[_0x4312('0x49')](handleError(_0x47a99f,null));};exports[_0x4312('0x6b')]=function(_0x1f779b,_0x214114,_0x2a9258){var _0xa034e3=path[_0x4312('0x56')](_0x1f779b[_0x4312('0x6c')][_0x4312('0x6d')],path[_0x4312('0x6e')](_0x1f779b['file']['filename']));var _0x18aa5f=path[_0x4312('0x51')](config[_0x4312('0x52')],_0x4312('0x53'),_0x1f779b[_0x4312('0x6c')]['filename']);var _0x383d85=path[_0x4312('0x51')](config[_0x4312('0x52')],_0x4312('0x53'),_0xa034e3);logger[_0x4312('0x69')](_0x4312('0x6f'),_0x18aa5f);logger['info'](_0x4312('0x70'),_0x383d85);try{fs['chmodSync'](_0x18aa5f,parseInt('0777',0x8));extract(_0x18aa5f,{'dir':_0x383d85},function(_0x69eff6){if(_0x69eff6){logger[_0x4312('0x2e')](_0x69eff6);handleError(_0x69eff6,!![]);};var _0x1894f6=fs[_0x4312('0x71')](_0x383d85);if(_0x1894f6['length']>0x1){removeReferences(_0x18aa5f,_0x383d85);logger[_0x4312('0x2e')](_0x4312('0x72'));return _0x2a9258(new Error(_0x4312('0x72')));}var _0x587094=fs[_0x4312('0x73')](path[_0x4312('0x51')](_0x383d85,_0x1894f6[0x0]));if(_0x587094[_0x4312('0x74')]()){removeReferences(_0x18aa5f,_0x383d85);logger['error'](_0x4312('0x72'));return _0x2a9258(new Error(_0x4312('0x72')));}if(_0x587094[_0x4312('0x75')]()){var _0x2a81e8=fs[_0x4312('0x71')](path[_0x4312('0x51')](_0x383d85,_0x1894f6[0x0]));if(_0x2a81e8['length']===0x0){removeReferences(_0x18aa5f,_0x383d85);logger[_0x4312('0x2e')]('Invalid\x20plugin\x20structure');return _0x2a9258(new Error(_0x4312('0x72')));}var _0x2747ad=_0x2a81e8[_0x4312('0x76')](function(_0x2b3ed9){return _0x2b3ed9===_0x4312('0x77');});if(!_0x2747ad){return _0x2a9258(new Error('Plugin\x20manifest\x20missing'));}var _0x2a8e48=fs[_0x4312('0x78')](path[_0x4312('0x51')](_0x383d85,_0x1894f6[0x0],_0x4312('0x77')));var _0x566932=JSON[_0x4312('0x79')](_0x2a8e48);if('undefined'==typeof _0x566932['name']){return _0x2a9258(new Error(_0x4312('0x7a')));}if('undefined'==typeof _0x566932[_0x4312('0x34')]){return _0x2a9258(new Error(_0x4312('0x7b')));}if('undefined'==typeof _0x566932['version']){return _0x2a9258(new Error(_0x4312('0x7c')));}if(_0x4312('0x20')==typeof _0x566932['parameters']){return _0x2a9258(new Error(_0x4312('0x7d')));}if(_0x566932['type']==='html'){if(_0x4312('0x20')==typeof _0x566932['parameters'][_0x4312('0x7e')]){return _0x2a9258(new Error(_0x4312('0x7f')));}if(_0x4312('0x20')==typeof _0x566932[_0x4312('0x80')][_0x4312('0x7e')]['admin']&&_0x4312('0x20')==typeof _0x566932[_0x4312('0x80')][_0x4312('0x7e')][_0x4312('0x81')]){return _0x2a9258(new Error(_0x4312('0x82')));}}else if(_0x566932[_0x4312('0x34')]===_0x4312('0x83')){if(_0x4312('0x20')==typeof _0x566932[_0x4312('0x80')][_0x4312('0x84')]){return _0x2a9258(new Error(_0x4312('0x85')));}if(_0x4312('0x20')==typeof _0x566932[_0x4312('0x80')][_0x4312('0x86')]){return _0x2a9258(new Error(_0x4312('0x87')));}}else{return _0x2a9258(new Error(_0x4312('0x88')));}var _0x4eef7c=_0x566932['name'];var _0x520fe0=_0x566932[_0x4312('0x89')];var _0x3cf3db=_0x566932[_0x4312('0x34')];var _0x28dcdf=_0x566932['sidebar']?_0x566932['sidebar']:_0x4312('0x8a');var _0x19a7f9=_0x566932[_0x4312('0x8b')]?_0x566932[_0x4312('0x8b')]:_0x4312('0x8c');var _0x2d91d2='';var _0x3d8fe2='';var _0x323f8a='';var _0x5660bb='';var _0x14bb73=_0x566932[_0x4312('0x8d')];if(_0x3cf3db===_0x4312('0x8e')){if(_0x4312('0x20')!=typeof _0x566932[_0x4312('0x80')][_0x4312('0x7e')][_0x4312('0x8f')]){var _0x57cbaa=_0x566932[_0x4312('0x80')][_0x4312('0x7e')][_0x4312('0x8f')];if(!/^(f|ht)tps?:\/\//i[_0x4312('0x90')](_0x57cbaa)){_0x2d91d2=path[_0x4312('0x51')](_0x4312('0x91'),_0xa034e3,_0x1894f6[0x0],_0x57cbaa);}else{_0x2d91d2=_0x57cbaa;}}else{logger[_0x4312('0x69')](_0x4312('0x92'));}if(_0x4312('0x20')!=typeof _0x566932[_0x4312('0x80')][_0x4312('0x7e')][_0x4312('0x81')]){var _0x19dd4e=_0x566932['parameters'][_0x4312('0x7e')][_0x4312('0x81')];if(!/^(f|ht)tps?:\/\//i[_0x4312('0x90')](_0x19dd4e)){_0x3d8fe2=path['join'](_0x4312('0x91'),_0xa034e3,_0x1894f6[0x0],_0x19dd4e);}else{_0x3d8fe2=_0x19dd4e;}}else{logger[_0x4312('0x69')](_0x4312('0x93'));}}else if(_0x3cf3db===_0x4312('0x83')){_0x323f8a=_0x566932[_0x4312('0x80')]['scriptName'];_0x5660bb=_0x566932[_0x4312('0x80')][_0x4312('0x86')];if(_0x4312('0x20')!=typeof _0x566932['parameters'][_0x4312('0x7e')]){if(_0x4312('0x20')!=typeof _0x566932[_0x4312('0x80')][_0x4312('0x7e')][_0x4312('0x8f')]){var _0x57cbaa=_0x566932[_0x4312('0x80')]['views'][_0x4312('0x8f')];if(!/^(f|ht)tps?:\/\//i[_0x4312('0x90')](_0x57cbaa)){_0x2d91d2=path[_0x4312('0x51')](_0x4312('0x91'),_0xa034e3,_0x1894f6[0x0],_0x57cbaa);}else{_0x2d91d2=_0x57cbaa;}}if('undefined'!=typeof _0x566932[_0x4312('0x80')]['views'][_0x4312('0x81')]){var _0x19dd4e=_0x566932[_0x4312('0x80')]['views'][_0x4312('0x81')];if(!/^(f|ht)tps?:\/\//i[_0x4312('0x90')](_0x19dd4e)){_0x3d8fe2=path[_0x4312('0x51')](_0x4312('0x91'),_0xa034e3,_0x1894f6[0x0],_0x19dd4e);}else{_0x3d8fe2=_0x19dd4e;}}}}var _0x2667c6={'name':_0x4eef7c,'description':_0x520fe0,'path':path[_0x4312('0x51')](_0xa034e3,_0x1894f6[0x0]),'type':_0x3cf3db,'sidebar':_0x28dcdf,'icon':_0x19a7f9,'adminUrl':_0x2d91d2,'agentUrl':_0x3d8fe2,'scriptName':_0x323f8a,'scriptPath':_0x5660bb,'version':_0x14bb73};removeReferences(_0x18aa5f,null);return db[_0x4312('0x33')][_0x4312('0x94')](_0x2667c6)[_0x4312('0x29')](function(_0x6f55cd){var _0xc17321={'role':_0x1f779b[_0x4312('0x95')]['role'],'userProfileId':_0x1f779b[_0x4312('0x95')][_0x4312('0x96')]};if(!_0xc17321)throw new Error(_0x4312('0x97'));if(_0xc17321[_0x4312('0x98')]===_0x4312('0x99')){var _0x4de078=_0x6f55cd['get']({'plain':!![]});return db[_0x4312('0x9a')][_0x4312('0x4f')]({'where':{'name':_0x4312('0x2c'),'userProfileId':_0xc17321[_0x4312('0x96')]},'raw':!![]})[_0x4312('0x29')](function(_0x33069a){if(_0x33069a&&_0x33069a[_0x4312('0x9b')]===0x0){return db['UserProfileResource'][_0x4312('0x94')]({'name':_0x4de078['name'],'resourceId':_0x4de078['id'],'type':_0x33069a[_0x4312('0x30')],'sectionId':_0x33069a['id']},{})[_0x4312('0x29')](function(){return _0x6f55cd;});}else{return _0x6f55cd;}})[_0x4312('0x49')](function(_0x513cfe){logger[_0x4312('0x2e')](_0x4312('0x9c'),_0x513cfe);throw _0x513cfe;});}return _0x6f55cd;})[_0x4312('0x29')](respondWithResult(_0x214114,null))[_0x4312('0x49')](handleError(_0x214114,null));}});}catch(_0x45000d){_0x214114[_0x4312('0x1d')](0x1f4)[_0x4312('0x31')](_0x45000d);}};function removeReferences(_0xb121a7,_0x9dceeb){try{if(_0xb121a7){fs[_0x4312('0x68')](_0xb121a7);logger[_0x4312('0x69')](_0x4312('0x9d'));}if(_0x9dceeb){rimraf(_0x9dceeb,function(){});logger[_0x4312('0x69')](_0x4312('0x9e'));}}catch(_0x42cd95){logger[_0x4312('0x2e')](_0x42cd95);}}exports[_0x4312('0x28')]=function(_0x4f165e,_0x4d17c7,_0x5a5b48){return db[_0x4312('0x33')][_0x4312('0x4f')]({'where':{'id':_0x4f165e[_0x4312('0x4b')]['id']}})[_0x4312('0x29')](handleEntityNotFound(_0x4d17c7,null))[_0x4312('0x29')](saveUpdates(_0x4f165e[_0x4312('0x95')],null))[_0x4312('0x29')](respondWithResult(_0x4d17c7,null))[_0x4312('0x49')](handleError(_0x4d17c7,null));};exports[_0x4312('0x9f')]=function(_0x5c1b45,_0x47469c,_0x4ef2fa){return db['Plugin'][_0x4312('0x4f')]({'where':{'id':_0x5c1b45[_0x4312('0x4b')]['id']}})['then'](function(_0x111f8c){if(_0x111f8c){return _0x111f8c[_0x4312('0x2a')]();}})[_0x4312('0x29')](function(_0x49c7a2){rimraf(path[_0x4312('0x51')](config['root'],_0x4312('0x53'),path[_0x4312('0x60')](_0x49c7a2[_0x4312('0x50')])),function(){});return _0x49c7a2;})['then'](handleEntityNotFound(_0x47469c,null))[_0x4312('0x29')](respondWithStatusCode(_0x47469c,null))[_0x4312('0x49')](handleError(_0x47469c,null));};exports[_0x4312('0xa0')]=function(_0x42ffe3,_0x5df972,_0x3060fb){return BPromise[_0x4312('0xa1')]()[_0x4312('0x29')](function(){if(!_0x42ffe3[_0x4312('0x36')][_0x4312('0x50')]){throw new Error(_0x4312('0xa2'));}if(!_0x42ffe3['query']['port']){throw new Error(_0x4312('0xa3'));}var _0x2ca9f1=_0x42ffe3['query'][_0x4312('0xa4')]?_0x42ffe3[_0x4312('0x36')][_0x4312('0xa4')]+':'+_0x42ffe3[_0x4312('0x36')]['port']:_0x4312('0xa5')+_0x42ffe3[_0x4312('0x36')][_0x4312('0xa6')];var _0x51fa5f=_0x42ffe3[_0x4312('0x36')][_0x4312('0x25')]?_0x42ffe3['query']['json']:!![];var _0x2f3876=_0x42ffe3[_0x4312('0x36')][_0x4312('0xa7')]?_0x42ffe3[_0x4312('0x36')][_0x4312('0xa7')]:null;var _0x580b63={'method':_0x42ffe3['method'],'uri':util[_0x4312('0x54')](_0x4312('0xa8'),_0x2ca9f1,_0x42ffe3['query'][_0x4312('0x50')]),'json':_0x51fa5f,'resolveWithFullResponse':!![],'encoding':_0x2f3876,'qs':_0x42ffe3[_0x4312('0x36')]};if(_0x42ffe3[_0x4312('0xa9')]){_0x580b63[_0x4312('0xa9')]=_0x42ffe3['headers'];if(_0x580b63[_0x4312('0xa9')][_0x4312('0xaa')]){delete _0x580b63[_0x4312('0xa9')][_0x4312('0xaa')];}}if(_0x580b63[_0x4312('0xa9')][_0x4312('0xab')]){delete _0x580b63[_0x4312('0xa9')]['content-type'];}return rp(_0x580b63);})['then'](function(_0x4c7985){if(_0x4c7985){_0x5df972[_0x4312('0x23')](_0x4c7985['headers']);logger[_0x4312('0x69')](_0x4c7985['body']);if(_['endsWith'](_0x42ffe3['query'][_0x4312('0x50')],'download')&&_0x4c7985['statusCode']==0x1f4){return _0x5df972[_0x4312('0x1c')](_0x4c7985[_0x4312('0xac')]);}else{return _0x5df972[_0x4312('0x1d')](_0x4c7985['statusCode'])[_0x4312('0x31')](_0x4c7985[_0x4312('0x95')]);}}else{return _0x5df972[_0x4312('0x1c')](0xc8);}})[_0x4312('0x49')](handleError(_0x5df972,null));};exports[_0x4312('0xad')]=function(_0x31c277,_0x1e8da1,_0x39a96a){return BPromise[_0x4312('0xa1')]()[_0x4312('0x29')](function(){if(!_0x31c277[_0x4312('0x36')][_0x4312('0x50')]){throw new Error('\x27PATH\x27\x20parameter\x20not\x20specified');}if(!_0x31c277[_0x4312('0x36')][_0x4312('0xa6')]){throw new Error(_0x4312('0xa3'));}var _0x44e24a=_0x31c277[_0x4312('0x36')][_0x4312('0xa4')]?_0x31c277[_0x4312('0x36')][_0x4312('0xa4')]+':'+_0x31c277[_0x4312('0x36')][_0x4312('0xa6')]:_0x4312('0xa5')+_0x31c277['query'][_0x4312('0xa6')];var _0x2181db=_0x31c277[_0x4312('0x36')][_0x4312('0x25')]?_0x31c277['query'][_0x4312('0x25')]:!![];var _0x240068=_0x31c277['query'][_0x4312('0xa7')]?_0x31c277['query'][_0x4312('0xa7')]:null;var _0xbca596={'method':_0x31c277[_0x4312('0xae')],'uri':util[_0x4312('0x54')](_0x4312('0xa8'),_0x44e24a,_0x31c277[_0x4312('0x36')][_0x4312('0x50')]),'json':_0x2181db,'resolveWithFullResponse':!![],'encoding':_0x240068,'body':_0x31c277[_0x4312('0x95')]};if(_0x31c277[_0x4312('0xa9')]){_0xbca596[_0x4312('0xa9')]=_0x31c277['headers'];if(_0xbca596[_0x4312('0xa9')][_0x4312('0xaa')]){delete _0xbca596[_0x4312('0xa9')]['content-length'];}}if(_0xbca596['headers']['content-type']){delete _0xbca596[_0x4312('0xa9')][_0x4312('0xab')];}return rp(_0xbca596);})[_0x4312('0x29')](function(_0x52e9e3){if(_0x52e9e3){_0x1e8da1[_0x4312('0x23')](_0x52e9e3[_0x4312('0xa9')]);logger[_0x4312('0x69')](_0x52e9e3[_0x4312('0x95')]);return _0x1e8da1['status'](_0x52e9e3[_0x4312('0xac')])[_0x4312('0x31')](_0x52e9e3['body']);}else{return _0x1e8da1[_0x4312('0x1c')](0xc8);}})['catch'](handleError(_0x1e8da1,null));};
\ No newline at end of file