Built motion from commit eddce310.|2.6.12
[motion2.git] / server / api / pm2 / pm2.controller.js
index 82d8674..cb43412 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xb894=['params','create','body','script','join','cwd','chdir','dirname','start','dump','send','update','stop','hasOwnProperty','Unknown\x20status','destroy','delete','Unknown\x20id','lodash','path','exec','bluebird','sendStatus','status','json','stack','name','info','error','index','then','reject','express','motion2','length','catch','show','describe'];(function(_0x160c73,_0x2ee678){var _0xd9302=function(_0x169454){while(--_0x169454){_0x160c73['push'](_0x160c73['shift']());}};_0xd9302(++_0x2ee678);}(_0xb894,0xd0));var _0x4b89=function(_0x14f06e,_0x2aab44){_0x14f06e=_0x14f06e-0x0;var _0x484e92=_0xb894[_0x14f06e];return _0x484e92;};'use strict';var _=require(_0x4b89('0x0'));var pm2=require('../../config/pm2');var logger=require('../../config/logger')('api');var path=require(_0x4b89('0x1'));var exec=require('child_process')[_0x4b89('0x2')];var BPromise=require(_0x4b89('0x3'));function handleEntityNotFound(_0xdb51f6,_0x253657){return function(_0x4d826c){if(!_0x4d826c){_0xdb51f6[_0x4b89('0x4')](0x194);;}return _0x4d826c;};}function respondWithResult(_0x463977,_0x2ea2a8){_0x2ea2a8=_0x2ea2a8||0xc8;return function(_0x397704){if(_0x397704){return _0x463977[_0x4b89('0x5')](_0x2ea2a8)[_0x4b89('0x6')](_0x397704);}return null;};}function handleError(_0x45d7c5,_0x27f41e){_0x27f41e=_0x27f41e||0x1f4;return function(_0x436b27){logger['error'](_0x436b27[_0x4b89('0x7')]);if(_0x436b27[_0x4b89('0x8')]){delete _0x436b27[_0x4b89('0x8')];}_0x45d7c5[_0x4b89('0x5')](_0x27f41e)['send'](_0x436b27);};}function execChildProcess(){return new BPromise(function(_0x188fa3,_0x191304){exec('npm\x20install',function(_0x12e592,_0x4f7ec5,_0x1f244a){logger[_0x4b89('0x9')](_0x4f7ec5);logger['info'](_0x1f244a);if(_0x12e592){logger[_0x4b89('0xa')](_0x12e592);return _0x191304(_0x12e592);}return _0x188fa3(_0x4f7ec5);});});}exports[_0x4b89('0xb')]=function(_0x3ef1e7,_0x2eae10){return pm2['list']()[_0x4b89('0xc')](function(_0x3cf503){if(_0x3cf503){var _0x227375=_[_0x4b89('0xd')](_0x3cf503,function(_0x378a10){return _0x378a10['name']===_0x4b89('0xe')||_0x378a10[_0x4b89('0x8')]===_0x4b89('0xf');});return{'rows':_0x227375,'count':_0x227375[_0x4b89('0x10')]};}return null;})[_0x4b89('0xc')](respondWithResult(_0x2eae10,null))[_0x4b89('0x11')](handleError(_0x2eae10,null));};exports[_0x4b89('0x12')]=function(_0x3f13f3,_0x150b20){return pm2[_0x4b89('0x13')](_0x3f13f3[_0x4b89('0x14')]['id'])[_0x4b89('0xc')](respondWithResult(_0x150b20,null))['then'](handleEntityNotFound(_0x150b20,null))[_0x4b89('0x11')](handleError(_0x150b20,null));};exports[_0x4b89('0x15')]=function(_0x337938,_0x984457){if(_0x337938['body']['name']&&_0x337938[_0x4b89('0x16')][_0x4b89('0x17')]){var _0x7f8319=path[_0x4b89('0x18')](__dirname,'../../files/plugins',_0x337938[_0x4b89('0x16')][_0x4b89('0x17')]);var _0x521ab6=process[_0x4b89('0x19')]();process[_0x4b89('0x1a')](path[_0x4b89('0x1b')](_0x7f8319));return execChildProcess()['then'](function(_0x4a580e){process['chdir'](_0x521ab6);return pm2[_0x4b89('0x1c')]({'name':_0x337938[_0x4b89('0x16')]['name'],'script':_0x7f8319});})['then'](function(_0x4d5767){pm2[_0x4b89('0x1d')]();return _0x4d5767[0x0];})[_0x4b89('0xc')](respondWithResult(_0x984457,0xc9))[_0x4b89('0x11')](handleError(_0x984457,null));}else{return _0x984457[_0x4b89('0x5')](0x1f4)[_0x4b89('0x1e')]({'message':'Missing\x20name\x20and/or\x20path'});}};exports[_0x4b89('0x1f')]=function(_0x512e21,_0x418f1c){if(_0x512e21[_0x4b89('0x16')]['id']){delete _0x512e21[_0x4b89('0x16')]['id'];}var _0x17a5ee={'online':'restart','stopped':_0x4b89('0x20')};if(_0x17a5ee[_0x4b89('0x21')](_0x512e21[_0x4b89('0x16')][_0x4b89('0x5')])){return pm2[_0x17a5ee[_0x512e21[_0x4b89('0x16')][_0x4b89('0x5')]]](_0x512e21[_0x4b89('0x14')]['id'])['then'](respondWithResult(_0x418f1c,0xc8))[_0x4b89('0x11')](handleError(_0x418f1c,null));}else{return _0x418f1c['status'](0x1f4)[_0x4b89('0x1e')]({'message':_0x4b89('0x22')});}};exports[_0x4b89('0x23')]=function(_0x42959d,_0x464d41){if(_0x42959d[_0x4b89('0x16')]['id']){delete _0x42959d['body']['id'];}if(_0x42959d[_0x4b89('0x14')]['id']){return pm2[_0x4b89('0x24')](_0x42959d['params']['id'])[_0x4b89('0xc')](function(_0x280440){pm2[_0x4b89('0x1d')]();return _0x280440[0x0];})[_0x4b89('0xc')](respondWithResult(_0x464d41,null))[_0x4b89('0x11')](handleError(_0x464d41,null));}else{return _0x464d41[_0x4b89('0x5')](0x1f4)[_0x4b89('0x1e')]({'message':_0x4b89('0x25')});}};
\ No newline at end of file
+var _0xa74f=['child_process','exec','bluebird','status','json','error','stack','name','send','npm\x20install','info','index','list','then','reject','express','motion2','length','catch','body','script','cwd','chdir','Missing\x20name\x20and/or\x20path','restart','stop','Unknown\x20status','params','delete','dump','../../config/logger'];(function(_0x43e7fb,_0x37fbf4){var _0x21d13c=function(_0x4f2f19){while(--_0x4f2f19){_0x43e7fb['push'](_0x43e7fb['shift']());}};_0x21d13c(++_0x37fbf4);}(_0xa74f,0x9a));var _0xfa74=function(_0x163040,_0x38a58c){_0x163040=_0x163040-0x0;var _0x364667=_0xa74f[_0x163040];return _0x364667;};'use strict';var _=require('lodash');var pm2=require('../../config/pm2');var logger=require(_0xfa74('0x0'))('api');var path=require('path');var exec=require(_0xfa74('0x1'))[_0xfa74('0x2')];var BPromise=require(_0xfa74('0x3'));function handleEntityNotFound(_0x25a9b7,_0x5b367b){return function(_0x141625){if(!_0x141625){_0x25a9b7['sendStatus'](0x194);;}return _0x141625;};}function respondWithResult(_0x543cfe,_0x43dd2f){_0x43dd2f=_0x43dd2f||0xc8;return function(_0x9ddbd2){if(_0x9ddbd2){return _0x543cfe[_0xfa74('0x4')](_0x43dd2f)[_0xfa74('0x5')](_0x9ddbd2);}return null;};}function handleError(_0x287921,_0x344e04){_0x344e04=_0x344e04||0x1f4;return function(_0x5c0eb2){logger[_0xfa74('0x6')](_0x5c0eb2[_0xfa74('0x7')]);if(_0x5c0eb2[_0xfa74('0x8')]){delete _0x5c0eb2[_0xfa74('0x8')];}_0x287921['status'](_0x344e04)[_0xfa74('0x9')](_0x5c0eb2);};}function execChildProcess(){return new BPromise(function(_0x4f8891,_0x48695c){exec(_0xfa74('0xa'),function(_0x1d919d,_0x30b2d5,_0x307d35){logger['info'](_0x30b2d5);logger[_0xfa74('0xb')](_0x307d35);if(_0x1d919d){logger[_0xfa74('0x6')](_0x1d919d);return _0x48695c(_0x1d919d);}return _0x4f8891(_0x30b2d5);});});}exports[_0xfa74('0xc')]=function(_0x278e8b,_0x4ad407){return pm2[_0xfa74('0xd')]()[_0xfa74('0xe')](function(_0x3eb49b){if(_0x3eb49b){var _0x3947ca=_[_0xfa74('0xf')](_0x3eb49b,function(_0x47c8fb){return _0x47c8fb[_0xfa74('0x8')]===_0xfa74('0x10')||_0x47c8fb[_0xfa74('0x8')]===_0xfa74('0x11');});return{'rows':_0x3947ca,'count':_0x3947ca[_0xfa74('0x12')]};}return null;})[_0xfa74('0xe')](respondWithResult(_0x4ad407,null))[_0xfa74('0x13')](handleError(_0x4ad407,null));};exports['show']=function(_0x58a67a,_0xe0e33d){return pm2['describe'](_0x58a67a['params']['id'])[_0xfa74('0xe')](respondWithResult(_0xe0e33d,null))[_0xfa74('0xe')](handleEntityNotFound(_0xe0e33d,null))[_0xfa74('0x13')](handleError(_0xe0e33d,null));};exports['create']=function(_0x3bede6,_0x2edebb){if(_0x3bede6[_0xfa74('0x14')]['name']&&_0x3bede6[_0xfa74('0x14')][_0xfa74('0x15')]){var _0x2e6c33=path['join'](__dirname,'../../files/plugins',_0x3bede6[_0xfa74('0x14')][_0xfa74('0x15')]);var _0x9932db=process[_0xfa74('0x16')]();process[_0xfa74('0x17')](path['dirname'](_0x2e6c33));return execChildProcess()['then'](function(_0x3721bf){process['chdir'](_0x9932db);return pm2['start']({'name':_0x3bede6['body'][_0xfa74('0x8')],'script':_0x2e6c33});})[_0xfa74('0xe')](function(_0x42d9bf){pm2['dump']();return _0x42d9bf[0x0];})['then'](respondWithResult(_0x2edebb,0xc9))[_0xfa74('0x13')](handleError(_0x2edebb,null));}else{return _0x2edebb[_0xfa74('0x4')](0x1f4)['send']({'message':_0xfa74('0x18')});}};exports['update']=function(_0x1a8cf7,_0x153b2a){if(_0x1a8cf7['body']['id']){delete _0x1a8cf7[_0xfa74('0x14')]['id'];}var _0x1130de={'online':_0xfa74('0x19'),'stopped':_0xfa74('0x1a')};if(_0x1130de['hasOwnProperty'](_0x1a8cf7[_0xfa74('0x14')][_0xfa74('0x4')])){return pm2[_0x1130de[_0x1a8cf7[_0xfa74('0x14')]['status']]](_0x1a8cf7['params']['id'])[_0xfa74('0xe')](respondWithResult(_0x153b2a,0xc8))[_0xfa74('0x13')](handleError(_0x153b2a,null));}else{return _0x153b2a['status'](0x1f4)['send']({'message':_0xfa74('0x1b')});}};exports['destroy']=function(_0x2238d4,_0x4d6d0a){if(_0x2238d4[_0xfa74('0x14')]['id']){delete _0x2238d4[_0xfa74('0x14')]['id'];}if(_0x2238d4[_0xfa74('0x1c')]['id']){return pm2[_0xfa74('0x1d')](_0x2238d4['params']['id'])[_0xfa74('0xe')](function(_0x102d47){pm2[_0xfa74('0x1e')]();return _0x102d47[0x0];})[_0xfa74('0xe')](respondWithResult(_0x4d6d0a,null))[_0xfa74('0x13')](handleError(_0x4d6d0a,null));}else{return _0x4d6d0a[_0xfa74('0x4')](0x1f4)[_0xfa74('0x9')]({'message':'Unknown\x20id'});}};
\ No newline at end of file