mirror of
https://github.com/billz/raspap-webgui.git
synced 2025-03-01 10:31:47 +00:00
Merge branch 'master' into feature/zbchristian-clients
This commit is contained in:
@@ -20,7 +20,7 @@
|
||||
<div class="col-lg-12">
|
||||
<div class="card mb-3">
|
||||
<div class="card-body">
|
||||
<h4><?php echo _("Hourly traffic amount"); ?></h4>
|
||||
<h4 class="card-title"><?php echo _("Hourly traffic amount"); ?></h4>
|
||||
<div id="divInterface" class="d-none"><?php echo $apInterface; ?></div>
|
||||
<div class="col-md-12">
|
||||
<canvas id="divDBChartBandwidthhourly"></canvas>
|
||||
@@ -32,45 +32,85 @@
|
||||
<div class="col-sm-6 align-items-stretch">
|
||||
<div class="card h-100">
|
||||
<div class="card-body wireless">
|
||||
<h4><?php echo _("$client_title"); ?></h4>
|
||||
<div class="row justify-content-md-center">
|
||||
<div class="col-md">
|
||||
<h4 class="card-title"><?php echo _("$client_title"); ?></h4>
|
||||
<div class="row ml-1">
|
||||
<div class="col-sm">
|
||||
<?php $valEcho=function($cl,$id) {$val = isset($cl[$id])&& !empty($cl[$id]) ? $cl[$id] : "-"; echo htmlspecialchars($val,ENT_QUOTES);} ?>
|
||||
<?php if ($clientinfo["type"] == "wlan") : // WIRELESS ?>
|
||||
<div class="info-item"><?php echo _("Connected To"); ?></div><div><?php $valEcho($clientinfo,"ssid"); ?></div>
|
||||
<div class="info-item"><?php echo _("AP Mac Address"); ?></div><div><?php $valEcho($clientinfo,"ap-mac"); ?></div>
|
||||
<div class="info-item"><?php echo _("Bitrate"); ?></div><div><?php $valEcho($clientinfo,"bitrate"); ?></div>
|
||||
<div class="info-item"><?php echo _("Signal Level"); ?></div><div><?php $valEcho($clientinfo,"signal"); ?></div>
|
||||
<div class="info-item"><?php echo _("Transmit Power"); ?></div><div><?php echo htmlspecialchars($txPower, ENT_QUOTES); ?></div>
|
||||
<div class="info-item"><?php echo _("Frequency"); ?></div><div><?php $valEcho($clientinfo,"freq"); ?></div>
|
||||
<div class="row mb-1">
|
||||
<div class="info-item col-xs-3"><?php echo _("Connected To"); ?></div><div class="info-value col-xs-3"><?php $valEcho($clientinfo,"ssid"); ?></div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<div class="info-item col-xs-3"><?php echo _("AP Mac Address"); ?></div><div class="info-value col-xs-3"><?php $valEcho($clientinfo,"ap-mac"); ?></div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<div class="info-item col-xs-3"><?php echo _("Bitrate"); ?></div><div class="info-value col-xs-3"><?php $valEcho($clientinfo,"bitrate"); ?></div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<div class="info-item col-xs-3"><?php echo _("Signal Level"); ?></div><div class="info-value col-xs-3"><?php $valEcho($clientinfo,"signal"); ?></div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<div class="info-item col-xs-3"><?php echo _("Transmit Power"); ?></div><div class="info-value col-xs-3"><?php echo htmlspecialchars($txPower, ENT_QUOTES); ?></div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<div class="info-item col-xs-3"><?php echo _("Frequency"); ?></div><div class="info-value col-xs-3"><?php $valEcho($clientinfo,"freq"); ?></div>
|
||||
</div>
|
||||
<?php elseif ($clientinfo["type"] == "phone" ) : // Smartphones (tethering over USB) ?>
|
||||
<div class="info-item"><?php echo _("Device"); ?></div><div><?php $valEcho($clientinfo,"vendor")." ". $valEcho($clientinfo,"model"); ?></div>
|
||||
<div class="info-item"><?php echo _("IP Address"); ?></div><div><?php $valEcho($clientinfo,"ipaddress"); ?></div>
|
||||
<div class="row mb-1">
|
||||
<div class="info-item col-xs-3"><?php echo _("Device"); ?></div><div class="info-value col-xs-3"><?php $valEcho($clientinfo,"vendor")." ". $valEcho($clientinfo,"model"); ?></div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<div class="info-item col-xs-3"><?php echo _("IP Address"); ?></div><div class="info-value col-xs-3"><?php $valEcho($clientinfo,"ipaddress"); ?></div>
|
||||
</div>
|
||||
<?php elseif ($clientinfo["type"] == "hilink" ) : // MOBILE DATA - ROUTER MODE (HILINK) ?>
|
||||
<?php
|
||||
exec('ip route list | sed -rn "s/default via (([0-9]{1,3}\.){3}[0-9]{1,3}).*dev '.$clientinfo["name"].'.*/\1/p"',$gw); // get gateway
|
||||
$gw=empty($gw) ? "" : $gw[0];
|
||||
?>
|
||||
<div class="info-item"><?php echo _("Device"); ?></div><div><?php $valEcho($clientinfo,"model")." (Hilink)"; ?></div>
|
||||
<div class="info-item"><?php echo _("Connection mode"); ?></div><div><?php $valEcho($clientinfo,"mode"); ?></div>
|
||||
<div class="info-item"><?php echo _("Signal quality"); ?></div><div><?php $valEcho($clientinfo,"signal"); ?></div>
|
||||
<div class="info-item"><?php echo _("Network"); ?></div><div><?php $valEcho($clientinfo,"operator"); ?></div>
|
||||
<div class="info-item"><?php echo _("WAN IP"); ?></div><div><?php $valEcho($clientinfo,"wan_ip"); ?></div>
|
||||
<div class="info-item"><?php echo _("Web-GUI"); ?></div><div><?php if(!empty($gw)) echo '<a href="http://'.$gw.'" >'.$gw."</a>"; ?></div>
|
||||
<div class="row mb-1">
|
||||
<div class="info-item col-xs-3"><?php echo _("Device"); ?></div><div class="info-value col-xs-3"><?php $valEcho($clientinfo,"model")." (Hilink)"; ?></div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<div class="info-item col-xs-3"><?php echo _("Connection mode"); ?></div><div class="info-value col-xs-3"><?php $valEcho($clientinfo,"mode"); ?></div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<div class="info-item col-xs-3"><?php echo _("Signal quality"); ?></div><div class="info-value col-xs-3"><?php $valEcho($clientinfo,"signal"); ?></div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<div class="info-item col-xs-3"><?php echo _("Network"); ?></div><div class="info-value col-xs-3"><?php $valEcho($clientinfo,"operator"); ?></div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<div class="info-item col-xs-3"><?php echo _("WAN IP"); ?></div><div class="info-value col-xs-3"><?php $valEcho($clientinfo,"wan_ip"); ?></div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<div class="info-item col-xs-3"><?php echo _("Web-GUI"); ?></div><div class="info-value col-xs-3"><?php if(!empty($gw)) echo '<a href="http://'.$gw.'" >'.$gw."</a>"; ?></div>
|
||||
</div>
|
||||
<?php elseif ($clientinfo["type"] == "ppp" ) : // MOBILE DATA MODEM) ?>
|
||||
<div class="info-item"><?php echo _("Device"); ?></div><div><?php $valEcho($clientinfo,"model"); ?></div>
|
||||
<div class="info-item"><?php echo _("Connection mode"); ?></div><div><?php $valEcho($clientinfo,"mode"); ?></div>
|
||||
<div class="info-item"><?php echo _("Signal strength"); ?></div><div><?php $valEcho($clientinfo,"signal"); ?></div>
|
||||
<div class="info-item"><?php echo _("Network"); ?></div><div><?php $valEcho($clientinfo,"operator"); ?></div>
|
||||
<div class="row mb-1">
|
||||
<div class="info-item col-xs-3"><?php echo _("Device"); ?></div><div class="info-value col-xs-3"><?php $valEcho($clientinfo,"model"); ?></div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<div class="info-item col-xs-3"><?php echo _("Connection mode"); ?></div><div class="info-value col-xs-3"><?php $valEcho($clientinfo,"mode"); ?></div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<div class="info-item col-xs-3"><?php echo _("Signal strength"); ?></div><div class="info-value col-xs-3"><?php $valEcho($clientinfo,"signal"); ?></div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<div class="info-item col-xs-3"><?php echo _("Network"); ?></div><div class="info-value col-xs-3"><?php $valEcho($clientinfo,"operator"); ?></div>
|
||||
</div>
|
||||
<?php elseif ($clientinfo["type"] == "eth" ) : // ETHERNET ?>
|
||||
<div class="info-item"><?php echo _("Device"); ?></div><div><?php $valEcho($clientinfo,"vendor")." ".$valEcho($clientinfo,"model"); ?></div>
|
||||
<div class="info-item"><?php echo _("IP Address"); ?></div><div><?php echo $valEcho($clientinfo,"ipaddress"); ?></div>
|
||||
<div class="row mb-1">
|
||||
<div class="info-item col-xs-3"><?php echo _("Device"); ?></div><div class="info-value col-xs-3"><?php $valEcho($clientinfo,"vendor")." ".$valEcho($clientinfo,"model"); ?></div>
|
||||
</div>
|
||||
<div class="row mb-1">
|
||||
<div class="info-item col-xs-3"><?php echo _("IP Address"); ?></div><div class="info-value col-xs-3"><?php echo $valEcho($clientinfo,"ipaddress"); ?></div>
|
||||
</div>
|
||||
<?php else : // NO CLIENT ?>
|
||||
<div class=""><?php echo _("No Client device or not yet configured"); ?></div>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
<?php if ($isClientConfigured) : ?>
|
||||
<div class="col-md mt-2 d-flex justify-content-center">
|
||||
<div class="col-md d-flex">
|
||||
<?php
|
||||
preg_match("/.*\((\s*\d*)\s*%\s*\)/",$clientinfo["signal"],$match);
|
||||
$strLinkQuality=array_key_exists(1,$match) ? $match[1] : 0;
|
||||
@@ -88,7 +128,7 @@
|
||||
<div class="col-sm-6">
|
||||
<div class="card h-100 mb-3">
|
||||
<div class="card-body">
|
||||
<h4><?php echo _("Connected Devices"); ?></h4>
|
||||
<h4 class="card-title"><?php echo _("Connected Devices"); ?></h4>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-hover">
|
||||
<thead>
|
||||
|
@@ -55,6 +55,18 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="form-group col-md-6">
|
||||
<div class="custom-control custom-switch">
|
||||
<input class="custom-control-input" id="default-route" type="checkbox" name="DefaultRoute" value="1" aria-describedby="default-route-description">
|
||||
<label class="custom-control-label" for="default-route"><?php echo _("Install a default route for this interface") ?></label>
|
||||
</div>
|
||||
<p class="mb-0" id="default-route-description">
|
||||
<small><?php echo _("This toggles the <code>gateway</code>/<code>nogateway</code> option for this interface in the DHCPCD configuration.") ?></small>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<h5 class="mt-1">DHCP options</h5>
|
||||
<div class="row">
|
||||
<div class="form-group col-md-6">
|
||||
|
@@ -233,7 +233,7 @@
|
||||
<option value="OM">Oman</option>
|
||||
<option value="PK">Pakistan</option>
|
||||
<option value="PW">Palau</option>
|
||||
<option value="PS">Palestinian Territory, Occupied</option>
|
||||
<option value="PS">Palestinian Territory</option>
|
||||
<option value="PA">Panama</option>
|
||||
<option value="PG">Papua New Guinea</option>
|
||||
<option value="PY">Paraguay</option>
|
||||
@@ -281,7 +281,7 @@
|
||||
<option value="SE">Sweden</option>
|
||||
<option value="CH">Switzerland</option>
|
||||
<option value="SY">Syrian Arab Republic</option>
|
||||
<option value="TW">Taiwan, Province of China</option>
|
||||
<option value="TW">Taiwan</option>
|
||||
<option value="TJ">Tajikistan</option>
|
||||
<option value="TZ">Tanzania, United Republic of</option>
|
||||
<option value="TH">Thailand</option>
|
||||
|
@@ -45,8 +45,7 @@
|
||||
</div><!-- /.tab-content -->
|
||||
|
||||
<?php echo $buttons ?>
|
||||
</form>
|
||||
</div>
|
||||
</form>
|
||||
</div><!-- /.card-body -->
|
||||
<div class="card-footer"><?php echo _("Information provided by openvpn"); ?></div>
|
||||
</div><!-- /.card -->
|
||||
|
@@ -8,11 +8,11 @@
|
||||
</p>
|
||||
<div class="openvpn-configs js-openvpn-configs-container">
|
||||
<?php foreach ($clients as $client) :
|
||||
if ($client == "login.conf") {
|
||||
$label = file_get_meta(RASPI_OPENVPN_CLIENT_LOGIN,'#\sfilename\s(.*)');
|
||||
if ($client == "client.conf") {
|
||||
$label = file_get_meta(RASPI_OPENVPN_CLIENT_CONFIG,'#\sfilename\s(.*)');
|
||||
$btn_class = "active";
|
||||
} else {
|
||||
$label = trim(pathinfo($client, PATHINFO_FILENAME), "_login");
|
||||
$label = preg_replace('/_client$/','',pathinfo($client, PATHINFO_FILENAME));
|
||||
$client = $label;
|
||||
$btn_class = "disabled";
|
||||
}?>
|
||||
|
@@ -1,36 +1,71 @@
|
||||
<div class="tab-pane active" id="openvpnclient">
|
||||
<h4 class="mt-3"><?php echo _("Client settings"); ?></h4>
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
<div class="row">
|
||||
<div class="col-lg-12 mt-2 mb-2">
|
||||
<div class="info-item"><?php echo _("IPv4 Address"); ?></div>
|
||||
<div class="info-item"><?php echo htmlspecialchars($public_ip, ENT_QUOTES); ?><a class="text-gray-500" href="https://ipapi.co/<?php echo($public_ip); ?>" target="_blank" rel="noopener noreferrer"><i class="fas fa-external-link-alt ml-2"></i></a></div>
|
||||
</div>
|
||||
<div class="col-lg-8">
|
||||
<div class="row mb-2">
|
||||
<div class="col-lg-12 mt-2 mb-2">
|
||||
<div class="row ml-1">
|
||||
<div class="info-item col-xs-3"><?php echo _("IPv4 Address"); ?></div>
|
||||
<div class="info-value col-xs-3"><?php echo htmlspecialchars($public_ip, ENT_QUOTES); ?><a class="text-gray-500" href="https://ipapi.co/<?php echo($public_ip); ?>" target="_blank" rel="noopener noreferrer"><i class="fas fa-external-link-alt ml-2"></i></a></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="form-group col-lg-12">
|
||||
<label for="code"><?php echo _("Username"); ?></label>
|
||||
<input type="text" class="form-control" name="authUser" value="<?php echo htmlspecialchars($authUser, ENT_QUOTES); ?>" />
|
||||
</div>
|
||||
<h5><?php echo _("Authentification Method"); ?></h5>
|
||||
<div class="col-sm-12 mt-2 mb-2 form-check">
|
||||
<input class="form-check-input" id="ovpn-userpw" name="sel1" value="userpw" data-toggle="" data-parent="#clientsettings" data-target="#UserPW" type="radio" checked>
|
||||
<label class="form-check-label"><?php echo _("Username and password"); ?></label>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="form-group col-lg-12">
|
||||
<label for="code"><?php echo _("Password"); ?></label>
|
||||
<input type="password" class="form-control" name="authPassword" value="<?php echo htmlspecialchars($authPassword, ENT_QUOTES); ?>" />
|
||||
</div>
|
||||
<div class="col-sm-12 mt-2 mb-2 form-check">
|
||||
<input class="form-check-input" id="ovpn-certs" name="sel1" value="certs" data-toggle="" data-parent="#clientsettings" data-target="#Certs" type="radio">
|
||||
<label class="form-check-label"><?php echo _("Certificates"); ?></label>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="form-group col-lg-12">
|
||||
<div class="custom-file">
|
||||
<input type="file" class="custom-file-input" name="customFile" id="customFile">
|
||||
<label class="custom-file-label" for="customFile"><?php echo _("Select OpenVPN configuration file (.ovpn)"); ?></label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div><!-- col-->
|
||||
<div class="col-sm">
|
||||
<a href="https://go.nordvpn.net/aff_c?offer_id=15&aff_id=36402&url_id=902"><img src="app/img/no-trace-200x200.png" class="float-left mb-3 mt-3"></a>
|
||||
<div class="col-sm-12 ml-2">
|
||||
<div class="panel-group" id="clientsettings">
|
||||
<div class="panel panel-default panel-collapse" id="PanelUserPW" >
|
||||
<div class="panel-heading">
|
||||
<h5 class="panel-title"><?php echo _("Enter username and password"); ?></h5>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<div class="form-group col-lg-12">
|
||||
<label for="code"><?php echo _("Username"); ?></label>
|
||||
<input type="text" class="form-control" name="authUser" value="<?php echo htmlspecialchars($authUser, ENT_QUOTES); ?>" />
|
||||
</div>
|
||||
<div class="form-group col-lg-12">
|
||||
<label for="code"><?php echo _("Password"); ?></label>
|
||||
<input type="password" class="form-control" name="authPassword" value="<?php echo htmlspecialchars($authPassword, ENT_QUOTES); ?>" />
|
||||
</div>
|
||||
</div>
|
||||
</div><!-- panel -->
|
||||
<div class="panel panel-default panel-collapse collapse in" id="PanelCerts">
|
||||
<div class="panel-body">
|
||||
<div class="panel-heading">
|
||||
<h5 class="panel-title"><?php echo _("Certificates in the configuration file"); ?></h5>
|
||||
</div>
|
||||
<p><?php echo _("RaspAP supports certificates by including them in the configuration file."); ?>
|
||||
<ul>
|
||||
<small>
|
||||
<li><?php echo _("Signing certification authority (CA) certificate (e.g. <code>ca.crt</code>): enclosed in <code><ca> ... </ca></code> tags."); ?></li>
|
||||
<li><?php echo _("Client certificate (public key) (e.g. <code>client.crt</code>): enclosed in <code><cert> ... </cert></code> tags."); ?></li>
|
||||
<li><?php echo _("Private key of the client certificate (e.g. <code>client.key</code>): enclosed in <code><key> ... </key></code> tags."); ?></li>
|
||||
</small>
|
||||
</ul>
|
||||
</p>
|
||||
</div>
|
||||
</div> <!-- panel -->
|
||||
</div> <!-- panel-group -->
|
||||
</div> <!-- col -->
|
||||
<div class="col-sm-12 ">
|
||||
<div class="form-group">
|
||||
<h5 class="panel-title"><?php echo _("Configuration File"); ?></h4>
|
||||
<div class="custom-file">
|
||||
<input type="file" class="custom-file-input" name="customFile" id="customFile">
|
||||
<label class="custom-file-label" for="customFile"><?php echo _("Select OpenVPN configuration file (.ovpn)"); ?></label>
|
||||
</div>
|
||||
</div>
|
||||
</div> <!-- col -->
|
||||
</div><!-- col-8 -->
|
||||
<div class="col-sm-auto">
|
||||
<a href="https://go.nordvpn.net/aff_c?offer_id=15&aff_id=36402&url_id=902"><img src="app/img/no-trace-200x200.png" class="float-left mb-3 mt-3"></a>
|
||||
</div>
|
||||
</div><!-- /.row -->
|
||||
</div><!-- /.tab-pane | general tab -->
|
||||
|
Reference in New Issue
Block a user