added switch reflector button inspired by OE7JKT. Be sure to add /bin/sed into sudoers! Not finished completely, actually loads only DMRplus-Reflector-list.
This commit is contained in:
parent
03285d6011
commit
677bac73ff
5 changed files with 140 additions and 1 deletions
|
@ -42,6 +42,7 @@ textdomain('messages');
|
||||||
<li>dg0cco</li>
|
<li>dg0cco</li>
|
||||||
<li>sa7bnt</li>
|
<li>sa7bnt</li>
|
||||||
<li>ct2jay</li>
|
<li>ct2jay</li>
|
||||||
|
<li>oe7jkt</li>
|
||||||
<li><?php echo _("and some others..."); ?></li>
|
<li><?php echo _("and some others..."); ?></li>
|
||||||
</ul>
|
</ul>
|
||||||
<p><?php echo _("Those, who felt forgotten, feel free to commit a change into github of this file."); ?></p>
|
<p><?php echo _("Those, who felt forgotten, feel free to commit a change into github of this file."); ?></p>
|
||||||
|
|
|
@ -849,9 +849,33 @@ function decodeAlias($logLine) {
|
||||||
return $tok1.$tok2.$tok3.$tok4.$tok5.$tok6.$tok7;
|
return $tok1.$tok2.$tok3.$tok4.$tok5.$tok6.$tok7;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function getGitVersion(){
|
function getGitVersion(){
|
||||||
exec("git rev-parse HEAD", $output);
|
exec("git rev-parse HEAD", $output);
|
||||||
return 'GitID #<a href="https://github.com/dg9vh/MMDVMHost-Dashboard/commit/'.substr($output[0],0,7).'">'.substr($output[0],0,7).'</a>';
|
return 'GitID #<a href="https://github.com/dg9vh/MMDVMHost-Dashboard/commit/'.substr($output[0],0,7).'">'.substr($output[0],0,7).'</a>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function getDMRReflectors($network) {
|
||||||
|
$refls = array();
|
||||||
|
switch ($network) {
|
||||||
|
case "DMRPLUS":
|
||||||
|
$refls = getDMRReflectorsFromURL("http://ham-dmr.de/reflector.db");
|
||||||
|
break;
|
||||||
|
case "BRANDMEISTER":
|
||||||
|
$refls = getDMRReflectorsFromURL("http://185.79.71.94/reflector.db");
|
||||||
|
break;
|
||||||
|
|
||||||
|
}
|
||||||
|
return $refls;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function getDMRReflectorsFromURL($url) {
|
||||||
|
$data = file_get_contents($url);
|
||||||
|
$rows = explode("\n",$data);
|
||||||
|
$refls = array();
|
||||||
|
foreach($rows as $row) {
|
||||||
|
$refls[] = str_getcsv($row,"@",'');
|
||||||
|
}
|
||||||
|
return $refls;
|
||||||
|
}
|
||||||
?>
|
?>
|
||||||
|
|
18
index.php
18
index.php
|
@ -133,6 +133,24 @@ if (defined("ENABLENETWORKSWITCHING")) {
|
||||||
?>
|
?>
|
||||||
<button onclick="window.location.href='./scripts/switchnetwork.php?network=DMRPLUS'" type="button" class="btn btn-default navbar-btn"><span class="glyphicon glyphicon-plus" aria-hidden="true"></span> <?php echo _("DMRplus"); ?></button>
|
<button onclick="window.location.href='./scripts/switchnetwork.php?network=DMRPLUS'" type="button" class="btn btn-default navbar-btn"><span class="glyphicon glyphicon-plus" aria-hidden="true"></span> <?php echo _("DMRplus"); ?></button>
|
||||||
<button onclick="window.location.href='./scripts/switchnetwork.php?network=BRANDMEISTER'" type="button" class="btn btn-default navbar-btn"><span class="glyphicon glyphicon-fire" aria-hidden="true"></span> <?php echo _("BrandMeister"); ?></button>
|
<button onclick="window.location.href='./scripts/switchnetwork.php?network=BRANDMEISTER'" type="button" class="btn btn-default navbar-btn"><span class="glyphicon glyphicon-fire" aria-hidden="true"></span> <?php echo _("BrandMeister"); ?></button>
|
||||||
|
<?php
|
||||||
|
}
|
||||||
|
if (defined("ENABLEREFLECTORSWITCHING") && (getEnabled("DMR Network", $mmdvmconfigs) == 1)) {
|
||||||
|
$reflectors = getDMRReflectors("DMRPLUS");
|
||||||
|
?>
|
||||||
|
<form method = "get" action ="./scripts/switchreflector.php" class="form-inline" role="form">
|
||||||
|
<div class="form-group">
|
||||||
|
<select id="reflector" name="reflector" class="form-control" style="width: 80px;">
|
||||||
|
<?php
|
||||||
|
foreach ($reflectors as $reflector) {
|
||||||
|
if (strlen($reflector[1])>0)
|
||||||
|
echo'<option value="'.$reflector[0].'">'.$reflector[1].'</option>';
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
</select>
|
||||||
|
<button type="submit" class="btn btn-default navbar-btn"><span class="glyphicon glyphicon-refresh" aria-hidden="true"></span> <?php echo _("ReflSwitch"); ?></button>
|
||||||
|
|
||||||
|
</div></form>
|
||||||
<?php
|
<?php
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
92
scripts/switchreflector.php
Normal file
92
scripts/switchreflector.php
Normal file
|
@ -0,0 +1,92 @@
|
||||||
|
<?php
|
||||||
|
//ea4gkq
|
||||||
|
$time = microtime();
|
||||||
|
$time = explode(' ', $time);
|
||||||
|
$time = $time[1] + $time[0];
|
||||||
|
$start = $time;
|
||||||
|
|
||||||
|
// do not touch this includes!!! Never ever!!!
|
||||||
|
include "../config/config.php";
|
||||||
|
include "../include/tools.php";
|
||||||
|
include "../include/functions.php";
|
||||||
|
include "../include/init.php";
|
||||||
|
if (!isset($_SERVER['PHP_AUTH_USER']) && SWITCHNETWORKUSER !== "" && SWITCHNETWORKPW !== "") {
|
||||||
|
header('WWW-Authenticate: Basic realm="Dashboard"');
|
||||||
|
header('HTTP/1.0 401 Unauthorized');
|
||||||
|
echo 'Zur Ausführung bitte die geforderten Login-Daten eingeben!';
|
||||||
|
exit;
|
||||||
|
} else {
|
||||||
|
if ($_SERVER['PHP_AUTH_USER'] == SWITCHNETWORKUSER && $_SERVER['PHP_AUTH_PW'] == SWITCHNETWORKPW) {
|
||||||
|
$fileName = MMDVMLOGPATH."/".MMDVMLOGPREFIX."-".date("Y-m-d").".log";
|
||||||
|
?>
|
||||||
|
<!doctype html>
|
||||||
|
<html lang="es">
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
|
||||||
|
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
|
||||||
|
<!-- Das neueste kompilierte und minimierte CSS -->
|
||||||
|
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
|
||||||
|
<!-- Optionales Theme -->
|
||||||
|
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap-theme.min.css">
|
||||||
|
<!-- Das neueste kompilierte und minimierte JavaScript -->
|
||||||
|
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
|
||||||
|
<meta http-equiv="refresh" content="10; URL=../">
|
||||||
|
<title><?php echo getCallsign($mmdvmconfigs) ?> - MMDVM-Dashboard by DG9VH</title>
|
||||||
|
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div class="page-header">
|
||||||
|
<h1><small>MMDVM-Dashboard by DG9VH for <?php
|
||||||
|
if (getConfigItem("General", "Duplex", $mmdvmconfigs) == "1") {
|
||||||
|
echo "Repeater";
|
||||||
|
} else {
|
||||||
|
echo "Hotspot";
|
||||||
|
}
|
||||||
|
?>:</small> <?php echo getCallsign($mmdvmconfigs) ?></h1>
|
||||||
|
<h4>MMDVMHost by G4KLX Version: <?php echo getMMDVMHostVersion() ?></h4>
|
||||||
|
<button onclick="window.location.href='../index.php'" type="button" class="btn btn-default navbar-btn"><span class="glyphicon glyphicon-home" aria-hidden="true"></span> Home</button>
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</div>
|
||||||
|
<?php
|
||||||
|
$reflektor_nr=$_GET['reflector'];
|
||||||
|
checkSetup();
|
||||||
|
include "../include/sysinfo.php";
|
||||||
|
exec( "sudo /bin/sed '/#Options/d' -i ".MMDVMINIPATH."/".MMDVMINIFILENAME);
|
||||||
|
exec( "sudo /bin/sed 's/Options=StartRef=.*$/Options=StartRef=".$reflektor_nr.";RelinkTime=20;Userlink=1;/' -i ".MMDVMINIPATH."/".MMDVMINIFILENAME);
|
||||||
|
exec( REBOOTMMDVM );
|
||||||
|
|
||||||
|
// /bin/sed '/#Options/d' -i /opt/MMDVMHost/MMDVM.ini
|
||||||
|
// #dann
|
||||||
|
// /bin/sed 's/Options=StartRef=.*$/Options=StartRef='"$Reflektor"';RelinkTime=22;Userlink=1;/' -i /opt/MMDVMHost/MMDVM.ini
|
||||||
|
|
||||||
|
?>
|
||||||
|
<div class="alert alert-info" role="alert">Switching reflector to <b><?php echo $reflektor_nr; ?></b><br>Restarting in new selected network in progress</div>
|
||||||
|
|
||||||
|
<div class="panel panel-info">
|
||||||
|
|
||||||
|
<?php
|
||||||
|
|
||||||
|
$datum = date("d-m-Y");
|
||||||
|
$uhrzeit = date("H:i:s");
|
||||||
|
echo "Last Update $datum, $uhrzeit";
|
||||||
|
$time = microtime();
|
||||||
|
$time = explode(' ', $time);
|
||||||
|
$time = $time[1] + $time[0];
|
||||||
|
$finish = $time;
|
||||||
|
$total_time = round(($finish - $start), 4);
|
||||||
|
echo '<!--Page generated in '.$total_time.' seconds.-->';
|
||||||
|
} else {
|
||||||
|
|
||||||
|
header('WWW-Authenticate: Basic realm="Dashboard"');
|
||||||
|
header('HTTP/1.0 401 Unauthorized');
|
||||||
|
echo 'Zur Ausführung bitte die geforderten Login-Daten eingeben!';
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
?> | get your own at: <a href="https://github.com/dg9vh/MMDVMHost-Dashboard">https://github.com/dg9vh/MMDVMHost-Dashboard</a>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -261,6 +261,10 @@ get_tz_options(constant("TIMEZONE"), "Timezone", '');
|
||||||
<span class="input-group-addon" id="ENABLENETWORKSWITCHING" style="width: 300px"><?php echo _("Enable Network-Switching-Function"); ?></span>
|
<span class="input-group-addon" id="ENABLENETWORKSWITCHING" style="width: 300px"><?php echo _("Enable Network-Switching-Function"); ?></span>
|
||||||
<div class="panel-body"><input type="checkbox" name="ENABLENETWORKSWITCHING" <?php if (defined("ENABLENETWORKSWITCHING")) echo "checked" ?>></div>
|
<div class="panel-body"><input type="checkbox" name="ENABLENETWORKSWITCHING" <?php if (defined("ENABLENETWORKSWITCHING")) echo "checked" ?>></div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="input-group">
|
||||||
|
<span class="input-group-addon" id="ENABLEREFLECTORSWITCHING" style="width: 300px"><?php echo _("Enable Reflector-Switching-Function"); ?></span>
|
||||||
|
<div class="panel-body"><input type="checkbox" name="ENABLEREFLECTORSWITCHING" <?php if (defined("ENABLEREFLECTORSWITCHING")) echo "checked" ?>></div>
|
||||||
|
</div>
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
<span class="input-group-addon" id="SWITCHNETWORKUSER" style="width: 300px"><?php echo _("Username for switching networks:"); ?></span>
|
<span class="input-group-addon" id="SWITCHNETWORKUSER" style="width: 300px"><?php echo _("Username for switching networks:"); ?></span>
|
||||||
<input type="text" value="<?php echo constant("SWITCHNETWORKUSER") ?>" name="SWITCHNETWORKUSER" class="form-control" placeholder="username" aria-describedby="SWITCHNETWORKUSER">
|
<input type="text" value="<?php echo constant("SWITCHNETWORKUSER") ?>" name="SWITCHNETWORKUSER" class="form-control" placeholder="username" aria-describedby="SWITCHNETWORKUSER">
|
||||||
|
|
Loading…
Reference in a new issue