Built motion from commit (unavailable).|2.5.12
[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 _0x0d2c=['send','npm\x20install','info','then','express','motion2','length','show','describe','params','catch','create','join','../../files/plugins','body','cwd','chdir','dirname','start','Missing\x20name\x20and/or\x20path','update','restart','hasOwnProperty','Unknown\x20status','destroy','dump','Unknown\x20id','lodash','../../config/pm2','../../config/logger','api','child_process','exec','bluebird','sendStatus','json','error','stack','name','status'];(function(_0x53ab6a,_0x5bbc5d){var _0x5ba655=function(_0x59bf70){while(--_0x59bf70){_0x53ab6a['push'](_0x53ab6a['shift']());}};_0x5ba655(++_0x5bbc5d);}(_0x0d2c,0x1d3));var _0xc0d2=function(_0x5210e4,_0x4f066b){_0x5210e4=_0x5210e4-0x0;var _0x57a137=_0x0d2c[_0x5210e4];return _0x57a137;};'use strict';var _=require(_0xc0d2('0x0'));var pm2=require(_0xc0d2('0x1'));var logger=require(_0xc0d2('0x2'))(_0xc0d2('0x3'));var path=require('path');var exec=require(_0xc0d2('0x4'))[_0xc0d2('0x5')];var BPromise=require(_0xc0d2('0x6'));function handleEntityNotFound(_0x458e88,_0x335278){return function(_0x4d6edf){if(!_0x4d6edf){_0x458e88[_0xc0d2('0x7')](0x194);;}return _0x4d6edf;};}function respondWithResult(_0x425c56,_0x4a2ecc){_0x4a2ecc=_0x4a2ecc||0xc8;return function(_0x498f77){if(_0x498f77){return _0x425c56['status'](_0x4a2ecc)[_0xc0d2('0x8')](_0x498f77);}return null;};}function handleError(_0x1ce724,_0x2f745a){_0x2f745a=_0x2f745a||0x1f4;return function(_0x2e7e7e){logger[_0xc0d2('0x9')](_0x2e7e7e[_0xc0d2('0xa')]);if(_0x2e7e7e[_0xc0d2('0xb')]){delete _0x2e7e7e[_0xc0d2('0xb')];}_0x1ce724[_0xc0d2('0xc')](_0x2f745a)[_0xc0d2('0xd')](_0x2e7e7e);};}function execChildProcess(){return new BPromise(function(_0xc24b59,_0x5d3d91){exec(_0xc0d2('0xe'),function(_0x1eb075,_0x49c148,_0x583545){logger[_0xc0d2('0xf')](_0x49c148);logger[_0xc0d2('0xf')](_0x583545);if(_0x1eb075){logger[_0xc0d2('0x9')](_0x1eb075);return _0x5d3d91(_0x1eb075);}return _0xc24b59(_0x49c148);});});}exports['index']=function(_0x21566a,_0xc9ee0b){return pm2['list']()[_0xc0d2('0x10')](function(_0x88cee){if(_0x88cee){var _0x1eb61b=_['reject'](_0x88cee,function(_0x561914){return _0x561914[_0xc0d2('0xb')]===_0xc0d2('0x11')||_0x561914[_0xc0d2('0xb')]===_0xc0d2('0x12');});return{'rows':_0x1eb61b,'count':_0x1eb61b[_0xc0d2('0x13')]};}return null;})[_0xc0d2('0x10')](respondWithResult(_0xc9ee0b,null))['catch'](handleError(_0xc9ee0b,null));};exports[_0xc0d2('0x14')]=function(_0x556ef7,_0x86357a){return pm2[_0xc0d2('0x15')](_0x556ef7[_0xc0d2('0x16')]['id'])[_0xc0d2('0x10')](respondWithResult(_0x86357a,null))[_0xc0d2('0x10')](handleEntityNotFound(_0x86357a,null))[_0xc0d2('0x17')](handleError(_0x86357a,null));};exports[_0xc0d2('0x18')]=function(_0x240ea9,_0x5e7000){if(_0x240ea9['body'][_0xc0d2('0xb')]&&_0x240ea9['body']['script']){var _0x39ae16=path[_0xc0d2('0x19')](__dirname,_0xc0d2('0x1a'),_0x240ea9[_0xc0d2('0x1b')]['script']);var _0x1fcef1=process[_0xc0d2('0x1c')]();process[_0xc0d2('0x1d')](path[_0xc0d2('0x1e')](_0x39ae16));return execChildProcess()[_0xc0d2('0x10')](function(_0xeeccd1){process[_0xc0d2('0x1d')](_0x1fcef1);return pm2[_0xc0d2('0x1f')]({'name':_0x240ea9[_0xc0d2('0x1b')][_0xc0d2('0xb')],'script':_0x39ae16});})[_0xc0d2('0x10')](function(_0x57c679){pm2['dump']();return _0x57c679[0x0];})['then'](respondWithResult(_0x5e7000,0xc9))[_0xc0d2('0x17')](handleError(_0x5e7000,null));}else{return _0x5e7000[_0xc0d2('0xc')](0x1f4)['send']({'message':_0xc0d2('0x20')});}};exports[_0xc0d2('0x21')]=function(_0x33c794,_0x591cef){if(_0x33c794[_0xc0d2('0x1b')]['id']){delete _0x33c794['body']['id'];}var _0x36ab19={'online':_0xc0d2('0x22'),'stopped':'stop'};if(_0x36ab19[_0xc0d2('0x23')](_0x33c794[_0xc0d2('0x1b')][_0xc0d2('0xc')])){return pm2[_0x36ab19[_0x33c794['body']['status']]](_0x33c794['params']['id'])[_0xc0d2('0x10')](respondWithResult(_0x591cef,0xc8))[_0xc0d2('0x17')](handleError(_0x591cef,null));}else{return _0x591cef['status'](0x1f4)['send']({'message':_0xc0d2('0x24')});}};exports[_0xc0d2('0x25')]=function(_0x40623b,_0x5ab669){if(_0x40623b['body']['id']){delete _0x40623b[_0xc0d2('0x1b')]['id'];}if(_0x40623b[_0xc0d2('0x16')]['id']){return pm2['delete'](_0x40623b['params']['id'])[_0xc0d2('0x10')](function(_0x45c122){pm2[_0xc0d2('0x26')]();return _0x45c122[0x0];})[_0xc0d2('0x10')](respondWithResult(_0x5ab669,null))[_0xc0d2('0x17')](handleError(_0x5ab669,null));}else{return _0x5ab669[_0xc0d2('0xc')](0x1f4)[_0xc0d2('0xd')]({'message':_0xc0d2('0x27')});}};