added latest version with 6 panels and some css

This commit is contained in:
XiCoN-FJS- 2019-11-20 02:27:05 +01:00
parent 26d96e7b92
commit 15b44a5727

View File

@ -1,5 +1,6 @@
<html> <html>
<head> <head>
<meta charset="UTF-8">
<title>XTR :: xicon trace route</title> <title>XTR :: xicon trace route</title>
<style> <style>
table { table {
@ -11,54 +12,170 @@
border:1px solid grey; border:1px solid grey;
font-size: 9pt; font-size: 9pt;
} }
.info
{
display: block; position: absolute; right: 10px; top: 10px;
}
.info:hover .info_box
{
visibility: visible;
z-index: 4;
}
.info .info_box
{
display: block;
position: absolute;
right: 0px;
top: 0px;
visibility: hidden;
width: 502px;
border: solid 1px;
background-color: #999999;
font-size: 10pt;
}
.traceroutes
{
text-decoration: none;
display: inline-block;
}
.traceroutes:visited
{
color: #000000;
}
.traceroutes:hover
{
color: #880000;
transform: rotate(-30deg);
}
.traceroutes:active
{
color: #bb0000;
}
.traceroutes_rotating
{
display: inline-block;
text-decoration: none;
color: #bb0000;
animation: spin 2s linear infinite;
}
@keyframes spin
{
0% { transform: rotate(-30deg); }
25% { transform: rotate(0deg); }
50% { transform: rotate(30deg); }
75% { transform: rotate(0deg); }
100% { transform: rotate(-30deg); }
}
</style> </style>
</head> </head>
<body> <body>
<a href="#" onclick="javascript:doit('1');javascript:doit('2');javascript:doit('3');">execute dem all</a> <div id="info" class="info">
<div style="width: 100%; display: table;"> <div id="info_box" class="info_box">
<div style="display: table-row"> This service is free for use by accepting the <a href="aup.txt">Acceptable Use Policy</a>.<br>
<div style="width: 33%; display: table-cell;"> <br>
This is just an interface to to give a more GUI-ish
access to the self-registered XTR clients. No traceroute requests will be saved on this server. All request to the XTR clients
are handled by your browser.<br>
<br>
Want to add your server? <a href="xtr.pl">Download XTR client</a> now. Readme included in source code!<br>
Want to run your own master server? <a href="xtrd.pl">Download XTRd</a>. Readme included in source code!<br>
<br>
Questions?/Impress? -> <a href="mailto:rest@xicon.de">Friedrich Schrader</a>
</div>
</div>
<div style="display: inline-block; border-style: solid; border-width: 0px 1px 1px 0px; border-color: #cccccc;">
<div style="display: inline-block;"><a href="#" onclick="javajscript:dosome('6');">execute these:</a><br>&nbsp;</div>
<div style="display: inline-block;">
<input type="checkbox" id="cb1" name="cb1" checked>
<input type="checkbox" id="cb2" name="cb2">
<input type="checkbox" id="cb3" name="cb3"><br>
<input type="checkbox" id="cb4" name="cb4">
<input type="checkbox" id="cb5" name="cb5">
<input type="checkbox" id="cb6" name="cb6">
</div>
</div>
<div style="width: 100%;">
<div style="width: 33%; display: inline-block; margin-top: 20px;">
<select name="server1" id="server1"> <select name="server1" id="server1">
<option value="nas3000.xicon.eu">xicon-nas</option>
<option value="192.168.99.137:3000">xicon-nas_local</option>
<option value="199.247.22.146:3000">vultr_frankfurt01</option>
</select> </select>
<input name="target1" id="target1" value="8.8.8.8"> <input name="target1" id="target1" value="8.8.8.8">
<a href="#" onclick="javascript:doit('1');">doit</a> <img src="spinner.gif" id="spinner1" style="visibility: hidden;"> <a href="#" onclick="javascript:doit('1');" class="traceroutes" id="doit1"></a>
<div id="div1"> <div id="div1">
<table><tr><td>#empty</td><td>#empty</td><td>#empty</td></tr></table> <table><tr><td>#empty</td><td>#empty</td><td>#empty</td></tr></table>
</div> </div>
</div> </div>
<div style="width: 33%; display: table-cell;"> <div style="width: 33%; display: inline-block; margin-top: 20px;">
<select name="server2" id="server2"> <select name="server2" id="server2">
<option value="nas3000.xicon.eu">xicon-nas</option>
<option value="192.168.99.137:3000">xicon-nas_local</option>
<option value="199.247.22.146:3000">vultr_frankfurt01</option>
</select> </select>
<input name="target2" id="target2" value="193.99.144.80"> <input name="target2" id="target2" value="www.heise.de">
<a href="#" onclick="javascript:doit('2');">doit</a> <img src="spinner.gif" id="spinner2" style="visibility: hidden;"> <a href="#" onclick="javascript:doit('2');" class="traceroutes" id="doit2"></a>
<div id="div2"> <div id="div2">
<table><tr><td>#empty</td><td>#empty</td><td>#empty</td></tr></table> <table><tr><td>#empty</td><td>#empty</td><td>#empty</td></tr></table>
</div> </div>
</div> </div>
<div style="width: 33%; display: table-cell;"> <div style="width: 33%; display: inline-block; margin-top: 20px;">
<select name="server3" id="server3"> <select name="server3" id="server3">
<option value="nas3000.xicon.eu">xicon-nas</option>
<option value="192.168.99.137:3000">xicon-nas_local</option>
<option value="199.247.22.146:3000">vultr_frankfurt01</option>
</select> </select>
<input name="target3" id="target3" value="128.65.209.14"> <input name="target3" id="target3" value="link11.com">
<a href="#" onclick="javascript:doit('3');">doit</a> <img src="spinner.gif" id="spinner3" style="visibility: hidden;"> <a href="#" onclick="javascript:doit('3');" class="traceroutes" id="doit3"></a>
<div id="div3"> <div id="div3">
<table><tr><td>#empty</td><td>#empty</td><td>#empty</td><td>#empty</td></tr></table> <table><tr><td>#empty</td><td>#empty</td><td>#empty</td><td>#empty</td></tr></table>
</div> </div>
</div> </div>
<div style="width: 33%; display: inline-block; margin-top: 20px;">
<select name="server4" id="server4">
</select>
<input name="target4" id="target4" value="ipv4.xicon.eu">
<a href="#" onclick="javascript:doit('4');" class="traceroutes" id="doit4"></a>
<div id="div4">
<table><tr><td>#empty</td><td>#empty</td><td>#empty</td><td>#empty</td></tr></table>
</div>
</div>
<div style="width: 33%; display: inline-block; margin-top: 20px;">
<select name="server5" id="server5">
</select>
<input name="target5" id="target5" value="ipv6.xicon.eu">
<a href="#" onclick="javascript:doit('5');" class="traceroutes" id="doit5"></a>
<div id="div5">
<table><tr><td>#empty</td><td>#empty</td><td>#empty</td><td>#empty</td></tr></table>
</div>
</div>
<div style="width: 33%; display: inline-block; margin-top: 20px;">
<select name="server6" id="server6">
</select>
<input name="target6" id="target6" value="2001:638:60f:110::1:2">
<a href="#" onclick="javascript:doit('6');" class="traceroutes" id="doit6"></a>
<div id="div6">
<table><tr><td>#empty</td><td>#empty</td><td>#empty</td><td>#empty</td></tr></table>
</div>
</div> </div>
</div> </div>
<script src="jquery-3.4.1.min.js"></script> <script src="jquery-3.4.1.min.js"></script>
<script> <script>
function doit(target_div) { function dosome(cb_count)
{
for (i = 1; i <= cb_count; i++)
{
var checkbox = document.getElementById("cb"+i).checked;
if( checkbox === true)
{
doit(i);
}
}
}
function doit(target_div)
{
var str1= new Object(); var str1= new Object();
var server=document.getElementById("server"+target_div).value; var server=document.getElementById("server"+target_div).value;
var target_ip=document.getElementById("target"+target_div).value; var target_ip=document.getElementById("target"+target_div).value;
@ -69,11 +186,12 @@
dataType: "JSON", dataType: "JSON",
beforeSend: function () beforeSend: function ()
{ {
document.getElementById("spinner"+target_div).style.visibility="visible"; document.getElementById("doit"+target_div).classList.add('traceroutes_rotating');
} }
}).done(function( jsonResult ) }).done(function( jsonResult )
{ {
document.getElementById("spinner"+target_div).style.visibility="hidden"; document.getElementById("doit"+target_div).classList.remove('traceroutes_rotating');
str1=JSON.parse(JSON.stringify(jsonResult)); str1=JSON.parse(JSON.stringify(jsonResult));
var tbl=$("<table/>").attr("id","mytable"+target_div); var tbl=$("<table/>").attr("id","mytable"+target_div);
@ -85,7 +203,7 @@
var td1="<td>"+str1[i][0]+"</td>"; var td1="<td>"+str1[i][0]+"</td>";
var td2="<td>"+str1[i][1]+"</td>"; var td2="<td>"+str1[i][1]+"</td>";
var td3="<td>"+str1[i][2]+"</td>"; var td3="<td>"+str1[i][2]+"</td>";
var td4="<td>"+str1[i][3]+"</td></tr>"; var td4="<td title=\""+str1[i][4]+"\">"+str1[i][3]+"</td></tr>";
$("#mytable"+target_div).append(tr+td1+td2+td3+td4); $("#mytable"+target_div).append(tr+td1+td2+td3+td4);