Giving service control commands an output
This commit is contained in:
+16
-6
@@ -51,6 +51,8 @@ body::-webkit-scrollbar {
|
|||||||
elem.innerHTML = 'Copied!';
|
elem.innerHTML = 'Copied!';
|
||||||
const copyText = document.getElementsByTagName("pre")[0].textContent;
|
const copyText = document.getElementsByTagName("pre")[0].textContent;
|
||||||
const textArea = document.createElement('textarea');
|
const textArea = document.createElement('textarea');
|
||||||
|
textArea.style.position = 'absolute';
|
||||||
|
textArea.style.left = '-100%';
|
||||||
textArea.textContent = copyText;
|
textArea.textContent = copyText;
|
||||||
document.body.append(textArea);
|
document.body.append(textArea);
|
||||||
textArea.select();
|
textArea.select();
|
||||||
@@ -89,7 +91,7 @@ if(isset($_GET['view'])){
|
|||||||
if($submittedpwd == $caddypwd && $submitteduser == 'birdnet'){
|
if($submittedpwd == $caddypwd && $submitteduser == 'birdnet'){
|
||||||
$url = $_SERVER['SERVER_NAME']."/scripts/adminer.php";
|
$url = $_SERVER['SERVER_NAME']."/scripts/adminer.php";
|
||||||
echo "<div class=\"centered\">
|
echo "<div class=\"centered\">
|
||||||
<form action=\"\" method=\"GET\" id=\"views\">
|
<form action=\"\" method=\"GET\" id=\"views\">
|
||||||
<button type=\"submit\" name=\"view\" value=\"Settings\" form=\"views\">Settings</button>
|
<button type=\"submit\" name=\"view\" value=\"Settings\" form=\"views\">Settings</button>
|
||||||
<button type=\"submit\" name=\"view\" value=\"System Info\" form=\"views\">System Info</button>
|
<button type=\"submit\" name=\"view\" value=\"System Info\" form=\"views\">System Info</button>
|
||||||
<button type=\"submit\" name=\"view\" value=\"System Controls\" form=\"views\">System Controls</button>
|
<button type=\"submit\" name=\"view\" value=\"System Controls\" form=\"views\">System Controls</button>
|
||||||
@@ -99,8 +101,8 @@ if(isset($_GET['view'])){
|
|||||||
<button type=\"submit\" name=\"view\" value=\"Webterm\" form=\"views\">Web Terminal</button>
|
<button type=\"submit\" name=\"view\" value=\"Webterm\" form=\"views\">Web Terminal</button>
|
||||||
<button type=\"submit\" name=\"view\" value=\"Included\" form=\"views\">Custom Species List</button>
|
<button type=\"submit\" name=\"view\" value=\"Included\" form=\"views\">Custom Species List</button>
|
||||||
<button type=\"submit\" name=\"view\" value=\"Excluded\" form=\"views\">Excluded Species List</button>
|
<button type=\"submit\" name=\"view\" value=\"Excluded\" form=\"views\">Excluded Species List</button>
|
||||||
</form>
|
</form>
|
||||||
</div>";
|
</div>";
|
||||||
} else {
|
} else {
|
||||||
header('WWW-Authenticate: Basic realm="My Realm"');
|
header('WWW-Authenticate: Basic realm="My Realm"');
|
||||||
header('HTTP/1.0 401 Unauthorized');
|
header('HTTP/1.0 401 Unauthorized');
|
||||||
@@ -184,7 +186,7 @@ if(isset($_GET['view'])){
|
|||||||
$submitteduser = $_SERVER['PHP_AUTH_USER'];
|
$submitteduser = $_SERVER['PHP_AUTH_USER'];
|
||||||
if($submittedpwd == $caddypwd && $submitteduser == 'birdnet'){
|
if($submittedpwd == $caddypwd && $submitteduser == 'birdnet'){
|
||||||
#ACCESS THE WEB TERMINAL
|
#ACCESS THE WEB TERMINAL
|
||||||
echo "<iframe src='/terminal'></iframe>";
|
echo "<iframe src='/terminal'></iframe>";
|
||||||
} else {
|
} else {
|
||||||
header('WWW-Authenticate: Basic realm="My Realm"');
|
header('WWW-Authenticate: Basic realm="My Realm"');
|
||||||
header('HTTP/1.0 401 Unauthorized');
|
header('HTTP/1.0 401 Unauthorized');
|
||||||
@@ -210,12 +212,20 @@ if(isset($_GET['view'])){
|
|||||||
$submitteduser = $_SERVER['PHP_AUTH_USER'];
|
$submitteduser = $_SERVER['PHP_AUTH_USER'];
|
||||||
if($submittedpwd == $caddypwd && $submitteduser == 'birdnet'){
|
if($submittedpwd == $caddypwd && $submitteduser == 'birdnet'){
|
||||||
$command = $_GET['submit'];
|
$command = $_GET['submit'];
|
||||||
if(isset($command)){
|
if(isset($command)){
|
||||||
|
$initcommand = $command;
|
||||||
|
if (strpos($command, "systemctl") !== false) {
|
||||||
|
$tmp = explode(" ",trim($command));
|
||||||
|
$command .= "& sleep 3;sudo systemctl status ".end($tmp);
|
||||||
|
}
|
||||||
$results = shell_exec("$command 2>&1");
|
$results = shell_exec("$command 2>&1");
|
||||||
|
$results = str_replace("FAILURE", "<span style='color:red'>FAILURE</span>", $results);
|
||||||
|
$results = str_replace("failed", "<span style='color:red'>failed</span>",$results);
|
||||||
|
$results = str_replace("active (running)", "<span style='color:green'><b>active (running)</b></span>",$results);
|
||||||
if(strlen($results) == 0) {
|
if(strlen($results) == 0) {
|
||||||
$results = "This command has no output.";
|
$results = "This command has no output.";
|
||||||
}
|
}
|
||||||
echo "<table style='min-width:70%;'><tr class='relative'><th>Output of command:`".$command."`<button class='copyimage' style='right:40px' onclick='copyOutput(this);'>Copy</button></th></tr><tr><td><pre style='text-align:left'>$results</pre></td></tr></table>";
|
echo "<table style='min-width:70%;'><tr class='relative'><th>Output of command:`".$initcommand."`<button class='copyimage' style='right:40px' onclick='copyOutput(this);'>Copy</button></th></tr><tr><td><pre style='text-align:left'>$results</pre></td></tr></table>";
|
||||||
} else {
|
} else {
|
||||||
header('WWW-Authenticate: Basic realm="My Realm"');
|
header('WWW-Authenticate: Basic realm="My Realm"');
|
||||||
header('HTTP/1.0 401 Unauthorized');
|
header('HTTP/1.0 401 Unauthorized');
|
||||||
|
|||||||
Reference in New Issue
Block a user