Built motion from commit 753c950e.|2.5.42
[motion2.git] / server / api / plugin / plugin.controller.js
index a858740..59453d3 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x4c6d=['agent','scriptPath','Invalid\x20manifest:\x20invalid\x20type','description','sidebar','always','icon','icon-apps','test','Warning:\x20admin\x20view\x20not\x20specified','plugins','Warning:\x20agent\x20view\x20not\x20specified','script','scriptName','create','role','body','userProfileId','UserProfileSection','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','Zip\x20archive\x20removed','Extracted\x20folder\x20removed','webhookGet','resolve','\x27PATH\x27\x20parameter\x20not\x20specified','port','hostname','http://localhost:','encoding','method','%s%s','headers','content-length','content-type','endsWith','statusCode','webhookPost','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','squel','crypto','jsforce','desk.js','querystring','archiver','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','./plugin.socket','register','status','end','json','offset','undefined','count','limit','set','apply','reject','save','update','then','get','Plugins','UserProfileResource','destroy','sendStatus','error','stack','name','send','index','map','fieldName','type','model','query','attributes','intersection','length','hasOwnProperty','nolimit','sort','where','pick','filter','VIRTUAL','Plugin','includeAll','include','findAll','rows','catch','show','params','rawAttributes','keys','filters','merge','options','find','download','join','root','format','%s.zip','basename','createWriteStream','code','Sequelize','Error','Error\x20while\x20generating\x20the\x20zip\x20archive','pipe','glob','**/*','server/files/plugins','dirname','node_modules/**/*','attachments/**/*','close','existsSync','Plugin\x20not\x20found','Error\x20while\x20downloading\x20the\x20plugin','unlinkSync','info','Download\x20completed','Temporary\x20file\x20removed','upload','file','filename','Plugin\x20upload\x20filepath:\x20%s','chmodSync','0777','readdirSync','Invalid\x20plugin\x20structure','lstatSync','isFile','isDirectory','some','manifest.json','Plugin\x20manifest\x20missing','readFileSync','parse','Invalid\x20manifest:\x20name\x20missing','Invalid\x20manifest:\x20type\x20missing','version','Invalid\x20manifest:\x20parameters\x20missing','views','Invalid\x20manifest:\x20views\x20missing','admin','parameters'];(function(_0x504bc5,_0x594db4){var _0x50cf50=function(_0x34e8eb){while(--_0x34e8eb){_0x504bc5['push'](_0x504bc5['shift']());}};_0x50cf50(++_0x594db4);}(_0x4c6d,0x17e));var _0xd4c6=function(_0x59ab6e,_0x493ff4){_0x59ab6e=_0x59ab6e-0x0;var _0x13994a=_0x4c6d[_0x59ab6e];return _0x13994a;};'use strict';var emlformat=require(_0xd4c6('0x0'));var rimraf=require(_0xd4c6('0x1'));var zipdir=require(_0xd4c6('0x2'));var jsonpatch=require(_0xd4c6('0x3'));var rp=require(_0xd4c6('0x4'));var moment=require('moment');var BPromise=require(_0xd4c6('0x5'));var Mustache=require(_0xd4c6('0x6'));var util=require(_0xd4c6('0x7'));var path=require(_0xd4c6('0x8'));var sox=require(_0xd4c6('0x9'));var csv=require(_0xd4c6('0xa'));var ejs=require(_0xd4c6('0xb'));var fs=require('fs');var fs_extra=require(_0xd4c6('0xc'));var _=require('lodash');var squel=require(_0xd4c6('0xd'));var crypto=require(_0xd4c6('0xe'));var jsforce=require(_0xd4c6('0xf'));var deskjs=require(_0xd4c6('0x10'));var toCsv=require(_0xd4c6('0xa'));var querystring=require(_0xd4c6('0x11'));var Papa=require('papaparse');var extract=require('extract-zip');var rimraf=require(_0xd4c6('0x1'));var archiver=require(_0xd4c6('0x12'));var Redis=require(_0xd4c6('0x13'));var authService=require(_0xd4c6('0x14'));var qs=require(_0xd4c6('0x15'));var as=require(_0xd4c6('0x16'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xd4c6('0x17'))('api');var utils=require(_0xd4c6('0x18'));var config=require(_0xd4c6('0x19'));var licenseUtil=require(_0xd4c6('0x1a'));var db=require(_0xd4c6('0x1b'))['db'];config[_0xd4c6('0x1c')]=_[_0xd4c6('0x1d')](config['redis'],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xd4c6('0x1c')]));require(_0xd4c6('0x1e'))[_0xd4c6('0x1f')](socket);function respondWithStatusCode(_0x10a6e1,_0x53c73a){_0x53c73a=_0x53c73a||0xcc;return function(_0x461872){if(_0x461872){return _0x10a6e1['sendStatus'](_0x53c73a);}return _0x10a6e1[_0xd4c6('0x20')](_0x53c73a)[_0xd4c6('0x21')]();};}function respondWithResult(_0x2d2f87,_0x4351d8){_0x4351d8=_0x4351d8||0xc8;return function(_0x3879d3){if(_0x3879d3){return _0x2d2f87[_0xd4c6('0x20')](_0x4351d8)[_0xd4c6('0x22')](_0x3879d3);}};}function respondWithFilteredResult(_0x5ec4f1,_0x2036c0){return function(_0x1ace58){if(_0x1ace58){var _0x101d76=typeof _0x2036c0[_0xd4c6('0x23')]===_0xd4c6('0x24')&&typeof _0x2036c0['limit']===_0xd4c6('0x24');var _0x54aa3b=_0x1ace58[_0xd4c6('0x25')];var _0x4a8b5b=_0x101d76?0x0:_0x2036c0[_0xd4c6('0x23')];var _0xe8105c=_0x101d76?_0x1ace58['count']:_0x2036c0[_0xd4c6('0x23')]+_0x2036c0[_0xd4c6('0x26')];var _0x48ea27;if(_0xe8105c>=_0x54aa3b){_0xe8105c=_0x54aa3b;_0x48ea27=0xc8;}else{_0x48ea27=0xce;}_0x5ec4f1[_0xd4c6('0x20')](_0x48ea27);return _0x5ec4f1[_0xd4c6('0x27')]('Content-Range',_0x4a8b5b+'-'+_0xe8105c+'/'+_0x54aa3b)[_0xd4c6('0x22')](_0x1ace58);}return null;};}function patchUpdates(_0x2c9abf){return function(_0x339846){try{jsonpatch[_0xd4c6('0x28')](_0x339846,_0x2c9abf,!![]);}catch(_0x3caafa){return BPromise[_0xd4c6('0x29')](_0x3caafa);}return _0x339846[_0xd4c6('0x2a')]();};}function saveUpdates(_0x1c80fe,_0x1592b6){return function(_0x419f49){if(_0x419f49){return _0x419f49[_0xd4c6('0x2b')](_0x1c80fe)[_0xd4c6('0x2c')](function(_0x515d60){return _0x515d60;});}return null;};}function removeEntity(_0x1ca909,_0x393f84){return function(_0x7f6d8b){if(_0x7f6d8b){return _0x7f6d8b['destroy']()[_0xd4c6('0x2c')](function(){var _0x35e00a=_0x7f6d8b[_0xd4c6('0x2d')]({'plain':!![]});var _0x2ab427=_0xd4c6('0x2e');return db[_0xd4c6('0x2f')][_0xd4c6('0x30')]({'where':{'type':_0x2ab427,'resourceId':_0x35e00a['id']}})[_0xd4c6('0x2c')](function(){return _0x7f6d8b;});})[_0xd4c6('0x2c')](function(){_0x1ca909[_0xd4c6('0x20')](0xcc)[_0xd4c6('0x21')]();});}};}function handleEntityNotFound(_0x4b8b3c,_0x4f00b4){return function(_0x489de){if(!_0x489de){_0x4b8b3c[_0xd4c6('0x31')](0x194);}return _0x489de;};}function handleError(_0x37db81,_0x5c5ce6){_0x5c5ce6=_0x5c5ce6||0x1f4;return function(_0x45f367){logger[_0xd4c6('0x32')](_0x45f367[_0xd4c6('0x33')]);if(_0x45f367[_0xd4c6('0x34')]){delete _0x45f367[_0xd4c6('0x34')];}_0x37db81['status'](_0x5c5ce6)[_0xd4c6('0x35')](_0x45f367);};}exports[_0xd4c6('0x36')]=function(_0x32f5d1,_0x77660f){var _0x4c7187={},_0x3d7667={},_0x42cf33={'count':0x0,'rows':[]};var _0x1c6336=_[_0xd4c6('0x37')](db['Plugin']['rawAttributes'],function(_0x5aebc6){return{'name':_0x5aebc6[_0xd4c6('0x38')],'type':_0x5aebc6[_0xd4c6('0x39')]['key']};});_0x3d7667[_0xd4c6('0x3a')]=_[_0xd4c6('0x37')](_0x1c6336,'name');_0x3d7667[_0xd4c6('0x3b')]=_['keys'](_0x32f5d1['query']);_0x3d7667['filters']=_['intersection'](_0x3d7667['model'],_0x3d7667[_0xd4c6('0x3b')]);_0x4c7187[_0xd4c6('0x3c')]=_[_0xd4c6('0x3d')](_0x3d7667[_0xd4c6('0x3a')],qs['fields'](_0x32f5d1['query']['fields']));_0x4c7187[_0xd4c6('0x3c')]=_0x4c7187['attributes'][_0xd4c6('0x3e')]?_0x4c7187['attributes']:_0x3d7667[_0xd4c6('0x3a')];if(!_0x32f5d1[_0xd4c6('0x3b')][_0xd4c6('0x3f')](_0xd4c6('0x40'))){_0x4c7187['limit']=qs[_0xd4c6('0x26')](_0x32f5d1[_0xd4c6('0x3b')]['limit']);_0x4c7187[_0xd4c6('0x23')]=qs[_0xd4c6('0x23')](_0x32f5d1[_0xd4c6('0x3b')][_0xd4c6('0x23')]);}_0x4c7187['order']=qs[_0xd4c6('0x41')](_0x32f5d1[_0xd4c6('0x3b')][_0xd4c6('0x41')]);_0x4c7187[_0xd4c6('0x42')]=qs['filters'](_[_0xd4c6('0x43')](_0x32f5d1[_0xd4c6('0x3b')],_0x3d7667['filters']),_0x1c6336);if(_0x32f5d1[_0xd4c6('0x3b')][_0xd4c6('0x44')]){_0x4c7187[_0xd4c6('0x42')]=_['merge'](_0x4c7187['where'],{'$or':_[_0xd4c6('0x37')](_0x1c6336,function(_0x4843a3){if(_0x4843a3[_0xd4c6('0x39')]!==_0xd4c6('0x45')){var _0xa04b7f={};_0xa04b7f[_0x4843a3[_0xd4c6('0x34')]]={'$like':'%'+_0x32f5d1['query'][_0xd4c6('0x44')]+'%'};return _0xa04b7f;}})});}_0x4c7187=_['merge']({},_0x4c7187,_0x32f5d1['options']);var _0x1943dc={'where':_0x4c7187['where']};return db[_0xd4c6('0x46')]['count'](_0x1943dc)[_0xd4c6('0x2c')](function(_0x5254a8){_0x42cf33[_0xd4c6('0x25')]=_0x5254a8;if(_0x32f5d1[_0xd4c6('0x3b')][_0xd4c6('0x47')]){_0x4c7187[_0xd4c6('0x48')]=[{'all':!![]}];}return db[_0xd4c6('0x46')][_0xd4c6('0x49')](_0x4c7187);})['then'](function(_0x360cea){_0x42cf33[_0xd4c6('0x4a')]=_0x360cea;return _0x42cf33;})['then'](respondWithFilteredResult(_0x77660f,_0x4c7187))[_0xd4c6('0x4b')](handleError(_0x77660f,null));};exports[_0xd4c6('0x4c')]=function(_0x131465,_0xa3cf6b){var _0x5b6d7c={'raw':!![],'where':{'id':_0x131465[_0xd4c6('0x4d')]['id']}},_0x27b9d9={};_0x27b9d9[_0xd4c6('0x3a')]=_['keys'](db[_0xd4c6('0x46')][_0xd4c6('0x4e')]);_0x27b9d9['query']=_[_0xd4c6('0x4f')](_0x131465[_0xd4c6('0x3b')]);_0x27b9d9[_0xd4c6('0x50')]=_[_0xd4c6('0x3d')](_0x27b9d9['model'],_0x27b9d9['query']);_0x5b6d7c[_0xd4c6('0x3c')]=_[_0xd4c6('0x3d')](_0x27b9d9[_0xd4c6('0x3a')],qs['fields'](_0x131465[_0xd4c6('0x3b')]['fields']));_0x5b6d7c[_0xd4c6('0x3c')]=_0x5b6d7c[_0xd4c6('0x3c')][_0xd4c6('0x3e')]?_0x5b6d7c[_0xd4c6('0x3c')]:_0x27b9d9[_0xd4c6('0x3a')];if(_0x131465[_0xd4c6('0x3b')][_0xd4c6('0x47')]){_0x5b6d7c[_0xd4c6('0x48')]=[{'all':!![]}];}_0x5b6d7c=_[_0xd4c6('0x51')]({},_0x5b6d7c,_0x131465[_0xd4c6('0x52')]);return db[_0xd4c6('0x46')][_0xd4c6('0x53')](_0x5b6d7c)[_0xd4c6('0x2c')](handleEntityNotFound(_0xa3cf6b,null))[_0xd4c6('0x2c')](respondWithResult(_0xa3cf6b,null))[_0xd4c6('0x4b')](handleError(_0xa3cf6b,null));};exports[_0xd4c6('0x54')]=function(_0x3672d6,_0x28cafe,_0x59a2e3){return db['Plugin'][_0xd4c6('0x53')]({'where':{'id':_0x3672d6[_0xd4c6('0x4d')]['id']},'attributes':[_0xd4c6('0x34'),_0xd4c6('0x8')],'raw':!![]})[_0xd4c6('0x2c')](handleEntityNotFound(_0x28cafe,null))['then'](function(_0x49fff3){if(_0x49fff3){var _0x36078b=path[_0xd4c6('0x55')](config[_0xd4c6('0x56')],'server/files/plugins',util[_0xd4c6('0x57')](_0xd4c6('0x58'),path[_0xd4c6('0x59')](_0x49fff3[_0xd4c6('0x8')])));var _0x4b0ed3=fs[_0xd4c6('0x5a')](_0x36078b);var _0x4a1c0b=archiver('zip',{'zlib':{'level':0x9}});_0x4a1c0b['on']('warning',function(_0x51f395){if(_0x51f395[_0xd4c6('0x5b')]==='ENOENT'){logger[_0xd4c6('0x32')](_0x51f395);}else{throw new db[(_0xd4c6('0x5c'))][(_0xd4c6('0x5d'))](_0xd4c6('0x5e'));}});_0x4a1c0b['on'](_0xd4c6('0x32'),function(_0x309cad){throw new db[(_0xd4c6('0x5c'))]['Error'](_0xd4c6('0x5e'));});_0x4a1c0b[_0xd4c6('0x5f')](_0x4b0ed3);_0x4a1c0b[_0xd4c6('0x60')](_0xd4c6('0x61'),{'cwd':path[_0xd4c6('0x55')](config['root'],_0xd4c6('0x62'),path[_0xd4c6('0x63')](_0x49fff3[_0xd4c6('0x8')])),'ignore':[path[_0xd4c6('0x55')](path[_0xd4c6('0x59')](_0x49fff3[_0xd4c6('0x8')]),_0xd4c6('0x64')),path[_0xd4c6('0x55')](path['basename'](_0x49fff3[_0xd4c6('0x8')]),_0xd4c6('0x65'))],'nodir':!![]})['finalize']();_0x4b0ed3['on'](_0xd4c6('0x66'),function(){if(!fs[_0xd4c6('0x67')](_0x36078b)){throw new db[(_0xd4c6('0x5c'))][(_0xd4c6('0x5d'))](_0xd4c6('0x68'));}return _0x28cafe['download'](_0x36078b,util[_0xd4c6('0x57')](_0xd4c6('0x58'),path[_0xd4c6('0x59')](_0x49fff3[_0xd4c6('0x8')])),function(_0x4be808){if(_0x4be808){throw new db[(_0xd4c6('0x5c'))][(_0xd4c6('0x5d'))](_0xd4c6('0x69'));}fs[_0xd4c6('0x6a')](_0x36078b);logger[_0xd4c6('0x6b')](_0xd4c6('0x6c'));logger['info'](_0xd4c6('0x6d'));});});}return null;})[_0xd4c6('0x4b')](handleError(_0x28cafe,null));};exports[_0xd4c6('0x6e')]=function(_0x3de182,_0x5d44b2,_0x13957e){var _0x1d45c0=path['basename'](_0x3de182[_0xd4c6('0x6f')][_0xd4c6('0x70')],path['extname'](_0x3de182['file'][_0xd4c6('0x70')]));var _0x5d3154=path[_0xd4c6('0x55')](config[_0xd4c6('0x56')],_0xd4c6('0x62'),_0x3de182[_0xd4c6('0x6f')]['filename']);var _0x46108a=path[_0xd4c6('0x55')](config[_0xd4c6('0x56')],_0xd4c6('0x62'),_0x1d45c0);logger[_0xd4c6('0x6b')](_0xd4c6('0x71'),_0x5d3154);logger[_0xd4c6('0x6b')]('Plugin\x20upload\x20destination:\x20%s',_0x46108a);try{fs[_0xd4c6('0x72')](_0x5d3154,parseInt(_0xd4c6('0x73'),0x8));extract(_0x5d3154,{'dir':_0x46108a},function(_0x37ee1d){if(_0x37ee1d){logger[_0xd4c6('0x32')](_0x37ee1d);handleError(_0x37ee1d,!![]);};var _0x237835=fs[_0xd4c6('0x74')](_0x46108a);if(_0x237835[_0xd4c6('0x3e')]>0x1){removeReferences(_0x5d3154,_0x46108a);logger[_0xd4c6('0x32')]('Invalid\x20plugin\x20structure');return _0x13957e(new Error(_0xd4c6('0x75')));}var _0x334555=fs[_0xd4c6('0x76')](path['join'](_0x46108a,_0x237835[0x0]));if(_0x334555[_0xd4c6('0x77')]()){removeReferences(_0x5d3154,_0x46108a);logger[_0xd4c6('0x32')](_0xd4c6('0x75'));return _0x13957e(new Error('Invalid\x20plugin\x20structure'));}if(_0x334555[_0xd4c6('0x78')]()){var _0x289365=fs['readdirSync'](path[_0xd4c6('0x55')](_0x46108a,_0x237835[0x0]));if(_0x289365['length']===0x0){removeReferences(_0x5d3154,_0x46108a);logger[_0xd4c6('0x32')]('Invalid\x20plugin\x20structure');return _0x13957e(new Error('Invalid\x20plugin\x20structure'));}var _0xbb4011=_0x289365[_0xd4c6('0x79')](function(_0x51f71e){return _0x51f71e===_0xd4c6('0x7a');});if(!_0xbb4011){return _0x13957e(new Error(_0xd4c6('0x7b')));}var _0x1d9a3b=fs[_0xd4c6('0x7c')](path[_0xd4c6('0x55')](_0x46108a,_0x237835[0x0],_0xd4c6('0x7a')));var _0x8ee192=JSON[_0xd4c6('0x7d')](_0x1d9a3b);if('undefined'==typeof _0x8ee192['name']){return _0x13957e(new Error(_0xd4c6('0x7e')));}if(_0xd4c6('0x24')==typeof _0x8ee192[_0xd4c6('0x39')]){return _0x13957e(new Error(_0xd4c6('0x7f')));}if(_0xd4c6('0x24')==typeof _0x8ee192[_0xd4c6('0x80')]){return _0x13957e(new Error('Invalid\x20manifest:\x20version\x20not\x20specified'));}if(_0xd4c6('0x24')==typeof _0x8ee192['parameters']){return _0x13957e(new Error(_0xd4c6('0x81')));}if(_0x8ee192['type']==='html'){if(_0xd4c6('0x24')==typeof _0x8ee192['parameters'][_0xd4c6('0x82')]){return _0x13957e(new Error(_0xd4c6('0x83')));}if(_0xd4c6('0x24')==typeof _0x8ee192['parameters'][_0xd4c6('0x82')][_0xd4c6('0x84')]&&'undefined'==typeof _0x8ee192[_0xd4c6('0x85')][_0xd4c6('0x82')][_0xd4c6('0x86')]){return _0x13957e(new Error('Invalid\x20manifest:\x20no\x20view\x20specified'));}}else if(_0x8ee192[_0xd4c6('0x39')]==='script'){if(_0xd4c6('0x24')==typeof _0x8ee192[_0xd4c6('0x85')]['scriptName']){return _0x13957e(new Error('Invalid\x20manifest:\x20script\x20name\x20missing'));}if('undefined'==typeof _0x8ee192[_0xd4c6('0x85')][_0xd4c6('0x87')]){return _0x13957e(new Error('Invalid\x20manifest:\x20script\x20path\x20missing'));}}else{return _0x13957e(new Error(_0xd4c6('0x88')));}var _0x29f24f=_0x8ee192[_0xd4c6('0x34')];var _0x3b039e=_0x8ee192[_0xd4c6('0x89')];var _0x28ee4d=_0x8ee192[_0xd4c6('0x39')];var _0x5e2501=_0x8ee192['sidebar']?_0x8ee192[_0xd4c6('0x8a')]:_0xd4c6('0x8b');var _0x26d78a=_0x8ee192[_0xd4c6('0x8c')]?_0x8ee192['icon']:_0xd4c6('0x8d');var _0x155ffb='';var _0x79d921='';var _0x236d9d='';var _0x506441='';var _0x3d1dbd=_0x8ee192[_0xd4c6('0x80')];if(_0x28ee4d==='html'){if(_0xd4c6('0x24')!=typeof _0x8ee192[_0xd4c6('0x85')][_0xd4c6('0x82')]['admin']){var _0xa73142=_0x8ee192[_0xd4c6('0x85')][_0xd4c6('0x82')][_0xd4c6('0x84')];if(!/^(f|ht)tps?:\/\//i[_0xd4c6('0x8e')](_0xa73142)){_0x155ffb=path[_0xd4c6('0x55')]('plugins',_0x1d45c0,_0x237835[0x0],_0xa73142);}else{_0x155ffb=_0xa73142;}}else{logger['info'](_0xd4c6('0x8f'));}if(_0xd4c6('0x24')!=typeof _0x8ee192[_0xd4c6('0x85')][_0xd4c6('0x82')][_0xd4c6('0x86')]){var _0x458beb=_0x8ee192[_0xd4c6('0x85')][_0xd4c6('0x82')][_0xd4c6('0x86')];if(!/^(f|ht)tps?:\/\//i['test'](_0x458beb)){_0x79d921=path['join'](_0xd4c6('0x90'),_0x1d45c0,_0x237835[0x0],_0x458beb);}else{_0x79d921=_0x458beb;}}else{logger['info'](_0xd4c6('0x91'));}}else if(_0x28ee4d===_0xd4c6('0x92')){_0x236d9d=_0x8ee192['parameters'][_0xd4c6('0x93')];_0x506441=_0x8ee192[_0xd4c6('0x85')][_0xd4c6('0x87')];if('undefined'!=typeof _0x8ee192[_0xd4c6('0x85')][_0xd4c6('0x82')]){if(_0xd4c6('0x24')!=typeof _0x8ee192[_0xd4c6('0x85')][_0xd4c6('0x82')][_0xd4c6('0x84')]){var _0xa73142=_0x8ee192[_0xd4c6('0x85')][_0xd4c6('0x82')][_0xd4c6('0x84')];if(!/^(f|ht)tps?:\/\//i[_0xd4c6('0x8e')](_0xa73142)){_0x155ffb=path['join'](_0xd4c6('0x90'),_0x1d45c0,_0x237835[0x0],_0xa73142);}else{_0x155ffb=_0xa73142;}}if(_0xd4c6('0x24')!=typeof _0x8ee192['parameters'][_0xd4c6('0x82')]['agent']){var _0x458beb=_0x8ee192[_0xd4c6('0x85')][_0xd4c6('0x82')][_0xd4c6('0x86')];if(!/^(f|ht)tps?:\/\//i[_0xd4c6('0x8e')](_0x458beb)){_0x79d921=path[_0xd4c6('0x55')](_0xd4c6('0x90'),_0x1d45c0,_0x237835[0x0],_0x458beb);}else{_0x79d921=_0x458beb;}}}}var _0x49ccac={'name':_0x29f24f,'description':_0x3b039e,'path':path[_0xd4c6('0x55')](_0x1d45c0,_0x237835[0x0]),'type':_0x28ee4d,'sidebar':_0x5e2501,'icon':_0x26d78a,'adminUrl':_0x155ffb,'agentUrl':_0x79d921,'scriptName':_0x236d9d,'scriptPath':_0x506441,'version':_0x3d1dbd};removeReferences(_0x5d3154,null);return db[_0xd4c6('0x46')][_0xd4c6('0x94')](_0x49ccac)[_0xd4c6('0x2c')](function(_0x1383a3){var _0x169be1={'role':_0x3de182['body'][_0xd4c6('0x95')],'userProfileId':_0x3de182[_0xd4c6('0x96')][_0xd4c6('0x97')]};if(!_0x169be1)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x169be1[_0xd4c6('0x95')]==='user'){var _0x56eb0f=_0x1383a3[_0xd4c6('0x2d')]({'plain':!![]});return db[_0xd4c6('0x98')]['find']({'where':{'name':_0xd4c6('0x2e'),'userProfileId':_0x169be1[_0xd4c6('0x97')]},'raw':!![]})['then'](function(_0x190a02){if(_0x190a02&&_0x190a02[_0xd4c6('0x99')]===0x0){return db[_0xd4c6('0x2f')][_0xd4c6('0x94')]({'name':_0x56eb0f['name'],'resourceId':_0x56eb0f['id'],'type':_0x190a02['name'],'sectionId':_0x190a02['id']},{})[_0xd4c6('0x2c')](function(){return _0x1383a3;});}else{return _0x1383a3;}})['catch'](function(_0x4372ee){logger['error'](_0xd4c6('0x9a'),_0x4372ee);throw _0x4372ee;});}return _0x1383a3;})[_0xd4c6('0x2c')](respondWithResult(_0x5d44b2,null))[_0xd4c6('0x4b')](handleError(_0x5d44b2,null));}});}catch(_0x50a725){_0x5d44b2[_0xd4c6('0x20')](0x1f4)[_0xd4c6('0x35')](_0x50a725);}};function removeReferences(_0x33e905,_0x59bf44){try{if(_0x33e905){fs[_0xd4c6('0x6a')](_0x33e905);logger[_0xd4c6('0x6b')](_0xd4c6('0x9b'));}if(_0x59bf44){rimraf(_0x59bf44,function(){});logger[_0xd4c6('0x6b')](_0xd4c6('0x9c'));}}catch(_0x5915ba){logger[_0xd4c6('0x32')](_0x5915ba);}}exports[_0xd4c6('0x2b')]=function(_0x3a9ffa,_0xe71915,_0x44ee4b){return db['Plugin'][_0xd4c6('0x53')]({'where':{'id':_0x3a9ffa['params']['id']}})[_0xd4c6('0x2c')](handleEntityNotFound(_0xe71915,null))[_0xd4c6('0x2c')](saveUpdates(_0x3a9ffa[_0xd4c6('0x96')],null))[_0xd4c6('0x2c')](respondWithResult(_0xe71915,null))['catch'](handleError(_0xe71915,null));};exports['delete']=function(_0x4428fe,_0x2784ad,_0x2cf768){return db[_0xd4c6('0x46')][_0xd4c6('0x53')]({'where':{'id':_0x4428fe[_0xd4c6('0x4d')]['id']}})['then'](function(_0x22ac1b){if(_0x22ac1b){return _0x22ac1b[_0xd4c6('0x30')]();}})[_0xd4c6('0x2c')](function(_0x21ad57){rimraf(path[_0xd4c6('0x55')](config[_0xd4c6('0x56')],'server/files/plugins',path['dirname'](_0x21ad57['path'])),function(){});return _0x21ad57;})[_0xd4c6('0x2c')](handleEntityNotFound(_0x2784ad,null))['then'](respondWithStatusCode(_0x2784ad,null))[_0xd4c6('0x4b')](handleError(_0x2784ad,null));};exports[_0xd4c6('0x9d')]=function(_0x595654,_0x3f3429,_0x527eed){return BPromise[_0xd4c6('0x9e')]()['then'](function(){if(!_0x595654[_0xd4c6('0x3b')][_0xd4c6('0x8')]){throw new Error(_0xd4c6('0x9f'));}if(!_0x595654[_0xd4c6('0x3b')][_0xd4c6('0xa0')]){throw new Error('\x27PORT\x27\x20parameter\x20not\x20specified');}var _0x330978=_0x595654['query']['hostname']?_0x595654[_0xd4c6('0x3b')][_0xd4c6('0xa1')]+':'+_0x595654['query'][_0xd4c6('0xa0')]:_0xd4c6('0xa2')+_0x595654[_0xd4c6('0x3b')][_0xd4c6('0xa0')];var _0x2047f1=_0x595654[_0xd4c6('0x3b')]['json']?_0x595654['query'][_0xd4c6('0x22')]:!![];var _0x1cabba=_0x595654[_0xd4c6('0x3b')][_0xd4c6('0xa3')]?_0x595654[_0xd4c6('0x3b')]['encoding']:null;var _0x3ae661={'method':_0x595654[_0xd4c6('0xa4')],'uri':util[_0xd4c6('0x57')](_0xd4c6('0xa5'),_0x330978,_0x595654[_0xd4c6('0x3b')][_0xd4c6('0x8')]),'json':_0x2047f1,'resolveWithFullResponse':!![],'encoding':_0x1cabba,'qs':_0x595654[_0xd4c6('0x3b')]};if(_0x595654[_0xd4c6('0xa6')]){_0x3ae661[_0xd4c6('0xa6')]=_0x595654['headers'];if(_0x3ae661[_0xd4c6('0xa6')][_0xd4c6('0xa7')]){delete _0x3ae661[_0xd4c6('0xa6')]['content-length'];}}if(_0x3ae661['headers'][_0xd4c6('0xa8')]){delete _0x3ae661[_0xd4c6('0xa6')][_0xd4c6('0xa8')];}return rp(_0x3ae661);})[_0xd4c6('0x2c')](function(_0x56693e){if(_0x56693e){_0x3f3429[_0xd4c6('0x27')](_0x56693e['headers']);logger[_0xd4c6('0x6b')](_0x56693e[_0xd4c6('0x96')]);if(_[_0xd4c6('0xa9')](_0x595654['query'][_0xd4c6('0x8')],_0xd4c6('0x54'))&&_0x56693e[_0xd4c6('0xaa')]==0x1f4){return _0x3f3429['sendStatus'](_0x56693e['statusCode']);}else{return _0x3f3429[_0xd4c6('0x20')](_0x56693e[_0xd4c6('0xaa')])['send'](_0x56693e[_0xd4c6('0x96')]);}}else{return _0x3f3429[_0xd4c6('0x31')](0xc8);}})[_0xd4c6('0x4b')](handleError(_0x3f3429,null));};exports[_0xd4c6('0xab')]=function(_0x59d2e6,_0x2ce1cd,_0x1f7b10){return BPromise[_0xd4c6('0x9e')]()['then'](function(){if(!_0x59d2e6[_0xd4c6('0x3b')]['path']){throw new Error(_0xd4c6('0x9f'));}if(!_0x59d2e6[_0xd4c6('0x3b')][_0xd4c6('0xa0')]){throw new Error('\x27PORT\x27\x20parameter\x20not\x20specified');}var _0x3674ae=_0x59d2e6[_0xd4c6('0x3b')][_0xd4c6('0xa1')]?_0x59d2e6[_0xd4c6('0x3b')][_0xd4c6('0xa1')]+':'+_0x59d2e6['query']['port']:_0xd4c6('0xa2')+_0x59d2e6[_0xd4c6('0x3b')][_0xd4c6('0xa0')];var _0x50dd87=_0x59d2e6[_0xd4c6('0x3b')][_0xd4c6('0x22')]?_0x59d2e6[_0xd4c6('0x3b')]['json']:!![];var _0x3ef632=_0x59d2e6['query'][_0xd4c6('0xa3')]?_0x59d2e6[_0xd4c6('0x3b')][_0xd4c6('0xa3')]:null;var _0x1795d2={'method':_0x59d2e6[_0xd4c6('0xa4')],'uri':util[_0xd4c6('0x57')](_0xd4c6('0xa5'),_0x3674ae,_0x59d2e6[_0xd4c6('0x3b')]['path']),'json':_0x50dd87,'resolveWithFullResponse':!![],'encoding':_0x3ef632,'body':_0x59d2e6[_0xd4c6('0x96')]};if(_0x59d2e6[_0xd4c6('0xa6')]){_0x1795d2['headers']=_0x59d2e6['headers'];if(_0x1795d2[_0xd4c6('0xa6')][_0xd4c6('0xa7')]){delete _0x1795d2[_0xd4c6('0xa6')][_0xd4c6('0xa7')];}}if(_0x1795d2['headers'][_0xd4c6('0xa8')]){delete _0x1795d2[_0xd4c6('0xa6')]['content-type'];}return rp(_0x1795d2);})['then'](function(_0x1f0439){if(_0x1f0439){_0x2ce1cd[_0xd4c6('0x27')](_0x1f0439[_0xd4c6('0xa6')]);logger[_0xd4c6('0x6b')](_0x1f0439['body']);return _0x2ce1cd[_0xd4c6('0x20')](_0x1f0439[_0xd4c6('0xaa')])[_0xd4c6('0x35')](_0x1f0439['body']);}else{return _0x2ce1cd['sendStatus'](0xc8);}})[_0xd4c6('0x4b')](handleError(_0x2ce1cd,null));};
\ No newline at end of file
+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