71 lines
2.3 KiB
PHP
71 lines
2.3 KiB
PHP
<!DOCTYPE html>
|
|
<!--
|
|
<?php
|
|
function get_command_list($command_file_name){
|
|
echo "Getting commands from file $command_file_name...\n";
|
|
$command_file = fopen($command_file_name, "r") or die("Could not read file $command_file_name. Aborting.\n");
|
|
$commands = explode(PHP_EOL, fread($command_file, filesize($command_file_name)));
|
|
fclose($command_file);
|
|
echo "Done.\n";
|
|
return $commands;
|
|
}
|
|
|
|
$status_commands = get_command_list("commands_status.conf");
|
|
$ondemand_commands = get_command_list("commands_ondemand.conf");
|
|
$git_commands = get_command_list("commands_git.conf");
|
|
?>
|
|
-->
|
|
<html>
|
|
<head>
|
|
<title> Strassenkind Server Status Page </title>
|
|
<link rel="stylesheet" type="text/css" href="style.css" />
|
|
<?php
|
|
if (!isset($_POST['ondemand']) && !isset($_POST['git'])) {
|
|
echo "<meta http-equiv=\"refresh\" content=\"20\" />";
|
|
}
|
|
?>
|
|
</head>
|
|
<body class="status_page">
|
|
<h1> Strassenkind Server Status </h1>
|
|
<hr />
|
|
<?php
|
|
function add_button($button_text, $button_action){
|
|
if (!isset($_POST[$button_action])) {
|
|
echo "<form action=\"\" method=\"post\"><input type=\"submit\" value=\"$button_text\" name=\"$button_action\" /></form>";
|
|
} else {
|
|
echo "<a href=\"\"><button> Return to regular status commands </button></a>";
|
|
}
|
|
}
|
|
|
|
add_button("Run ondemand commands", "ondemand");
|
|
add_button("Force ThreadR update", "git");
|
|
?>
|
|
<hr />
|
|
<?php
|
|
function execute_command_list($commands){
|
|
foreach ($commands as $command) {
|
|
if ($command != ""){
|
|
// === is here on purpose.
|
|
if (strpos($command, '>') === false) {
|
|
$command = $command . " 2>&1";
|
|
}
|
|
$output = shell_exec($command);
|
|
echo "<pre class=\"commandLine\"> " . htmlspecialchars($command, $flags=ENT_DISALLOWED | ENT_HTML5 | ENT_QUOTES) . " </pre>\n<pre class=\"commandLine\"> " . htmlspecialchars($output, $flags=ENT_DISALLOWED | ENT_HTML5 | ENT_QUOTES) . " </pre>\n<hr />";
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
// run ondemand command list if demanded
|
|
if (isset($_POST['ondemand'])) {
|
|
execute_command_list($ondemand_commands);
|
|
} elseif (isset($_POST['git'])) {
|
|
execute_command_list($git_commands);
|
|
} else {
|
|
//run status command list otherwise
|
|
execute_command_list($status_commands);
|
|
}
|
|
?>
|
|
</body>
|
|
</html>
|