Built motion from commit (unavailable).|2.5.30
[motion2.git] / server / api / pm2 / pm2.controller.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x089c=['../../files/plugins','cwd','chdir','start','dump','Missing\x20name\x20and/or\x20path','update','stop','hasOwnProperty','catch','Unknown\x20status','Unknown\x20id','lodash','../../config/pm2','../../config/logger','api','child_process','exec','bluebird','sendStatus','status','json','error','stack','name','send','npm\x20install','info','index','list','reject','motion2','length','then','show','describe','params','create','body','script'];(function(_0x32e71b,_0x39896f){var _0x38732b=function(_0x5dfce4){while(--_0x5dfce4){_0x32e71b['push'](_0x32e71b['shift']());}};_0x38732b(++_0x39896f);}(_0x089c,0xfc));var _0xc089=function(_0x4b73a2,_0x40b5fe){_0x4b73a2=_0x4b73a2-0x0;var _0x383c66=_0x089c[_0x4b73a2];return _0x383c66;};'use strict';var _=require(_0xc089('0x0'));var pm2=require(_0xc089('0x1'));var logger=require(_0xc089('0x2'))(_0xc089('0x3'));var path=require('path');var exec=require(_0xc089('0x4'))[_0xc089('0x5')];var BPromise=require(_0xc089('0x6'));function handleEntityNotFound(_0x246b0b,_0x86955){return function(_0x59c401){if(!_0x59c401){_0x246b0b[_0xc089('0x7')](0x194);;}return _0x59c401;};}function respondWithResult(_0x3addd4,_0x5053fc){_0x5053fc=_0x5053fc||0xc8;return function(_0x2a52a6){if(_0x2a52a6){return _0x3addd4[_0xc089('0x8')](_0x5053fc)[_0xc089('0x9')](_0x2a52a6);}return null;};}function handleError(_0x259a48,_0x558e73){_0x558e73=_0x558e73||0x1f4;return function(_0x44dc2d){logger[_0xc089('0xa')](_0x44dc2d[_0xc089('0xb')]);if(_0x44dc2d[_0xc089('0xc')]){delete _0x44dc2d['name'];}_0x259a48[_0xc089('0x8')](_0x558e73)[_0xc089('0xd')](_0x44dc2d);};}function execChildProcess(){return new BPromise(function(_0x2eef57,_0x3b7e74){exec(_0xc089('0xe'),function(_0x252bf5,_0xb90673,_0x36b10a){logger[_0xc089('0xf')](_0xb90673);logger['info'](_0x36b10a);if(_0x252bf5){logger[_0xc089('0xa')](_0x252bf5);return _0x3b7e74(_0x252bf5);}return _0x2eef57(_0xb90673);});});}exports[_0xc089('0x10')]=function(_0x487122,_0x567cd8){return pm2[_0xc089('0x11')]()['then'](function(_0x3a317c){if(_0x3a317c){var _0x59c446=_[_0xc089('0x12')](_0x3a317c,function(_0xba0840){return _0xba0840[_0xc089('0xc')]==='express'||_0xba0840[_0xc089('0xc')]===_0xc089('0x13');});return{'rows':_0x59c446,'count':_0x59c446[_0xc089('0x14')]};}return null;})[_0xc089('0x15')](respondWithResult(_0x567cd8,null))['catch'](handleError(_0x567cd8,null));};exports[_0xc089('0x16')]=function(_0x145dba,_0x143c17){return pm2[_0xc089('0x17')](_0x145dba[_0xc089('0x18')]['id'])['then'](respondWithResult(_0x143c17,null))[_0xc089('0x15')](handleEntityNotFound(_0x143c17,null))['catch'](handleError(_0x143c17,null));};exports[_0xc089('0x19')]=function(_0x40817d,_0x2216cc){if(_0x40817d[_0xc089('0x1a')][_0xc089('0xc')]&&_0x40817d['body'][_0xc089('0x1b')]){var _0x35a37a=path['join'](__dirname,_0xc089('0x1c'),_0x40817d[_0xc089('0x1a')][_0xc089('0x1b')]);var _0xf7810b=process[_0xc089('0x1d')]();process['chdir'](path['dirname'](_0x35a37a));return execChildProcess()[_0xc089('0x15')](function(_0x451c7d){process[_0xc089('0x1e')](_0xf7810b);return pm2[_0xc089('0x1f')]({'name':_0x40817d[_0xc089('0x1a')][_0xc089('0xc')],'script':_0x35a37a});})[_0xc089('0x15')](function(_0x5801ae){pm2[_0xc089('0x20')]();return _0x5801ae[0x0];})[_0xc089('0x15')](respondWithResult(_0x2216cc,0xc9))['catch'](handleError(_0x2216cc,null));}else{return _0x2216cc[_0xc089('0x8')](0x1f4)[_0xc089('0xd')]({'message':_0xc089('0x21')});}};exports[_0xc089('0x22')]=function(_0x23782d,_0x1c98fa){if(_0x23782d['body']['id']){delete _0x23782d[_0xc089('0x1a')]['id'];}var _0x10a34d={'online':'restart','stopped':_0xc089('0x23')};if(_0x10a34d[_0xc089('0x24')](_0x23782d['body']['status'])){return pm2[_0x10a34d[_0x23782d[_0xc089('0x1a')][_0xc089('0x8')]]](_0x23782d[_0xc089('0x18')]['id'])[_0xc089('0x15')](respondWithResult(_0x1c98fa,0xc8))[_0xc089('0x25')](handleError(_0x1c98fa,null));}else{return _0x1c98fa[_0xc089('0x8')](0x1f4)[_0xc089('0xd')]({'message':_0xc089('0x26')});}};exports['destroy']=function(_0x42d2cd,_0x4d2a07){if(_0x42d2cd['body']['id']){delete _0x42d2cd[_0xc089('0x1a')]['id'];}if(_0x42d2cd[_0xc089('0x18')]['id']){return pm2['delete'](_0x42d2cd[_0xc089('0x18')]['id'])[_0xc089('0x15')](function(_0x32db26){pm2[_0xc089('0x20')]();return _0x32db26[0x0];})['then'](respondWithResult(_0x4d2a07,null))[_0xc089('0x25')](handleError(_0x4d2a07,null));}else{return _0x4d2a07['status'](0x1f4)['send']({'message':_0xc089('0x27')});}};