SusiDNS changes:

- Additional column on hostname list page for helper address with icon, and
  iconfication of b32 addresses
- Added minified identicon to hostname column
- Changed destination address display on list/details from textarea to div to
  accomodate automatic height adjustment (no need to manually specify height and
  hope for the best)
  - Also allows us to display the full Destination on the details page
- Tooltips for eraser icon + new address helper icon & minified identicons
- Consolidation of Hostname/host name/name referenced: now all "Hostname"
- Theme tweaks and whitespace removal
This commit is contained in:
str4d
2017-02-10 16:37:15 +00:00
parent a22bf6b4a4
commit bfe8c65628
12 changed files with 1198 additions and 321 deletions

View File

@@ -174,7 +174,7 @@ public class AddressbookBean extends BaseBean
try { fis.close(); } catch (IOException ioe) {}
}
if( message.length() > 0 )
message = "<p>" + message + "</p>";
message = "<p id=\"filtered\">" + message + "</p>";
return message;
}

View File

@@ -59,7 +59,6 @@
</div>
<hr>
<div id="navi">
<p>
<a id="overview" href="index"><%=intl._t("Overview")%></a>&nbsp;
<a class="abook" href="addressbook?book=private"><%=intl._t("Private")%></a>&nbsp;
<a class="abook" href="addressbook?book=master"><%=intl._t("Master")%></a>&nbsp;
@@ -67,7 +66,6 @@
<a class="abook" href="addressbook?book=published"><%=intl._t("Published")%></a>&nbsp;
<a id="subs" href="subscriptions"><%=intl._t("Subscriptions")%></a>&nbsp;
<a id="config" href="config"><%=intl._t("Configuration")%></a>
</p>
</div>
<hr>
<div class="headline" id="addressbook">
@@ -91,7 +89,8 @@ ${book.loadBookMessages}
<input type="hidden" name="filter" value="${book.filter}">
</c:if>
<input type="submit" class="export" value="<%=intl._t("Export in hosts.txt format")%>" />
</div></form>
</div>
</form>
<% } /* book.getEntries().length() > 0 */ %>
<div id="filter">
@@ -131,19 +130,22 @@ ${book.loadBookMessages}
<a href="addressbook?filter=z&amp;begin=0&amp;end=49">z</a>
<a href="addressbook?filter=0-9&amp;begin=0&amp;end=49">0-9</a>
<a href="addressbook?filter=xn--&amp;begin=0&amp;end=49"><%=intl._t("other")%></a>
<a href="addressbook?filter=none&amp;begin=0&amp;end=49"><%=intl._t("all")%></a></p>
<a href="addressbook?filter=none&amp;begin=0&amp;end=49"><%=intl._t("all")%></a>
</p>
</div>
<div id="search">
<form method="POST" action="addressbook">
<input type="hidden" name="begin" value="0">
<input type="hidden" name="end" value="49">
<table><tr>
<table>
<tr>
<td class="search"><%=intl._t("Search")%>: <input class="search" type="text" name="search" value="${book.search}" size="20" ></td>
<td class="search"><input class="search" type="submit" name="submitsearch" value="<%=intl._t("Search")%>" ></td>
</tr>
</table>
</form></div>
</form>
</div>
</c:if>
<%
@@ -157,32 +159,37 @@ ${book.loadBookMessages}
<input type="hidden" name="end" value="49">
<jsp:setProperty name="book" property="trClass" value="0" />
<div id="book">
<table class="book" cellspacing="0" cellpadding="5">
<table class="book" id="host_list" cellspacing="0" cellpadding="5">
<tr class="head">
<% if (book.getEntries().length > 0) { /* Don't show if no results. Can't figure out how to do this with c:if */ %>
<th><%=intl._t("Hostname")%></th>
<th><%=intl._t("Link (b32)")%></th>
<th>Helper</th>
<th>Details</th>
<th><%=intl._t("Destination")%></th>
<c:if test="${book.validBook}">
<th></th>
<th title="<%=intl._t("Select hosts for deletion from addressbook")%>"></th>
</c:if>
<% if (book.getEntries().length > 0) { /* Don't show if no results. Can't figure out how to do this with c:if */ %>
<th><%=intl._t("Name")%></th>
<th colspan="2"><%=intl._t("Links")%></th>
<th><%=intl._t("Destination")%></th>
</tr>
<!-- limit iterator, or "Form too large" may result on submit, and is a huge web page if we don't -->
<c:forEach items="${book.entries}" var="addr" begin="${book.resultBegin}" end="${book.resultEnd}">
<tr class="list${book.trClass}">
<td class="names"><a href="/imagegen/id?s=256&amp;c=${addr.b32}" target="_blank" title="<%=intl._t("View larger version of identicon for this hostname")%>"><img src="/imagegen/id?s=20&amp;c=${addr.b32}"></a><a href="http://${addr.name}/" target="_top">${addr.displayName}</a></td>
<td class="names"><span class="addrhlpr"><a href="http://${addr.b32}/" target="_blank" title="<%=intl._t("Base 32 address")%>">b32</a></span></td>
<td class="helper"><a href="http://${addr.name}/?i2paddresshelper=${addr.destination}" target="_blank" title="<%=intl._t("Helper link to share host address with option to add to addressbook")%>">link</a></td>
<td class="names"><span class="addrhlpr"><a href="details?h=${addr.name}" title="<%=intl._t("More information on this entry")%>"><%=intl._t("details")%></a></span></td>
<td class="destinations"><div class="destaddress" name="dest_${addr.name}" width="200px">${addr.destination}</div></td>
<c:if test="${book.validBook}">
<td class="checkbox"><input type="checkbox" name="checked" value="${addr.name}" title="<%=intl._t("Mark for deletion")%>"></td>
</c:if>
<td class="names"><a href="http://${addr.name}/" target="_top">${addr.displayName}</a>
</td><td class="names">
<span class="addrhlpr"><a href="http://${addr.b32}/" target="_top" title="<%=intl._t("Base 32 address")%>">b32</a></span>
</td><td class="names">
<span class="addrhlpr"><a href="details?h=${addr.name}" title="<%=intl._t("More information on this entry")%>"><%=intl._t("details")%></a></span>
</td>
<td class="destinations"><textarea rows="1" style="height:3em;" wrap="off" cols="40" readonly="readonly" name="dest_${addr.name}" >${addr.destination}</textarea></td>
</tr>
</c:forEach>
<% } /* book..getEntries().length() > 0 */ %>
</table>
@@ -212,18 +219,24 @@ ${book.loadBookMessages}
<input type="hidden" name="begin" value="0">
<input type="hidden" name="end" value="49">
<div id="add">
<h3><%=intl._t("Add new destination")%>:</h3>
<table><tr><td>
<b><%=intl._t("Host Name")%></b></td><td><input type="text" name="hostname" value="${book.hostname}" size="54">
</td></tr><tr><td>
<b><%=intl._t("Destination")%></b></td><td><textarea name="destination" rows="1" style="height:3em" wrap="off" cols="70" spellcheck="false">${book.destination}</textarea>
</td></tr></table>
<h3><%=intl._t("Add new destination")%></h3>
<table>
<tr>
<td><b><%=intl._t("Hostname")%></b></td>
<td><input type="text" name="hostname" value="${book.hostname}" size="54"></td>
</tr>
<tr>
<td><b><%=intl._t("Destination")%></b></td>
<td><textarea name="destination" rows="1" style="height:3em" wrap="off" cols="70" spellcheck="false">${book.destination}</textarea></td>
</tr>
</table>
<p class="buttons">
<input class="cancel" type="reset" value="<%=intl._t("Cancel")%>" >
<input class="accept" type="submit" name="action" value="<%=intl._t("Replace")%>" >
<input class="add" type="submit" name="action" value="<%=intl._t("Add")%>" >
</p>
</div></form>
</div>
</form>
<div id="footer">
<hr>

View File

@@ -53,9 +53,9 @@
<div class="page">
<div id="logo">
<a href="index"><img src="<%=base.getTheme()%>images/logo.png" alt="" title="<%=intl._t("Overview")%>" border="0"/></a>
</div><hr>
</div>
<hr>
<div id="navi">
<p>
<a id="overview" href="index"><%=intl._t("Overview")%></a>&nbsp;
<a class="abook" href="addressbook?book=private"><%=intl._t("Private")%></a>&nbsp;
<a class="abook" href="addressbook?book=master"><%=intl._t("Master")%></a>&nbsp;
@@ -63,7 +63,6 @@
<a class="abook" href="addressbook?book=published"><%=intl._t("Published")%></a>&nbsp;
<a id="subs" href="subscriptions"><%=intl._t("Subscriptions")%></a>&nbsp;
<a id="config" href="config"><%=intl._t("Configuration")%></a>
</p>
</div>
<hr>
<div class="headline" id="config">

View File

@@ -53,7 +53,6 @@
</div>
<hr>
<div id="navi">
<p>
<a id="overview" href="index"><%=intl._t("Overview")%></a>&nbsp;
<a class="abook" href="addressbook?book=private"><%=intl._t("Private")%></a>&nbsp;
<a class="abook" href="addressbook?book=master"><%=intl._t("Master")%></a>&nbsp;
@@ -61,14 +60,12 @@
<a class="abook" href="addressbook?book=published"><%=intl._t("Published")%></a>&nbsp;
<a id="subs" href="subscriptions"><%=intl._t("Subscriptions")%></a>&nbsp;
<a id="config" href="config"><%=intl._t("Configuration")%></a>
</p>
</div>
<hr>
<div class="headline">
<h3><%=intl._t("Address book")%>: <%=intl._t(book.getBook())%></h3>
<h4><%=intl._t("Storage")%>: ${book.displayName}</h4>
</div>
<div id="book">
<%
String detail = request.getParameter("h");
@@ -84,56 +81,70 @@
String b32 = addr.getB32();
%>
<jsp:setProperty name="book" property="trClass" value="0" />
<table class="book" cellspacing="0" cellpadding="5">
<table class="book" id="host_details" cellspacing="0" cellpadding="5">
<tr class="list${book.trClass}">
<td><%=intl._t("Host Name")%></td>
<td><%=intl._t("Hostname")%></td>
<td><a href="http://<%=addr.getName()%>/" target="_top"><%=addr.getDisplayName()%></a></td>
</tr><tr class="list${book.trClass}">
</tr>
<tr class="list${book.trClass}">
<%
if (addr.isIDN()) {
%>
<td><%=intl._t("Encoded Name")%></td>
<td><a href="http://<%=addr.getName()%>/" target="_top"><%=addr.getName()%></a></td>
</tr><tr class="list${book.trClass}">
</tr>
<tr class="list${book.trClass}">
<%
}
%>
<td><%=intl._t("Base 32 Address")%></td>
<td><a href="http://<%=b32%>/" target="_top"><%=b32%></a></td>
</tr><tr class="list${book.trClass}">
</tr>
<tr class="list${book.trClass}">
<td><%=intl._t("Base 64 Hash")%></td>
<td><%=addr.getB64()%></td>
</tr><tr class="list${book.trClass}">
</tr>
<tr class="list${book.trClass}">
<td><%=intl._t("Address Helper")%></td>
<td><a href="http://<%=addr.getName()%>/?i2paddresshelper=<%=addr.getDestination()%>" target="_top"><%=intl._t("link")%></a></td>
</tr><tr class="list${book.trClass}">
</tr>
<tr class="list${book.trClass}">
<td><%=intl._t("Public Key")%></td>
<td><%=intl._t("ElGamal 2048 bit")%></td>
</tr><tr class="list${book.trClass}">
</tr>
<tr class="list${book.trClass}">
<td><%=intl._t("Signing Key")%></td>
<td><%=addr.getSigType()%></td>
</tr><tr class="list${book.trClass}">
</tr>
<tr class="list${book.trClass}">
<td><%=intl._t("Certificate")%></td>
<td><%=addr.getCert()%></td>
</tr><tr class="list${book.trClass}">
</tr>
<tr class="list${book.trClass}">
<td><%=intl._t("Added Date")%></td>
<td><%=addr.getAdded()%></td>
</tr><tr class="list${book.trClass}">
</tr>
<tr class="list${book.trClass}">
<td><%=intl._t("Validated")%></td>
<td><%=addr.isValidated() ? intl._t("yes") : intl._t("no")%></td>
</tr><tr class="list${book.trClass}">
</tr>
<tr class="list${book.trClass}">
<td><%=intl._t("Source")%></td>
<td><%=addr.getSource()%></td>
</tr><tr class="list${book.trClass}">
</tr>
<tr class="list${book.trClass}">
<td><%=intl._t("Last Modified")%></td>
<td><%=addr.getModded()%></td>
</tr><tr class="list${book.trClass}">
</tr>
<tr class="list${book.trClass}">
<td><%=intl._t("Notes")%></td>
<td><%=addr.getNotes()%></td>
</tr><tr class="list${book.trClass}">
</tr>
<tr class="list${book.trClass}">
<td><%=intl._t("Destination")%></td>
<td class="destinations"><textarea rows="1" style="height:3em;" wrap="off" cols="70" readonly="readonly" ><%=addr.getDestination()%></textarea></td>
</tr></table>
<td class="destinations"><div class="destaddress"><%=addr.getDestination()%></div></td>
</tr>
</table>
</div>
<div id="buttons">
<form method="POST" action="addressbook">
@@ -146,11 +157,17 @@
</p>
</form>
</div>
<div><table><tr><td>
<img src="/imagegen/id?s=320&amp;c=<%=addr.getB64().replace("=", "%3d")%>" width="320" height="320">
</td><td>
<img src="/imagegen/qr?s=320&amp;t=<%=addr.getName()%>&amp;c=http%3a%2f%2f<%=addr.getName()%>%2f%3fi2paddresshelper%3d<%=addr.getDestination()%>">
</td></tr></table>
<div id="visualid">
<h3><%=intl._t("Visual Identification for")%> <%=addr.getName()%></h3>
<table>
<tr>
<td><img src="/imagegen/id?s=256&amp;c=<%=addr.getB64().replace("=", "%3d")%>" width="256" height="256"></td>
<td><img src="/imagegen/qr?s=384&amp;t=<%=addr.getName()%>&amp;c=http%3a%2f%2f<%=addr.getName()%>%2f%3fi2paddresshelper%3d<%=addr.getDestination()%>"></td>
</tr>
<tr>
<td colspan="2"><a class="fakebutton" href="/imagegen" title="<%=intl._t("Create your own identification images")%>" target="_blank"><%=intl._t("Launch Image Generator")%></a></td>
</tr>
</table>
<hr>
<%
} // foreach addr

View File

@@ -54,7 +54,6 @@
</div>
<hr>
<div id="navi">
<p>
<a id="overview" href="index"><%=intl._t("Overview")%></a>&nbsp;
<a class="abook" href="addressbook?book=private"><%=intl._t("Private")%></a>&nbsp;
<a class="abook" href="addressbook?book=master"><%=intl._t("Master")%></a>&nbsp;
@@ -62,7 +61,6 @@
<a class="abook" href="addressbook?book=published"><%=intl._t("Published")%></a>&nbsp;
<a id="subs" href="subscriptions"><%=intl._t("Subscriptions")%></a>&nbsp;
<a id="config" href="config"><%=intl._t("Configuration")%></a>
</p>
</div>
<hr>
<div id="content">

View File

@@ -54,7 +54,6 @@
<a href="index"><img src="<%=subs.getTheme()%>images/logo.png" alt="" title="<%=intl._t("Overview")%>" border="0"/></a>
</div><hr>
<div id="navi">
<p>
<a id="overview" href="index"><%=intl._t("Overview")%></a>&nbsp;
<a class="abook" href="addressbook?book=private"><%=intl._t("Private")%></a>&nbsp;
<a class="abook" href="addressbook?book=master"><%=intl._t("Master")%></a>&nbsp;
@@ -62,7 +61,6 @@
<a class="abook" href="addressbook?book=published"><%=intl._t("Published")%></a>&nbsp;
<a id="subs" href="subscriptions"><%=intl._t("Subscriptions")%></a>&nbsp;
<a id="config" href="config"><%=intl._t("Configuration")%></a>
</p>
</div>
<hr>
<div class="headline" id="subscriptions">

Binary file not shown.

After

Width:  |  Height:  |  Size: 939 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 422 B

View File

@@ -29,6 +29,10 @@ body.iframed {
display: none;
}
*, *:active {
outline: none;
}
hr {
display: none;
}
@@ -57,6 +61,10 @@ table.book th {
padding-left: 5px;
}
.book th:last-child {
background: url(/themes/console/images/buttons/delete.png) center center no-repeat, linear-gradient(to bottom, #fff 0%, #fff 50%, #eff2ff 50%, #eff2ff 100%);
}
table.book tr:hover textarea {
background: #fff;
border: none;
@@ -68,34 +76,35 @@ table.book tr:hover {
border-bottom: 1px solid #89f;
}
table.book td:first-child {
width: 20px;
table.book td:last-child {
width: 36px;
white-space: no-wrap;
text-align: center;
padding: 0 5px;
}
table.book td:nth-child(2) {
table.book td:first-child {
width: 200px;
white-space: nowrap;
}
table.book td:nth-child(3) {
table.book td:nth-child(2) {
width: 30px;
white-space: nowrap;
padding-left: 10px;
}
.book td:nth-child(4) {
.book td:nth-child(3) {
text-align: center;
width: 20px;
padding: 2px 25px 2px 0 !important;
padding: 2px 20px 2px 0 !important;
}
.book td:nth-child(4) a:not(old) {
.book td:nth-child(3) a:not(old) {
font-size: 0 !important;
}
.book td:nth-child(4) .addrhlpr a::after {
.book td:nth-child(3) .addrhlpr a::after {
content: url(/themes/console/images/buttons/fullview.png);
text-align: center;
padding: 0 10px !important;
@@ -135,10 +144,6 @@ div#navi {
padding: 0;
}
.iframed #navi p {
margin: 8px 0 7px;
}
.iframed #navi, .iframed h3, .iframed h4, .iframed #help, .iframed p.buttons, .iframed #filter {
border-left: none !important;
border-right: none !important;
@@ -173,15 +178,13 @@ div.page {
div.help {
border: 1px solid #89f;
margin: 0 0 -1px;
margin: 0 0 10px;
background: #eef;
}
/*
.iframed #help {
margin: 0 -10px -1px;
.iframed #helpsubs {
margin: 0 0 -1px;
}
*/
#helpconfig {
margin: 0 0 -1px;
@@ -200,13 +203,6 @@ div.help {
list-style-type: square;
}
#navi p {
text-align: center !important;
text-transform: capitalize;
font-weight: bold;
line-height: 130%;
}
p {
line-height: 140%;
margin-left: 10px;
@@ -323,14 +319,14 @@ p.book, #messages + p {
}
p.footer {
font-size: 7pt;
text-align: center;
padding: 0;
margin: 12px auto -15px;
border: 1px solid #89f;
border-radius: 0 0 3px 3px;
width: 200px;
background: #fff;
position: absolute;
top: 0;
left: -24px;
border: none;
background: none;
opacity: 0.3;
font-size: 8pt !important;
display: none;
}
.iframed #footer {
@@ -453,9 +449,35 @@ td.search:last-child {
display: none;
}
#buttons + div > table {
width: 50%;
margin: auto;
#visualid {
padding: 0;
}
#visualid h3 {
text-transform: none;
}
#visualid table {
width: 100%;
border-collapse: collapse;
margin: 0;
}
#visualid tr:first-child td {
padding: 10px 10px 20px;
}
#visualid td:first-child {
text-align: right;
}
#visualid td[colspan="2"] {
border-top: 1px solid #89f;
padding: 15px 0;
}
.iframed #visualid td[colspan="2"] {
padding-bottom: 0;
}
img[src*="imagegen"] {
@@ -494,7 +516,7 @@ p.buttons {
background: #fff;
}
button, input, select {
.fakebutton, input, select {
font: 9pt/130% "Droid Sans", "Noto Sans", Ubuntu, "Bitstream Vera Sans", "Lucida Grande", "DejaVu Sans", "Segoe UI", Verdana, Helvetica, sans-serif;
}
@@ -532,18 +554,20 @@ textarea {
}
td.destinations textarea, td.destinations textarea:focus {
font: normal 8.5pt "Noto Mono", "Droid Sans Mono", "Andale Mono", "DejaVu Sans Mono", "Lucida Console", Courier, mono;*/
resize: none;
font-size: 8pt;
padding: 0 !important;
border: none;
border-left: 1px solid #888 !important;
border-right: 1px solid #888 !important;
border-radius: 0;
margin: 0px !important;
margin: 0 0 0 5px !important;
background: none;
box-shadow: 0 none !important;
}
button, input[type="submit"], input[type="reset"] {
.fakebutton, input[type="submit"], input[type="reset"] {
padding: 4px 3px !important;
border-radius: 2px;
border: 1px solid #bbb;
@@ -552,11 +576,11 @@ button, input[type="submit"], input[type="reset"] {
background: linear-gradient(to bottom, #fff 0%, #ddd 100%);
margin: 2px 0 2px 4px;
filter: drop-shadow(0 0 1px #ccc);
color: #333;
color: #333 !important;
}
button:hover, input[type="submit"]:hover, input[type="reset"]:hover,
button:focus, input[type="submit"]:focus, input[type="reset"]:focus {
.fakebutton:hover, input[type="submit"]:hover, input[type="reset"]:hover,
.fakebutton:focus, input[type="submit"]:focus, input[type="reset"]:focus {
background: #fff;
background: linear-gradient(to bottom, #ddd 0%, #fff 100%);
border: 1px solid #89f;
@@ -565,7 +589,7 @@ button:focus, input[type="submit"]:focus, input[type="reset"]:focus {
color: #222;
}
button:active, input[type="submit"]:active, input[type="reset"]:active {
.fakebutton:active, input[type="submit"]:active, input[type="reset"]:active {
box-shadow: inset 3px 3px 3px #999;
box-shadow: inset 0 0 0 1px #fff, inset 3px 3px 3px #999;
border: 1px solid #bbb;
@@ -590,6 +614,7 @@ form[action="subscriptions"] textarea {
#navi {
padding: 3px !important;
text-align: center !important;
}
#navi a, #navi a:visited {
@@ -655,18 +680,6 @@ form[action="subscriptions"] textarea {
background: url(/themes/susidns/images/overview.png) 5px center no-repeat, linear-gradient(to bottom, #fff 0%, #fff 50%, #ffd 50%, #ffd 100%);
}
#navi p {
text-align: center !important;
text-transform: capitalize;
font-weight: bold;
padding: 2px 5px !important;
margin: 0 !important;
}
#navi p > * {
vertical-align: middle;
}
.headline + #book > table {
margin-top: 10px !important;
}
@@ -724,9 +737,11 @@ h3 {
font-size: 12pt !important;
}
/*
p.footer {
margin: 12px auto -21px !important;
}
*/
#export {
margin-top: -40px !important;
@@ -735,12 +750,10 @@ p.footer {
#filter span, #filter a {
font-size: 11pt !important;
}
}
/* end responsive layout */
/* export hosts */
#export {
@@ -773,3 +786,160 @@ p.book {
padding-left: 26px !important;
background-position: left center !important;
}
/* host details page */
#host_details td {
padding: 5px 10px !important;
}
#host_details td:first-child {
min-width: 10px !important;
width: 10%;
white-space: nowrap;
font-weight: bold;
text-align: right;
}
#host_details td:last-child {
width: 90%;
text-align: left;
border-left: none !important;
border-right: none !important;
}
#host_details td.destinations {
background: none;
}
#host_details tr:hover {
background: #ffd;
}
#host_details .destaddress {
font-family: "Droid Sans Mono", "Noto Mono", "Lucida Console", "DejaVu Sans Mono", Courier, mono !important;
word-break: break-all !important;
white-space: normal !important;
}
/* end host details */
.names img {
width: 20px;
height: 20px;
vertical-align: middle;
margin: 1px 10px 1px 1px;
padding: 1px;
border: 1px solid #89f;
border-radius: 2px;
background: #fff;
}
.names img:hover, .names a:focus img {
filter: drop-shadow(0 0 1px #f60) !important;
-webkit-filter: drop-shadow(0 0 1px #f60) !important;
box-shadow: 0 0 0 1px #f60;
}
.names a:active img, .names a:focus img {
transform: rotate(45deg) scale(0.8);
transition: ease all 0.1s 0s;
}
/* hostname list */
#host_list th:first-child,
#host_list td:first-child {
width: 150px;
width: 30%;
white-space: nowrap;
padding-left: 5px;
}
#host_list th:first-child {
padding-left: 39px;
}
#host_list td:last-child {
width: 16px;
white-space: nowrap;
font-weight: bold;
}
#host_list th:nth-child(2), #host_list td:nth-child(2),
#host_list th:nth-child(3), #host_list td:nth-child(3),
#host_list th:nth-child(4), #host_list td:nth-child(4) {
width: 35px;
width: 8%;
padding: 0 5px !important;
white-space: nowrap;
text-align: center;
}
#host_list td:nth-child(2) a:not(old) {
font-size: 0 !important;
}
#host_list td:nth-child(2) a::after {
content: url(/themes/console/images/buttons/link.png);
text-align: center;
filter: drop-shadow(0 0 1px #555);
-webkit-filter: drop-shadow(0 0 1px #555);
cursor: pointer;
}
#host_list td:nth-child(3) a:not(old) {
font-size: 0 !important;
}
#host_list td:nth-child(3) a::after {
content: url(/themes/console/images/buttons/helper.png);
cursor: pointer;
}
#host_list th:nth-child(4), #host_list td:nth-child(4) {
padding-right: 30px !important;
}
#host_list td:nth-child(4) a:not(old) {
font-size: 0 !important;
}
#host_list td:nth-child(4) .addrhlpr a::after {
content: url(/themes/console/images/buttons/fullview.png);
text-align: center;
padding: 0 10px !important;
filter: drop-shadow(0 0 1px #555);
-webkit-filter: drop-shadow(0 0 1px #555);
cursor: pointer;
}
#host_list td:nth-child(2) a:hover, #host_list td:nth-child(3) a:hover, #host_list td:nth-child(4) a:hover,
#host_list td:nth-child(2) a:focus, #host_list td:nth-child(3) a:focus, #host_list td:nth-child(4) a:focus {
filter: drop-shadow(0 0 1px #f60);
-webkit-filter: drop-shadow(0 0 1px #f60);
}
#host_list .destaddress {
overflow: auto !important;
white-space: nowrap;
font-family: "Droid Sans Mono", "Noto Mono", "Lucida Console", "DejaVu Sans Mono", Courier, mono !important;
font-weight: normal;
color: #555;
padding: 3px !important;
}
/* end hostname list */
td.destinations {
max-width: 50px !important;
border-left: 1px solid #89f;
border-right: 1px solid #89f;
}
/* MS Edge 14+ fix */
_:-ms-lang(x), * {
filter: none !important;
-webkit-filter: none !important;
}

View File

@@ -60,6 +60,7 @@ div#navi {
top: -1px;
border-radius: 0 0 2px 2px;
z-index: 999;
text-align: center;
}
.iframed div#navi {
@@ -71,12 +72,6 @@ div#navi {
border-radius: 0;
}
#navi p {
text-align: center;
font-weight: bold;
font-size: 9pt;
}
#navi a:link {
text-transform: capitalize;
}
@@ -90,6 +85,7 @@ div#navi {
box-shadow: inset 0 0 0 1px #000;
filter: drop-shadow(0 0 1px #000);
-webkit-filter: drop-shadow(0 0 1px #000);
padding: 2px 5px 3px 24px;
}
#navi a:hover, #navi a:focus {
@@ -110,7 +106,6 @@ div#navi {
#navi a.abook {
background: #000 url(/themes/susidns/images/abook.png) 5px center no-repeat;
background: url(/themes/susidns/images/abook.png) 5px center no-repeat, linear-gradient(to bottom, #020 0%, #020 50%, #000 50%, #000 100%);
padding: 3px 5px 3px 24px;
}
#navi a.abook:hover, #navi a.abook:focus {
@@ -124,7 +119,6 @@ div#navi {
#navi a#subs {
background: #000 url(/themes/susidns/images/subs.png) 5px center no-repeat;
background: url(/themes/susidns/images/subs.png) 5px center no-repeat, linear-gradient(to bottom, #020 0%, #020 50%, #000 50%, #000 100%);
padding: 3px 5px 3px 24px;
}
#navi a#subs:hover, #navi a#subs:focus {
@@ -138,7 +132,6 @@ div#navi {
#navi a#config {
background: #000 url(/themes/console/images/buttons/configure.png) 5px center no-repeat;
background: url(/themes/console/images/buttons/configure.png) 5px center no-repeat, linear-gradient(to bottom, #020 0%, #020 50%, #000 50%, #000 100%);
padding: 3px 5px 3px 24px;
}
#navi a#config:hover, #navi a#config:focus {
@@ -152,7 +145,6 @@ div#navi {
#navi a#overview {
background: #000 url(/themes/susidns/images/overview.png) 5px center no-repeat;
background: url(/themes/susidns/images/overview.png) 5px center no-repeat, linear-gradient(to bottom, #020 0%, #020 50%, #000 50%, #000 100%);
padding: 3px 5px 3px 24px;
}
#navi a#overview:hover, #navi a#overview:focus {
@@ -163,18 +155,6 @@ div#navi {
background: #f60 url(/themes/susidns/images/overview.png) 5px center no-repeat !important;
}
#navi p {
text-align: center !important;
text-transform: capitalize;
font-weight: bold;
padding: 2px 5px !important;
margin: 0 !important;
}
#navi p > * {
vertical-align: middle;
}
/* end topnav */
hr {
@@ -190,7 +170,7 @@ hr {
div#filter {
border: 1px solid #2a5f29;
padding: 0 0 15px;
padding: 0 5px 15px;
text-align: center;
background: #000;
}
@@ -328,7 +308,7 @@ h3 {
font-size: 10pt;
font-weight: bold;
border: 1px solid #2a5f29;
padding: 5px 10px;
padding: 7px 10px;
background: #000 url(/themes/console/dark/images/header.png) repeat-x scroll center center;
background: linear-gradient(to bottom, #1a261a 0%, #223022 7%, #212f21 9%, #172317 21%, #091109 49%, #050d05 50%, #020602 51%, #010301 53%, #000000 56%, #000000 100%);
letter-spacing: 0.08em;
@@ -358,7 +338,7 @@ h3 {
.headline h3:first-child + h4 {
margin-top: -25px;
margin-bottom: 25px !important;
margin-bottom: 26px !important;
}
div.headline {
@@ -396,37 +376,37 @@ div#messages {
p#filtered {
padding: 12px 10px 8px 20px;
font-size: 10pt;
margin: -15px 0 10px;
margin: -14px 0 10px;
}
div#book p, p.messages {
font-size: 10pt;
}
.book th:first-child {
padding: 0 !important;
.book th:first-child, .book td:first-child {
padding: 0 10px !important;
}
.book td {
padding: 0;
}
.book td:nth-child(3) {
.book td:nth-child(2) {
padding: 2px 0 2px 5px !important;
width: 30px;
}
.book td:nth-child(4) {
.book td:nth-child(3) {
text-align: center;
width: 20px;
padding: 2px 25px 2px 0 !important;
}
.book td:nth-child(4) a:not(old) {
.book td:nth-child(3) a:not(old) {
font-size: 0 !important;
}
.book td:nth-child(4) .addrhlpr a::after {
.book td:nth-child(3) .addrhlpr a::after {
content: url(/themes/console/images/buttons/fullview.png);
text-align: center;
padding: 0 10px !important;
@@ -496,6 +476,7 @@ input[type="checkbox"], input[type="radio"] {
min-width: 16px;
min-height: 16px;
background: none;
cursor: pointer;
}
input[type="checkbox"]:hover, input[type="radio"]:hover, input[type="checkbox"]:focus, input[type="radio"]:focus {
@@ -503,24 +484,41 @@ input[type="checkbox"]:hover, input[type="radio"]:hover, input[type="checkbox"]:
-webkit-filter: invert(100%) sepia(100%) hue-rotate(70deg) saturate(200%) drop-shadow(0 0 1px #f60);
}
div#buttons + div > table {
.iframed #visualid {
margin-top: 16px;
}
#visualid h3 {
margin-bottom: -1px;
}
#visualid h3 span {
text-transform: normal !important;
}
#visualid table {
width: 100%;
border: 1px solid #2a5f29;
margin-top: -46px;
border-collapse: collapse;
}
div#buttons + div > table > tbody > tr > td {
padding-top: 51px !important;
#visualid tr:first-child td {
padding: 15px 5px !important;
}
div#buttons + div > table > tbody > tr > td:first-child {
#visualid td:first-child {
text-align: right;
}
div#buttons + div > table > tbody > tr > td {
#visualid td {
text-align: left;
}
#visualid td[colspan="2"] {
padding: 15px 3px;
border-top: 1px solid #2a5f29;
}
form[action="addressbook"] > p.buttons {
margin-bottom: -16px;
}
@@ -624,7 +622,7 @@ form[action="export"] > div#buttons {
div#config > textarea, div#content > textarea {
border-radius: 0;
margin-top: -26px;
margin-top: -27px;
}
textarea[name="config"] {
@@ -663,7 +661,7 @@ div#book {
#book table {
width: 100%;
border: 1px solid #2a5f29;
margin-top: -10px;
/* margin-top: -10px;*/
}
#book table th {
@@ -685,7 +683,7 @@ div#book {
color: #ee9;
}
#book th:first-child {
#book th:last-child {
background: url(/themes/console/dark/images/header.png) repeat-x scroll center center #000;
background: url(images/bin.png) center center no-repeat, linear-gradient(to bottom, #001000 0%, #001900 50%, #000 51%, #000 100%) !important;
}
@@ -697,7 +695,7 @@ div#book {
div#add {
border: 1px solid #2a5f29;
padding: 0 0 10px;
margin-top: 20px;
margin-top: 23px;
background: #000;
}
@@ -705,7 +703,7 @@ div#add {
margin-top: -6px;
margin-left: -1px;
margin-right: -1px;
padding: 5px 10px;
padding: 8px 10px;
font-size: 10pt;
}
@@ -729,13 +727,21 @@ div#add {
padding-top: 5px;
}
input[type="submit"]:hover, input[type="reset"]:hover, input[type="submit"]:focus, input[type="reset"]:focus {
input[type="submit"]:hover, input[type="reset"]:hover, input[type="submit"]:focus, input[type="reset"]:focus, .fakebutton:hover, #fakebutton:focus {
background: #000;
color: #f60;
border: 1px solid #f60;
box-shadow: inset 0 1px 1px 0 #ee9;
}
.fakebutton, .fakebutton:visited {
color: #494;
}
.fakebutton:hover, .fakebutton:focus {
color: #f60;
}
input[type="submit"]::-moz-focus-inner, input[type="reset"]::-moz-focus-inner {
border: none;
outline: none;
@@ -755,7 +761,7 @@ input {
min-width: 64px !important;
}
input[type="submit"], input[type="reset"] {
input[type="submit"], input[type="reset"], .fakebutton {
color: #494;
background: #000;
border: 1px outset #191;
@@ -766,9 +772,10 @@ input[type="submit"], input[type="reset"] {
text-align: center;
min-height: 22px !important;
min-width: 80px !important;
cursor: pointer;
}
input[type=submit]:active, input[type=reset]:active {
input[type=submit]:active, input[type=reset]:active, .fakebutton:active {
background: #f60 !important;
color: #ee9 !important;
border: 1px solid #f60;
@@ -819,6 +826,7 @@ textarea[cols="70"] {
resize: none;
border: none;
border-left: 1px solid #2a5f29;
border-right: 1px solid #2a5f29;
margin: 0 !important;
border-radius: 0;
}
@@ -871,7 +879,17 @@ input[name="search"]:focus {
@media screen and (max-width: 710px) {
#navi a {
background: linear-gradient(to bottom, #020 0%, #020 50%, #000 50%, #000 100%) !important;
padding: 3px 8px !important;
padding: 2px 8px !important;
}
#navi a.abook:hover, #navi a#overview:hover, #navi a#subs:hover, #navi a#config:hover,
#navi a.abook:focus, #navi a#overview:focus, #navi a#subs:focus, #navi a#config:focus {
background: #000 !important;
padding: 2px 8px !important;
}
#navi a.abook:active, #navi a#overview:active, #navi a#subs:active, #navi a#config:active {
background: #f60 !important;
}
}
@@ -880,7 +898,7 @@ textarea {
font-size: 9pt;
}
body, input[type="submit"], input[type="reset"], input, select, h4, td.names a, p, li {
body, input[type="submit"], input[type="reset"], .fakebutton, input, select, h4, td.names a, p, li, #filter a, #host_details td {
font-size: 10pt !important;
}
@@ -889,17 +907,20 @@ div#navi {
}
#navi a {
font-size: 10.5pt !important;
padding: 6px 5px 6px 25px !important;
font-size: 10pt !important;
padding: 4px 7px 5px 25px !important;
}
h3, #filter a {
h3 {
font-size: 11pt !important;
}
#filter a:link, #filter a:visited {
margin: 3px 2px !important;
}
form[action="addressbook"] > p.buttons {
margin-bottom: -20px;
}
}
/* end responsive layout */
@@ -937,3 +958,163 @@ p.book {
#messages + form[action="export"] {
display: none;
}
/* host details page */
#host_details td {
padding: 6px 10px !important;
}
#host_details td:first-child {
min-width: 10px !important;
width: 10%;
white-space: nowrap;
font-weight: bold;
text-align: right;
}
#host_details td:last-child {
width: 90%;
text-align: left;
border-left: none !important;
border-right: none !important;
}
#host_details td.destinations {
background: none;
}
#host_details tr:hover {
background: #ffd;
}
#host_details .destaddress {
font-family: "Droid Sans Mono", "Noto Mono", "Lucida Console", "DejaVu Sans Mono", Courier, mono !important;
word-break: break-all !important;
white-space: normal !important;
}
/* end host details */
.names img {
width: 20px;
height: 20px;
vertical-align: middle;
margin: 1px 10px 1px 1px;
padding: 1px;
border: 1px solid #141;
border-radius: 2px;
background: #000;
}
.names img:hover, .names a:focus img {
/* filter: drop-shadow(0 0 1px #f60) !important;
-webkit-filter: drop-shadow(0 0 1px #f60) !important;*/
border: 1px solid #f60;
}
.names a:active img, .names a:focus img {
transform: rotate(45deg) scale(0.8);
transition: ease all 0.1s 0s;
}
/* hostname list */
#host_list {
margin-top: 28px;
}
#host_list th:first-child,
#host_list td:first-child {
width: 150px;
width: 30%;
white-space: nowrap;
padding-left: 5px !important;
}
#host_list th:first-child {
padding-left: 39px !important;
}
#host_list td:last-child {
width: 16px;
white-space: nowrap;
font-weight: bold;
}
#host_list th:nth-child(2), #host_list td:nth-child(2),
#host_list th:nth-child(3), #host_list td:nth-child(3),
#host_list th:nth-child(4), #host_list td:nth-child(4) {
width: 35px;
width: 8%;
padding: 0 5px !important;
white-space: nowrap;
text-align: center;
}
#host_list td:nth-child(2) a:not(old) {
font-size: 0 !important;
}
#host_list td:nth-child(2) a::after {
content: url(/themes/console/images/buttons/link.png);
text-align: center;
filter: drop-shadow(0 0 1px #555);
-webkit-filter: drop-shadow(0 0 1px #555);
cursor: pointer;
}
#host_list td:nth-child(3) a:not(old) {
font-size: 0 !important;
}
#host_list td:nth-child(3) a::after {
content: url(/themes/console/images/buttons/helper.png);
cursor: pointer;
}
#host_list th:nth-child(4), #host_list td:nth-child(4) {
padding-right: 30px !important;
}
#host_list td:nth-child(4) a:not(old) {
font-size: 0 !important;
}
#host_list td:nth-child(4) .addrhlpr a::after {
content: url(/themes/console/images/buttons/fullview.png);
text-align: center;
padding: 0 10px !important;
filter: drop-shadow(0 0 1px #555);
-webkit-filter: drop-shadow(0 0 1px #555);
cursor: pointer;
}
#host_list td:nth-child(2) a:hover, #host_list td:nth-child(3) a:hover, #host_list td:nth-child(4) a:hover,
#host_list td:nth-child(2) a:focus, #host_list td:nth-child(3) a:focus, #host_list td:nth-child(4) a:focus {
filter: drop-shadow(0 0 1px #f60);
-webkit-filter: drop-shadow(0 0 1px #f60);
}
#host_list .destaddress {
overflow: auto !important;
white-space: nowrap;
font-family: "Droid Sans Mono", "Noto Mono", "Lucida Console", "DejaVu Sans Mono", Courier, mono !important;
font-weight: normal;
padding: 3px !important;
}
/* end hostname list */
td.destinations {
max-width: 50px !important;
border-left: 1px solid #141;
border-right: 1px solid #141;
}
/* MS Edge 14+ fix */
_:-ms-lang(x), * {
filter: none !important;
-webkit-filter: none !important;
}

View File

@@ -52,9 +52,13 @@ hr {
display: none;
}
code, tt, .destaddress {
font-size: 8pt;
}
#navi {
margin: -1px 0 0;
padding: 12px 3px;
padding: 5px 3px;
text-align: center;
border: 1px solid #7778bf;
background: linear-gradient(to right, rgba(255, 255, 255, 1) 0%, rgba(239, 239, 255, 0.5) 50%, rgba(255, 255, 255, 1) 100%), linear-gradient(to bottom, #fff 0%, #fff 51%, #eef 51%, #ddf 100%);
@@ -67,47 +71,54 @@ hr {
}
.iframed #navi {
margin: -1px 0 0;
padding: 3px 2px;
margin: -1px 0 10px;
padding: 7px 5px 6px;
border-radius: 2px;
filter: drop-shadow(0px 0 1px #999);
-webkit-filter: drop-shadow(0px 0 1px #999);
}
#navi a {
border: 1px solid #77789f;
border-radius: 2px;
filter: drop-shadow(0 0 1px #ccc);
-webkit-filter: drop-shadow(0 0 1px #ccc);
filter: drop-shadow(0 0 1px #bbb);
-webkit-filter: drop-shadow(0 0 1px #bbb);
display: inline-block;
margin: 2px 0;
text-transform: capitalize;
box-shadow: inset 0 0 0 1px #fff;
}
#navi a:hover, #navi a:focus {
background-blend-mode: luminosity;
}
#navi a:active {
color: #555;
box-shadow: inset 0 0 0 1px #fff, inset 3px 3px 2px #999;
mix-blend-mode: luminosity;
}
#navi a.abook {
background: #fff url(/themes/susidns/images/abook.png) 5px center no-repeat;
background: url(/themes/susidns/images/abook.png) 5px center no-repeat, linear-gradient(to bottom, #fff 0%, #fff 50%, #eef 50%, #ebebff 100%) #fff;
padding: 5px 5px 5px 24px;
}
#navi a#subs {
background: #fff url(/themes/susidns/images/subs.png) 5px center no-repeat;
background: url(/themes/susidns/images/subs.png) 5px center no-repeat, linear-gradient(to bottom, #fff 0%, #fff 50%, #eef 50%, #ebebff 100%) #fff;
padding: 5px 5px 5px 24px;
}
#navi a#config {
background: #fff url(/themes/console/images/buttons/configure.png) 5px center no-repeat;
background: url(/themes/console/images/buttons/configure.png) 5px center no-repeat, linear-gradient(to bottom, #fff 0%, #fff 50%, #eef 50%, #ebebff 100%) #fff;
padding: 5px 5px 5px 24px;
}
#navi a#overview {
background: #fff url(/themes/susidns/images/overview.png) 5px center no-repeat;
background: url(/themes/susidns/images/overview.png) 5px center no-repeat, linear-gradient(to bottom, #fff 0%, #fff 50%, #eef 50%, #ebebff 100%) #fff;
padding: 5px 5px 5px 24px;
}
#navi p {
text-align: center !important;
text-transform: capitalize;
font-weight: bold;
padding: 0 5px !important;
margin: 0 !important;
}
.headline {
border: 1px solid #7778bf;
margin: -1px 0 -2px;
@@ -148,7 +159,7 @@ span.location {
margin: 5px -6px 0;
padding: 8px 10px 0;
padding: 8px 10px 0 33px;
background: url(/themes/susidns/images/drive.png) 9px 6px no-repeat;
background: url(/themes/susidns/images/drive.png) 9px 7px no-repeat;
}
#content {
@@ -159,7 +170,7 @@ span.location {
}
.iframed #content {
border-radius: 0 0 2px 2px;
border-radius: 2px;
overflow: hidden;
}
@@ -185,19 +196,25 @@ form[action="subscriptions"] #content {
#content h3 {
border: 1px solid #77789f;
padding: 3px 8px;
padding: 5px 8px;
border-radius: 2px;
background: linear-gradient(to bottom, #fff 0%, #fff 50%, #eef 50%, #eef 100%);
box-shadow: inset 0 0 0 1px #fff;
filter: drop-shadow(0 0 1px #999);
-webkit-filter: drop-shadow(0 0 1px #999);
}
div#add {
border: 1px solid #7778bf;
margin-top: -1px;
padding: 0 15px;
background: #fff;
}
.iframed #add {
margin-top: 10px;
}
#add h3 {
border-bottom: 1px solid #7778bf;
margin: 0 -15px;
@@ -258,6 +275,12 @@ p, #helpconfig {
text-align: justify;
}
.iframed #helpconfig, .iframed #helpsubs {
margin-top: 10px;
box-shadow: inset 0 0 0 1px #fff;
border-radius: 0;
}
span.addrhlpr {
font-size: 9pt;
}
@@ -297,6 +320,10 @@ td {
vertical-align: middle;
}
ol, ul {
margin-left: -30px;
}
li {
font-size: 9pt;
list-style: square;
@@ -379,7 +406,6 @@ p.footer {
}
.page {
/* background-color: #fff;*/
margin: 0;
padding: 10px 0;
font-size: 9pt !important;
@@ -515,7 +541,6 @@ td.search:first-child {
padding: 2px 5px;
}
#filter span b {
font-size: 11pt;
margin: 0 5px;
@@ -554,6 +579,7 @@ form {
th {
background: linear-gradient(to bottom, #fff 0%, #fff 50%, #eef 50%, #eef 100%);
font-size: 9pt;
}
table {
@@ -566,6 +592,10 @@ table.book {
}
.book th:first-child {
padding-left: 10px;
}
.book th:last-child {
background: #fff url(/themes/console/images/buttons/delete.png) center center no-repeat;
background: url(/themes/console/images/buttons/delete.png) center center no-repeat, linear-gradient(to bottom, #fff 0%, #fff 50%, #eef 50%, #eef 100%);
width: 16px;
@@ -576,11 +606,6 @@ table.book {
padding-left: 3px;
}
.book th:last-child {
padding: 0 3px 0 0;
background: linear-gradient(to bottom, #fff 0%, #fff 50%, #eef 50%, #eef 100%);
}
.book tr:hover td {
background: #ffd;
}
@@ -594,41 +619,228 @@ table.book {
padding: 3px;
}
.book td:first-child {
/* hostname list */
#host_list, #host_details {
border: 1px solid #7778bf;
box-shadow: 0 0 0 1px #fff;
}
#host_list th:first-child,
#host_list td:first-child {
width: 150px;
width: 30%;
white-space: nowrap;
padding-left: 5px;
}
#host_list th:first-child {
padding-left: 39px;
}
#host_list td:last-child {
width: 16px;
white-space: nowrap;
font-weight: bold;
}
.book td:nth-child(3) {
width: 30px;
#host_list th:nth-child(2), #host_list td:nth-child(2),
#host_list th:nth-child(3), #host_list td:nth-child(3),
#host_list th:nth-child(4), #host_list td:nth-child(4) {
width: 35px;
width: 8%;
padding: 0 5px !important;
white-space: nowrap;
padding-left: 10px;
}
.book td:nth-child(4) {
text-align: center;
width: 20px;
padding: 2px 25px 2px 0 !important;
}
.book td:nth-child(4) a:not(old) {
#host_list td:nth-child(2) a:not(old) {
font-size: 0 !important;
}
.book td:nth-child(4) .addrhlpr a::after {
#host_list td:nth-child(2) a::after {
content: url(/themes/console/images/buttons/link.png);
text-align: center;
filter: drop-shadow(0 0 1px #555);
-webkit-filter: drop-shadow(0 0 1px #555);
cursor: pointer;
}
#host_list td:nth-child(3) a:not(old) {
font-size: 0 !important;
}
#host_list td:nth-child(3) a::after {
content: url(/themes/console/images/buttons/helper.png);
cursor: pointer;
}
#host_list th:nth-child(4), #host_list td:nth-child(4) {
padding-right: 30px !important;
}
#host_list td:nth-child(4) a:not(old) {
font-size: 0 !important;
}
#host_list td:nth-child(4) .addrhlpr a::after {
content: url(/themes/console/images/buttons/fullview.png);
text-align: center;
padding: 0 10px !important;
filter: drop-shadow(0 0 1px #555);
-webkit-filter: drop-shadow(0 0 1px #555);
cursor: pointer;
}
.book td:nth-child(4) .addrhlpr:hover {
#host_list td:nth-child(2) a:hover, #host_list td:nth-child(3) a:hover, #host_list td:nth-child(4) a:hover,
#host_list td:nth-child(2) a:focus, #host_list td:nth-child(3) a:focus, #host_list td:nth-child(4) a:focus {
filter: drop-shadow(0 0 1px #f60);
-webkit-filter: drop-shadow(0 0 1px #f60);
}
#host_list .destaddress {
overflow: auto !important;
white-space: nowrap;
font-family: "Droid Sans Mono", "Noto Mono", "Lucida Console", "DejaVu Sans Mono", Courier, mono;
font-weight: normal;
color: #555;
padding: 3px !important;
}
td.destinations {
max-width: 50px !important;
border-left: 1px solid #bbf;
border-right: 1px solid #bbf;
padding: 0;
background: #fff;
}
td.destinations textarea {
box-shadow: none;
height: 28px !important;
}
/* end hostname list */
/* host details page */
#host_details td {
padding: 5px 10px !important;
}
#host_details td:first-child {
min-width: 10px !important;
width: 10%;
white-space: nowrap;
font-weight: bold;
text-align: right;
}
#host_details td:last-child {
width: 90%;
text-align: left;
border-left: none !important;
border-right: none !important;
}
#host_details td.destinations {
background: none;
}
#host_details tr:hover {
background: #ffd;
}
#host_details .destaddress {
font-family: "Droid Sans Mono", "Noto Mono", "Lucida Console", "DejaVu Sans Mono", Courier, mono;
word-break: break-all !important;
white-space: normal !important;
}
/* identicon + qr image */
#visualid {
border: 1px solid #7778bf !important;
margin-top: -1px;
border-radius: 2px;
background: #fff;
padding-top: 0;
}
.iframed #visualid {
margin-top: 9px;
}
#visualid h3 {
border-bottom: 1px solid #7778bf;
padding: 8px 10px 6px;
margin-top: 0;
background: linear-gradient(to bottom, #fff 0%, #fff 50%, #eef 50%, #eef 100%);
box-shadow: inset 0 0 0 1px #fff;
}
#visualid table {
width: 100% !important;
margin: 12px 0 0;
background: none;
border: none;
border-collapse: collapse;
}
#visualid tr:first-child td {
padding-bottom: 15px;
}
#visualid td {
width: 50%;
}
#visualid td:first-child {
text-align: right;
}
#visualid td[colspan="2"] {
text-align: right;
padding: 20px 5px;
border-top: 1px solid #7778bf;
background: #fff;
}
img[src^="/imagegen"] {
height: 256px;
width: 256px;
border: 1px solid #7778bf;
padding: 3px;
border-radius: 2px;
background: #fff;
filter: drop-shadow(0 0 1px #999);
-webkit-filter: drop-shadow(0 0 1px #999);
}
/* end host details */
/* host list identicons */
.names img {
width: 20px;
height: 20px;
vertical-align: middle;
margin: 1px 10px 1px 1px;
padding: 1px;
}
.names img:hover, .names a:focus img {
filter: drop-shadow(0 0 1px #f60) !important;
-webkit-filter: drop-shadow(0 0 1px #f60) !important;
box-shadow: 0 0 0 1px #f60;
}
.names a:active img, .names a:focus img {
transform: rotate(45deg) scale(0.8);
transition: ease all 0.1s 0s;
}
/* end host list identicons */
.book th {
border-bottom: 1px solid #7778bf;
}
@@ -638,13 +850,18 @@ table.book {
margin: 0;
border: none;
border-left: 1px solid #bbf;
border-right: 1px solid #bbf;
resize: none;
background: none;
}
div#book {
padding: 0;
background: #eef;
padding: 8px;
background: #efefff;
}
.iframed div#book {
margin-bottom: 10px;
}
p.book {
@@ -652,16 +869,6 @@ p.book {
padding: 5px 5px 5px 33px;
}
td.destinations {
padding: 0;
background: #fff;
}
td.destinations textarea {
box-shadow: none;
height: 28px !important;
}
#buttons {
padding: 10px 5px;
text-align: right;
@@ -683,46 +890,26 @@ table + p.buttons {
margin-top: -1px;
}
/* identicon + qr image */
#book + #buttons + div {
border: 1px solid #7778bf;
margin-top: -1px;
}
#book + #buttons + div table {
width: 100%;
}
#book + #buttons + div td {
width: 50%;
}
#book + #buttons + div td:first-child {
text-align: right;
}
img[src^="/imagegen"] {
height: 256px;
width: 256px;
border: 1px solid #7778bf;
padding: 3px;
border-radius: 2px;
background: #fff;
filter: drop-shadow(0 0 1px #999);
-webkit-filter: drop-shadow(0 0 1px #999);
.iframed #book + #buttons {
margin-top: -11px;
}
form[action="export"] {
border: 1px solid #7778bf;
/* border: 1px solid #7778bf; */
margin: -1px 0;
}
input[type="submit"]::-moz-focus-inner, input[type="reset"]::-moz-focus-inner {
input[type="radio"], input[type="checkbox"] {
background: none;
cursor: pointer;
}
input[type="submit"]::-moz-focus-inner, input[type="reset"]::-moz-focus-inner, button::-moz-focus-inner {
outline: none;
border: none;
}
input[type="submit"], input[type="reset"] {
input[type="submit"], input[type="reset"], .fakebutton {
margin: 5px;
font: 9pt "Droid Sans", "Noto Sans", Ubuntu, "Bitstream Vera Sans", Verdana, "Lucida Grande", Helvetica, sans-serif;
padding: 4px 3px;
@@ -736,9 +923,23 @@ input[type="submit"], input[type="reset"] {
color: #333;
filter: saturate(70%) drop-shadow(0 0 1px #ccc);
-webkit-filter: saturate(70%) drop-shadow(0 0 1px #ccc);
cursor: pointer;
}
input[type=submit]:hover, input[type=reset]:hover, input[type=submit]:focus, input[type=reset]:focus {
.fakebutton a {
color: #333;
font-weight: normal;
}
.fakebutton a:hover, .fakebutton a:focus {
color: #111;
}
.fakebutton a:active {
color: #666 !important;
}
input[type=submit]:hover, input[type=reset]:hover, input[type=submit]:focus, input[type=reset]:focus, .fakebutton:hover, .fakebutton:focus {
background: #eee;
background: linear-gradient(to bottom, #ddd 0%, #fff 100%);
color: #111;
@@ -748,9 +949,10 @@ input[type=submit]:hover, input[type=reset]:hover, input[type=submit]:focus, inp
-webkit-filter: saturate(100%) drop-shadow(0 0 1px #ccc);
}
input[type="submit"]:active, input[type="reset"]:active {
box-shadow: inset 2px 2px 2px #555;
input[type="submit"]:active, input[type="reset"]:active, .fakebutton:active {
box-shadow: inset 3px 3px 2px #555;
background-blend-mode: luminosity;
color: #666;
}
input.accept {
@@ -823,6 +1025,7 @@ input.export {
background: url(/themes/console/images/buttons/go.png) no-repeat 6px center, linear-gradient(to bottom, #fff 0%, #ddd 100%);
background-size: 14px 14px, 100% 100%;
padding: 5px 5px 5px 21px;
margin-top: 5px;
}
input.export:hover, input.export:focus {
@@ -867,6 +1070,19 @@ input.search[type="text"]:focus {
background: #fff url(/themes/console/images/buttons/search.png) no-repeat 6px center !important;
}
#visualid .fakebutton {
background: #eee url(/themes/console/images/buttons/go.png) no-repeat 6px center;
background: url(/themes/console/images/buttons/go.png) no-repeat 6px center, linear-gradient(to bottom, #fff 0%, #ddd 100%);
background-size: 14px 14px, 100% 100%;
padding: 6px 8px 6px 22px;
}
#visualid .fakebutton:hover, #visualid .fakebutton:focus {
background: #fff url(/themes/console/images/buttons/go.png) no-repeat 6px center;
background: url(/themes/console/images/buttons/go.png) no-repeat 6px center, linear-gradient(to bottom, #ddd 0%, #fff 100%);
background-size: 14px 14px, 100% 100%;
}
form[action="addressbook"] table {
width: 100% !important;
font-weight: bold;
@@ -879,6 +1095,10 @@ form[action="addressbook"] table {
margin-top: -36px;
}
.iframed #export {
margin-bottom: 11px;
}
/* hide export button on published page when empty */
#messages + form[action="export"] {
display: none;
@@ -891,3 +1111,81 @@ form[action="addressbook"] table {
p#filtered {
padding-right: 200px !important;
}
/* responsive layout */
@media screen and (max-width: 680px) {
#navi {
padding: 5px 3px !important;
}
#navi a {
background: linear-gradient(to bottom, #fff 0%, #fff 50%, #eef 50%, #ebebff 100%) #fff !important;
padding: 3px 5px !important;
}
#visualid img[src^="/imagegen"] {
width: 228px !important;
height: 228px !important;
}
}
@media screen and (min-width: 1400px) {
body, p, td, textarea, input, button, li, a, th, h4 {
font-size: 10pt !important;
}
code, tt, .destaddress {
font-size: 9pt !important;
}
#navi a {
font-size: 11pt;
}
h3 {
font-size: 12pt !important;
}
#export {
margin-top: -40px !important;
}
#filter span, #filter a {
font-size: 11pt !important;
}
td.destinations textarea {
height: 32px !important;
}
input.export {
margin-top: 8px;
}
#host_list th:nth-child(2), #host_list td:nth-child(2),
#host_list th:nth-child(3), #host_list td:nth-child(3),
#host_list th:nth-child(4), #host_list td:nth-child(4) {
padding: 0 20px;
width: 6%;
}
.headline h4 {
background: rgba(0, 0, 0, 0) url("/themes/susidns/images/drive.png") no-repeat scroll 10px 8px;
}
}
@media screen and (max-width: 1000px) {
.iframed .illustrate {
margin: 0 10px 15px;
}
}
/* end responsive layout */
/* MS Edge 14+ fix */
_:-ms-lang(x), * {
filter: none !important;
-webkit-filter: none !important;
}

View File

@@ -24,18 +24,23 @@ body.iframed {
div#navi {
border: 1px solid #2d295f;
padding: 2px 0;
padding: 3px 0 2px;
background: #002 url(/themes/console/midnight/images/header.png) repeat-x scroll center center !important;
background: linear-gradient(to bottom, #191729 0%, #201f33 7%, #1f1e32 9%, #161525 21%, #090812 49%, #05050e 50%, #020206 51%, #010103 53%, #000000 56%, #000000 100%) !important;
margin: -10px 0 27px;
margin: -11px 0 27px;
box-shadow: inset 0 0 0 1px #000;
position: sticky;
top: 0;
top: -1px;
z-index: 999;
text-align: center !important;
font-weight: bold;
font-size: 9pt;
padding: 6px 5px 5px !important;
min-width: 512px;
}
.iframed #navi {
padding: 0 !important;
padding: 5px !important;
border: 1px solid #443da0 !important;
margin: 0 0 27px;
}
@@ -126,16 +131,7 @@ div#navi {
background: #652787 url(/themes/susidns/images/overview.png) 6px center no-repeat;
}
#navi p {
text-align: center !important;
text-transform: capitalize;
font-weight: bold;
font-size: 9pt;
padding: 2px 5px !important;
margin: 0 !important;
}
#navi p > * {
#navi > * {
vertical-align: middle;
}
@@ -364,7 +360,7 @@ h3 {
margin-top: -1px;
margin-left: -11px;
margin-right: -11px;
padding: 5px 10px;
padding: 8px 10px;
font-size: 10pt;
}
@@ -444,7 +440,7 @@ th {
border-bottom: 1px solid #2d295f;
}
.book th:first-child {
.book th:last-child {
background: #000 url(/themes/console/images/buttons/delete.png) center center no-repeat !important;
font-size: 0;
padding: 0 !important;
@@ -640,7 +636,7 @@ div#book {
#book table {
width: 100%;
border: 1px solid #2d295f !important;
margin-top: -10px;
/* margin-top: -10px;*/
}
.iframed #book table {
@@ -671,22 +667,28 @@ div#book {
background: #001;
}
.book td:nth-child(3) {
.book th:first-child, .book td:first-child {
padding: 0 10px !important;
width: 200px;
white-space: nowrap;
}
.book td:nth-child(2) {
padding: 2px 0 2px 5px !important;
width: 30px;
}
.book td:nth-child(4) {
.book td:nth-child(3) {
text-align: center;
width: 20px;
padding: 2px 25px 2px 0 !important;
}
.book td:nth-child(4) a:not(old) {
.book td:nth-child(3) a:not(old) {
font-size: 0 !important;
}
.book td:nth-child(4) .addrhlpr a::after {
.book td:nth-child(3) .addrhlpr a::after {
content: url(/themes/console/images/buttons/fullview.png);
text-align: center;
padding: 2px 10px !important;
@@ -694,7 +696,7 @@ div#book {
-webkit-filter: drop-shadow(0 0 1px #555);
}
.book td:nth-child(4) .addrhlpr:hover {
.book td:nth-child(3) .addrhlpr:hover {
filter: drop-shadow(0 0 1px #b73fff);
-webkit-filter: drop-shadow(0 0 1px #b73fff);
}
@@ -713,9 +715,40 @@ div#book {
padding: 0;
}
#buttons + div > table {
width: auto;
margin: auto;
#visualid {
border: 1px solid #2d295f;
margin-top: -10px;
}
.iframed #visualid {
border: none;
}
#visualid h3 {
margin-top: -1px;
border-left: none;
border-right: none;
}
#visualid table {
width: 100%;
margin-top: -15px;
margin-bottom: 1px;
border-collapse: collapse;
}
#visualid td:first-child {
text-align: right;
}
#visualid td[colspan="2"] {
text-align: right;
border-top: 1px solid #2d295f;
padding: 17px 9px 15px !important;
}
.iframed #visualid td[colspan="2"] {
padding: 20px 9px 5px !important;
}
div#add {
@@ -752,7 +785,7 @@ input {
min-width: 64px !important;
}
input[type="checkbox"], .optbox {
input[type="checkbox"], input[type="radio"], .optbox {
filter: invert(100%) sepia(100%) hue-rotate(200deg) saturate(200%); /* colorize radios and checkboxes */
-webkit-filter: invert(100%) sepia(100%) hue-rotate(200deg) saturate(200%);
background: none;
@@ -763,7 +796,7 @@ input[type=submit]::-moz-focus-inner, input[type=reset]::-moz-focus-inner {
outline: none;
}
input[type=submit], input[type=reset] {
input[type=submit], input[type=reset], .fakebutton {
color: #443da0;
background: #000;
background: linear-gradient(to bottom, #1f1e32, #090812 50%, #000 50%) !important;
@@ -775,17 +808,19 @@ input[type=submit], input[type=reset] {
text-align: center;
min-width: 90px !important;
box-shadow: inset 0 0 0 1px #000;
border-radius: 2px;
}
input[type=submit]:hover, input[type=reset]:hover,
input[type=submit]:focus, input[type=reset]:focus {
input[type=submit]:focus, input[type=reset]:focus,
.fakebutton:hover, .fakebutton:focus {
background: #000 !important;
color: #652787;
border: 1px solid #652787;
box-shadow: inset 0 1px 1px 0 #c9ceff;
}
input[type=submit]:active, input[type=reset]:active {
input[type=submit]:active, input[type=reset]:active, .fakebutton:active {
background: #652787 !important;
color: #c9ceff !important;
border: 1px solid #652787;
@@ -837,7 +872,8 @@ textarea[cols="70"] {
border-radius: 0;
border: none;
border-left: 1px solid #17142f;
height: 30px;
border-right: 3px solid #17142f;
height: 32px;
overflow-x: auto;
overflow-y: hidden !important;
}
@@ -892,21 +928,29 @@ p.book {
/* responsive layout */
@media screen and (min-width: 1500px) {
body, input[type="text"], select, h4, td.names a, #filter p, #search td, p, a, textarea, .help li {
body, input[type="text"], select, h4, td.names a, #filter p, #search td, p, a, textarea, .help li, td, tt, code, textarea, input[type="submit"], input[type="reset"] {
font-size: 10pt !important;
}
textarea, input[type="submit"], input[type="reset"] {
font-size: 9pt !important;
#navi a {
font-size: 10.5pt !important;
}
h3, #filter a, #navi a {
font-size: 11pt;
h3 {
font-size: 12pt !important;
}
#filter a {
font-size: 11pt !important;
}
#filter a:link, #filter a:visited {
margin: 3px 2px !important;
}
.destinations textarea {
height: 34px;
}
}
/* export hosts button adjustments */
@@ -942,3 +986,162 @@ p.book {
#messages + form[action="export"] {
display: none;
}
/* host details page */
#host_details td {
padding: 5px 10px !important;
}
#host_details td:first-child {
min-width: 10px !important;
width: 10%;
white-space: nowrap;
font-weight: bold;
text-align: right;
}
#host_details td:last-child {
width: 90%;
text-align: left;
border-left: none !important;
border-right: none !important;
}
#host_details td.destinations {
background: none;
}
#host_details tr:hover {
background: #ffd;
}
#host_details .destaddress {
word-break: break-all !important;
white-space: normal !important;
}
/* end host details */
.names img {
width: 20px;
height: 20px;
vertical-align: middle;
margin: 1px 10px 1px 1px;
padding: 1px;
border: 1px solid #17142f;
border-radius: 2px;
background: #000;
}
.names img:hover, .names a:focus img {
border: 1px solid #652787;
background: #652787;
}
.names a:active img, .names a:focus img {
transform: rotate(45deg) scale(0.8);
transition: ease all 0.1s 0s;
}
/* hostname list */
#host_list {
margin-top: 28px;
}
#host_list th:first-child,
#host_list td:first-child {
width: 150px;
width: 30%;
white-space: nowrap;
padding-left: 5px !important;
}
#host_list th:first-child {
padding-left: 39px !important;
}
#host_list td:last-child {
width: 16px;
white-space: nowrap;
font-weight: bold;
}
#host_list th:nth-child(2), #host_list td:nth-child(2),
#host_list th:nth-child(3), #host_list td:nth-child(3),
#host_list th:nth-child(4), #host_list td:nth-child(4) {
width: 35px;
width: 8%;
padding: 0 5px !important;
white-space: nowrap;
text-align: center;
}
#host_list td:nth-child(2) a:not(old) {
font-size: 0 !important;
}
#host_list td:nth-child(2) a::after {
content: url(/themes/console/images/buttons/link.png);
text-align: center;
filter: drop-shadow(0 0 1px #555);
-webkit-filter: drop-shadow(0 0 1px #555);
cursor: pointer;
}
#host_list td:nth-child(3) a:not(old) {
font-size: 0 !important;
}
#host_list td:nth-child(3) a::after {
content: url(/themes/console/images/buttons/helper.png);
cursor: pointer;
}
#host_list th:nth-child(4), #host_list td:nth-child(4) {
padding-right: 30px !important;
}
#host_list td:nth-child(4) a:not(old) {
font-size: 0 !important;
}
#host_list td:nth-child(4) .addrhlpr a::after {
content: url(/themes/console/images/buttons/fullview.png);
text-align: center;
padding: 0 10px !important;
filter: drop-shadow(0 0 1px #555);
-webkit-filter: drop-shadow(0 0 1px #555);
cursor: pointer;
}
#host_list td:nth-child(2) a:hover, #host_list td:nth-child(3) a:hover, #host_list td:nth-child(4) a:hover,
#host_list td:nth-child(2) a:focus, #host_list td:nth-child(3) a:focus, #host_list td:nth-child(4) a:focus {
filter: drop-shadow(0 0 2px #652787);
-webkit-filter: drop-shadow(0 0 2px #652787);
}
#host_list .destaddress {
overflow: auto !important;
white-space: nowrap;
font-family: "Droid Sans Mono", "Noto Mono", "Lucida Console", "DejaVu Sans Mono", Courier, mono !important;
font-weight: normal;
padding: 3px !important;
}
/* end hostname list */
td.destinations {
max-width: 50px !important;
border-left: 1px solid #2d295f;
border-right: 1px solid #2d295f;
}
/* MS Edge 14+ fix */
_:-ms-lang(x), * {
filter: none !important;
-webkit-filter: none !important;
}