...HTML... ` * template syntax — preserve the colons. * * Also surfaces a "PiStar-Keeper Logbook" panel below the form when * /usr/local/sbin/pistar-keeper is running (last 5 entries from * /var/pistar-keeper/pistar-keeper.log + a download link). */ require_once($_SERVER['DOCUMENT_ROOT'] . '/config/security_headers.php'); setSecurityHeaders(); if ($_SERVER["PHP_SELF"] == "/admin/index.php") { include_once $_SERVER['DOCUMENT_ROOT'].'/config/language.php'; // Translation Code if (!empty($_POST) && isset($_POST["dstrMgrSubmit"])): //if (!empty($_POST)): if (preg_match('/[^A-Z]/',$_POST["Link"])) { unset ($_POST["Link"]);} if ($_POST["Link"] == "LINK") { if (preg_match('/[^A-Za-z0-9 ]/',$_POST["RefName"])) { unset ($_POST["RefName"]);} if (preg_match('/[^A-Z]/',$_POST["Letter"])) { unset ($_POST["Letter"]);} if (preg_match('/[^A-Z0-9 ]/',$_POST["Module"])) { unset ($_POST["Module"]);} } if ($_POST["Link"] == "UNLINK") { if (preg_match('/[^A-Z0-9 ]/',$_POST["Module"])) { unset ($_POST["Module"]);} } if (empty($_POST["RefName"]) || empty($_POST["Letter"]) || empty($_POST["Module"])) { echo "Somthing wrong with your input, try again";} else { if (strlen($_POST["RefName"]) != 7) { $targetRef = str_pad($_POST["RefName"], 7, " "); } else { $targetRef = $_POST["RefName"]; } $targetRef = $targetRef.$_POST["Letter"]; $targetRef = strtoupper($targetRef); $module = $_POST["Module"]; if (strlen($module) != 8) { //Fix the length of the module information $moduleFixedCs = strlen($module) - 1; //Length of the string, -1 $moduleFixedBand = substr($module, -1); //Single Band Letter in the 8th position $moduleFixedCallPad = str_pad(substr($module, 0, $moduleFixedCs), 7); //Pad the callsign area to 7 chars $module = $moduleFixedCallPad.$moduleFixedBand; //Re add the band information }; $unlinkCommand = "sudo remotecontrold \"".$module."\" unlink"; $linkCommand = "sudo remotecontrold \"".$module."\" link never \"".$targetRef."\""; if ($module != $targetRef && $_POST["Link"] == "LINK") { // Sanity check that we are not connecting to ourself echo "D-Star Link Manager\n"; echo "\n\n\n
Command Output
"; echo htmlspecialchars((string)exec($linkCommand), ENT_QUOTES, 'UTF-8'); echo "
\n"; } if ($module == $targetRef && $_POST["Link"] == "LINK") { // Sanity Check Failed echo "D-Star Link Manager\n"; echo "\n\n\n
Command Output
"; echo "Cannot link to myself - Aborting link request!"; echo "
\n"; } if ($_POST["Link"] == "UNLINK") { // Allow Unlink no matter what echo "D-Star Link Manager\n"; echo "\n\n\n
Command Output
"; echo htmlspecialchars((string)exec($unlinkCommand), ENT_QUOTES, 'UTF-8'); echo "
\n"; } } unset($_POST); echo ''; else: ?>
Radio ModuleRadio Module ReflectorReflector Link / Un-LinkLink / Un-Link ActionAction
Link UnLink
\n"; echo "PiStar-Keeper Logbook\n"; echo "\n"; echo " \n"; echo " \n"; echo " \n"; exec ("tail -n 5 /var/pistar-keeper/pistar-keeper.log", $lines); $counter = 0; foreach ($lines as $line) { echo "\n"; $counter++; } echo "
PiStar-Keeper Log Entries (UTC)PiStar-Keeper Log Entries (UTC)
".$lines[$counter]."
\n"; } }