1
0
mirror of https://github.com/cmur2/openvpn-status-web.git synced 2024-12-22 22:54:24 +01:00

Show multiple vpns

This commit is contained in:
cn 2013-05-03 21:12:06 +02:00
parent a1a6b33902
commit c51968618d
2 changed files with 60 additions and 54 deletions

View File

@ -43,8 +43,11 @@ module OpenVPNStatusWeb
return [404, {"Content-Type" => "text/plain"}, ["Not Found"]] if env["PATH_INFO"] != "/" return [404, {"Content-Type" => "text/plain"}, ["Not Found"]] if env["PATH_INFO"] != "/"
# variables for template # variables for template
name = @vpns.keys.first vpns = @vpns
status = parse_status_log(@vpns[name]) stati = {}
@vpns.each do |name,config|
stati[name] = parse_status_log(config)
end
# eval # eval
html = @main_tmpl.result(binding) html = @main_tmpl.result(binding)

View File

@ -42,67 +42,70 @@ thead {
</head> </head>
<body> <body>
<h1>OpenVPN Status for <%= name %></h1> <% vpns.each do |name,config| %>
<% status = stati[name] %>
<h1>OpenVPN Status for <%= name %></h1>
<h2>Client List</h2> <h2>Client List</h2>
<div> <div>
<table> <table>
<thead> <thead>
<td class="first">Common Name</td> <td class="first">Common Name</td>
<td class="middle">Real Address</td> <td class="middle">Real Address</td>
<td class="middle">Data Received</td> <td class="middle">Data Received</td>
<td class="middle">Data Sent</td> <td class="middle">Data Sent</td>
<td class="last">Connected Since</td> <td class="last">Connected Since</td>
</thead> </thead>
<tbody> <tbody>
<% status.client_list.each do |client| %> <% status.client_list.each do |client| %>
<tr> <tr>
<td class="first"><%= client[0] %></td> <td class="first"><%= client[0] %></td>
<td class="middle"><%= client[1] %></td> <td class="middle"><%= client[1] %></td>
<td class="middle"><%= client[2].to_i.as_bytes %></td> <td class="middle"><%= client[2].to_i.as_bytes %></td>
<td class="middle"><%= client[3].to_i.as_bytes %></td> <td class="middle"><%= client[3].to_i.as_bytes %></td>
<td class="last"><%= client[4] %></td> <td class="last"><%= client[4] %></td>
</tr> </tr>
<% end %> <% end %>
</tbody> </tbody>
</table> </table>
</div> </div>
<h2>Routing Table</h2> <h2>Routing Table</h2>
<div> <div>
<table> <table>
<thead> <thead>
<td class="first">Virtual Address</td> <td class="first">Virtual Address</td>
<td class="middle">Common Name</td> <td class="middle">Common Name</td>
<td class="middle">Real Address</td> <td class="middle">Real Address</td>
<td class="last">Last Ref</td> <td class="last">Last Ref</td>
</thead> </thead>
<tbody> <tbody>
<% status.routing_table.each do |e| %> <% status.routing_table.each do |e| %>
<tr> <tr>
<td class="first"><%= e[0] %></td> <td class="first"><%= e[0] %></td>
<td class="middle"><%= e[1] %></td> <td class="middle"><%= e[1] %></td>
<td class="middle"><%= e[2] %></td> <td class="middle"><%= e[2] %></td>
<td class="last"><%= e[3] %></td> <td class="last"><%= e[3] %></td>
</tr> </tr>
<% end %> <% end %>
</tbody> </tbody>
</table> </table>
</div> </div>
<h2>Global Stats</h2> <h2>Global Stats</h2>
<div> <div>
<table> <table>
<tbody> <tbody>
<% status.global_stats.each do |e| %> <% status.global_stats.each do |e| %>
<tr> <tr>
<td><%= e[0] %>:</td> <td><%= e[0] %>:</td>
<td><%= e[1] %></td> <td><%= e[1] %></td>
</tr> </tr>
<% end %>
</tbody>
</table>
</div>
<% end %> <% end %>
</tbody>
</table>
</div>
</body> </body>
</html> </html>