Zdalne-systemy-z-kit-uVPN/templates/index.html
2023-04-21 10:05:58 +02:00

97 lines
2.1 KiB
HTML

{% extends "base.html" %}
{% block title %}Panel administracyjny{% endblock %}
{% block style %}
body {
font-family: Arial, sans-serif;
background-color: #f5f5f5;
margin: 0;
padding: 0;
}
h1 {
font-size: 32px;
font-weight: bold;
color: #333;
margin: 20px 0;
}
table {
border-collapse: collapse;
margin: 20px 0;
width: 100%;
}
table th, table td {
padding: 10px;
text-align: left;
vertical-align: middle;
border: 1px solid #ccc;
}
table th {
background-color: #eee;
font-weight: bold;
}
table tr:hover {
background-color: #f0f0f0;
}
button {
background-color: #4CAF50;
border: none;
color: white;
padding: 10px 20px;
text-align: center;
text-decoration: none;
display: inline-block;
font-size: 16px;
margin: 10px 0;
cursor: pointer;
}
button:hover {
background-color: #3e8e41;
}
{% endblock %}
{% block content %}
<div class="container">
<h1 class="my-5">Lista maszyn</h1>
<table class="table table-striped table-hover">
<thead>
<tr>
<th>Nazwa maszyny(token)</th>
<th>Obraz</th>
<th>Czas uruchomienia ({{ timezone }})</th>
<th>IP uVPN</th>
<th>IP lokalne</th>
<th></th>
</tr>
</thead>
<tbody>
{% for machine in machines %}
<tr>
<td>{{ machine.name }}</td>
<td>{{ machine.image_name }}</td>
<td>{{ machine.start_time }}</td>
<td>{{ machine.ipvpn }}</td>
<td>{{ machine.iplocal }}</td>
<td><button class="btn btn-primary" onclick="ssh('{{ machine.ipvpn }}','{{machine.iplocal}}', '{{ machine.username }}', '{{ machine.password }}')">SSH</button></td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
<script>
function ssh(ipvpn, iplocal username, password) {
const currentLocation = window.location;
let ip = ipvpn != null ? ipvpn : iplocal;
const newUrl = currentLocation.protocol + '//' + currentLocation.hostname + ':' + {{ ssh_port }} + "/?hostname="+ip+"&username="+username+"&password="+btoa(password);
window.open(newUrl,"_blank");
}
</script>
{% endblock %}