mirror of
https://github.com/donl/gPanel.git
synced 2026-05-29 06:12:29 -06:00
Merge pull request #84 from george-e-shaw-iv/master
Managing bundle public server status and viewing bundle logs from server now works
This commit is contained in:
commit
61cbdb0f7f
9 changed files with 212 additions and 0 deletions
|
|
@ -47,6 +47,18 @@ func (con *Controller) apiHandler(res http.ResponseWriter, req *http.Request) (b
|
|||
switch suspectApi {
|
||||
case "/server/status":
|
||||
return true, server.Status(res, req, specific.Public)
|
||||
case "/server/start":
|
||||
return true, server.Start(res, req, specific.Public)
|
||||
case "/server/shutdown":
|
||||
return true, server.Shutdown(res, req, specific.Public)
|
||||
case "/server/maintenance":
|
||||
return true, server.Maintenance(res, req, specific.Public)
|
||||
case "/server/restart":
|
||||
return true, server.Restart(res, req, specific.Public)
|
||||
case "/log/read":
|
||||
return true, log.Read(res, req, specific.Directory)
|
||||
case "/log/delete":
|
||||
return true, log.Delete(res, req, specific.Directory)
|
||||
default:
|
||||
return false, false
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,11 @@
|
|||
jQuery('._js_back-to-specific-bundle').on('click', function(e){
|
||||
e.preventDefault();
|
||||
|
||||
jQuery('.view-log-modal').modal('hide');
|
||||
jQuery('.specific-bundle-modal').modal('show');
|
||||
});
|
||||
|
||||
jQuery('.view-log-modal').on('hidden.bs.modal', function(e){
|
||||
jQuery('._js_back-to-specific-bundle').removeClass('d-none');
|
||||
jQuery('._js_back-to-specific-bundle').addClass('d-none');
|
||||
});
|
||||
|
|
@ -0,0 +1,62 @@
|
|||
var logModal = jQuery('.view-log-modal');
|
||||
|
||||
jQuery('._js_specific-bundle-log-view').on('click', function(e){
|
||||
e.preventDefault();
|
||||
|
||||
var logName = jQuery(this).attr('data');
|
||||
|
||||
var title;
|
||||
switch(logName) {
|
||||
case "public_errors":
|
||||
title = "Public Error Log";
|
||||
break;
|
||||
case "account_errors":
|
||||
title = "Account Error Log";
|
||||
break;
|
||||
case "public_load_time":
|
||||
title = "Public Load Time Log";
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
break;
|
||||
}
|
||||
jQuery(logModal).find('.modal-title').html(title);
|
||||
jQuery(logModal).find('._js_back-to-specific-bundle').removeClass('d-none');
|
||||
jQuery(logModal).find('._js_log-clear').attr('data', logName);
|
||||
|
||||
var name = jQuery('.specific-bundle-modal').attr('data');
|
||||
|
||||
var requestData = {};
|
||||
requestData["bundle_name"] = name;
|
||||
requestData["name"] = logName;
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.open('POST', 'api/log/read', true);
|
||||
xhr.send(JSON.stringify(requestData));
|
||||
|
||||
xhr.onloadend = function() {
|
||||
if(xhr.status == 200) {
|
||||
var responseData;
|
||||
|
||||
if(xhr.response != undefined && xhr.response.length != 0) {
|
||||
responseData = xhr.response;
|
||||
}
|
||||
else {
|
||||
responseData = "The log is currently empty."
|
||||
}
|
||||
|
||||
jQuery(logModal).find('.modal-body textarea').html(responseData);
|
||||
jQuery('.specific-bundle-modal').modal('hide');
|
||||
jQuery(logModal).modal('show');
|
||||
}
|
||||
else {
|
||||
if(xhr.response != undefined && xhr.response.length != 0) {
|
||||
alert(xhr.response);
|
||||
}
|
||||
else {
|
||||
alert('An error has occurred, please contact your webhost administrator.');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
});
|
||||
|
|
@ -0,0 +1,20 @@
|
|||
jQuery('._js_specific-bundle-public-maintenance-mode').on('click', function(e){
|
||||
e.preventDefault();
|
||||
|
||||
var name = jQuery('.specific-bundle-modal').attr('data');
|
||||
var requestData = {};
|
||||
requestData["bundle_name"] = name;
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.open('UPDATE', 'api/server/maintenance', true);
|
||||
xhr.send(JSON.stringify(requestData));
|
||||
|
||||
xhr.onloadend = function() {
|
||||
if(xhr.status == 204) {
|
||||
getPublicServerStatus(name);
|
||||
}
|
||||
else {
|
||||
alert('An error has occurred, please contact your webhost administrator.');
|
||||
}
|
||||
}
|
||||
});
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
jQuery('._js_specific-bundle-public-restart-graceful, ._js_specific-bundle-public-restart-forceful').on('click', function(e){
|
||||
e.preventDefault();
|
||||
|
||||
var name = jQuery('.specific-bundle-modal').attr('data');
|
||||
var requestData = {};
|
||||
requestData["bundle_name"] = name
|
||||
|
||||
if(jQuery(this).hasClass('_js_specific-bundle-public-restart-graceful')) {
|
||||
requestData["graceful"] = true;
|
||||
}
|
||||
else {
|
||||
requestData["graceful"] = false;
|
||||
}
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.open('UPDATE', 'api/server/restart', true);
|
||||
xhr.send(JSON.stringify(requestData));
|
||||
|
||||
xhr.onloadend = function() {
|
||||
if(xhr.status == 204) {
|
||||
getPublicServerStatus(name);
|
||||
alert('Server successfully restarted.');
|
||||
}
|
||||
else {
|
||||
if(xhr.response) {
|
||||
alert(xhr.response);
|
||||
}
|
||||
else {
|
||||
alert('An error has occurred, please contact your webhost administrator.');
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
|
@ -0,0 +1,32 @@
|
|||
jQuery('._js_specific-bundle-public-shutdown-graceful, ._js_specific-bundle-public-shutdown-forceful').on('click', function(e){
|
||||
e.preventDefault();
|
||||
|
||||
var name = jQuery('.specific-bundle-modal').attr('data');
|
||||
var requestData = {};
|
||||
requestData["bundle_name"] = name;
|
||||
|
||||
if(jQuery(this).hasClass('_js_specific-bundle-public-shutdown-graceful')) {
|
||||
requestData["graceful"] = true;
|
||||
}
|
||||
else {
|
||||
requestData["graceful"] = false;
|
||||
}
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.open('UPDATE', 'api/server/shutdown', true);
|
||||
xhr.send(JSON.stringify(requestData));
|
||||
|
||||
xhr.onloadend = function() {
|
||||
if(xhr.status == 204) {
|
||||
getPublicServerStatus(name);
|
||||
}
|
||||
else {
|
||||
if(xhr.response) {
|
||||
alert(xhr.response);
|
||||
}
|
||||
else {
|
||||
alert('An error has occurred, please contact your webhost administrator.');
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
|
@ -0,0 +1,25 @@
|
|||
jQuery('._js_specific-bundle-public-start').on('click', function(e){
|
||||
e.preventDefault();
|
||||
|
||||
var name = jQuery('.specific-bundle-modal').attr('data');
|
||||
requestData = {};
|
||||
requestData["bundle_name"] = name;
|
||||
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.open('UPDATE', 'api/server/start', true);
|
||||
xhr.send(JSON.stringify(requestData));
|
||||
|
||||
xhr.onloadend = function() {
|
||||
if(xhr.status == 204) {
|
||||
getPublicServerStatus(name);
|
||||
}
|
||||
else {
|
||||
if(xhr.response) {
|
||||
alert(xhr.response);
|
||||
}
|
||||
else {
|
||||
alert('An error has occurred, please contact your webhost administrator.');
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
|
@ -10,6 +10,15 @@ jQuery('._js_log-clear').on('click', function(e){
|
|||
case "server_errors":
|
||||
title = "Server Error Log";
|
||||
break;
|
||||
case "public_errors":
|
||||
title = "Public Error Log";
|
||||
break;
|
||||
case "account_errors":
|
||||
title = "Account Error Log";
|
||||
break;
|
||||
case "public_load_time":
|
||||
title = "Public Load Time Log";
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -169,6 +169,7 @@
|
|||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
|
||||
<button type="button" class="btn btn-danger _js_log-clear" data="">Clear Log</button>
|
||||
<button type="button" class="btn d-none btn-warning _js_back-to-specific-bundle">Back to Bundle Management</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -230,6 +231,13 @@
|
|||
<script type="text/javascript" src="assets/js/panelHandlers/bundles/manage.js"></script>
|
||||
|
||||
<script type="text/javascript" src="assets/js/panelHandlers/bundles/specific/server/status.js"></script>
|
||||
<script type="text/javascript" src="assets/js/panelHandlers/bundles/specific/server/start.js"></script>
|
||||
<script type="text/javascript" src="assets/js/panelHandlers/bundles/specific/server/shutdown.js"></script>
|
||||
<script type="text/javascript" src="assets/js/panelHandlers/bundles/specific/server/restart.js"></script>
|
||||
<script type="text/javascript" src="assets/js/panelHandlers/bundles/specific/server/maintenance.js"></script>
|
||||
|
||||
<script type="text/javascript" src="assets/js/panelHandlers/bundles/specific/log/view.js"></script>
|
||||
<script type="text/javascript" src="assets/js/panelHandlers/bundles/specific/log/back.js"></script>
|
||||
|
||||
<script type="text/javascript" src="assets/js/panelHandlers/bundles/specific/open.js"></script>
|
||||
<script type="text/javascript" src="assets/js/panelHandlers/bundles/specific/back.js"></script>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue