Admin is functioning — Displays Servers that are connected with in/out bytes.
This commit is contained in:
parent
129e7df710
commit
72b4c4598f
|
@ -24,7 +24,7 @@
|
||||||
<header class="bs-docs-nav navbar navbar-static-top" id="top">
|
<header class="bs-docs-nav navbar navbar-static-top" id="top">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="navbar-header">
|
<div class="navbar-header">
|
||||||
<a href="/admin/index.html" class="navbar-brand">RVPN Admin</a>
|
<a href="/admin/index.html" target="_parent" class="navbar-brand">RVPN Admin</a>
|
||||||
</div>
|
</div>
|
||||||
<nav class="collapse navbar-collapse" id="bs-navbar">
|
<nav class="collapse navbar-collapse" id="bs-navbar">
|
||||||
<ul class="nav navbar-nav">
|
<ul class="nav navbar-nav">
|
||||||
|
@ -42,19 +42,9 @@
|
||||||
</nav>
|
</nav>
|
||||||
</div>
|
</div>
|
||||||
</header>
|
</header>
|
||||||
|
|
||||||
<div class="panel panel-default">
|
|
||||||
<div class="panel-heading"></div>
|
|
||||||
<div class="panel-body">
|
|
||||||
<div class="panel panel-default panel-info">
|
|
||||||
<!-- Partials here -->
|
|
||||||
|
|
||||||
<div ng-view></div>
|
<div ng-view> </div>
|
||||||
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<script src="https://code.jquery.com/jquery-1.12.0.min.js"></script>
|
<script src="https://code.jquery.com/jquery-1.12.0.min.js"></script>
|
||||||
<script>window.jQuery || document.write('<script src="admin/js/vendor/jquery-1.12.0.min.js"><\/script>')</script>
|
<script>window.jQuery || document.write('<script src="admin/js/vendor/jquery-1.12.0.min.js"><\/script>')</script>
|
||||||
|
|
|
@ -1,17 +1,44 @@
|
||||||
console.log("app.sh startup")
|
console.log("app.sh startup")
|
||||||
|
|
||||||
|
|
||||||
var app = angular.module("rvpnApp", ["ngRoute"]);
|
var app = angular.module("rvpnApp", ["ngRoute"]);
|
||||||
app.config(function($routeProvider, $locationProvider) {
|
app.config(function($routeProvider, $locationProvider) {
|
||||||
$routeProvider
|
$routeProvider
|
||||||
.when("/admin/servers", {
|
.when("/admin/index.html", {
|
||||||
templateUrl : "admin/partials/servers.html"
|
templateUrl : "admin/partials/servers.html"
|
||||||
})
|
})
|
||||||
.when("/admin/domains", {
|
.when("/admin/servers/", {
|
||||||
|
templateUrl : "admin/partials/servers.html"
|
||||||
|
})
|
||||||
|
.when("/admin/#domains", {
|
||||||
templateUrl : "green.htm"
|
templateUrl : "green.htm"
|
||||||
})
|
})
|
||||||
.when("/blue", {
|
.when("/blue", {
|
||||||
templateUrl : "blue.htm"
|
templateUrl : "blue.htm"
|
||||||
});
|
});
|
||||||
$locationProvider.html5Mode(true);
|
$locationProvider.html5Mode(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
app.controller('serverController', function ($scope, $http) {
|
||||||
|
$scope.servers = [];
|
||||||
|
var api = '/api/com.daplie.rvpn/servers'
|
||||||
|
|
||||||
|
$http.get(api).then(function(response) {
|
||||||
|
updateView(response.data);
|
||||||
|
});
|
||||||
|
|
||||||
|
updateView = function(data) {
|
||||||
|
console.log(data);
|
||||||
|
if (data.error == 'ok' ){
|
||||||
|
console.log("ok")
|
||||||
|
$scope.servers = data.result.servers;
|
||||||
|
console.log(data.result)
|
||||||
|
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
});
|
||||||
|
|
|
@ -1,29 +1,41 @@
|
||||||
<div class="panel-heading ">Control Plane</div>
|
<div class="panel panel-default" data-ng-controller="serverController">
|
||||||
<div class="panel-body">
|
<div class="panel-heading">
|
||||||
|
<div class="panel-title">
|
||||||
<div class="row"> <!-- Auth -->
|
<div class="row">
|
||||||
<div class="col-lg-6">
|
<div class="col-md-6">
|
||||||
<div class="input-group">
|
Servers
|
||||||
<span class="input-group-btn">
|
|
||||||
<button class="btn btn-default" type="button" ng-click="startWebSocket()">Start WebSocket</button>
|
|
||||||
</span>
|
|
||||||
<button class="btn btn-default" type="button" ng-class="conn == false && 'btn-danger' || 'btn-success'">
|
|
||||||
{[{ conn == false && 'False' || 'True' }]}
|
|
||||||
</button>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="col-md-6">
|
||||||
</div>
|
<form class="form-inline pull-right">
|
||||||
|
<div class="form-group">
|
||||||
<br>
|
<label for="search">Search:</label>
|
||||||
|
<input type="text" class="form-control" id="search">
|
||||||
<div class="row">
|
</div>
|
||||||
<div class="col-lg-6">
|
</form>
|
||||||
<div class="input-group">
|
|
||||||
<span class="input-group-btn">
|
|
||||||
<button class="btn btn-default" type="button">Auth</button>
|
|
||||||
</span>
|
|
||||||
<input type="text" class="form-control" placeholder="Enter auth data here">
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="panel-body">
|
||||||
|
<table class="table table-striped table-bordered">
|
||||||
|
<th width="10%">ID</th>
|
||||||
|
<th width="20%">Name</th>
|
||||||
|
<th>Address</th>
|
||||||
|
<th>Xfer (in/out)</th>
|
||||||
|
<th>Time</th>
|
||||||
|
|
||||||
|
<tr ng-repeat="s in servers | orderBy:'server_id'">
|
||||||
|
<td>{{ s.server_id }}</td>
|
||||||
|
<td>{{ s.server_name }}</td>
|
||||||
|
<td>{{ s.source_address }}</td>
|
||||||
|
<td>{{ s.bytes_in }}/{{ s.bytes_out}}</td>
|
||||||
|
<td>{{ s.duration }}</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</table>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
Loading…
Reference in New Issue