summaryrefslogtreecommitdiffstats
path: root/Server/webadmin
diff options
context:
space:
mode:
Diffstat (limited to 'Server/webadmin')
-rw-r--r--Server/webadmin/files/favicon.icobin0 -> 2076 bytes
-rw-r--r--Server/webadmin/files/favicon.pngbin553 -> 0 bytes
-rw-r--r--Server/webadmin/files/guest.html38
-rw-r--r--Server/webadmin/files/header.pngbin221 -> 0 bytes
-rw-r--r--Server/webadmin/files/home.gifbin1026 -> 0 bytes
-rw-r--r--Server/webadmin/files/log_out.pngbin995 -> 0 bytes
-rw-r--r--Server/webadmin/files/login.css218
-rw-r--r--Server/webadmin/files/login.gifbin586 -> 0 bytes
-rw-r--r--Server/webadmin/files/logo_login.pngbin2550 -> 0 bytes
-rw-r--r--Server/webadmin/files/pmfolder.gifbin995 -> 0 bytes
-rw-r--r--Server/webadmin/files/style.css508
-rw-r--r--Server/webadmin/files/sub_pmfolder.gifbin1022 -> 0 bytes
-rw-r--r--Server/webadmin/files/tcat.pngbin183 -> 0 bytes
-rw-r--r--Server/webadmin/files/thead.pngbin132 -> 0 bytes
-rw-r--r--Server/webadmin/login_template.html80
-rw-r--r--Server/webadmin/template.lua152
16 files changed, 300 insertions, 696 deletions
diff --git a/Server/webadmin/files/favicon.ico b/Server/webadmin/files/favicon.ico
new file mode 100644
index 000000000..565ef648a
--- /dev/null
+++ b/Server/webadmin/files/favicon.ico
Binary files differ
diff --git a/Server/webadmin/files/favicon.png b/Server/webadmin/files/favicon.png
deleted file mode 100644
index 9e3da2967..000000000
--- a/Server/webadmin/files/favicon.png
+++ /dev/null
Binary files differ
diff --git a/Server/webadmin/files/guest.html b/Server/webadmin/files/guest.html
index 27af93142..340499951 100644
--- a/Server/webadmin/files/guest.html
+++ b/Server/webadmin/files/guest.html
@@ -1,18 +1,24 @@
<!DOCTYPE html>
-<html lang="en">
-
- <head>
- <meta charset="UTF-8" />
- <title>Guest Information</title>
- </head>
-
- <body>
- <p>
- Hello! Welcome to the Cuberite WebAdmin.
- </p>
- <p>
- This is a default message, edit <b>files/guest.html</b> to add your own custom message.
- </p>
- </body>
-
+<html lang="en">
+<head>
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+ <title>Guest Information</title>
+ <style>
+ html {
+ font-family: Tahoma, Verdana, Arial, sans-serif;
+ color: #343434;
+ font-size: 13px;
+ line-height: 1.4;
+ }
+ </style>
+</head>
+<body>
+ <p>
+ Hello! Welcome to the Cuberite WebAdmin.
+ </p>
+ <p>
+ This is a default message, edit <b>files/guest.html</b> to add your own custom message.
+ </p>
+</body>
</html>
diff --git a/Server/webadmin/files/header.png b/Server/webadmin/files/header.png
deleted file mode 100644
index 97b067715..000000000
--- a/Server/webadmin/files/header.png
+++ /dev/null
Binary files differ
diff --git a/Server/webadmin/files/home.gif b/Server/webadmin/files/home.gif
deleted file mode 100644
index b10e0bed7..000000000
--- a/Server/webadmin/files/home.gif
+++ /dev/null
Binary files differ
diff --git a/Server/webadmin/files/log_out.png b/Server/webadmin/files/log_out.png
deleted file mode 100644
index 63232417a..000000000
--- a/Server/webadmin/files/log_out.png
+++ /dev/null
Binary files differ
diff --git a/Server/webadmin/files/login.css b/Server/webadmin/files/login.css
deleted file mode 100644
index 840125a34..000000000
--- a/Server/webadmin/files/login.css
+++ /dev/null
@@ -1,218 +0,0 @@
-/* Copyright Justin S and Cuberite Team, licensed under CC-BY-SA 3.0 */
-* {
- margin: 0;
-}
-
-body {
- font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
- -webkit-font-smoothing: antialiased;
- background: #fff url(header.png) repeat-x top left;
- width: 100%;
- min-width: 100%;
- overflow: hidden;
-}
-
-a:link {
- color: #555;
- text-decoration: none;
-}
-
-a:visited {
- color: #444;
- text-decoration: none;
-}
-
-a:hover, a:active {
- color: #000;
- text-decoration: underline;
-}
-
-img {
- border: none;
-}
-
-h1 {
- color: #069;
-}
-
-.row1 {
- border-bottom: 1px solid #000;
- padding: 13px 0 13px 0;
-}
-
-.row2 {
- margin: 0 auto;
- text-align: center;
- vertical-align: middle;
-}
-
-.contention {
- color: #000;
- text-align: left;
- line-height: 1.4;
- margin: 0;
- font-family: Tahoma,Verdana,Arial,Sans-Serif;
- font-size: 13px;
-}
-
-button {
- background: #fff;
- color: #000;
- border: 1px solid #ccc;
- padding: 3px;
- font-family: Tahoma,Verdana,Arial,Sans-Serif;
- -moz-border-radius: 5px;
- -webkit-border-radius: 5px;
- border-radius: 5px;
- margin: -3px 0;
-}
-
-button:hover {
- border-top-color: #28597a;
- background: #28597a;
- color: #ccc;
-}
-
-button:active {
- border-top-color: #1b435e;
- background: #1b435e;
-}
-
-.push10 {
- padding-bottom: 75px;
-}
-
-#panel .upper {
- background: #dcdbdc url(tcat.png) repeat-x;
- border-top: 1px solid #fff;
- border-bottom: 1px solid #bbb;
- padding: 7px;
-}
-
-#footer {
- z-index: 99999;
-}
-
-#footer ul.menu {
- margin: 0;
- padding: 0;
- list-style: none;
-}
-
-#footer ul.menu li {
- margin: 0 5px;
- display: inline;
-}
-
-#footer .upper {
- background: #dcdbdc url(tcat.png) repeat-x;
- border-top: 1px solid #bbb;
- padding: 6px;
- overflow: hidden;
- font-size: 12px;
-}
-
-#footer .upper ul.bottom_links {
- float: left;
- margin: 3px 0 0 -5px;
-}
-
-#footer .lower {
- background: #a1a2a2 url(thead.png) top left repeat-x;
- color: #fff;
- border-top: 1px solid #ccc;
- border-bottom: 1px solid #ddd;
- overflow: hidden;
- padding: 8px;
- font-size: 11px;
-}
-
-#footer .lower a:link, #footer .lower a:visited {
- color: #fff;
- font-weight: 700;
-}
-
-#footer .lower a:hover, #footer .lower a:active {
- color: #fff;
- font-weight: 700;
-}
-
-#footer .lower #current_time {
- float: right;
- padding-right: 6px;
-}
-
-.wrapper {
- width: 85%;
- min-width: 970px;
- max-width: 1500px;
- margin: auto;
-}
-
-#footer {
- position: fixed;
- left: 0;
- bottom: 0;
- height: 60px;
- width: 100%;
- background: #999;
- border-top: 1px #000 solid;
-}
-
-* html #footer {
- position: absolute;
- top: expression((0-(footer.offsetHeight)+(document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body.clientHeight)+(ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop))+'px');
-}
-
-tr td.trow2:first-child {
- border-left: 0;
-}
-
-tr td.trow2:last-child {
- border-right: 0;
-}
-
-.tborder {
- -moz-border-radius: 7px;
- -webkit-border-radius: 7px;
- border-radius: 7px;
-}
-
-.thead, .rounded_top {
- -moz-border-radius-topleft: 6px;
- -moz-border-radius-topright: 6px;
- -webkit-border-top-left-radius: 6px;
- -webkit-border-top-right-radius: 6px;
- border-top-left-radius: 6px;
- border-top-right-radius: 6px;
-}
-
-table {
- color: #000;
- font-size: 13px;
-}
-
-.tborder {
- background: #fff;
- width: 100%;
- margin: auto;
- border: 1px solid #ccc;
- padding: 1px;
-}
-
-.thead {
- background: #a1a2a2 url(thead.png) top left repeat-x;
- color: #fff;
- border-bottom: 1px solid #8e8f8f;
- padding: 8px;
-}
-
-.trow2 {
- background: #efefef;
- border: 1px solid;
- border-color: #fff #ddd #ddd #fff;
-}
-
-.padtopp {
- padding-top: 25px;
-}
diff --git a/Server/webadmin/files/login.gif b/Server/webadmin/files/login.gif
deleted file mode 100644
index ce2cb6fc0..000000000
--- a/Server/webadmin/files/login.gif
+++ /dev/null
Binary files differ
diff --git a/Server/webadmin/files/logo_login.png b/Server/webadmin/files/logo_login.png
deleted file mode 100644
index 2b06cba75..000000000
--- a/Server/webadmin/files/logo_login.png
+++ /dev/null
Binary files differ
diff --git a/Server/webadmin/files/pmfolder.gif b/Server/webadmin/files/pmfolder.gif
deleted file mode 100644
index 3fc68fdcb..000000000
--- a/Server/webadmin/files/pmfolder.gif
+++ /dev/null
Binary files differ
diff --git a/Server/webadmin/files/style.css b/Server/webadmin/files/style.css
index 4063790e3..bf36a5e9d 100644
--- a/Server/webadmin/files/style.css
+++ b/Server/webadmin/files/style.css
@@ -1,427 +1,307 @@
/* Copyright Justin S and Cuberite Team, licensed under CC-BY-SA 3.0 */
* {
- margin: 0;
+ font-family: inherit;
+ margin: 0;
}
+html,
body {
- font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
- -webkit-font-smoothing: antialiased;
- background: #fff;
- width: 100%;
- min-width: 100%;
- height:100%;
- min-height:100%;
- overflow-y: scroll;
- overflow-x: hidden;
+ height: 100%;
+ width: 100%;
}
-a:link {
- color: #555;
- text-decoration: none;
-}
-
-a:visited {
- color: #444;
- text-decoration: none;
+body {
+ font-family: Tahoma, Verdana, Arial, sans-serif;
+ background: #fff;
+ color: #343434;
+ display: table;
+ font-size: 13px;
+ line-height: 1.4;
}
-a:hover, a:active {
- color: #000;
- text-decoration: underline;
+h4 {
+ background: #F4F7F6;
+ border-bottom: 1px solid #CCDDD9;
+ padding: 8px 3px;
}
img {
- border: none;
+ border: none;
}
-h1 {
- color: #069;
- text-shadow: 2px 2px #000;
+ul {
+ padding-top: 10px;
+ padding-bottom: 10px;
}
-.row1 {
- border-bottom: 1px #000 solid;
- background: #fff url(header.png) repeat-x top left;
- padding: 13px 0 13px 0;
-}
-
-.row2 {
- margin: 0 auto;
- text-align: center;
- vertical-align: middle;
- margin-top: 25px;
- margin-bottom: 25px;
- padding-bottom: 65px;
+p {
+ margin: 4px 0;
+ padding: 4px 3px;
}
-.contention {
- color: #000;
- text-align: left;
- line-height: 1.4;
- margin: 0;
- font-family: Tahoma,Verdana,Arial,Sans-Serif;
- font-size: 13px;
- margin-bottom:75px;
+hr {
+ background: rgba(204, 221, 217, .6);
+ border: none;
+ height: 1px;
+ margin: 5px 0;
}
-.push25 {
+a {
+ color: #666;
+ text-decoration: none;
}
-#panel ul.menu {
- margin: 0;
- padding: 0;
- list-style: none;
+a:visited {
+ color: #444;
+ text-decoration: none;
}
-#panel ul.menu li {
- margin: 0 5px;
- display: inline;
+a:hover, a:active {
+ color: #888;
+ text-decoration: underline;
}
-#panel ul.menu li a {
- padding-left: 20px;
- background-repeat: no-repeat;
- background-position: left center;
+.color-background {
+ background: #245A48;
+ background: linear-gradient(200deg, #245d33, #24575D);
+ text-shadow: 0 2px 1px rgba(0, 0, 0, .15);
}
-#panel .upper ul.top_links {
- float: right;
- font-weight: 700;
+.wrapper {
+ padding: 0 15px;
+ margin: auto;
+ max-width: 1000px;
}
-#panel .upper {
- background: #dcdbdc url(tcat.png) repeat-x;
- border-top: 1px solid #fff;
- border-bottom: 1px solid #bbb;
- padding: 7px;
+.header {
+ border-bottom: 1px solid rgba(0, 0, 0, .2);
+ padding: 13px 0;
}
-#footer ul.menu {
- margin: 0;
- padding: 0;
- list-style: none;
+.header svg {
+ fill: #fff;
+ vertical-align: top;
}
-#footer ul.menu li {
- margin: 0 5px;
- display: inline;
+.panel {
+ background: #F4F7F6;
+ border-bottom: 1px solid #CCDDD9;
+ overflow: hidden;
+ padding: 8px;
}
-#footer .upper {
- background: #dcdbdc url(tcat.png) repeat-x;
- border-top: 1px solid #bbb;
- padding: 6px;
- overflow: hidden;
- font-size: 12px;
+.welcome {
+ display: inline;
}
-#footer .upper ul.bottom_links {
- float: left;
- margin: 3px 0 0 -5px;
+.stats {
+ float: right;
+ font-weight: bold;
+ padding: 0;
}
-#footer .lower {
- background: #a1a2a2 url(thead.png) top left repeat-x;
- color: #fff;
- border-top: 1px solid #ccc;
- border-bottom: 1px solid #ddd;
- overflow: hidden;
- padding: 8px;
- font-size: 11px;
+.stats li {
+ display: inline;
+ padding: 0 0 0 20px;
}
-#footer .lower a:link,#footer .lower a:visited {
- color: #fff;
- font-weight: 700;
+.link-login {
+ background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='19' viewBox='0 0 24 24'%3E%3Cpath fill='%23B7A540' d='M12.65 10C11.7 7.31 8.9 5.5 5.77 6.12c-2.29.46-4.15 2.29-4.63 4.58C.32 14.57 3.26 18 7 18c2.61 0 4.83-1.67 5.65-4H17v2c0 1.1.9 2 2 2s2-.9 2-2v-2c1.1 0 2-.9 2-2s-.9-2-2-2h-8.35zM7 14c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2z'/%3E%3C/svg%3E") no-repeat left center;
+ border: 0;
+ margin: 0;
+ padding: 0 0 0 24px;
}
-#footer .lower a:hover,#footer .lower a:active {
- color: #fff;
- font-weight: 700;
+.link-login:hover,
+.link-login:active {
+ color: #888;
+ text-decoration: underline;
}
-#footer .lower #current_time {
- float: right;
- padding-right: 6px;
+.link-logout {
+ background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='19' viewBox='0 0 24 24'%3E%3Cpath fill='%23c14544' d='M13 3h-2v10h2V3zm4.83 2.17l-1.42 1.42C17.99 7.86 19 9.81 19 12c0 3.87-3.13 7-7 7s-7-3.13-7-7c0-2.19 1.01-4.14 2.58-5.42L6.17 5.17C4.23 6.82 3 9.26 3 12c0 4.97 4.03 9 9 9s9-4.03 9-9c0-2.74-1.23-5.18-3.17-6.83z'/%3E%3C/svg%3E") no-repeat left center;
+ margin: 0 0 0 10px;
+ padding: 0 0 0 24px;
}
-.wrapper {
- width: 85%;
- min-width: 970px;
- max-width: 1500px;
- margin: auto;
+.columns {
+ display: table-row;
+ height: 100%;
}
-#footer {
- position: fixed;
- left:0;
- bottom:0;
- height: 61px;
- width: 100%;
- background: #999;
- border-top: 1px #000 solid;
- border-bottom: 1px #000 solid;
+.columns-wrapper {
+ display: table;
+ margin: auto;
+ max-width: 1030px;
+ padding: 0;
+ width: 100%;
}
-* html #footer {
- position: absolute;
- top: expression((0-(footer.offsetHeight)+(document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body.clientHeight)+(ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop))+'px');
+.columns-spacing {
+ display: table-cell;
+ padding: 15px;
}
-tr td.trow1:first-child, tr td.trow2:first-child {
- border-left: 0;
+.box {
+ background: #f9fbfa;
+ border: 1px solid #CCDDD9;
+ border-radius: 7px;
}
-tr td.trow1:last-child, tr td.trow2:last-child {
- border-right: 0;
+.box.left {
+ float: left;
+ margin: 0;
+ width: 220px;
}
-.tborder {
- -moz-border-radius: 7px;
- -webkit-border-radius: 7px;
- border-radius: 7px;
+.box.right {
+ margin: 0 0 0 235px;
}
-.thead {
- -moz-border-radius-topleft: 6px;
- -moz-border-radius-topright: 6px;
- -webkit-border-top-left-radius: 6px;
- -webkit-border-top-right-radius: 6px;
- border-top-left-radius: 6px;
- border-top-right-radius: 6px;
+.guest-iframe {
+ border: 0;
+ min-height: 250px;
+ max-height: 450px;
}
-table {
- color: #000;
- font-size: 13px;
+.head {
+ border-radius: 6px 6px 0 0;
+ color: #fff;
+ font-size: 13px;
+ font-weight: bold;
+ padding: 9px;
+ border-bottom: 1px solid rgba(0, 0, 0, .2);
}
-.tborder {
- background: #fff;
- width: 100%;
- margin: auto;
- border: 1px solid #ccc;
- padding: 1px;
+.main-content {
+ padding: 10px;
}
-.thead {
- background: #a1a2a2 url(thead.png) top left repeat-x;
- color: #fff;
- border-bottom: 1px solid #8e8f8f;
- padding: 8px;
+.category {
+ background: #F4F7F6;
+ border-bottom: 1px solid #CCDDD9;
+ border-top: 1px solid #CCDDD9;
+ font-weight: bold;
+ padding: 6px;
}
-.tcat {
- background: #dcdbdc url(tcat.png) repeat-x;
- color: #fff;
- border-bottom: 1px solid #bbb;
- padding: 6px;
- font-size: 12px;
+.sidebar {
+ list-style: none;
+ padding: 6px;
}
-.trow1 {
- background: #f5f5f5;
- border: 1px solid;
- border-color: #fff #ddd #ddd #fff;
+.sidebar li a {
+ display: block;
}
-.trow2 {
- background: #efefef;
- border: 1px solid;
- border-color: #fff #ddd #ddd #fff;
- padding: 15px;
- box-sizing: border-box;
- -moz-box-sizing: border-box;
+.link-home {
+ background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24'%3E%3Cpath fill='%23434343' d='M19,9.3V5c0-0.55-0.45-1-1-1h-1c-0.55,0-1,0.45-1,1v1.6l-3.33-3c-0.38-0.34-0.96-0.34-1.34,0l-8.36,7.53C2.63,11.43,2.84,12,3.3,12H5v7c0,0.55,0.45,1,1,1h3c0.55,0,1-0.45,1-1v-5h4v5c0,0.55,0.45,1,1,1h3c0.55,0,1-0.45,1-1v-7h1.7c0.46,0,0.68-0.57,0.33-0.87L19,9.3z M10,10c0-1.1,0.9-2,2-2s2,0.9,2,2H10z'/%3E%3C/svg%3E") no-repeat left center;
+ padding: 4px 4px 4px 25px;
}
-table {
- color: #000;
- font-size: 13px;
- text-align: left;
+.link-page {
+ background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24'%3E%3Cpath fill='%23434343' d='M16.01 7L16 4c0-.55-.45-1-1-1s-1 .45-1 1v3h-4V4c0-.55-.45-1-1-1s-1 .45-1 1v3h-.01C6.9 7 6 7.9 6 8.99v4.66c0 .53.21 1.04.58 1.41L9.5 18v2c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-2l2.92-2.92c.37-.38.58-.89.58-1.42V8.99C18 7.89 17.11 7 16.01 7z'/%3E%3C/svg%3E") no-repeat left center;
+ padding: 4px 4px 4px 25px;
}
-.tborder {
- background: #fff;
- width: 100%;
- margin: auto;
- border: 1px solid #ccc;
- padding: 1px;
+.link-subpage {
+ background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='21' viewBox='0 0 24 24'%3E%3Cpath fill='%23666' d='M9.29 15.88L13.17 12 9.29 8.12c-.39-.39-.39-1.02 0-1.41.39-.39 1.02-.39 1.41 0l4.59 4.59c.39.39.39 1.02 0 1.41L10.7 17.3c-.39.39-1.02.39-1.41 0-.38-.39-.39-1.03 0-1.42z'/%3E%3C/svg%3E") no-repeat 20px center;
+ padding: 4px 4px 4px 41px;
}
-.thead {
- background: #a1a2a2 url(thead.png) top left repeat-x;
- color: #fff;
- border-bottom: 1px solid #8e8f8f;
- padding: 8px;
+#ChatMessage {
+ margin-top: 10px;
+ width: 88%;
}
-.tcat {
- background: #dcdbdc url(tcat.png) repeat-x;
- color: #fff;
- border-bottom: 1px solid #bbb;
- padding: 6px;
- font-size: 12px;
+table {
+ width: 100%;
}
-.trow1 {
- background: #f5f5f5;
- border: 1px solid;
- border-color: #fff #ddd #ddd #fff;
+th {
+ border-bottom: 1px solid #CCDDD9;
+ padding: 8px 5px;
+ text-align: left;
}
-.trow2 {
- background: #efefef;
- border: 1px solid;
- border-color: #fff #ddd #ddd #fff;
+tr:nth-child(odd) {
+ background: #F4F7F6;
}
-.smalltext {
- font-size: 11px;
+td {
+ padding: 3px 5px;
}
+button,
+input,
+select,
textarea {
- background: #fff;
- color: #000;
- border: 1px solid #ccc;
- padding: 2px;
- line-height: 1.4;
- font-family: Tahoma,Verdana,Arial,Sans-Serif;
- font-size: 13px;
-}
-
-select {
- background: #fff;
- padding: 3px;
- border: 1px solid #ccc;
- font-family: Tahoma,Verdana,Arial,Sans-Serif;
-}
-
-.usercp_nav_item {
- display: block;
- padding: 1px 0 1px 23px;
-}
-
-.usercp_nav_pmfolder {
- background: url(pmfolder.gif) no-repeat left center;
+ background: #fff;
+ border: 1px solid #ccc;
+ border-radius: 5px;
+ padding: 6px;
}
-.usercp_nav_sub_pmfolder {
- padding-left: 40px;
- background: url(sub_pmfolder.gif) no-repeat left center;
-}
-
-.usercp_nav_home {
- background: url(home.gif) no-repeat left center;
-}
-
-.pagehead {
- top: 0;
- left: 0;
- width: 100%;
-}
-
-table {
- width: 100%;
-}
-
-table th {
- border-bottom: 1px solid rgba(0,0,0,0.12);
- padding: 5px;
- text-align: left;
-}
-
-table tr:nth-child(odd) {
- background-color: rgba(0,0,0,0.015);
-}
-
-p {
- margin: 4px 0;
- padding: 4px 3px;
+input[type="text"]:hover,
+input[type="text"]:focus {
+ background: #f8f8f7;
}
-a {
- text-decoration: none;
- color: #000;
- -webkit-transition: color .1s linear;
- -moz-transition: color .1s linear;
- transition: color .1s linear;
+button,
+input[type="submit"] {
+ background: #f5f5f5;
+ cursor: pointer;
+ margin: 2px;
}
-a:hover {
- color: #888;
+button,
+input[type="submit"]:hover {
+ background: #E5E4E2;
}
-input[type="text"] {
- background: #fff;
- color: #000;
- border: 1px solid #ccc;
- padding: 2px;
- line-height: 1.4;
- font-family: Tahoma,Verdana,Arial,Sans-Serif;
- font-size: 13px;
- -moz-border-radius: 5px;
- -webkit-border-radius: 5px;
- border-radius: 5px;
+button:disabled,
+input:disabled {
+ color: #fff;
+ background: #ccc;
}
-input[type="text"]:hover {
- background-color: #E5E4E2;
+.footer {
+ display: table-row;
}
-input[type="text"]:focus {
- background-color: #E5E4E2;
+.footer a {
+ font-weight: bold;
}
-hr {
- border: none;
- height: 1px;
- background-color: rgba(0,0,0,0.12);
+.copyright {
+ display: inline;
}
-h4 {
- padding-bottom: 10px;
- margin-bottom: 12px;
- border-bottom: 1px solid rgba(0,0,0,0.12);
+.footer-links {
+ float: right;
+ padding: 0;
}
-#ChatDiv {
- margin-bottom: 10px;
+.footer-links li {
+ display: inline;
+ padding-left: 20px;
}
-#ChatMessage {
- width: 92%;
- margin-right: 5px;
- box-sizing: border-box;
- -moz-box-sizing: border-box;
+.footer-container {
+ background: #F4F7F6;
+ border-top: 1px solid #CCDDD9;
+ overflow: hidden;
+ padding: 10px;
}
-input[type="submit"] {
- padding: 3px;
- padding-left: 5px;
- padding-right: 5px;
- cursor: pointer;
- font-family: Tahoma,Verdana,Arial,Sans-Serif;
- -moz-border-radius: 5px;
- -webkit-border-radius: 5px;
- border-radius: 5px;
- background: #f5f5f5;
- border: 1px solid #ccc;
-}
+@media (max-width: 700px) {
+ .box.left {
+ float: none;
+ margin: 0 0 10px;
+ width: 100%;
+ }
-input[type="submit"]:hover {
- background-color: #E5E4E2;
-}
-
-button:disabled,input:disabled {
- padding: 3px;
- padding-left: 5px;
- padding-right: 5px;
- cursor: pointer;
- font-family: Tahoma,Verdana,Arial,Sans-Serif;
- -moz-border-radius: 5px;
- -webkit-border-radius: 5px;
- border-radius: 5px;
- border: none!important;
- color: #fff!important;
- background-color: #ccc!important;
+ .box.right {
+ margin: 0;
+ }
}
diff --git a/Server/webadmin/files/sub_pmfolder.gif b/Server/webadmin/files/sub_pmfolder.gif
deleted file mode 100644
index 3d0d6e627..000000000
--- a/Server/webadmin/files/sub_pmfolder.gif
+++ /dev/null
Binary files differ
diff --git a/Server/webadmin/files/tcat.png b/Server/webadmin/files/tcat.png
deleted file mode 100644
index eb64eb3d6..000000000
--- a/Server/webadmin/files/tcat.png
+++ /dev/null
Binary files differ
diff --git a/Server/webadmin/files/thead.png b/Server/webadmin/files/thead.png
deleted file mode 100644
index 81aa04bac..000000000
--- a/Server/webadmin/files/thead.png
+++ /dev/null
Binary files differ
diff --git a/Server/webadmin/login_template.html b/Server/webadmin/login_template.html
index 795cc153e..6e1ca8098 100644
--- a/Server/webadmin/login_template.html
+++ b/Server/webadmin/login_template.html
@@ -1,69 +1,53 @@
-<!-- Copyright Justin S and Cuberite Team, licensed under CC-BY-SA 3.0 */ -->
+<!-- Copyright Justin S and Cuberite Team, licensed under CC-BY-SA 3.0 -->
+<!DOCTYPE html>
<html>
<head>
<title>Cuberite WebAdmin - Login</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <link href="login.css" rel="stylesheet" type="text/css">
- <link rel="icon" href="favicon.png">
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+ <link href="style.css" rel="stylesheet" type="text/css">
</head>
<body>
-<div class="contention">
- <div class="row1">
- <div class="wrapper">
- <img src="logo_login.png" alt="Cuberite Logo" class="logo">
- </div>
+<div class="header color-background">
+ <div class="wrapper">
+ <svg viewBox="0 0 1716.3687 336.90039" width="230">
+ <path d="M523.63 222.72q30.36 0 49.64-24.02l26.4 27.2q-31.42 35.37-74.2 35.37-42.5 0-70.2-26.93-27.47-26.93-27.47-67.85 0-41.2 28-68.65 28.23-27.46 68.9-27.46 45.4 0 76.02 34.58l-25.6 29.04q-19.54-24.3-48.58-24.3-23.23 0-39.87 15.32-16.36 15.05-16.36 40.92 0 25.6 15.58 41.2 15.58 15.56 37.75 15.56z"></path><path d="M674.82 211.63q10.3 12.68 27.72 12.68 17.42 0 27.45-12.67 10.3-12.93 10.3-35.1V74.62h41.17v103.2q0 40.14-22.17 61.8Q737.12 261 702.54 261q-34.6 0-57.03-21.65-22.16-21.64-22.16-61.5V74.6h41.18v101.9q0 22.18 10.3 35.1z"></path><path d="M899 259.15h-80.78V74.62h71.8q18.75 0 32.22 4.5 13.73 4.47 20.6 12.13 12.4 14.26 12.4 32.2 0 21.66-14 32.22-4.75 3.7-6.6 4.75-1.84.8-6.6 2.9 17.17 3.7 27.2 15.58 10.3 11.6 10.3 29.04 0 19.27-13.2 34.05Q937 259.14 899 259.14zm-39.6-109.82h19.54q17.16 0 25.35-3.7 8.43-3.7 8.43-15.84 0-12.4-7.65-16.37-7.66-3.96-25.87-3.96h-19.8v39.86zm0 74.98h28.25q17.7 0 26.4-4.22 8.98-4.5 8.98-17.16 0-12.93-9.5-16.9-9.24-4.22-29.84-4.22h-24.3v42.5z"></path><path d="M1127.02 74.62v36.7h-91.87v38h82.63v35.12h-82.63v38.28h94.78v36.43H993.97V74.62h133.05z"></path><path d="M1310.12 135.87q0 44.35-35.12 57.28l46.73 66h-50.7l-40.9-58.87h-28.52v58.87h-41.17V74.62h69.96q43.02 0 61.24 14.52 18.48 14.52 18.48 46.73zm-78.4 28.77q21.1 0 28.76-6.86 7.66-6.87 7.66-21.65 0-15.05-7.92-20.6-7.92-5.54-27.72-5.54h-30.9v54.64h30.1z"></path><path d="M1345.97 74.62h41.18v184.53h-41.18V74.62z"></path><path d="M1504.47 110.26v148.9h-41.2v-148.9h-52.26V74.62h145.74v35.64h-52.27z"></path><path d="M1713.46 74.62v36.7h-91.87v38h82.62v35.12h-82.63v38.28h94.77v36.43H1580.4V74.62h133.06z"></path><path d="M84.3 42.2L0 84.4v168l84.5 42.3 84.5 42.2 84.5-42.2 84.5-42.3v-168l-84.5-42.3C207 18.9 168.9-.1 168.7 0c-.1 0-38.1 19-84.4 42.2zm71.3 64.5l13.5 6.7 13.4-6.8 13.5-6.8V83.4c0-9 .3-16.6.8-16.8 1.1-.5 59.7 29.7 59.6 30.8-.1.5-19.8 10.8-43.7 23l-43.6 22-41.8-20.9c-23-11.5-43.1-21.7-44.7-22.7L79.7 97l30.9-15.4 30.9-15.5.3 16.9.2 16.9 13.6 6.8zm-57.4 52.4l43.8 22.3v89.5l-31-15.5c-17.1-8.5-31-15.7-31-16 0-.3 7.9-4.4 17.5-9.1l17.5-8.5v-24.5l-14-6.9-14-7-16.5 8.3c-9.1 4.5-16.7 8.2-17 8.2-.3 0-.5-14.2-.5-31.5s.3-31.5.7-31.5c.3 0 20.3 10 44.5 22.2zm186.3 9.7l-.8 31-16.3-8.2-16.4-8.2-14 7-14 6.9v10.6c0 5.8.3 11.4.6 12.5.4 1.3 4.9 4.1 13.3 8.2 6.9 3.5 14.1 7.5 16 9.1l3.4 2.8-30.2 15.3L196 271v-90l44.3-21.9c24.3-12.1 44.4-21.8 44.5-21.7.2.2.1 14.3-.3 31.4z"></path>
+ </svg>
</div>
- <div id="panel">
- <div class="upper">
- <div class="wrapper">
- <div>
- <form method="get" action="webadmin/">
- <button type="submit" value="Log in" style="width:150px;height:25px;font-family:'Source Sans Pro',sans-serif;background:transparent;border:none!important;vertical-align:middle">
- <strong><img src="login.gif" style="vertical-align:bottom" /> WebAdmin Log in</strong>
- </button>
- </form>
+</div>
+<div class="panel">
+ <div class="wrapper">
+ <form method="get" action="webadmin/">
+ <button type="submit" value="Log in" class="link-login">
+ Log in
+ </button>
+ </form>
+ </div>
+</div>
+<div class="columns">
+ <div class="columns-wrapper">
+ <div class="columns-spacing">
+ <div class="box">
+ <h1 class="head color-background">Cuberite WebAdmin</h1>
+ <div class="main-content">
+ <iframe width="100%" class="guest-iframe" src="guest.html"></iframe>
</div>
</div>
</div>
</div>
- <div class="row2 push10">
- <div class="wrapper padtopp">
- <table border="0" cellspacing="0" cellpadding="5" class="tborder" style="margin-bottom:5px">
- <tbody>
- <tr>
- <td class="thead rounded_top">
- <div style="float:left!important"><strong>Cuberite WebAdmin</strong></div>
- </td>
- </tr>
- <tr>
- <td class="trow2 post_content">
- <div class="post_body">
- <iframe width="100%" height="100%" style="border:none;min-height:350px;max-height:450px" src="/guest.html"></iframe>
- </div>
- </td>
- </tr>
- </tbody>
- </table>
- </div>
- </div>
</div>
-<div id="footer">
- <div class="upper">
+<div class="footer">
+ <div class="footer-container">
<div class="wrapper">
- <ul class="menu bottom_links">
+ <span class="copyright">Copyright © <a href="https://cuberite.org/" target="_blank">Cuberite Team</a></span>
+ <ul class="footer-links">
<li><a href="https://cuberite.org/" target="_blank">Cuberite</a></li>
<li><a href="https://forum.cuberite.org/" target="_blank">Forums</a></li>
- <li><a href="https://builds.cuberite.org/" target="_blank">Buildserver</a></li>
- <li><a href="https://api.cuberite.org/" target="_blank">API Documentation</a></li>
+ <li><a href="https://api.cuberite.org/" target="_blank">API Docs</a></li>
<li><a href="https://book.cuberite.org/" target="_blank">User's Manual</a></li>
</ul>
</div>
</div>
- <div class="lower">
- <div class="wrapper">
- <span id="copyright">Copyright © <a href="https://cuberite.org/" target="_blank">Cuberite Team</a>.</span>
- </div>
- </div>
</div>
</body>
</html>
diff --git a/Server/webadmin/template.lua b/Server/webadmin/template.lua
index 6dbe67423..77217cc19 100644
--- a/Server/webadmin/template.lua
+++ b/Server/webadmin/template.lua
@@ -8,18 +8,6 @@ end
-function GetTableSize(Table)
- local Size = 0
- for key,value in pairs(Table) do
- Size = Size + 1
- end
- return Size
-end
-
-
-
-
-
local function GetDefaultPage()
local PM = cRoot:Get():GetPluginManager()
@@ -44,7 +32,7 @@ local function GetDefaultPage()
end
)
- Content = Content .. "</ul><br>";
+ Content = Content .. "</ul>";
return Content, SubTitle
end
@@ -70,68 +58,51 @@ function ShowPage(WebAdmin, TemplateRequest)
PageContent, SubTitle = GetDefaultPage()
end
- --[[
- -- 2016-01-15 Mattes: This wasn't used anywhere in the code, no idea what it was supposed to do
- local reqParamsClass = ""
- for key, value in pairs(TemplateRequest.Request.Params) do
- reqParamsClass = reqParamsClass .. " param-" .. string.lower(string.gsub(key, "[^a-zA-Z0-9]+", "-") .. "-" .. string.gsub(value, "[^a-zA-Z0-9]+", "-"))
- end
- if (string.gsub(reqParamsClass, "%s", "") == "") then
- reqParamsClass = " no-param"
- end
- --]]
-
Output([[
<!-- Copyright Justin S and Cuberite Team, licensed under CC-BY-SA 3.0 -->
-<html>
+<!DOCTYPE html>
+<html lang="en">
<head>
+ <meta charset="utf-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>]] .. Title .. [[</title>
- <meta charset="UTF-8">
<link rel="stylesheet" type="text/css" href="/style.css">
- <link rel="icon" href="/favicon.png">
</head>
<body>
-<div class="contention push25">
- <div class="pagehead">
- <div class="row1">
- <div class="wrapper">
- <img src="/logo_login.png" alt="Cuberite Logo" class="logo">
- </div>
- </div>
- <div id="panel">
- <div class="upper">
- <div class="wrapper">
- <ul class="menu top_links">
- <li><a>Players online: <strong>]] .. NumPlayers .. [[</strong></a></li>
- <li><a>Memory: <strong>]] .. string.format("%.2f", MemoryUsageKiB / 1024) .. [[MB</strong></a></li>
- <li><a>Chunks: <strong>]] .. NumChunks .. [[</strong></a></li>
- </ul>
- <div class="welcome"><strong>Welcome back, ]] .. TemplateRequest.Request.Username .. [[</strong>&nbsp;&nbsp;&nbsp;<a href=".././"><img src="/log_out.png" style="vertical-align:bottom;"> Log Out</a></div>
- </div>
- </div>
+<div class="header color-background">
+ <div class="wrapper">
+ <a href="]] .. BaseURL .. [[">
+ <svg viewBox="0 0 1716.3687 336.90039" width="230">
+ <path d="M523.63 222.72q30.36 0 49.64-24.02l26.4 27.2q-31.42 35.37-74.2 35.37-42.5 0-70.2-26.93-27.47-26.93-27.47-67.85 0-41.2 28-68.65 28.23-27.46 68.9-27.46 45.4 0 76.02 34.58l-25.6 29.04q-19.54-24.3-48.58-24.3-23.23 0-39.87 15.32-16.36 15.05-16.36 40.92 0 25.6 15.58 41.2 15.58 15.56 37.75 15.56z"></path><path d="M674.82 211.63q10.3 12.68 27.72 12.68 17.42 0 27.45-12.67 10.3-12.93 10.3-35.1V74.62h41.17v103.2q0 40.14-22.17 61.8Q737.12 261 702.54 261q-34.6 0-57.03-21.65-22.16-21.64-22.16-61.5V74.6h41.18v101.9q0 22.18 10.3 35.1z"></path><path d="M899 259.15h-80.78V74.62h71.8q18.75 0 32.22 4.5 13.73 4.47 20.6 12.13 12.4 14.26 12.4 32.2 0 21.66-14 32.22-4.75 3.7-6.6 4.75-1.84.8-6.6 2.9 17.17 3.7 27.2 15.58 10.3 11.6 10.3 29.04 0 19.27-13.2 34.05Q937 259.14 899 259.14zm-39.6-109.82h19.54q17.16 0 25.35-3.7 8.43-3.7 8.43-15.84 0-12.4-7.65-16.37-7.66-3.96-25.87-3.96h-19.8v39.86zm0 74.98h28.25q17.7 0 26.4-4.22 8.98-4.5 8.98-17.16 0-12.93-9.5-16.9-9.24-4.22-29.84-4.22h-24.3v42.5z"></path><path d="M1127.02 74.62v36.7h-91.87v38h82.63v35.12h-82.63v38.28h94.78v36.43H993.97V74.62h133.05z"></path><path d="M1310.12 135.87q0 44.35-35.12 57.28l46.73 66h-50.7l-40.9-58.87h-28.52v58.87h-41.17V74.62h69.96q43.02 0 61.24 14.52 18.48 14.52 18.48 46.73zm-78.4 28.77q21.1 0 28.76-6.86 7.66-6.87 7.66-21.65 0-15.05-7.92-20.6-7.92-5.54-27.72-5.54h-30.9v54.64h30.1z"></path><path d="M1345.97 74.62h41.18v184.53h-41.18V74.62z"></path><path d="M1504.47 110.26v148.9h-41.2v-148.9h-52.26V74.62h145.74v35.64h-52.27z"></path><path d="M1713.46 74.62v36.7h-91.87v38h82.62v35.12h-82.63v38.28h94.77v36.43H1580.4V74.62h133.06z"></path><path d="M84.3 42.2L0 84.4v168l84.5 42.3 84.5 42.2 84.5-42.2 84.5-42.3v-168l-84.5-42.3C207 18.9 168.9-.1 168.7 0c-.1 0-38.1 19-84.4 42.2zm71.3 64.5l13.5 6.7 13.4-6.8 13.5-6.8V83.4c0-9 .3-16.6.8-16.8 1.1-.5 59.7 29.7 59.6 30.8-.1.5-19.8 10.8-43.7 23l-43.6 22-41.8-20.9c-23-11.5-43.1-21.7-44.7-22.7L79.7 97l30.9-15.4 30.9-15.5.3 16.9.2 16.9 13.6 6.8zm-57.4 52.4l43.8 22.3v89.5l-31-15.5c-17.1-8.5-31-15.7-31-16 0-.3 7.9-4.4 17.5-9.1l17.5-8.5v-24.5l-14-6.9-14-7-16.5 8.3c-9.1 4.5-16.7 8.2-17 8.2-.3 0-.5-14.2-.5-31.5s.3-31.5.7-31.5c.3 0 20.3 10 44.5 22.2zm186.3 9.7l-.8 31-16.3-8.2-16.4-8.2-14 7-14 6.9v10.6c0 5.8.3 11.4.6 12.5.4 1.3 4.9 4.1 13.3 8.2 6.9 3.5 14.1 7.5 16 9.1l3.4 2.8-30.2 15.3L196 271v-90l44.3-21.9c24.3-12.1 44.4-21.8 44.5-21.7.2.2.1 14.3-.3 31.4z"></path>
+ </svg>
+ </a>
+ </div>
+</div>
+<div class="panel">
+ <div class="wrapper">
+ <div class="welcome">
+ <strong>Welcome back, ]] .. TemplateRequest.Request.Username .. [[</strong>
+ <a href="/" class="link-logout">Log out</a>
</div>
+ <ul class="stats">
+ <li>Players online: <strong>]] .. NumPlayers .. [[</strong></li>
+ <li>Memory: <strong>]] .. string.format("%.2f", MemoryUsageKiB / 1024) .. [[MB</strong></li>
+ <li>Chunks: <strong>]] .. NumChunks .. [[</strong></li>
+ </ul>
</div>
- <div class="row2">
- <div class="wrapper">
- <table width="100%" border="0" align="center">
- <tbody>
- <tr>
- <td width="180" valign="top">
- <table border="0" cellspacing="0" cellpadding="5" class="tborder">
- <tbody>
- <tr>
- <td class="thead"><strong>Menu</strong></td>
- </tr>
- <tr>
- <td class="trow1 smalltext"><a href=']] .. BaseURL .. [[' class='usercp_nav_item usercp_nav_home'>Home</a></td>
- </tr>
- <tr>
- <td class="tcat"><div><span class="smalltext"><strong><font color="#000">Server Management</font></strong></span></div></td>
- </tr>
- </tbody>
- <tbody style="" id="usercppms_e">
- <tr>
- <td class="trow1 smalltext">
+</div>
+<div class="columns">
+ <div class="columns-wrapper">
+ <div class="columns-spacing">
+ <div class="box left">
+ <h2 class="head color-background">Menu</h2>
+ <ul class="sidebar">
+ <li>
+ <a href="]] .. BaseURL .. [[" class="link-home">Home</a>
+ </li>
+ </ul>
+ <div class="category">Server Management</div>
+ <ul class="sidebar">
]])
-- Get all tabs:
@@ -160,57 +131,38 @@ function ShowPage(WebAdmin, TemplateRequest)
-- Translate the plugin name into the folder name (-> title)
local pluginWebTitle = cPluginManager:Get():GetPluginFolderName(pluginName) or pluginName
- Output("<div><a class='usercp_nav_item usercp_nav_pmfolder' style='text-decoration:none;'><b>" .. pluginWebTitle .. "</b></a></div>\n");
+ Output("<li><strong class=\"link-page\">" .. pluginWebTitle .. "</strong></li>\n");
-- Output each tab:
for _, tab in pairs(pluginTabs) do
- Output("<div><a href='" .. BaseURL .. pluginName .. "/" .. tab.UrlPath .. "' class='usercp_nav_item usercp_nav_sub_pmfolder'>" .. tab.Title .. "</a></div>\n")
+ Output("<li><a href=\"" .. BaseURL .. pluginName .. "/" .. tab.UrlPath .. "\" class=\"sidebar-item link-subpage\">" .. tab.Title .. "</a></li>\n")
end
- Output("<br>\n");
+ Output("\n");
end
Output([[
- </td>
- </tr>
- </tbody>
- </table>
- </td>
- <td valign="top" style='padding-left:25px;'>
- <table border="0" cellspacing="0" cellpadding="5" class="tborder">
- <tbody>
- <tr>
- <td class="thead" colspan="2"><strong>]] .. SubTitle .. [[</strong></td>
- </tr>
- <tr>
- <td class="trow2">]] .. PageContent .. [[</td>
- </tr>
- </tbody>
- </table>
- </td>
- </tr>
- </tbody>
- </table>
+ </ul>
+ </div>
+ <div class="box right">
+ <h1 class="head color-background">]] .. SubTitle .. [[</h1>
+ <div class="main-content">]] .. PageContent .. [[</div>
+ </div>
</div>
</div>
-<div id="footer">
- <div class="upper">
+</div>
+<div class="footer">
+ <div class="footer-container">
<div class="wrapper">
- <ul class="menu bottom_links">
+ <span class="copyright">Copyright © <a href="https://cuberite.org/" target="_blank">Cuberite Team</a></span>
+ <ul class="footer-links">
<li><a href="https://cuberite.org/" target="_blank">Cuberite</a></li>
<li><a href="https://forum.cuberite.org/" target="_blank">Forums</a></li>
- <li><a href="https://builds.cuberite.org/" target="_blank">Buildserver</a></li>
- <li><a href="https://api.cuberite.org/" target="_blank">API Documentation</a></li>
+ <li><a href="https://api.cuberite.org/" target="_blank">API Docs</a></li>
<li><a href="https://book.cuberite.org/" target="_blank">User's Manual</a></li>
</ul>
</div>
</div>
- <div class="lower">
- <div class="wrapper">
- <span id="copyright">Copyright © <a href="https://cuberite.org/" target="_blank">Cuberite Team</a>.</span>
- </div>
- </div>
-</div>
</div>
</body>
</html>