Built motion from commit 3c2ce842.|2.6.31
[motion2.git] / server / api / plugin / plugin.controller.js
index 4fcfd8c..1de4567 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x6322=['%s%s','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','to-csv','ejs','lodash','squel','querystring','papaparse','extract-zip','archiver','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','localhost','socket.io-emitter','./plugin.socket','register','sendStatus','status','end','offset','undefined','limit','set','Content-Range','json','apply','reject','then','destroy','get','Plugins','UserProfileResource','error','stack','name','send','index','map','Plugin','fieldName','type','model','query','intersection','attributes','fields','length','nolimit','order','sort','where','filters','pick','filter','merge','VIRTUAL','options','count','includeAll','include','findAll','catch','show','params','keys','find','download','root','server/files/plugins','format','%s.zip','path','createWriteStream','zip','warning','code','Sequelize','Error','Error\x20while\x20generating\x20the\x20zip\x20archive','pipe','glob','**/*','dirname','join','basename','node_modules/**/*','finalize','close','existsSync','Plugin\x20not\x20found','info','Download\x20completed','Temporary\x20file\x20removed','upload','filename','extname','file','Plugin\x20upload\x20destination:\x20%s','chmodSync','0777','readdirSync','Invalid\x20plugin\x20structure','lstatSync','isFile','isDirectory','some','manifest.json','parse','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','agent','Invalid\x20manifest:\x20no\x20view\x20specified','script','scriptName','Invalid\x20manifest:\x20script\x20name\x20missing','scriptPath','Invalid\x20manifest:\x20script\x20path\x20missing','Invalid\x20manifest:\x20invalid\x20type','description','sidebar','always','icon','icon-apps','admin','test','plugins','body','userProfileId','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','user','UserProfileSection','autoAssociation','create','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','Zip\x20archive\x20removed','webhookGet','port','hostname','encoding','method','headers','content-length','content-type','endsWith','statusCode','webhookPost','resolve','\x27PATH\x27\x20parameter\x20not\x20specified','\x27PORT\x27\x20parameter\x20not\x20specified','http://localhost:'];(function(_0x2270bc,_0x3b6274){var _0x5de1d5=function(_0x16a689){while(--_0x16a689){_0x2270bc['push'](_0x2270bc['shift']());}};_0x5de1d5(++_0x3b6274);}(_0x6322,0x15d));var _0x2632=function(_0x54b62b,_0x4a8b){_0x54b62b=_0x54b62b-0x0;var _0x4567ec=_0x6322[_0x54b62b];return _0x4567ec;};'use strict';var emlformat=require(_0x2632('0x0'));var rimraf=require(_0x2632('0x1'));var zipdir=require(_0x2632('0x2'));var jsonpatch=require(_0x2632('0x3'));var rp=require(_0x2632('0x4'));var moment=require(_0x2632('0x5'));var BPromise=require(_0x2632('0x6'));var Mustache=require(_0x2632('0x7'));var util=require(_0x2632('0x8'));var path=require('path');var sox=require('sox');var csv=require(_0x2632('0x9'));var ejs=require(_0x2632('0xa'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x2632('0xb'));var squel=require(_0x2632('0xc'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0x2632('0x9'));var querystring=require(_0x2632('0xd'));var Papa=require(_0x2632('0xe'));var extract=require(_0x2632('0xf'));var rimraf=require('rimraf');var archiver=require(_0x2632('0x10'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0x2632('0x11'));var as=require(_0x2632('0x12'));var hardwareService=require(_0x2632('0x13'));var logger=require(_0x2632('0x14'))(_0x2632('0x15'));var utils=require(_0x2632('0x16'));var config=require(_0x2632('0x17'));var licenseUtil=require(_0x2632('0x18'));var db=require(_0x2632('0x19'))['db'];config[_0x2632('0x1a')]=_['defaults'](config[_0x2632('0x1a')],{'host':_0x2632('0x1b'),'port':0x18eb});var socket=require(_0x2632('0x1c'))(new Redis(config[_0x2632('0x1a')]));require(_0x2632('0x1d'))[_0x2632('0x1e')](socket);function respondWithStatusCode(_0x4e96c5,_0xf2f210){_0xf2f210=_0xf2f210||0xcc;return function(_0x2cc03e){if(_0x2cc03e){return _0x4e96c5[_0x2632('0x1f')](_0xf2f210);}return _0x4e96c5[_0x2632('0x20')](_0xf2f210)[_0x2632('0x21')]();};}function respondWithResult(_0x5aef67,_0x4d8294){_0x4d8294=_0x4d8294||0xc8;return function(_0x621f37){if(_0x621f37){return _0x5aef67['status'](_0x4d8294)['json'](_0x621f37);}};}function respondWithFilteredResult(_0x3d6df6,_0xd2979a){return function(_0x4a416e){if(_0x4a416e){var _0x399e98=typeof _0xd2979a[_0x2632('0x22')]===_0x2632('0x23')&&typeof _0xd2979a['limit']===_0x2632('0x23');var _0x5eeac7=_0x4a416e['count'];var _0x28ec7c=_0x399e98?0x0:_0xd2979a[_0x2632('0x22')];var _0x153822=_0x399e98?_0x4a416e['count']:_0xd2979a[_0x2632('0x22')]+_0xd2979a[_0x2632('0x24')];var _0x5ab5b7;if(_0x153822>=_0x5eeac7){_0x153822=_0x5eeac7;_0x5ab5b7=0xc8;}else{_0x5ab5b7=0xce;}_0x3d6df6[_0x2632('0x20')](_0x5ab5b7);return _0x3d6df6[_0x2632('0x25')](_0x2632('0x26'),_0x28ec7c+'-'+_0x153822+'/'+_0x5eeac7)[_0x2632('0x27')](_0x4a416e);}return null;};}function patchUpdates(_0xbc79d9){return function(_0xa0d63b){try{jsonpatch[_0x2632('0x28')](_0xa0d63b,_0xbc79d9,!![]);}catch(_0x290c3c){return BPromise[_0x2632('0x29')](_0x290c3c);}return _0xa0d63b['save']();};}function saveUpdates(_0x3771d5,_0x1863f2){return function(_0x5c876b){if(_0x5c876b){return _0x5c876b['update'](_0x3771d5)[_0x2632('0x2a')](function(_0x55259d){return _0x55259d;});}return null;};}function removeEntity(_0x5950f9,_0x135c04){return function(_0x4bb17a){if(_0x4bb17a){return _0x4bb17a[_0x2632('0x2b')]()['then'](function(){var _0x5b949a=_0x4bb17a[_0x2632('0x2c')]({'plain':!![]});var _0x4fa1ae=_0x2632('0x2d');return db[_0x2632('0x2e')][_0x2632('0x2b')]({'where':{'type':_0x4fa1ae,'resourceId':_0x5b949a['id']}})[_0x2632('0x2a')](function(){return _0x4bb17a;});})[_0x2632('0x2a')](function(){_0x5950f9[_0x2632('0x20')](0xcc)['end']();});}};}function handleEntityNotFound(_0x1a5a11,_0x559165){return function(_0x5c3a9b){if(!_0x5c3a9b){_0x1a5a11[_0x2632('0x1f')](0x194);}return _0x5c3a9b;};}function handleError(_0x28cee8,_0x3fc133){_0x3fc133=_0x3fc133||0x1f4;return function(_0x22e1d7){logger[_0x2632('0x2f')](_0x22e1d7[_0x2632('0x30')]);if(_0x22e1d7[_0x2632('0x31')]){delete _0x22e1d7[_0x2632('0x31')];}_0x28cee8[_0x2632('0x20')](_0x3fc133)[_0x2632('0x32')](_0x22e1d7);};}exports[_0x2632('0x33')]=function(_0x250107,_0xfc6741){var _0x485094={},_0x58303c={},_0x2696eb={'count':0x0,'rows':[]};var _0x31d37d=_[_0x2632('0x34')](db[_0x2632('0x35')]['rawAttributes'],function(_0x32b98f){return{'name':_0x32b98f[_0x2632('0x36')],'type':_0x32b98f[_0x2632('0x37')]['key']};});_0x58303c[_0x2632('0x38')]=_[_0x2632('0x34')](_0x31d37d,'name');_0x58303c[_0x2632('0x39')]=_['keys'](_0x250107[_0x2632('0x39')]);_0x58303c['filters']=_[_0x2632('0x3a')](_0x58303c['model'],_0x58303c[_0x2632('0x39')]);_0x485094[_0x2632('0x3b')]=_[_0x2632('0x3a')](_0x58303c['model'],qs[_0x2632('0x3c')](_0x250107[_0x2632('0x39')]['fields']));_0x485094['attributes']=_0x485094[_0x2632('0x3b')][_0x2632('0x3d')]?_0x485094[_0x2632('0x3b')]:_0x58303c[_0x2632('0x38')];if(!_0x250107['query']['hasOwnProperty'](_0x2632('0x3e'))){_0x485094[_0x2632('0x24')]=qs[_0x2632('0x24')](_0x250107[_0x2632('0x39')][_0x2632('0x24')]);_0x485094[_0x2632('0x22')]=qs[_0x2632('0x22')](_0x250107[_0x2632('0x39')][_0x2632('0x22')]);}_0x485094[_0x2632('0x3f')]=qs[_0x2632('0x40')](_0x250107['query'][_0x2632('0x40')]);_0x485094[_0x2632('0x41')]=qs[_0x2632('0x42')](_[_0x2632('0x43')](_0x250107[_0x2632('0x39')],_0x58303c[_0x2632('0x42')]),_0x31d37d);if(_0x250107[_0x2632('0x39')][_0x2632('0x44')]){_0x485094['where']=_[_0x2632('0x45')](_0x485094['where'],{'$or':_[_0x2632('0x34')](_0x31d37d,function(_0x61efc8){if(_0x61efc8['type']!==_0x2632('0x46')){var _0x32174f={};_0x32174f[_0x61efc8[_0x2632('0x31')]]={'$like':'%'+_0x250107[_0x2632('0x39')]['filter']+'%'};return _0x32174f;}})});}_0x485094=_['merge']({},_0x485094,_0x250107[_0x2632('0x47')]);var _0x81047d={'where':_0x485094['where']};return db[_0x2632('0x35')][_0x2632('0x48')](_0x81047d)[_0x2632('0x2a')](function(_0x191fa2){_0x2696eb[_0x2632('0x48')]=_0x191fa2;if(_0x250107[_0x2632('0x39')][_0x2632('0x49')]){_0x485094[_0x2632('0x4a')]=[{'all':!![]}];}return db[_0x2632('0x35')][_0x2632('0x4b')](_0x485094);})[_0x2632('0x2a')](function(_0x132ad6){_0x2696eb['rows']=_0x132ad6;return _0x2696eb;})['then'](respondWithFilteredResult(_0xfc6741,_0x485094))[_0x2632('0x4c')](handleError(_0xfc6741,null));};exports[_0x2632('0x4d')]=function(_0x4842fc,_0x34dafc){var _0x2839cc={'raw':!![],'where':{'id':_0x4842fc[_0x2632('0x4e')]['id']}},_0x3a1434={};_0x3a1434[_0x2632('0x38')]=_[_0x2632('0x4f')](db[_0x2632('0x35')]['rawAttributes']);_0x3a1434[_0x2632('0x39')]=_[_0x2632('0x4f')](_0x4842fc[_0x2632('0x39')]);_0x3a1434['filters']=_[_0x2632('0x3a')](_0x3a1434[_0x2632('0x38')],_0x3a1434[_0x2632('0x39')]);_0x2839cc[_0x2632('0x3b')]=_[_0x2632('0x3a')](_0x3a1434[_0x2632('0x38')],qs[_0x2632('0x3c')](_0x4842fc[_0x2632('0x39')][_0x2632('0x3c')]));_0x2839cc[_0x2632('0x3b')]=_0x2839cc[_0x2632('0x3b')][_0x2632('0x3d')]?_0x2839cc[_0x2632('0x3b')]:_0x3a1434[_0x2632('0x38')];if(_0x4842fc['query'][_0x2632('0x49')]){_0x2839cc[_0x2632('0x4a')]=[{'all':!![]}];}_0x2839cc=_[_0x2632('0x45')]({},_0x2839cc,_0x4842fc['options']);return db[_0x2632('0x35')][_0x2632('0x50')](_0x2839cc)[_0x2632('0x2a')](handleEntityNotFound(_0x34dafc,null))[_0x2632('0x2a')](respondWithResult(_0x34dafc,null))[_0x2632('0x4c')](handleError(_0x34dafc,null));};exports[_0x2632('0x51')]=function(_0x424982,_0x27e7ae,_0x2878f7){return db[_0x2632('0x35')]['find']({'where':{'id':_0x424982[_0x2632('0x4e')]['id']},'attributes':[_0x2632('0x31'),'path'],'raw':!![]})[_0x2632('0x2a')](handleEntityNotFound(_0x27e7ae,null))[_0x2632('0x2a')](function(_0x5d6323){if(_0x5d6323){var _0x59b7be=path['join'](config[_0x2632('0x52')],_0x2632('0x53'),util[_0x2632('0x54')](_0x2632('0x55'),path['basename'](_0x5d6323[_0x2632('0x56')])));var _0x1d576d=fs[_0x2632('0x57')](_0x59b7be);var _0x50f93d=archiver(_0x2632('0x58'),{'zlib':{'level':0x9}});_0x50f93d['on'](_0x2632('0x59'),function(_0x779d2b){if(_0x779d2b[_0x2632('0x5a')]==='ENOENT'){logger[_0x2632('0x2f')](_0x779d2b);}else{throw new db[(_0x2632('0x5b'))][(_0x2632('0x5c'))](_0x2632('0x5d'));}});_0x50f93d['on']('error',function(_0x238fbc){throw new db[(_0x2632('0x5b'))][(_0x2632('0x5c'))](_0x2632('0x5d'));});_0x50f93d[_0x2632('0x5e')](_0x1d576d);_0x50f93d[_0x2632('0x5f')](_0x2632('0x60'),{'cwd':path['join'](config[_0x2632('0x52')],_0x2632('0x53'),path[_0x2632('0x61')](_0x5d6323[_0x2632('0x56')])),'ignore':[path[_0x2632('0x62')](path[_0x2632('0x63')](_0x5d6323[_0x2632('0x56')]),_0x2632('0x64')),path['join'](path[_0x2632('0x63')](_0x5d6323[_0x2632('0x56')]),'attachments/**/*')],'nodir':!![]})[_0x2632('0x65')]();_0x1d576d['on'](_0x2632('0x66'),function(){if(!fs[_0x2632('0x67')](_0x59b7be)){throw new db[(_0x2632('0x5b'))]['Error'](_0x2632('0x68'));}return _0x27e7ae[_0x2632('0x51')](_0x59b7be,util[_0x2632('0x54')](_0x2632('0x55'),path[_0x2632('0x63')](_0x5d6323[_0x2632('0x56')])),function(_0x199ce2){if(_0x199ce2){throw new db['Sequelize'][(_0x2632('0x5c'))]('Error\x20while\x20downloading\x20the\x20plugin');}fs['unlinkSync'](_0x59b7be);logger[_0x2632('0x69')](_0x2632('0x6a'));logger[_0x2632('0x69')](_0x2632('0x6b'));});});}return null;})[_0x2632('0x4c')](handleError(_0x27e7ae,null));};exports[_0x2632('0x6c')]=function(_0x53e8a7,_0x1c6d66,_0x2f6797){var _0xdaff7e=path[_0x2632('0x63')](_0x53e8a7['file'][_0x2632('0x6d')],path[_0x2632('0x6e')](_0x53e8a7['file'][_0x2632('0x6d')]));var _0x3fabd7=path[_0x2632('0x62')](config[_0x2632('0x52')],_0x2632('0x53'),_0x53e8a7[_0x2632('0x6f')]['filename']);var _0x40a6a3=path[_0x2632('0x62')](config[_0x2632('0x52')],_0x2632('0x53'),_0xdaff7e);logger['info']('Plugin\x20upload\x20filepath:\x20%s',_0x3fabd7);logger[_0x2632('0x69')](_0x2632('0x70'),_0x40a6a3);try{fs[_0x2632('0x71')](_0x3fabd7,parseInt(_0x2632('0x72'),0x8));extract(_0x3fabd7,{'dir':_0x40a6a3},function(_0x2885f3){if(_0x2885f3){logger['error'](_0x2885f3);handleError(_0x2885f3,!![]);};var _0x1ff83f=fs[_0x2632('0x73')](_0x40a6a3);if(_0x1ff83f[_0x2632('0x3d')]>0x1){removeReferences(_0x3fabd7,_0x40a6a3);logger[_0x2632('0x2f')](_0x2632('0x74'));return _0x2f6797(new Error(_0x2632('0x74')));}var _0x10cf75=fs[_0x2632('0x75')](path[_0x2632('0x62')](_0x40a6a3,_0x1ff83f[0x0]));if(_0x10cf75[_0x2632('0x76')]()){removeReferences(_0x3fabd7,_0x40a6a3);logger[_0x2632('0x2f')]('Invalid\x20plugin\x20structure');return _0x2f6797(new Error('Invalid\x20plugin\x20structure'));}if(_0x10cf75[_0x2632('0x77')]()){var _0xb5851d=fs[_0x2632('0x73')](path[_0x2632('0x62')](_0x40a6a3,_0x1ff83f[0x0]));if(_0xb5851d[_0x2632('0x3d')]===0x0){removeReferences(_0x3fabd7,_0x40a6a3);logger[_0x2632('0x2f')](_0x2632('0x74'));return _0x2f6797(new Error(_0x2632('0x74')));}var _0x52c980=_0xb5851d[_0x2632('0x78')](function(_0x2899ac){return _0x2899ac===_0x2632('0x79');});if(!_0x52c980){return _0x2f6797(new Error('Plugin\x20manifest\x20missing'));}var _0x2f6283=fs['readFileSync'](path[_0x2632('0x62')](_0x40a6a3,_0x1ff83f[0x0],_0x2632('0x79')));var _0x5c9db3=JSON[_0x2632('0x7a')](_0x2f6283);if(_0x2632('0x23')==typeof _0x5c9db3[_0x2632('0x31')]){return _0x2f6797(new Error(_0x2632('0x7b')));}if('undefined'==typeof _0x5c9db3[_0x2632('0x37')]){return _0x2f6797(new Error(_0x2632('0x7c')));}if('undefined'==typeof _0x5c9db3[_0x2632('0x7d')]){return _0x2f6797(new Error(_0x2632('0x7e')));}if(_0x2632('0x23')==typeof _0x5c9db3[_0x2632('0x7f')]){return _0x2f6797(new Error(_0x2632('0x80')));}if(_0x5c9db3[_0x2632('0x37')]===_0x2632('0x81')){if('undefined'==typeof _0x5c9db3[_0x2632('0x7f')][_0x2632('0x82')]){return _0x2f6797(new Error(_0x2632('0x83')));}if(_0x2632('0x23')==typeof _0x5c9db3[_0x2632('0x7f')][_0x2632('0x82')]['admin']&&_0x2632('0x23')==typeof _0x5c9db3[_0x2632('0x7f')][_0x2632('0x82')][_0x2632('0x84')]){return _0x2f6797(new Error(_0x2632('0x85')));}}else if(_0x5c9db3[_0x2632('0x37')]===_0x2632('0x86')){if(_0x2632('0x23')==typeof _0x5c9db3['parameters'][_0x2632('0x87')]){return _0x2f6797(new Error(_0x2632('0x88')));}if(_0x2632('0x23')==typeof _0x5c9db3[_0x2632('0x7f')][_0x2632('0x89')]){return _0x2f6797(new Error(_0x2632('0x8a')));}}else{return _0x2f6797(new Error(_0x2632('0x8b')));}var _0xdaa68b=_0x5c9db3['name'];var _0x2230eb=_0x5c9db3[_0x2632('0x8c')];var _0x5f3698=_0x5c9db3['type'];var _0x56409a=_0x5c9db3[_0x2632('0x8d')]?_0x5c9db3[_0x2632('0x8d')]:_0x2632('0x8e');var _0x5713ba=_0x5c9db3[_0x2632('0x8f')]?_0x5c9db3[_0x2632('0x8f')]:_0x2632('0x90');var _0x58bae5='';var _0x1c0c6a='';var _0x5e9c66='';var _0x11d179='';var _0x1612ea=_0x5c9db3[_0x2632('0x7d')];if(_0x5f3698===_0x2632('0x81')){if(_0x2632('0x23')!=typeof _0x5c9db3['parameters'][_0x2632('0x82')][_0x2632('0x91')]){var _0xe795fe=_0x5c9db3[_0x2632('0x7f')]['views']['admin'];if(!/^(f|ht)tps?:\/\//i[_0x2632('0x92')](_0xe795fe)){_0x58bae5=path[_0x2632('0x62')](_0x2632('0x93'),_0xdaff7e,_0x1ff83f[0x0],_0xe795fe);}else{_0x58bae5=_0xe795fe;}}else{logger[_0x2632('0x69')]('Warning:\x20admin\x20view\x20not\x20specified');}if(_0x2632('0x23')!=typeof _0x5c9db3[_0x2632('0x7f')][_0x2632('0x82')][_0x2632('0x84')]){var _0x43ea8d=_0x5c9db3[_0x2632('0x7f')][_0x2632('0x82')][_0x2632('0x84')];if(!/^(f|ht)tps?:\/\//i[_0x2632('0x92')](_0x43ea8d)){_0x1c0c6a=path[_0x2632('0x62')]('plugins',_0xdaff7e,_0x1ff83f[0x0],_0x43ea8d);}else{_0x1c0c6a=_0x43ea8d;}}else{logger[_0x2632('0x69')]('Warning:\x20agent\x20view\x20not\x20specified');}}else if(_0x5f3698===_0x2632('0x86')){_0x5e9c66=_0x5c9db3[_0x2632('0x7f')][_0x2632('0x87')];_0x11d179=_0x5c9db3[_0x2632('0x7f')][_0x2632('0x89')];if(_0x2632('0x23')!=typeof _0x5c9db3[_0x2632('0x7f')]['views']){if(_0x2632('0x23')!=typeof _0x5c9db3[_0x2632('0x7f')][_0x2632('0x82')][_0x2632('0x91')]){var _0xe795fe=_0x5c9db3[_0x2632('0x7f')][_0x2632('0x82')][_0x2632('0x91')];if(!/^(f|ht)tps?:\/\//i[_0x2632('0x92')](_0xe795fe)){_0x58bae5=path[_0x2632('0x62')](_0x2632('0x93'),_0xdaff7e,_0x1ff83f[0x0],_0xe795fe);}else{_0x58bae5=_0xe795fe;}}if(_0x2632('0x23')!=typeof _0x5c9db3[_0x2632('0x7f')]['views'][_0x2632('0x84')]){var _0x43ea8d=_0x5c9db3[_0x2632('0x7f')][_0x2632('0x82')][_0x2632('0x84')];if(!/^(f|ht)tps?:\/\//i[_0x2632('0x92')](_0x43ea8d)){_0x1c0c6a=path['join'](_0x2632('0x93'),_0xdaff7e,_0x1ff83f[0x0],_0x43ea8d);}else{_0x1c0c6a=_0x43ea8d;}}}}var _0x5e0e29={'name':_0xdaa68b,'description':_0x2230eb,'path':path[_0x2632('0x62')](_0xdaff7e,_0x1ff83f[0x0]),'type':_0x5f3698,'sidebar':_0x56409a,'icon':_0x5713ba,'adminUrl':_0x58bae5,'agentUrl':_0x1c0c6a,'scriptName':_0x5e9c66,'scriptPath':_0x11d179,'version':_0x1612ea};removeReferences(_0x3fabd7,null);return db['Plugin']['create'](_0x5e0e29)[_0x2632('0x2a')](function(_0x969ac1){var _0x5650f7={'role':_0x53e8a7[_0x2632('0x94')]['role'],'userProfileId':_0x53e8a7['body'][_0x2632('0x95')]};if(!_0x5650f7)throw new Error(_0x2632('0x96'));if(_0x5650f7[_0x2632('0x97')]===_0x2632('0x98')){var _0x3a9753=_0x969ac1[_0x2632('0x2c')]({'plain':!![]});return db[_0x2632('0x99')][_0x2632('0x50')]({'where':{'name':_0x2632('0x2d'),'userProfileId':_0x5650f7['userProfileId']},'raw':!![]})[_0x2632('0x2a')](function(_0xf5522a){if(_0xf5522a&&_0xf5522a[_0x2632('0x9a')]===0x0){return db[_0x2632('0x2e')][_0x2632('0x9b')]({'name':_0x3a9753[_0x2632('0x31')],'resourceId':_0x3a9753['id'],'type':_0xf5522a[_0x2632('0x31')],'sectionId':_0xf5522a['id']},{})[_0x2632('0x2a')](function(){return _0x969ac1;});}else{return _0x969ac1;}})['catch'](function(_0xfc0d16){logger[_0x2632('0x2f')](_0x2632('0x9c'),_0xfc0d16);throw _0xfc0d16;});}return _0x969ac1;})[_0x2632('0x2a')](respondWithResult(_0x1c6d66,null))['catch'](handleError(_0x1c6d66,null));}});}catch(_0x128df7){_0x1c6d66['status'](0x1f4)[_0x2632('0x32')](_0x128df7);}};function removeReferences(_0x301b1c,_0x45985e){try{if(_0x301b1c){fs['unlinkSync'](_0x301b1c);logger['info'](_0x2632('0x9d'));}if(_0x45985e){rimraf(_0x45985e,function(){});logger[_0x2632('0x69')]('Extracted\x20folder\x20removed');}}catch(_0x2ce3c0){logger['error'](_0x2ce3c0);}}exports['update']=function(_0x414d1d,_0x464687,_0x5b76af){return db['Plugin'][_0x2632('0x50')]({'where':{'id':_0x414d1d[_0x2632('0x4e')]['id']}})['then'](handleEntityNotFound(_0x464687,null))[_0x2632('0x2a')](saveUpdates(_0x414d1d[_0x2632('0x94')],null))['then'](respondWithResult(_0x464687,null))[_0x2632('0x4c')](handleError(_0x464687,null));};exports['delete']=function(_0xc4bb65,_0x4b08cd,_0x249e25){return db[_0x2632('0x35')][_0x2632('0x50')]({'where':{'id':_0xc4bb65['params']['id']}})['then'](function(_0x46795e){if(_0x46795e){return _0x46795e[_0x2632('0x2b')]();}})[_0x2632('0x2a')](function(_0x44c67c){rimraf(path[_0x2632('0x62')](config[_0x2632('0x52')],'server/files/plugins',path[_0x2632('0x61')](_0x44c67c[_0x2632('0x56')])),function(){});return _0x44c67c;})[_0x2632('0x2a')](handleEntityNotFound(_0x4b08cd,null))[_0x2632('0x2a')](respondWithStatusCode(_0x4b08cd,null))[_0x2632('0x4c')](handleError(_0x4b08cd,null));};exports[_0x2632('0x9e')]=function(_0x2dea29,_0xf1fdbe,_0xa59398){return BPromise['resolve']()[_0x2632('0x2a')](function(){if(!_0x2dea29['query'][_0x2632('0x56')]){throw new Error('\x27PATH\x27\x20parameter\x20not\x20specified');}if(!_0x2dea29[_0x2632('0x39')][_0x2632('0x9f')]){throw new Error('\x27PORT\x27\x20parameter\x20not\x20specified');}var _0x1a19ad=_0x2dea29[_0x2632('0x39')]['hostname']?_0x2dea29[_0x2632('0x39')][_0x2632('0xa0')]+':'+_0x2dea29[_0x2632('0x39')]['port']:'http://localhost:'+_0x2dea29['query'][_0x2632('0x9f')];var _0x52d979=_0x2dea29[_0x2632('0x39')][_0x2632('0x27')]?_0x2dea29[_0x2632('0x39')][_0x2632('0x27')]:!![];var _0x105927=_0x2dea29[_0x2632('0x39')][_0x2632('0xa1')]?_0x2dea29[_0x2632('0x39')]['encoding']:null;var _0x184ee0={'method':_0x2dea29[_0x2632('0xa2')],'uri':util[_0x2632('0x54')]('%s%s',_0x1a19ad,_0x2dea29[_0x2632('0x39')]['path']),'json':_0x52d979,'resolveWithFullResponse':!![],'encoding':_0x105927,'qs':_0x2dea29['query']};if(_0x2dea29[_0x2632('0xa3')]){_0x184ee0[_0x2632('0xa3')]=_0x2dea29[_0x2632('0xa3')];if(_0x184ee0[_0x2632('0xa3')][_0x2632('0xa4')]){delete _0x184ee0[_0x2632('0xa3')][_0x2632('0xa4')];}}if(_0x184ee0[_0x2632('0xa3')][_0x2632('0xa5')]){delete _0x184ee0[_0x2632('0xa3')][_0x2632('0xa5')];}return rp(_0x184ee0);})['then'](function(_0x1a74c0){if(_0x1a74c0){_0xf1fdbe[_0x2632('0x25')](_0x1a74c0[_0x2632('0xa3')]);logger[_0x2632('0x69')](_0x1a74c0[_0x2632('0x94')]);if(_[_0x2632('0xa6')](_0x2dea29[_0x2632('0x39')][_0x2632('0x56')],_0x2632('0x51'))&&_0x1a74c0[_0x2632('0xa7')]==0x1f4){return _0xf1fdbe[_0x2632('0x1f')](_0x1a74c0[_0x2632('0xa7')]);}else{return _0xf1fdbe['status'](_0x1a74c0['statusCode'])['send'](_0x1a74c0[_0x2632('0x94')]);}}else{return _0xf1fdbe[_0x2632('0x1f')](0xc8);}})['catch'](handleError(_0xf1fdbe,null));};exports[_0x2632('0xa8')]=function(_0x241901,_0x347b03,_0x3da9d0){return BPromise[_0x2632('0xa9')]()[_0x2632('0x2a')](function(){if(!_0x241901[_0x2632('0x39')]['path']){throw new Error(_0x2632('0xaa'));}if(!_0x241901[_0x2632('0x39')][_0x2632('0x9f')]){throw new Error(_0x2632('0xab'));}var _0x3155a1=_0x241901[_0x2632('0x39')]['hostname']?_0x241901[_0x2632('0x39')][_0x2632('0xa0')]+':'+_0x241901[_0x2632('0x39')][_0x2632('0x9f')]:_0x2632('0xac')+_0x241901['query'][_0x2632('0x9f')];var _0x24a530=_0x241901[_0x2632('0x39')][_0x2632('0x27')]?_0x241901[_0x2632('0x39')][_0x2632('0x27')]:!![];var _0x4cfabf=_0x241901[_0x2632('0x39')]['encoding']?_0x241901[_0x2632('0x39')][_0x2632('0xa1')]:null;var _0x21c7f7={'method':_0x241901[_0x2632('0xa2')],'uri':util['format'](_0x2632('0xad'),_0x3155a1,_0x241901[_0x2632('0x39')][_0x2632('0x56')]),'json':_0x24a530,'resolveWithFullResponse':!![],'encoding':_0x4cfabf,'body':_0x241901[_0x2632('0x94')]};if(_0x241901[_0x2632('0xa3')]){_0x21c7f7[_0x2632('0xa3')]=_0x241901[_0x2632('0xa3')];if(_0x21c7f7['headers']['content-length']){delete _0x21c7f7[_0x2632('0xa3')]['content-length'];}}if(_0x21c7f7[_0x2632('0xa3')][_0x2632('0xa5')]){delete _0x21c7f7['headers'][_0x2632('0xa5')];}return rp(_0x21c7f7);})[_0x2632('0x2a')](function(_0x3d67e6){if(_0x3d67e6){_0x347b03['set'](_0x3d67e6['headers']);logger['info'](_0x3d67e6[_0x2632('0x94')]);return _0x347b03['status'](_0x3d67e6[_0x2632('0xa7')])['send'](_0x3d67e6[_0x2632('0x94')]);}else{return _0x347b03[_0x2632('0x1f')](0xc8);}})[_0x2632('0x4c')](handleError(_0x347b03,null));};
\ No newline at end of file
+var _0xaf19=['where','filter','merge','VIRTUAL','options','Plugin','includeAll','include','catch','params','find','join','root','format','%s.zip','basename','createWriteStream','warning','code','ENOENT','Sequelize','Error','Error\x20while\x20generating\x20the\x20zip\x20archive','pipe','glob','**/*','server/files/plugins','dirname','attachments/**/*','finalize','close','existsSync','Plugin\x20not\x20found','unlinkSync','info','Download\x20completed','Temporary\x20file\x20removed','file','filename','extname','Plugin\x20upload\x20filepath:\x20%s','Plugin\x20upload\x20destination:\x20%s','chmodSync','0777','readdirSync','length','Invalid\x20plugin\x20structure','isFile','isDirectory','some','manifest.json','parse','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','Invalid\x20manifest:\x20no\x20view\x20specified','script','scriptName','Invalid\x20manifest:\x20script\x20name\x20missing','scriptPath','Invalid\x20manifest:\x20invalid\x20type','description','sidebar','always','icon','icon-apps','plugins','test','agent','create','body','role','get','UserProfileSection','Plugins','userProfileId','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','send','Extracted\x20folder\x20removed','delete','webhookGet','resolve','\x27PATH\x27\x20parameter\x20not\x20specified','port','\x27PORT\x27\x20parameter\x20not\x20specified','hostname','encoding','method','%s%s','headers','content-length','content-type','set','endsWith','download','statusCode','webhookPost','http://localhost:','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','jsforce','desk.js','querystring','papaparse','extract-zip','rimraf','archiver','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','socket.io-emitter','register','sendStatus','end','status','offset','undefined','count','limit','Content-Range','json','apply','reject','save','update','then','destroy','UserProfileResource','error','stack','name','index','map','rawAttributes','fieldName','type','key','query','keys','filters','intersection','model','attributes','fields','nolimit','order','sort'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0xaf19,0x69));var _0x9af1=function(_0x12d5e9,_0x3ddda9){_0x12d5e9=_0x12d5e9-0x0;var _0x52e96b=_0xaf19[_0x12d5e9];return _0x52e96b;};'use strict';var emlformat=require(_0x9af1('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x9af1('0x1'));var jsonpatch=require(_0x9af1('0x2'));var rp=require(_0x9af1('0x3'));var moment=require(_0x9af1('0x4'));var BPromise=require(_0x9af1('0x5'));var Mustache=require('mustache');var util=require(_0x9af1('0x6'));var path=require(_0x9af1('0x7'));var sox=require(_0x9af1('0x8'));var csv=require(_0x9af1('0x9'));var ejs=require(_0x9af1('0xa'));var fs=require('fs');var fs_extra=require(_0x9af1('0xb'));var _=require(_0x9af1('0xc'));var squel=require(_0x9af1('0xd'));var crypto=require('crypto');var jsforce=require(_0x9af1('0xe'));var deskjs=require(_0x9af1('0xf'));var toCsv=require(_0x9af1('0x9'));var querystring=require(_0x9af1('0x10'));var Papa=require(_0x9af1('0x11'));var extract=require(_0x9af1('0x12'));var rimraf=require(_0x9af1('0x13'));var archiver=require(_0x9af1('0x14'));var Redis=require('ioredis');var authService=require(_0x9af1('0x15'));var qs=require(_0x9af1('0x16'));var as=require(_0x9af1('0x17'));var hardwareService=require(_0x9af1('0x18'));var logger=require(_0x9af1('0x19'))('api');var utils=require(_0x9af1('0x1a'));var config=require(_0x9af1('0x1b'));var licenseUtil=require(_0x9af1('0x1c'));var db=require(_0x9af1('0x1d'))['db'];config[_0x9af1('0x1e')]=_[_0x9af1('0x1f')](config[_0x9af1('0x1e')],{'host':'localhost','port':0x18eb});var socket=require(_0x9af1('0x20'))(new Redis(config['redis']));require('./plugin.socket')[_0x9af1('0x21')](socket);function respondWithStatusCode(_0x5e80c8,_0x5acf48){_0x5acf48=_0x5acf48||0xcc;return function(_0x46e18b){if(_0x46e18b){return _0x5e80c8[_0x9af1('0x22')](_0x5acf48);}return _0x5e80c8['status'](_0x5acf48)[_0x9af1('0x23')]();};}function respondWithResult(_0x3d3a1c,_0x1bf951){_0x1bf951=_0x1bf951||0xc8;return function(_0x12113a){if(_0x12113a){return _0x3d3a1c[_0x9af1('0x24')](_0x1bf951)['json'](_0x12113a);}};}function respondWithFilteredResult(_0x1cfa53,_0x3dd600){return function(_0xca79c8){if(_0xca79c8){var _0x579455=typeof _0x3dd600[_0x9af1('0x25')]==='undefined'&&typeof _0x3dd600['limit']===_0x9af1('0x26');var _0x3947f3=_0xca79c8[_0x9af1('0x27')];var _0x35bbdb=_0x579455?0x0:_0x3dd600['offset'];var _0x3f67e9=_0x579455?_0xca79c8[_0x9af1('0x27')]:_0x3dd600[_0x9af1('0x25')]+_0x3dd600[_0x9af1('0x28')];var _0x113199;if(_0x3f67e9>=_0x3947f3){_0x3f67e9=_0x3947f3;_0x113199=0xc8;}else{_0x113199=0xce;}_0x1cfa53['status'](_0x113199);return _0x1cfa53['set'](_0x9af1('0x29'),_0x35bbdb+'-'+_0x3f67e9+'/'+_0x3947f3)[_0x9af1('0x2a')](_0xca79c8);}return null;};}function patchUpdates(_0x3d996f){return function(_0x22ff71){try{jsonpatch[_0x9af1('0x2b')](_0x22ff71,_0x3d996f,!![]);}catch(_0x2aec51){return BPromise[_0x9af1('0x2c')](_0x2aec51);}return _0x22ff71[_0x9af1('0x2d')]();};}function saveUpdates(_0x279241,_0x173bcb){return function(_0x4f6ded){if(_0x4f6ded){return _0x4f6ded[_0x9af1('0x2e')](_0x279241)[_0x9af1('0x2f')](function(_0x37b29c){return _0x37b29c;});}return null;};}function removeEntity(_0x340d0e,_0x4b1272){return function(_0x343f32){if(_0x343f32){return _0x343f32[_0x9af1('0x30')]()['then'](function(){var _0x44b12f=_0x343f32['get']({'plain':!![]});var _0x2cdfd0='Plugins';return db[_0x9af1('0x31')][_0x9af1('0x30')]({'where':{'type':_0x2cdfd0,'resourceId':_0x44b12f['id']}})[_0x9af1('0x2f')](function(){return _0x343f32;});})['then'](function(){_0x340d0e[_0x9af1('0x24')](0xcc)[_0x9af1('0x23')]();});}};}function handleEntityNotFound(_0x597c33,_0x4c8092){return function(_0x518699){if(!_0x518699){_0x597c33[_0x9af1('0x22')](0x194);}return _0x518699;};}function handleError(_0x46051e,_0x16a1b1){_0x16a1b1=_0x16a1b1||0x1f4;return function(_0x36da03){logger[_0x9af1('0x32')](_0x36da03[_0x9af1('0x33')]);if(_0x36da03[_0x9af1('0x34')]){delete _0x36da03['name'];}_0x46051e[_0x9af1('0x24')](_0x16a1b1)['send'](_0x36da03);};}exports[_0x9af1('0x35')]=function(_0xb9ab55,_0x5c339c){var _0x1a5032={},_0x278d9e={},_0x5acbb6={'count':0x0,'rows':[]};var _0x224b37=_[_0x9af1('0x36')](db['Plugin'][_0x9af1('0x37')],function(_0x1a691c){return{'name':_0x1a691c[_0x9af1('0x38')],'type':_0x1a691c[_0x9af1('0x39')][_0x9af1('0x3a')]};});_0x278d9e['model']=_['map'](_0x224b37,_0x9af1('0x34'));_0x278d9e[_0x9af1('0x3b')]=_[_0x9af1('0x3c')](_0xb9ab55[_0x9af1('0x3b')]);_0x278d9e[_0x9af1('0x3d')]=_[_0x9af1('0x3e')](_0x278d9e[_0x9af1('0x3f')],_0x278d9e[_0x9af1('0x3b')]);_0x1a5032[_0x9af1('0x40')]=_['intersection'](_0x278d9e[_0x9af1('0x3f')],qs[_0x9af1('0x41')](_0xb9ab55[_0x9af1('0x3b')][_0x9af1('0x41')]));_0x1a5032[_0x9af1('0x40')]=_0x1a5032[_0x9af1('0x40')]['length']?_0x1a5032[_0x9af1('0x40')]:_0x278d9e[_0x9af1('0x3f')];if(!_0xb9ab55['query']['hasOwnProperty'](_0x9af1('0x42'))){_0x1a5032[_0x9af1('0x28')]=qs[_0x9af1('0x28')](_0xb9ab55[_0x9af1('0x3b')][_0x9af1('0x28')]);_0x1a5032[_0x9af1('0x25')]=qs[_0x9af1('0x25')](_0xb9ab55[_0x9af1('0x3b')][_0x9af1('0x25')]);}_0x1a5032[_0x9af1('0x43')]=qs[_0x9af1('0x44')](_0xb9ab55[_0x9af1('0x3b')][_0x9af1('0x44')]);_0x1a5032[_0x9af1('0x45')]=qs['filters'](_['pick'](_0xb9ab55[_0x9af1('0x3b')],_0x278d9e[_0x9af1('0x3d')]),_0x224b37);if(_0xb9ab55[_0x9af1('0x3b')][_0x9af1('0x46')]){_0x1a5032[_0x9af1('0x45')]=_[_0x9af1('0x47')](_0x1a5032[_0x9af1('0x45')],{'$or':_[_0x9af1('0x36')](_0x224b37,function(_0x1d9281){if(_0x1d9281['type']!==_0x9af1('0x48')){var _0xc7d29c={};_0xc7d29c[_0x1d9281[_0x9af1('0x34')]]={'$like':'%'+_0xb9ab55['query'][_0x9af1('0x46')]+'%'};return _0xc7d29c;}})});}_0x1a5032=_['merge']({},_0x1a5032,_0xb9ab55[_0x9af1('0x49')]);var _0x1f8704={'where':_0x1a5032[_0x9af1('0x45')]};return db[_0x9af1('0x4a')]['count'](_0x1f8704)[_0x9af1('0x2f')](function(_0x29b629){_0x5acbb6[_0x9af1('0x27')]=_0x29b629;if(_0xb9ab55['query'][_0x9af1('0x4b')]){_0x1a5032[_0x9af1('0x4c')]=[{'all':!![]}];}return db[_0x9af1('0x4a')]['findAll'](_0x1a5032);})[_0x9af1('0x2f')](function(_0x1e4d4d){_0x5acbb6['rows']=_0x1e4d4d;return _0x5acbb6;})[_0x9af1('0x2f')](respondWithFilteredResult(_0x5c339c,_0x1a5032))[_0x9af1('0x4d')](handleError(_0x5c339c,null));};exports['show']=function(_0x3334f2,_0x5e152d){var _0x4b63ec={'raw':!![],'where':{'id':_0x3334f2[_0x9af1('0x4e')]['id']}},_0x38aa75={};_0x38aa75[_0x9af1('0x3f')]=_[_0x9af1('0x3c')](db[_0x9af1('0x4a')][_0x9af1('0x37')]);_0x38aa75[_0x9af1('0x3b')]=_['keys'](_0x3334f2['query']);_0x38aa75[_0x9af1('0x3d')]=_['intersection'](_0x38aa75[_0x9af1('0x3f')],_0x38aa75[_0x9af1('0x3b')]);_0x4b63ec['attributes']=_[_0x9af1('0x3e')](_0x38aa75[_0x9af1('0x3f')],qs[_0x9af1('0x41')](_0x3334f2[_0x9af1('0x3b')][_0x9af1('0x41')]));_0x4b63ec[_0x9af1('0x40')]=_0x4b63ec[_0x9af1('0x40')]['length']?_0x4b63ec[_0x9af1('0x40')]:_0x38aa75[_0x9af1('0x3f')];if(_0x3334f2[_0x9af1('0x3b')]['includeAll']){_0x4b63ec[_0x9af1('0x4c')]=[{'all':!![]}];}_0x4b63ec=_[_0x9af1('0x47')]({},_0x4b63ec,_0x3334f2[_0x9af1('0x49')]);return db['Plugin']['find'](_0x4b63ec)[_0x9af1('0x2f')](handleEntityNotFound(_0x5e152d,null))[_0x9af1('0x2f')](respondWithResult(_0x5e152d,null))[_0x9af1('0x4d')](handleError(_0x5e152d,null));};exports['download']=function(_0x4e56a8,_0x338d4a,_0x2e87f1){return db[_0x9af1('0x4a')][_0x9af1('0x4f')]({'where':{'id':_0x4e56a8['params']['id']},'attributes':['name','path'],'raw':!![]})[_0x9af1('0x2f')](handleEntityNotFound(_0x338d4a,null))[_0x9af1('0x2f')](function(_0x50a9d0){if(_0x50a9d0){var _0x3d8322=path[_0x9af1('0x50')](config[_0x9af1('0x51')],'server/files/plugins',util[_0x9af1('0x52')](_0x9af1('0x53'),path[_0x9af1('0x54')](_0x50a9d0['path'])));var _0x68eaf6=fs[_0x9af1('0x55')](_0x3d8322);var _0x41564c=archiver('zip',{'zlib':{'level':0x9}});_0x41564c['on'](_0x9af1('0x56'),function(_0x18b434){if(_0x18b434[_0x9af1('0x57')]===_0x9af1('0x58')){logger[_0x9af1('0x32')](_0x18b434);}else{throw new db[(_0x9af1('0x59'))][(_0x9af1('0x5a'))](_0x9af1('0x5b'));}});_0x41564c['on']('error',function(_0x2c2468){throw new db[(_0x9af1('0x59'))]['Error'](_0x9af1('0x5b'));});_0x41564c[_0x9af1('0x5c')](_0x68eaf6);_0x41564c[_0x9af1('0x5d')](_0x9af1('0x5e'),{'cwd':path[_0x9af1('0x50')](config['root'],_0x9af1('0x5f'),path[_0x9af1('0x60')](_0x50a9d0[_0x9af1('0x7')])),'ignore':[path[_0x9af1('0x50')](path['basename'](_0x50a9d0[_0x9af1('0x7')]),'node_modules/**/*'),path[_0x9af1('0x50')](path[_0x9af1('0x54')](_0x50a9d0[_0x9af1('0x7')]),_0x9af1('0x61'))],'nodir':!![]})[_0x9af1('0x62')]();_0x68eaf6['on'](_0x9af1('0x63'),function(){if(!fs[_0x9af1('0x64')](_0x3d8322)){throw new db[(_0x9af1('0x59'))][(_0x9af1('0x5a'))](_0x9af1('0x65'));}return _0x338d4a['download'](_0x3d8322,util['format'](_0x9af1('0x53'),path[_0x9af1('0x54')](_0x50a9d0[_0x9af1('0x7')])),function(_0xc3b92d){if(_0xc3b92d){throw new db['Sequelize'][(_0x9af1('0x5a'))]('Error\x20while\x20downloading\x20the\x20plugin');}fs[_0x9af1('0x66')](_0x3d8322);logger[_0x9af1('0x67')](_0x9af1('0x68'));logger[_0x9af1('0x67')](_0x9af1('0x69'));});});}return null;})[_0x9af1('0x4d')](handleError(_0x338d4a,null));};exports['upload']=function(_0x2a02cc,_0x2da636,_0x16ae2c){var _0x2c18eb=path[_0x9af1('0x54')](_0x2a02cc[_0x9af1('0x6a')][_0x9af1('0x6b')],path[_0x9af1('0x6c')](_0x2a02cc[_0x9af1('0x6a')][_0x9af1('0x6b')]));var _0x5785c5=path[_0x9af1('0x50')](config['root'],_0x9af1('0x5f'),_0x2a02cc[_0x9af1('0x6a')][_0x9af1('0x6b')]);var _0x197b73=path[_0x9af1('0x50')](config[_0x9af1('0x51')],_0x9af1('0x5f'),_0x2c18eb);logger['info'](_0x9af1('0x6d'),_0x5785c5);logger[_0x9af1('0x67')](_0x9af1('0x6e'),_0x197b73);try{fs[_0x9af1('0x6f')](_0x5785c5,parseInt(_0x9af1('0x70'),0x8));extract(_0x5785c5,{'dir':_0x197b73},function(_0x41aa0c){if(_0x41aa0c){logger['error'](_0x41aa0c);handleError(_0x41aa0c,!![]);};var _0x53d3ee=fs[_0x9af1('0x71')](_0x197b73);if(_0x53d3ee[_0x9af1('0x72')]>0x1){removeReferences(_0x5785c5,_0x197b73);logger[_0x9af1('0x32')](_0x9af1('0x73'));return _0x16ae2c(new Error(_0x9af1('0x73')));}var _0x227980=fs['lstatSync'](path['join'](_0x197b73,_0x53d3ee[0x0]));if(_0x227980[_0x9af1('0x74')]()){removeReferences(_0x5785c5,_0x197b73);logger[_0x9af1('0x32')](_0x9af1('0x73'));return _0x16ae2c(new Error(_0x9af1('0x73')));}if(_0x227980[_0x9af1('0x75')]()){var _0x24a5fd=fs['readdirSync'](path[_0x9af1('0x50')](_0x197b73,_0x53d3ee[0x0]));if(_0x24a5fd[_0x9af1('0x72')]===0x0){removeReferences(_0x5785c5,_0x197b73);logger[_0x9af1('0x32')](_0x9af1('0x73'));return _0x16ae2c(new Error(_0x9af1('0x73')));}var _0x580780=_0x24a5fd[_0x9af1('0x76')](function(_0x2a236a){return _0x2a236a===_0x9af1('0x77');});if(!_0x580780){return _0x16ae2c(new Error('Plugin\x20manifest\x20missing'));}var _0x531acd=fs['readFileSync'](path['join'](_0x197b73,_0x53d3ee[0x0],_0x9af1('0x77')));var _0x17d872=JSON[_0x9af1('0x78')](_0x531acd);if(_0x9af1('0x26')==typeof _0x17d872[_0x9af1('0x34')]){return _0x16ae2c(new Error(_0x9af1('0x79')));}if(_0x9af1('0x26')==typeof _0x17d872[_0x9af1('0x39')]){return _0x16ae2c(new Error(_0x9af1('0x7a')));}if(_0x9af1('0x26')==typeof _0x17d872[_0x9af1('0x7b')]){return _0x16ae2c(new Error(_0x9af1('0x7c')));}if('undefined'==typeof _0x17d872[_0x9af1('0x7d')]){return _0x16ae2c(new Error(_0x9af1('0x7e')));}if(_0x17d872['type']===_0x9af1('0x7f')){if(_0x9af1('0x26')==typeof _0x17d872['parameters'][_0x9af1('0x80')]){return _0x16ae2c(new Error(_0x9af1('0x81')));}if(_0x9af1('0x26')==typeof _0x17d872[_0x9af1('0x7d')]['views'][_0x9af1('0x82')]&&_0x9af1('0x26')==typeof _0x17d872[_0x9af1('0x7d')][_0x9af1('0x80')]['agent']){return _0x16ae2c(new Error(_0x9af1('0x83')));}}else if(_0x17d872['type']===_0x9af1('0x84')){if(_0x9af1('0x26')==typeof _0x17d872[_0x9af1('0x7d')][_0x9af1('0x85')]){return _0x16ae2c(new Error(_0x9af1('0x86')));}if(_0x9af1('0x26')==typeof _0x17d872[_0x9af1('0x7d')][_0x9af1('0x87')]){return _0x16ae2c(new Error('Invalid\x20manifest:\x20script\x20path\x20missing'));}}else{return _0x16ae2c(new Error(_0x9af1('0x88')));}var _0x471606=_0x17d872[_0x9af1('0x34')];var _0x40bfe6=_0x17d872[_0x9af1('0x89')];var _0x13230c=_0x17d872[_0x9af1('0x39')];var _0x2759a6=_0x17d872[_0x9af1('0x8a')]?_0x17d872[_0x9af1('0x8a')]:_0x9af1('0x8b');var _0xd4a482=_0x17d872['icon']?_0x17d872[_0x9af1('0x8c')]:_0x9af1('0x8d');var _0xfb4f20='';var _0x49556e='';var _0x448a55='';var _0x465540='';var _0x415755=_0x17d872[_0x9af1('0x7b')];if(_0x13230c===_0x9af1('0x7f')){if(_0x9af1('0x26')!=typeof _0x17d872[_0x9af1('0x7d')]['views'][_0x9af1('0x82')]){var _0x1837b8=_0x17d872[_0x9af1('0x7d')][_0x9af1('0x80')][_0x9af1('0x82')];if(!/^(f|ht)tps?:\/\//i['test'](_0x1837b8)){_0xfb4f20=path[_0x9af1('0x50')](_0x9af1('0x8e'),_0x2c18eb,_0x53d3ee[0x0],_0x1837b8);}else{_0xfb4f20=_0x1837b8;}}else{logger[_0x9af1('0x67')]('Warning:\x20admin\x20view\x20not\x20specified');}if(_0x9af1('0x26')!=typeof _0x17d872[_0x9af1('0x7d')]['views']['agent']){var _0x509a31=_0x17d872[_0x9af1('0x7d')][_0x9af1('0x80')]['agent'];if(!/^(f|ht)tps?:\/\//i[_0x9af1('0x8f')](_0x509a31)){_0x49556e=path[_0x9af1('0x50')](_0x9af1('0x8e'),_0x2c18eb,_0x53d3ee[0x0],_0x509a31);}else{_0x49556e=_0x509a31;}}else{logger[_0x9af1('0x67')]('Warning:\x20agent\x20view\x20not\x20specified');}}else if(_0x13230c==='script'){_0x448a55=_0x17d872['parameters'][_0x9af1('0x85')];_0x465540=_0x17d872[_0x9af1('0x7d')][_0x9af1('0x87')];if('undefined'!=typeof _0x17d872[_0x9af1('0x7d')][_0x9af1('0x80')]){if(_0x9af1('0x26')!=typeof _0x17d872[_0x9af1('0x7d')]['views'][_0x9af1('0x82')]){var _0x1837b8=_0x17d872[_0x9af1('0x7d')]['views']['admin'];if(!/^(f|ht)tps?:\/\//i[_0x9af1('0x8f')](_0x1837b8)){_0xfb4f20=path[_0x9af1('0x50')](_0x9af1('0x8e'),_0x2c18eb,_0x53d3ee[0x0],_0x1837b8);}else{_0xfb4f20=_0x1837b8;}}if(_0x9af1('0x26')!=typeof _0x17d872[_0x9af1('0x7d')]['views']['agent']){var _0x509a31=_0x17d872[_0x9af1('0x7d')][_0x9af1('0x80')][_0x9af1('0x90')];if(!/^(f|ht)tps?:\/\//i['test'](_0x509a31)){_0x49556e=path[_0x9af1('0x50')](_0x9af1('0x8e'),_0x2c18eb,_0x53d3ee[0x0],_0x509a31);}else{_0x49556e=_0x509a31;}}}}var _0x385ca6={'name':_0x471606,'description':_0x40bfe6,'path':path['join'](_0x2c18eb,_0x53d3ee[0x0]),'type':_0x13230c,'sidebar':_0x2759a6,'icon':_0xd4a482,'adminUrl':_0xfb4f20,'agentUrl':_0x49556e,'scriptName':_0x448a55,'scriptPath':_0x465540,'version':_0x415755};removeReferences(_0x5785c5,null);return db['Plugin'][_0x9af1('0x91')](_0x385ca6)['then'](function(_0x219dba){var _0x198df5={'role':_0x2a02cc[_0x9af1('0x92')][_0x9af1('0x93')],'userProfileId':_0x2a02cc[_0x9af1('0x92')]['userProfileId']};if(!_0x198df5)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x198df5[_0x9af1('0x93')]==='user'){var _0x13b938=_0x219dba[_0x9af1('0x94')]({'plain':!![]});return db[_0x9af1('0x95')][_0x9af1('0x4f')]({'where':{'name':_0x9af1('0x96'),'userProfileId':_0x198df5[_0x9af1('0x97')]},'raw':!![]})[_0x9af1('0x2f')](function(_0x3cf0b3){if(_0x3cf0b3&&_0x3cf0b3['autoAssociation']===0x0){return db['UserProfileResource'][_0x9af1('0x91')]({'name':_0x13b938[_0x9af1('0x34')],'resourceId':_0x13b938['id'],'type':_0x3cf0b3[_0x9af1('0x34')],'sectionId':_0x3cf0b3['id']},{})[_0x9af1('0x2f')](function(){return _0x219dba;});}else{return _0x219dba;}})[_0x9af1('0x4d')](function(_0x415a8c){logger[_0x9af1('0x32')](_0x9af1('0x98'),_0x415a8c);throw _0x415a8c;});}return _0x219dba;})['then'](respondWithResult(_0x2da636,null))[_0x9af1('0x4d')](handleError(_0x2da636,null));}});}catch(_0x2c5a54){_0x2da636[_0x9af1('0x24')](0x1f4)[_0x9af1('0x99')](_0x2c5a54);}};function removeReferences(_0x1d3d57,_0x41e992){try{if(_0x1d3d57){fs[_0x9af1('0x66')](_0x1d3d57);logger[_0x9af1('0x67')]('Zip\x20archive\x20removed');}if(_0x41e992){rimraf(_0x41e992,function(){});logger[_0x9af1('0x67')](_0x9af1('0x9a'));}}catch(_0x2c9318){logger['error'](_0x2c9318);}}exports['update']=function(_0x52c448,_0x1f5c8a,_0x1ea917){return db['Plugin'][_0x9af1('0x4f')]({'where':{'id':_0x52c448['params']['id']}})[_0x9af1('0x2f')](handleEntityNotFound(_0x1f5c8a,null))[_0x9af1('0x2f')](saveUpdates(_0x52c448[_0x9af1('0x92')],null))['then'](respondWithResult(_0x1f5c8a,null))[_0x9af1('0x4d')](handleError(_0x1f5c8a,null));};exports[_0x9af1('0x9b')]=function(_0x41cdf1,_0x4d7cc5,_0x47219c){return db[_0x9af1('0x4a')][_0x9af1('0x4f')]({'where':{'id':_0x41cdf1[_0x9af1('0x4e')]['id']}})[_0x9af1('0x2f')](function(_0x128658){if(_0x128658){return _0x128658[_0x9af1('0x30')]();}})[_0x9af1('0x2f')](function(_0x3a8c32){rimraf(path[_0x9af1('0x50')](config[_0x9af1('0x51')],_0x9af1('0x5f'),path[_0x9af1('0x60')](_0x3a8c32[_0x9af1('0x7')])),function(){});return _0x3a8c32;})[_0x9af1('0x2f')](handleEntityNotFound(_0x4d7cc5,null))['then'](respondWithStatusCode(_0x4d7cc5,null))[_0x9af1('0x4d')](handleError(_0x4d7cc5,null));};exports[_0x9af1('0x9c')]=function(_0xa2335b,_0x4bc320,_0x58eb1e){return BPromise[_0x9af1('0x9d')]()[_0x9af1('0x2f')](function(){if(!_0xa2335b[_0x9af1('0x3b')][_0x9af1('0x7')]){throw new Error(_0x9af1('0x9e'));}if(!_0xa2335b[_0x9af1('0x3b')][_0x9af1('0x9f')]){throw new Error(_0x9af1('0xa0'));}var _0x55b1d8=_0xa2335b[_0x9af1('0x3b')][_0x9af1('0xa1')]?_0xa2335b[_0x9af1('0x3b')]['hostname']+':'+_0xa2335b[_0x9af1('0x3b')][_0x9af1('0x9f')]:'http://localhost:'+_0xa2335b['query'][_0x9af1('0x9f')];var _0x5edc28=_0xa2335b[_0x9af1('0x3b')][_0x9af1('0x2a')]?_0xa2335b[_0x9af1('0x3b')][_0x9af1('0x2a')]:!![];var _0x37402a=_0xa2335b[_0x9af1('0x3b')]['encoding']?_0xa2335b['query'][_0x9af1('0xa2')]:null;var _0x200a6d={'method':_0xa2335b[_0x9af1('0xa3')],'uri':util[_0x9af1('0x52')](_0x9af1('0xa4'),_0x55b1d8,_0xa2335b['query'][_0x9af1('0x7')]),'json':_0x5edc28,'resolveWithFullResponse':!![],'encoding':_0x37402a,'qs':_0xa2335b['query']};if(_0xa2335b[_0x9af1('0xa5')]){_0x200a6d['headers']=_0xa2335b['headers'];if(_0x200a6d[_0x9af1('0xa5')][_0x9af1('0xa6')]){delete _0x200a6d[_0x9af1('0xa5')][_0x9af1('0xa6')];}}if(_0x200a6d['headers'][_0x9af1('0xa7')]){delete _0x200a6d[_0x9af1('0xa5')][_0x9af1('0xa7')];}return rp(_0x200a6d);})['then'](function(_0x4dcac7){if(_0x4dcac7){_0x4bc320[_0x9af1('0xa8')](_0x4dcac7[_0x9af1('0xa5')]);logger[_0x9af1('0x67')](_0x4dcac7[_0x9af1('0x92')]);if(_[_0x9af1('0xa9')](_0xa2335b[_0x9af1('0x3b')][_0x9af1('0x7')],_0x9af1('0xaa'))&&_0x4dcac7[_0x9af1('0xab')]==0x1f4){return _0x4bc320['sendStatus'](_0x4dcac7[_0x9af1('0xab')]);}else{return _0x4bc320['status'](_0x4dcac7['statusCode'])[_0x9af1('0x99')](_0x4dcac7[_0x9af1('0x92')]);}}else{return _0x4bc320[_0x9af1('0x22')](0xc8);}})[_0x9af1('0x4d')](handleError(_0x4bc320,null));};exports[_0x9af1('0xac')]=function(_0x9622d9,_0x28954d,_0xe79e41){return BPromise['resolve']()['then'](function(){if(!_0x9622d9['query']['path']){throw new Error('\x27PATH\x27\x20parameter\x20not\x20specified');}if(!_0x9622d9['query'][_0x9af1('0x9f')]){throw new Error('\x27PORT\x27\x20parameter\x20not\x20specified');}var _0x959166=_0x9622d9[_0x9af1('0x3b')][_0x9af1('0xa1')]?_0x9622d9[_0x9af1('0x3b')][_0x9af1('0xa1')]+':'+_0x9622d9[_0x9af1('0x3b')]['port']:_0x9af1('0xad')+_0x9622d9[_0x9af1('0x3b')]['port'];var _0x9e460a=_0x9622d9[_0x9af1('0x3b')][_0x9af1('0x2a')]?_0x9622d9[_0x9af1('0x3b')][_0x9af1('0x2a')]:!![];var _0x2f331a=_0x9622d9[_0x9af1('0x3b')][_0x9af1('0xa2')]?_0x9622d9[_0x9af1('0x3b')][_0x9af1('0xa2')]:null;var _0x846092={'method':_0x9622d9['method'],'uri':util['format']('%s%s',_0x959166,_0x9622d9[_0x9af1('0x3b')][_0x9af1('0x7')]),'json':_0x9e460a,'resolveWithFullResponse':!![],'encoding':_0x2f331a,'body':_0x9622d9['body']};if(_0x9622d9['headers']){_0x846092[_0x9af1('0xa5')]=_0x9622d9[_0x9af1('0xa5')];if(_0x846092[_0x9af1('0xa5')][_0x9af1('0xa6')]){delete _0x846092[_0x9af1('0xa5')][_0x9af1('0xa6')];}}if(_0x846092[_0x9af1('0xa5')][_0x9af1('0xa7')]){delete _0x846092[_0x9af1('0xa5')]['content-type'];}return rp(_0x846092);})[_0x9af1('0x2f')](function(_0x3e0cf0){if(_0x3e0cf0){_0x28954d['set'](_0x3e0cf0[_0x9af1('0xa5')]);logger[_0x9af1('0x67')](_0x3e0cf0['body']);return _0x28954d[_0x9af1('0x24')](_0x3e0cf0[_0x9af1('0xab')])[_0x9af1('0x99')](_0x3e0cf0[_0x9af1('0x92')]);}else{return _0x28954d[_0x9af1('0x22')](0xc8);}})[_0x9af1('0x4d')](handleError(_0x28954d,null));};
\ No newline at end of file