update to v2.2.2
- Add custom login background,put your image (allow png jpg gif) or MP4 video into /www/luci-static/argon/background, random change【v2.2.2】 - Add force dark mode, login ssh and type "touch /etc/dark" to open dark mode.【v2.2.2】 - Add a volume mute button for video background, default is muted.【v2.2.2】 - fix login page when keyboard show the bottom text overlay the button on mobile.【v2.2.2】 - fix select color in dark mode,and add a style for scrollbar.【v2.2.2】 - jquery update to v3.5.1【v2.2.2】 - change request bing api method form wget to luasocket (DEPENDS)【v2.2.2】
This commit is contained in:
parent
90062c3ba7
commit
6105120c76
6
Makefile
6
Makefile
@ -7,9 +7,9 @@
|
|||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
LUCI_TITLE:=Argon Theme
|
LUCI_TITLE:=Argon Theme
|
||||||
LUCI_DEPENDS:=
|
LUCI_DEPENDS:=+luasocket
|
||||||
PKG_VERSION:=2.2.1
|
PKG_VERSION:=2.2.2
|
||||||
PKG_RELEASE:=20200725
|
PKG_RELEASE:=20200816
|
||||||
|
|
||||||
include $(TOPDIR)/feeds/luci/luci.mk
|
include $(TOPDIR)/feeds/luci/luci.mk
|
||||||
|
|
||||||
|
18
README.md
18
README.md
@ -6,7 +6,7 @@
|
|||||||
[4]: https://github.com/jerrykuku/luci-theme-argon/pulls
|
[4]: https://github.com/jerrykuku/luci-theme-argon/pulls
|
||||||
[5]: https://img.shields.io/badge/Issues-welcome-brightgreen.svg
|
[5]: https://img.shields.io/badge/Issues-welcome-brightgreen.svg
|
||||||
[6]: https://github.com/jerrykuku/luci-theme-argon/issues/new
|
[6]: https://github.com/jerrykuku/luci-theme-argon/issues/new
|
||||||
[7]: https://img.shields.io/badge/release-v2.2.1-blue.svg?
|
[7]: https://img.shields.io/badge/release-v2.2.2-blue.svg?
|
||||||
[8]: https://github.com/jerrykuku/luci-theme-argon/releases
|
[8]: https://github.com/jerrykuku/luci-theme-argon/releases
|
||||||
[9]: https://img.shields.io/github/downloads/jerrykuku/luci-theme-argon/total
|
[9]: https://img.shields.io/github/downloads/jerrykuku/luci-theme-argon/total
|
||||||
[10]: https://img.shields.io/badge/Contact-telegram-blue
|
[10]: https://img.shields.io/badge/Contact-telegram-blue
|
||||||
@ -53,25 +53,33 @@ make -j1 V=s
|
|||||||
## Install
|
## Install
|
||||||
### For Lean openwrt 18.06 LuCI
|
### For Lean openwrt 18.06 LuCI
|
||||||
```
|
```
|
||||||
wget --no-check-certificate https://github.com/jerrykuku/luci-theme-argon/releases/download/v1.6.3/luci-theme-argon_1.6.3-20200725_all.ipk
|
wget --no-check-certificate https://github.com/jerrykuku/luci-theme-argon/releases/download/v1.6.6/luci-theme-argon_1.6.6-20200815_all.ipk
|
||||||
opkg install luci-theme-argon*.ipk
|
opkg install luci-theme-argon*.ipk
|
||||||
```
|
```
|
||||||
|
|
||||||
### For openwrt official 19.07 Snapshots LuCI master
|
### For openwrt official 19.07 Snapshots LuCI master
|
||||||
```
|
```
|
||||||
wget --no-check-certificate https://github.com/jerrykuku/luci-theme-argon/releases/download/v2.2.1/luci-theme-argon_2.2.1-20200725_all.ipk
|
wget --no-check-certificate https://github.com/jerrykuku/luci-theme-argon/releases/download/v2.2.2/luci-theme-argon_2.2.2-20200816_all.ipk
|
||||||
opkg install luci-theme-argon*.ipk
|
opkg install luci-theme-argon*.ipk
|
||||||
```
|
```
|
||||||
|
|
||||||
## Update log 2020.07.25 v2.2.1
|
## Update log 2020.07.25 v2.2.2
|
||||||
|
|
||||||
|
- Add custom login background,put your image (allow png jpg gif) or MP4 video into /www/luci-static/argon/background, random change【v2.2.2】
|
||||||
|
- Add force dark mode, login ssh and type "touch /etc/dark" to open dark mode.【v2.2.2】
|
||||||
|
- Add a volume mute button for video background, default is muted.【v2.2.2】
|
||||||
|
- fix login page when keyboard show the bottom text overlay the button on mobile.【v2.2.2】
|
||||||
|
- fix select color in dark mode,and add a style for scrollbar.【v2.2.2】
|
||||||
|
- jquery update to v3.5.1【v2.2.2】
|
||||||
|
- change request bing api method form wget to luasocket (DEPENDS)【v2.2.2】
|
||||||
|
|
||||||
|
- Add blur effect for login form 【v2.2.1】
|
||||||
- New login theme, Request background imge from bing.com, Auto change everyday.
|
- New login theme, Request background imge from bing.com, Auto change everyday.
|
||||||
- New theme icon
|
- New theme icon
|
||||||
- Add more menu category icon
|
- Add more menu category icon
|
||||||
- Fix font-size and padding margin
|
- Fix font-size and padding margin
|
||||||
- Restructure css file
|
- Restructure css file
|
||||||
- Auto adapt to dark mode
|
- Auto adapt to dark mode
|
||||||
- Add blur effect for login form 【v2.2.1】
|
|
||||||
|
|
||||||
## More Screenshots
|
## More Screenshots
|
||||||
|
|
||||||
|
17
README_ZH.md
17
README_ZH.md
@ -5,7 +5,7 @@
|
|||||||
[4]: https://github.com/jerrykuku/luci-theme-argon/pulls
|
[4]: https://github.com/jerrykuku/luci-theme-argon/pulls
|
||||||
[5]: https://img.shields.io/badge/Issues-welcome-brightgreen.svg
|
[5]: https://img.shields.io/badge/Issues-welcome-brightgreen.svg
|
||||||
[6]: https://github.com/jerrykuku/luci-theme-argon/issues/new
|
[6]: https://github.com/jerrykuku/luci-theme-argon/issues/new
|
||||||
[7]: https://img.shields.io/badge/release-v2.2-blue.svg?
|
[7]: https://img.shields.io/badge/release-v2.2.2-blue.svg?
|
||||||
[8]: https://github.com/jerrykuku/luci-theme-argon/releases
|
[8]: https://github.com/jerrykuku/luci-theme-argon/releases
|
||||||
[9]: https://img.shields.io/github/downloads/jerrykuku/luci-theme-argon/total
|
[9]: https://img.shields.io/github/downloads/jerrykuku/luci-theme-argon/total
|
||||||
[10]: https://img.shields.io/badge/Contact-telegram-blue
|
[10]: https://img.shields.io/badge/Contact-telegram-blue
|
||||||
@ -50,25 +50,34 @@ make -j1 V=s
|
|||||||
## 安装
|
## 安装
|
||||||
### For Lean openwrt
|
### For Lean openwrt
|
||||||
```
|
```
|
||||||
wget --no-check-certificate https://github.com/jerrykuku/luci-theme-argon/releases/download/v1.6.3/luci-theme-argon_1.6.3-20200725_all.ipk
|
wget --no-check-certificate https://github.com/jerrykuku/luci-theme-argon/releases/download/v1.6.6/luci-theme-argon_1.6.6-20200815_all.ipk
|
||||||
opkg install luci-theme-argon*.ipk
|
opkg install luci-theme-argon*.ipk
|
||||||
```
|
```
|
||||||
|
|
||||||
### For openwrt official 19.07 Snapshots LuCI master
|
### For openwrt official 19.07 Snapshots LuCI master
|
||||||
```
|
```
|
||||||
wget --no-check-certificate https://github.com/jerrykuku/luci-theme-argon/releases/download/v2.2.1/luci-theme-argon_2.2.1-20200725_all.ipk
|
wget --no-check-certificate https://github.com/jerrykuku/luci-theme-argon/releases/download/v2.2.2/luci-theme-argon_2.2.2-20200816_all.ipk
|
||||||
opkg install luci-theme-argon*.ipk
|
opkg install luci-theme-argon*.ipk
|
||||||
```
|
```
|
||||||
|
|
||||||
## 更新日志 2020.07.25 v2.2.1
|
## 更新日志 2020.07.25 v2.2.1
|
||||||
|
|
||||||
|
- 背景文件策略调整为,同时接受 jpg png gif mp4, 自行上传文件至 /www/luci-static/argon/background 图片和视频同时随机。【v2.2.2】
|
||||||
|
- 增加强制暗色模式,进入ssh 输入 "touch /etc/dark" 进行开启。【v2.2.2】
|
||||||
|
- 视频背景加了一个音量开关,喜欢带声音的可以自行点击开启,默认为静音模式【v2.2.2】
|
||||||
|
- 修复了手机模式下,登录页面出现键盘时,文字覆盖按钮的问题【v2.2.2】
|
||||||
|
- 修正了暗黑模式下下拉选项的背景颜色,同时修改了滚动条的样式【v2.2.2】
|
||||||
|
- jquery 更新到 v3.5.1【v2.2.2】
|
||||||
|
- 获取Bing Api 的方法从wget 更新到luasocket 并添加依赖【v2.2.2】
|
||||||
|
|
||||||
|
- 登录背景添加毛玻璃效果 【v2.2.1】
|
||||||
- 全新的登录界面,图片背景跟随Bing.com,每天自动切换
|
- 全新的登录界面,图片背景跟随Bing.com,每天自动切换
|
||||||
- 全新的主题icon
|
- 全新的主题icon
|
||||||
- 增加多个导航icon
|
- 增加多个导航icon
|
||||||
- 细致的微调了 字号大小边距等等
|
- 细致的微调了 字号大小边距等等
|
||||||
- 重构了css文件
|
- 重构了css文件
|
||||||
- 自动适应的暗黑模式
|
- 自动适应的暗黑模式
|
||||||
- 登录背景添加毛玻璃效果 【v2.2.1】
|
|
||||||
|
|
||||||
## 更多截图
|
## 更多截图
|
||||||
|
|
||||||
|
2
htdocs/luci-static/argon/background/README.md
Normal file
2
htdocs/luci-static/argon/background/README.md
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
Drop background here!
|
||||||
|
accept jpg png gif and mp4
|
@ -2,7 +2,7 @@
|
|||||||
* Argon is a clean HTML5 theme for LuCI. It is based on luci-theme-material and Argon Template
|
* Argon is a clean HTML5 theme for LuCI. It is based on luci-theme-material and Argon Template
|
||||||
*
|
*
|
||||||
* luci-theme-argon
|
* luci-theme-argon
|
||||||
* Copyright 2019 Jerrykuku <jerrykuku@qq.com>
|
* Copyright 2020 Jerrykuku <jerrykuku@qq.com>
|
||||||
*
|
*
|
||||||
* Have a bug? Please create an issue here on GitHub!
|
* Have a bug? Please create an issue here on GitHub!
|
||||||
* https://github.com/jerrykuku/luci-theme-argon/issues
|
* https://github.com/jerrykuku/luci-theme-argon/issues
|
||||||
@ -69,6 +69,10 @@
|
|||||||
--breakpoint-md: 768px;
|
--breakpoint-md: 768px;
|
||||||
--breakpoint-lg: 992px;
|
--breakpoint-lg: 992px;
|
||||||
--breakpoint-xl: 1200px;
|
--breakpoint-xl: 1200px;
|
||||||
|
--blur-radius: 10px;
|
||||||
|
--blur-opacity: 0.5;
|
||||||
|
--blur-radius-dark: 10px;
|
||||||
|
--blur-opacity-dark: 0.5;
|
||||||
--font-family-sans-serif: "Google Sans", "Microsoft Yahei", "WenQuanYi Micro Hei", "sans-serif", "Helvetica Neue", "Helvetica", "Hiragino Sans GB";
|
--font-family-sans-serif: "Google Sans", "Microsoft Yahei", "WenQuanYi Micro Hei", "sans-serif", "Helvetica Neue", "Helvetica", "Hiragino Sans GB";
|
||||||
--font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
|
--font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
|
||||||
--font-family-normal: Open Sans, PingFangSC-Regular, Microsoft Yahei, WenQuanYi Micro Hei, "Helvetica Neue", Helvetica, Hiragino Sans GB, sans-serif;
|
--font-family-normal: Open Sans, PingFangSC-Regular, Microsoft Yahei, WenQuanYi Micro Hei, "Helvetica Neue", Helvetica, Hiragino Sans GB, sans-serif;
|
||||||
@ -99,8 +103,8 @@ body {
|
|||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
}
|
}
|
||||||
::selection {
|
::selection {
|
||||||
background-color: var(--primary);
|
|
||||||
background-color: #5e72e4;
|
background-color: #5e72e4;
|
||||||
|
background-color: var(--primary);
|
||||||
color: #ffffff;
|
color: #ffffff;
|
||||||
color: var(--white);
|
color: var(--white);
|
||||||
}
|
}
|
||||||
@ -296,6 +300,36 @@ hr {
|
|||||||
background-size: cover;
|
background-size: cover;
|
||||||
transition: all 0.5s;
|
transition: all 0.5s;
|
||||||
}
|
}
|
||||||
|
.login-page .video {
|
||||||
|
position: absolute;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
background-color: #000;
|
||||||
|
background-color: var(--darker);
|
||||||
|
overflow: hidden;
|
||||||
|
pointer-events: none;
|
||||||
|
}
|
||||||
|
.login-page .video video {
|
||||||
|
width: 100%;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
.login-page .volume-control {
|
||||||
|
position: fixed;
|
||||||
|
right: 1rem;
|
||||||
|
top: 1rem;
|
||||||
|
width: 1.5rem;
|
||||||
|
height: 1.5rem;
|
||||||
|
z-index: 5000;
|
||||||
|
cursor: pointer;
|
||||||
|
background-size: contain;
|
||||||
|
background-image: url(../img/volume_high.svg);
|
||||||
|
}
|
||||||
|
.login-page .volume-control.mute {
|
||||||
|
background-image: url(../img/volume_off.svg);
|
||||||
|
}
|
||||||
.login-page .login-container {
|
.login-page .login-container {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
margin-left: 4.5rem;
|
margin-left: 4.5rem;
|
||||||
@ -426,7 +460,7 @@ hr {
|
|||||||
width: 100%;
|
width: 100%;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
min-height: 50px;
|
min-height: 50px;
|
||||||
background-image: linear-gradient(-135deg, #8692de 0%, #788aef 100%);
|
background-color: #5e72e4 !important;
|
||||||
border-radius: 6px;
|
border-radius: 6px;
|
||||||
outline: none;
|
outline: none;
|
||||||
border-width: initial;
|
border-width: initial;
|
||||||
@ -440,7 +474,7 @@ hr {
|
|||||||
}
|
}
|
||||||
.login-page .login-container .login-form .cbi-button-apply:hover,
|
.login-page .login-container .login-form .cbi-button-apply:hover,
|
||||||
.login-page .login-container .login-form .cbi-button-apply :focus {
|
.login-page .login-container .login-form .cbi-button-apply :focus {
|
||||||
background-image: linear-gradient(-135deg, #828fe0 0%, #5e72e4 100%);
|
background-color: #5065d8 !important;
|
||||||
}
|
}
|
||||||
.login-page .login-container footer {
|
.login-page .login-container footer {
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
@ -451,16 +485,22 @@ hr {
|
|||||||
justify-content: space-evenly;
|
justify-content: space-evenly;
|
||||||
margin-top: auto;
|
margin-top: auto;
|
||||||
padding: 0px 0px 30px;
|
padding: 0px 0px 30px;
|
||||||
|
color: #525461;
|
||||||
z-index: 10;
|
z-index: 10;
|
||||||
}
|
}
|
||||||
|
.login-page .login-container footer .ftc {
|
||||||
|
position: absolute;
|
||||||
|
bottom: 30px;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
.login-page .login-container footer .luci-link {
|
.login-page .login-container footer .luci-link {
|
||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none) {
|
@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none) {
|
||||||
.login-page .login-container .login-form {
|
.login-page .login-container .login-form {
|
||||||
-webkit-backdrop-filter: blur(10px);
|
-webkit-backdrop-filter: blur(var(--blur-radius));
|
||||||
backdrop-filter: blur(10px);
|
backdrop-filter: blur(var(--blur-radius));
|
||||||
background-color: rgba(244, 245, 247, 0.7);
|
background-color: rgba(244, 245, 247, var(--blur-opacity));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
header,
|
header,
|
||||||
@ -3709,9 +3749,9 @@ pre.command-output {
|
|||||||
}
|
}
|
||||||
@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none) {
|
@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none) {
|
||||||
.login-page .login-container .login-form {
|
.login-page .login-container .login-form {
|
||||||
-webkit-backdrop-filter: blur(10px);
|
-webkit-backdrop-filter: blur(var(--blur-radius-dark));
|
||||||
backdrop-filter: blur(10px);
|
backdrop-filter: blur(var(--blur-radius-dark));
|
||||||
background-color: rgba(0, 0, 0, 0.7);
|
background-color: rgba(0, 0, 0, var(--blur-opacity-dark));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
613
htdocs/luci-static/argon/css/dark.css
Normal file
613
htdocs/luci-static/argon/css/dark.css
Normal file
@ -0,0 +1,613 @@
|
|||||||
|
/**
|
||||||
|
* Argon is a clean HTML5 theme for LuCI. It is based on luci-theme-material and Argon Template
|
||||||
|
*
|
||||||
|
* luci-theme-argon
|
||||||
|
* Copyright 2020 Jerryk <jerrykuku@gmail.com>
|
||||||
|
*
|
||||||
|
* Have a bug? Please create an issue here on GitHub!
|
||||||
|
* https://github.com/jerrykuku/luci-theme-argon/issues
|
||||||
|
*
|
||||||
|
* luci-theme-bootstrap:
|
||||||
|
* Copyright 2008 Steven Barth <steven@midlink.org>
|
||||||
|
* Copyright 2008 Jo-Philipp Wich <jow@openwrt.org>
|
||||||
|
* Copyright 2012 David Menting <david@nut-bolt.nl>
|
||||||
|
*
|
||||||
|
* MUI:
|
||||||
|
* https://github.com/muicss/mui
|
||||||
|
*
|
||||||
|
* luci-theme-material:
|
||||||
|
* https://github.com/LuttyYang/luci-theme-material/
|
||||||
|
*
|
||||||
|
* Agron Theme
|
||||||
|
* https://demos.creative-tim.com/argon-dashboard/index.html
|
||||||
|
*
|
||||||
|
* Login background
|
||||||
|
* https://unsplash.com/
|
||||||
|
*
|
||||||
|
* Licensed to the public under the Apache License 2.0
|
||||||
|
*/
|
||||||
|
body {
|
||||||
|
background: #1e1e1e;
|
||||||
|
color: #cccccc;
|
||||||
|
}
|
||||||
|
.login-page .login-container .login-form {
|
||||||
|
background-color: #1e1e1e;
|
||||||
|
}
|
||||||
|
.login-page .login-container .login-form .brand {
|
||||||
|
color: #adb5bd;
|
||||||
|
}
|
||||||
|
.login-page .login-container .login-form .form-login .input-group::before {
|
||||||
|
color: #adb5bd;
|
||||||
|
}
|
||||||
|
.login-page .login-container .login-form .form-login .input-group input {
|
||||||
|
background-color: transparent !important;
|
||||||
|
color: #adb5bd;
|
||||||
|
border-bottom: #adb5bd 1px solid !important;
|
||||||
|
border-radius: 0 !important;
|
||||||
|
border-top: none !important;
|
||||||
|
border-left: none !important;
|
||||||
|
border-right: none !important;
|
||||||
|
box-shadow: none;
|
||||||
|
}
|
||||||
|
.login-page .login-container .login-form .form-login .cbi-button-apply {
|
||||||
|
background-image: linear-gradient(-135deg, #6c61ab 0%, #594ca9 100%);
|
||||||
|
}
|
||||||
|
.login-page .login-container .login-form .form-login .cbi-button-apply:hover,
|
||||||
|
.login-page .login-container .login-form .form-login .cbi-button-apply:focus {
|
||||||
|
background-image: linear-gradient(-135deg, #554c8a 0%, #483d8b 100%);
|
||||||
|
}
|
||||||
|
header::after {
|
||||||
|
background-color: #1e1e1e !important;
|
||||||
|
}
|
||||||
|
.main .main-left {
|
||||||
|
background-color: #333333 !important;
|
||||||
|
box-shadow: 0 0 0.5rem 0 rgba(0, 0, 0, 0.15);
|
||||||
|
}
|
||||||
|
.main .main-left .sidenav-header .brand {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
.main .main-left .nav .slide .slide-menu .active a {
|
||||||
|
color: #cccccc;
|
||||||
|
}
|
||||||
|
.main .main-left .nav .slide .slide-menu .active a::after {
|
||||||
|
background-color: #cccccc !important;
|
||||||
|
}
|
||||||
|
.main .main-left .nav .slide .slide-menu li a {
|
||||||
|
color: #cccccc;
|
||||||
|
}
|
||||||
|
.main .main-left .nav .slide .slide-menu li a:hover {
|
||||||
|
background: none !important;
|
||||||
|
}
|
||||||
|
.main .main-left .nav .slide .menu.active {
|
||||||
|
background-color: darkslateblue !important;
|
||||||
|
color: #cccccc !important;
|
||||||
|
}
|
||||||
|
.main .main-left .nav .slide .menu.active a::after {
|
||||||
|
background-color: #cccccc !important;
|
||||||
|
}
|
||||||
|
.main .main-left .nav li a {
|
||||||
|
color: #cccccc !important;
|
||||||
|
}
|
||||||
|
.main .main-left .nav li a:hover {
|
||||||
|
background-color: darkslateblue !important;
|
||||||
|
color: #cccccc !important;
|
||||||
|
}
|
||||||
|
.main .main-left::-webkit-scrollbar-thumb {
|
||||||
|
background-color: #252526 !important;
|
||||||
|
}
|
||||||
|
.main .main-left::-webkit-scrollbar-track {
|
||||||
|
background-color: #333;
|
||||||
|
}
|
||||||
|
.main .main-right {
|
||||||
|
background-color: #1e1e1e;
|
||||||
|
}
|
||||||
|
h2 {
|
||||||
|
color: #ccc;
|
||||||
|
background: #333333;
|
||||||
|
}
|
||||||
|
h3 {
|
||||||
|
color: #ccc;
|
||||||
|
border-bottom: 0;
|
||||||
|
background: #333333;
|
||||||
|
}
|
||||||
|
a:-webkit-any-link {
|
||||||
|
color: -webkit-link;
|
||||||
|
cursor: pointer;
|
||||||
|
color: darkslateblue;
|
||||||
|
}
|
||||||
|
input:-webkit-autofill {
|
||||||
|
background-color: #3c3c3c !important;
|
||||||
|
}
|
||||||
|
.cbi-value-field .cbi-input-apply,
|
||||||
|
.cbi-button-apply,
|
||||||
|
.cbi-button-edit {
|
||||||
|
color: #fff !important;
|
||||||
|
background-color: darkslateblue !important;
|
||||||
|
border-color: darkslateblue !important;
|
||||||
|
}
|
||||||
|
.cbi-section em {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
header.bg-primary {
|
||||||
|
background-color: #1e1e1e !important;
|
||||||
|
}
|
||||||
|
.cbi-map-descr {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
.cbi-section {
|
||||||
|
background: none;
|
||||||
|
box-shadow: 0 0 0.5rem 0 rgba(0, 0, 0, 0.35);
|
||||||
|
}
|
||||||
|
.panel-title {
|
||||||
|
color: #ccc;
|
||||||
|
background-color: #333333;
|
||||||
|
border-bottom: 0px;
|
||||||
|
}
|
||||||
|
div > table > tbody > tr:nth-of-type(2n),
|
||||||
|
div > .table > .tr:nth-of-type(2n) {
|
||||||
|
background-color: #252526;
|
||||||
|
}
|
||||||
|
table > tbody > tr > td,
|
||||||
|
table > tfoot > tr > td,
|
||||||
|
table > thead > tr > td {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
fieldset > table > tbody > tr:nth-of-type(2n) {
|
||||||
|
background-color: #252526;
|
||||||
|
}
|
||||||
|
table > tbody > tr > td,
|
||||||
|
table > tfoot > tr > td,
|
||||||
|
table > thead > tr > td {
|
||||||
|
border-top: 1px solid #252526;
|
||||||
|
}
|
||||||
|
#swaptotal > div > div,
|
||||||
|
#swapfree > div > div,
|
||||||
|
#memfree > div > div,
|
||||||
|
#membuff > div > div,
|
||||||
|
#conns > div > div,
|
||||||
|
#memtotal > div > div {
|
||||||
|
background-color: #32325d !important;
|
||||||
|
}
|
||||||
|
#swaptotal > div > div > div > small,
|
||||||
|
#swapfree > div > div > div > small,
|
||||||
|
#memfree > div > div > div > small,
|
||||||
|
#membuff > div > div > div > small,
|
||||||
|
#conns > div > div > div > small,
|
||||||
|
#memtotal > div > div > div > small {
|
||||||
|
color: #ccc !important;
|
||||||
|
}
|
||||||
|
.node-system-packages > .main .cbi-section-node:first-child .cbi-value-last {
|
||||||
|
line-height: 1.8em;
|
||||||
|
}
|
||||||
|
.node-system-packages > .main .cbi-section-node:first-child .cbi-value-last div[style="margin:3px 0; width:300px; height:10px; border:1px solid #000000; background-color:#80C080"] {
|
||||||
|
border: 1px solid #999999 !important;
|
||||||
|
background-color: transparent !important;
|
||||||
|
}
|
||||||
|
.node-system-packages > .main .cbi-section-node:first-child .cbi-value-last div[style="margin:3px 0; width:300px; height:10px; border:1px solid #000000; background-color:#80C080"] div {
|
||||||
|
background-color: #32325d !important;
|
||||||
|
}
|
||||||
|
table > tbody > tr > th,
|
||||||
|
table > tfoot > tr > th,
|
||||||
|
table > thead > tr > th {
|
||||||
|
background-color: #252526;
|
||||||
|
border-bottom: black 1px solid !important;
|
||||||
|
}
|
||||||
|
tr > td,
|
||||||
|
tr > th,
|
||||||
|
.tr > .td,
|
||||||
|
.tr > .th,
|
||||||
|
.cbi-section-table-row::before,
|
||||||
|
#cbi-wireless > #wifi_assoclist_table > .tr:nth-child(2) {
|
||||||
|
border-top: 0;
|
||||||
|
}
|
||||||
|
.cbi-rowstyle-2 {
|
||||||
|
background-color: #1e1e1e;
|
||||||
|
}
|
||||||
|
.cbi-rowstyle-1 {
|
||||||
|
background-color: #252526;
|
||||||
|
}
|
||||||
|
.cbi-section > h3:first-child,
|
||||||
|
.panel-title,
|
||||||
|
h3 {
|
||||||
|
color: #ccc;
|
||||||
|
border-bottom: 0;
|
||||||
|
border-bottom-left-radius: 0;
|
||||||
|
border-bottom-right-radius: 0;
|
||||||
|
}
|
||||||
|
h4 {
|
||||||
|
background-color: #1e1e1f;
|
||||||
|
}
|
||||||
|
.cbi-progressbar {
|
||||||
|
position: relative;
|
||||||
|
min-width: 170px;
|
||||||
|
height: 20px;
|
||||||
|
margin: 6px 0;
|
||||||
|
border: thin solid #999;
|
||||||
|
background: transparent;
|
||||||
|
border-radius: 0.2rem;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
.cbi-progressbar div {
|
||||||
|
background-color: #32325d !important;
|
||||||
|
}
|
||||||
|
.cbi-section-table .cbi-section-table-titles .cbi-section-table-cell {
|
||||||
|
background-color: #1e1e1f;
|
||||||
|
}
|
||||||
|
.cbi-button {
|
||||||
|
color: #ccc !important;
|
||||||
|
background-color: darkslateblue;
|
||||||
|
}
|
||||||
|
.cbi-section-node {
|
||||||
|
background: none;
|
||||||
|
border-radius: 0 0 0.375rem 0.375rem;
|
||||||
|
padding: 0rem;
|
||||||
|
}
|
||||||
|
abbr {
|
||||||
|
color: #5e72e4;
|
||||||
|
}
|
||||||
|
div > table > tbody > tr:nth-of-type(2n),
|
||||||
|
div > .table > .tbody > .tr:nth-of-type(2n) {
|
||||||
|
background-color: #252526;
|
||||||
|
}
|
||||||
|
#content_syslog {
|
||||||
|
box-shadow: 0 0 0.5rem 0 rgba(0, 0, 0, 0.35);
|
||||||
|
}
|
||||||
|
#syslog {
|
||||||
|
color: #ccc;
|
||||||
|
background-color: #1e1e1e;
|
||||||
|
}
|
||||||
|
#iwsvg,
|
||||||
|
#iwsvg2,
|
||||||
|
#bwsvg {
|
||||||
|
overflow: hidden;
|
||||||
|
box-shadow: 0 0 0.5rem 0 rgba(0, 0, 0, 0.35);
|
||||||
|
background-color: #1e1e1e !important;
|
||||||
|
}
|
||||||
|
.tabs {
|
||||||
|
background-color: #252526;
|
||||||
|
}
|
||||||
|
.tabs > li[class~="active"] > a {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
.tabs > li[class~="active"],
|
||||||
|
.tabs > li:hover {
|
||||||
|
border-bottom: 0.18751rem solid darkslateblue;
|
||||||
|
color: #ccc;
|
||||||
|
background-color: #181819;
|
||||||
|
}
|
||||||
|
.cbi-tabmenu > li > a,
|
||||||
|
.tabs > li > a {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
.cbi-tabmenu > li > a:hover,
|
||||||
|
.tabs > li > a:hover {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
.cbi-tabmenu > li {
|
||||||
|
background: #2d2d2d;
|
||||||
|
}
|
||||||
|
.cbi-tabmenu li[class~="cbi-tab"] a {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
.cbi-tabmenu > li:hover {
|
||||||
|
color: #ccc;
|
||||||
|
background: #2d2d2d;
|
||||||
|
}
|
||||||
|
.cbi-tabmenu > li[class~="cbi-tab"] {
|
||||||
|
background-color: #181819;
|
||||||
|
}
|
||||||
|
.cbi-tabcontainer > .cbi-value:nth-of-type(2n) {
|
||||||
|
background-color: #252526;
|
||||||
|
}
|
||||||
|
.cbi-value-title {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
select,
|
||||||
|
input {
|
||||||
|
color: #ccc;
|
||||||
|
background-color: transparent !important;
|
||||||
|
border: 1px solid #252526;
|
||||||
|
box-shadow: none;
|
||||||
|
}
|
||||||
|
select:not([multiple="multiple"]):focus,
|
||||||
|
input:focus {
|
||||||
|
border-color: darkslateblue !important;
|
||||||
|
outline: 0;
|
||||||
|
}
|
||||||
|
select {
|
||||||
|
background-color: #1e1e1e !important;
|
||||||
|
}
|
||||||
|
#cbi-dropbear h2,
|
||||||
|
#cbi-dropbear .cbi-map-descr,
|
||||||
|
#cbi-dropbear .cbi-map-descr abbr,
|
||||||
|
#cbi-rc h2,
|
||||||
|
#cbi-rc .cbi-map-descr,
|
||||||
|
#cbi-distfeedconf h2,
|
||||||
|
#cbi-distfeedconf .cbi-map-descr,
|
||||||
|
#cbi-customfeedconf h2,
|
||||||
|
#cbi-customfeedconf .cbi-map-descr,
|
||||||
|
#cbi-download h2,
|
||||||
|
#cbi-filelist h2 {
|
||||||
|
color: #ccc !important;
|
||||||
|
}
|
||||||
|
.cbi-value-field > ul > li .ifacebadge {
|
||||||
|
background-color: #3c3c3c;
|
||||||
|
}
|
||||||
|
.cbi-section-descr {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
.cbi-input-textarea {
|
||||||
|
background-color: #1e1e1e;
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
.cbi-section-remove:nth-of-type(2n),
|
||||||
|
.cbi-section-node:nth-of-type(2n) {
|
||||||
|
background-color: #1e1e1e;
|
||||||
|
}
|
||||||
|
.node-system-packages > .main table tr td:nth-last-child(1) {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
.cbi-section-node .cbi-value {
|
||||||
|
padding: 1rem 1rem 0.3rem 1rem;
|
||||||
|
}
|
||||||
|
.ifacebox {
|
||||||
|
background-color: none;
|
||||||
|
border: 1px solid #1e1e1e;
|
||||||
|
}
|
||||||
|
.ifacebox-head {
|
||||||
|
color: #666;
|
||||||
|
}
|
||||||
|
.ifacebox-body {
|
||||||
|
background-color: #333;
|
||||||
|
}
|
||||||
|
.zonebadge strong {
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
.zonebadge > .ifacebadge {
|
||||||
|
background-color: #3c3c3c;
|
||||||
|
}
|
||||||
|
div.cbi-value var,
|
||||||
|
td.cbi-value-field var {
|
||||||
|
color: #5e72e4;
|
||||||
|
}
|
||||||
|
#diag-rc-output > pre {
|
||||||
|
color: #ccc;
|
||||||
|
background-color: #1e1e1e;
|
||||||
|
}
|
||||||
|
.node-services-vssr .block {
|
||||||
|
background-color: #3c3c3c !important;
|
||||||
|
box-shadow: 0 0 0.5rem 0 rgba(0, 0, 0, 0.35);
|
||||||
|
}
|
||||||
|
.node-services-vssr .block h4 {
|
||||||
|
color: #ccc !important;
|
||||||
|
}
|
||||||
|
.node-services-vssr .status-bar {
|
||||||
|
color: #ccc;
|
||||||
|
box-shadow: 0 0 0.5rem 0 rgba(0, 0, 0, 0.35);
|
||||||
|
background-color: #1e1e1e;
|
||||||
|
}
|
||||||
|
.node-services-vssr .cbi-section-table-row {
|
||||||
|
color: #ccc;
|
||||||
|
background-color: #3c3c3c !important;
|
||||||
|
box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.35);
|
||||||
|
}
|
||||||
|
.node-services-vssr .cbi-section-table-row.fast {
|
||||||
|
background: darkslateblue !important;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
.node-services-vssr .ssr-button {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
.node-services-vssr .incon:nth-child(2) {
|
||||||
|
border-right: #1e1e1e 1px solid;
|
||||||
|
}
|
||||||
|
#xhr_poll_status > .label.success {
|
||||||
|
color: #ccc !important;
|
||||||
|
background-color: darkolivegreen !important;
|
||||||
|
}
|
||||||
|
.notice {
|
||||||
|
background-color: darkslateblue !important;
|
||||||
|
}
|
||||||
|
.cbi-input-find,
|
||||||
|
.cbi-input-save,
|
||||||
|
.cbi-button-add,
|
||||||
|
.cbi-button-save,
|
||||||
|
.cbi-button-find,
|
||||||
|
.cbi-input-reload,
|
||||||
|
.cbi-button-reload {
|
||||||
|
color: #fff !important;
|
||||||
|
background: darkolivegreen !important;
|
||||||
|
border-color: darkolivegreen !important;
|
||||||
|
}
|
||||||
|
.cbi-button-reset,
|
||||||
|
.cbi-input-remove {
|
||||||
|
color: #fff !important;
|
||||||
|
background-color: darkorange !important;
|
||||||
|
border-color: darkorange !important;
|
||||||
|
}
|
||||||
|
.cbi-page-actions .cbi-button-apply,
|
||||||
|
.cbi-section-actions .cbi-button-edit,
|
||||||
|
.cbi-button-edit.important,
|
||||||
|
.cbi-button-apply.important,
|
||||||
|
.cbi-button-reload.important,
|
||||||
|
.cbi-button-action.important {
|
||||||
|
border: 1px darkslateblue solid !important;
|
||||||
|
}
|
||||||
|
.btn[value="Dismiss"],
|
||||||
|
.cbi-button[value="Terminate"],
|
||||||
|
.cbi-button[value="Reset"],
|
||||||
|
.cbi-button[value="Disabled"],
|
||||||
|
.cbi-button[onclick^="iface_reconnect"],
|
||||||
|
.cbi-button[onclick="handleReset(event)"],
|
||||||
|
.cbi-button-neutral[value="Disable"] {
|
||||||
|
font-weight: normal;
|
||||||
|
color: #fff;
|
||||||
|
border: thin solid darkorange!important;
|
||||||
|
background-color: darkorange!important;
|
||||||
|
}
|
||||||
|
fieldset[id^="cbi-apply-"] {
|
||||||
|
background-color: #333333;
|
||||||
|
}
|
||||||
|
#detail-bubble > div {
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
border-radius: 2px;
|
||||||
|
padding: 5px;
|
||||||
|
background: #252525;
|
||||||
|
}
|
||||||
|
.ifacebox-head.active {
|
||||||
|
background-color: #32325d !important;
|
||||||
|
}
|
||||||
|
header .fill .status span[data-style="active"] {
|
||||||
|
color: #ccc !important;
|
||||||
|
background-color: darkolivegreen !important;
|
||||||
|
}
|
||||||
|
#cbi-wireless .td,
|
||||||
|
#cbi-network .tr:first-child > .td,
|
||||||
|
.table[width="100%"] > .tr:first-child > .td,
|
||||||
|
[data-page="admin-network-diagnostics"] .tr > .td,
|
||||||
|
.tr.table-titles > .th,
|
||||||
|
.tr.cbi-section-table-titles > .th {
|
||||||
|
background-color: #252526;
|
||||||
|
border-bottom: black 1px solid !important;
|
||||||
|
}
|
||||||
|
.network-status-table .ifacebox-body .ifacebadge {
|
||||||
|
background-color: #252526;
|
||||||
|
border-bottom: 0;
|
||||||
|
box-shadow: none;
|
||||||
|
}
|
||||||
|
td > .ifacebadge,
|
||||||
|
.td > .ifacebadge {
|
||||||
|
background-color: darkslateblue;
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
.btn.danger,
|
||||||
|
.cbi-section-remove > .cbi-button,
|
||||||
|
.cbi-button-remove,
|
||||||
|
.cbi-button-reset,
|
||||||
|
.cbi-button-negative,
|
||||||
|
.cbi-button[value="Stop"],
|
||||||
|
.cbi-button[value="Kill"],
|
||||||
|
.cbi-button[onclick="reboot(this)"],
|
||||||
|
.cbi-button-neutral[value="Restart"] {
|
||||||
|
border: thin solid darkorange;
|
||||||
|
background-color: darkorange;
|
||||||
|
}
|
||||||
|
.cbi-section,
|
||||||
|
.cbi-section-error,
|
||||||
|
#iptables,
|
||||||
|
.Firewall form,
|
||||||
|
#cbi-network > .cbi-section-node,
|
||||||
|
#cbi-wireless > .cbi-section-node,
|
||||||
|
#cbi-wireless > #wifi_assoclist_table,
|
||||||
|
[data-tab-title],
|
||||||
|
[data-page^="admin-system-admin"]:not(.node-main-login) .cbi-map:not(#cbi-dropbear),
|
||||||
|
[data-page="admin-system-opkg"] #maincontent > .container {
|
||||||
|
background: #1e1e1e !important;
|
||||||
|
box-shadow: 0 0 0.5rem 0 rgba(0, 0, 0, 0.35);
|
||||||
|
}
|
||||||
|
div[style="width:100%;height:300px;border:1px solid #000;background:#fff"] {
|
||||||
|
background: transparent !important;
|
||||||
|
}
|
||||||
|
[data-page="admin-system-admin"] .cbi-map h2,
|
||||||
|
[data-page="admin-system-admin-password"] .cbi-map h2,
|
||||||
|
[data-page="admin-system-admin"] .cbi-map .cbi-map-descr,
|
||||||
|
[data-page="admin-system-admin-password"] .cbi-map .cbi-map-descr {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
.cbi-value input[type="password"] + .cbi-button-neutral {
|
||||||
|
background-color: darkslateblue !important;
|
||||||
|
}
|
||||||
|
.btn,
|
||||||
|
button,
|
||||||
|
select,
|
||||||
|
input,
|
||||||
|
.cbi-dropdown {
|
||||||
|
border: 1px solid #3c3c3c !important;
|
||||||
|
}
|
||||||
|
.cbi-dropdown .preview {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
.cbi-section-table-row {
|
||||||
|
background-color: #1e1e1e !important;
|
||||||
|
}
|
||||||
|
.modal {
|
||||||
|
background-color: #1e1e1e;
|
||||||
|
}
|
||||||
|
.cbi-button-positive {
|
||||||
|
color: #fff !important;
|
||||||
|
background-color: darkolivegreen !important;
|
||||||
|
}
|
||||||
|
[data-page="admin-system-flash"] legend {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
.logout:before {
|
||||||
|
color: #adb5bd !important;
|
||||||
|
}
|
||||||
|
.cbi-dropdown[open] {
|
||||||
|
border-color: darkslateblue !important;
|
||||||
|
}
|
||||||
|
.cbi-dropdown[open] > ul.dropdown {
|
||||||
|
background: #252526 !important;
|
||||||
|
color: #ccc !important;
|
||||||
|
box-shadow: none;
|
||||||
|
border: 1px solid #3c3c3c !important;
|
||||||
|
}
|
||||||
|
.cbi-dropdown[open] > ul.dropdown li {
|
||||||
|
color: #ccc;
|
||||||
|
border-bottom: 1px solid #3c3c3c !important;
|
||||||
|
}
|
||||||
|
.cbi-dropdown[open] > ul.dropdown > li[selected] {
|
||||||
|
background-color: darkslateblue !important;
|
||||||
|
border-bottom: 1px solid #3c3c3c !important;
|
||||||
|
}
|
||||||
|
.cbi-dropdown[open] > ul.dropdown > li.focus {
|
||||||
|
background: darkslateblue;
|
||||||
|
outline: none;
|
||||||
|
}
|
||||||
|
.ifacebadge {
|
||||||
|
background-color: #333333;
|
||||||
|
}
|
||||||
|
.cbi-dynlist > .item > span {
|
||||||
|
border: 1px solid #3c3c3c !important;
|
||||||
|
}
|
||||||
|
.cbi-page-actions .cbi-button-apply,
|
||||||
|
.cbi-section-actions .cbi-button-edit,
|
||||||
|
.cbi-button-edit,
|
||||||
|
.cbi-button-apply,
|
||||||
|
.cbi-button-reload,
|
||||||
|
.cbi-button-action,
|
||||||
|
.cbi-button[value="Submit"],
|
||||||
|
.cbi-button[value="Upload"],
|
||||||
|
.cbi-button[value$="Apply"],
|
||||||
|
.cbi-button[onclick="addKey(event)"] {
|
||||||
|
background: darkslateblue !important;
|
||||||
|
}
|
||||||
|
.btn.primary,
|
||||||
|
.cbi-page-actions .cbi-button-save,
|
||||||
|
.cbi-page-actions .cbi-button-apply + .cbi-button-save,
|
||||||
|
.cbi-button-add,
|
||||||
|
.cbi-button-save,
|
||||||
|
.cbi-button-positive,
|
||||||
|
.cbi-button-link,
|
||||||
|
.cbi-button[value="Enable"],
|
||||||
|
.cbi-button[value="Scan"],
|
||||||
|
.cbi-button[value^="Back"],
|
||||||
|
.cbi-button-neutral[onclick="handleConfig(event)"] {
|
||||||
|
background: darkslateblue;
|
||||||
|
}
|
||||||
|
[data-page="admin-system-opkg"] h2 {
|
||||||
|
color: #ccc !important;
|
||||||
|
}
|
||||||
|
@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none) {
|
||||||
|
.login-page .login-container .login-form {
|
||||||
|
-webkit-backdrop-filter: blur(var(--blur-radius-dark));
|
||||||
|
backdrop-filter: blur(var(--blur-radius-dark));
|
||||||
|
background-color: rgba(0, 0, 0, var(--blur-opacity-dark));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@media screen and (max-width: 480px) {
|
||||||
|
.node-status-iptables > .main div > .cbi-map > form {
|
||||||
|
background-color: #1e1e1e;
|
||||||
|
box-shadow: 0 0 0.5rem 0 rgba(0, 0, 0, 0.35);
|
||||||
|
}
|
||||||
|
}
|
1
htdocs/luci-static/argon/img/volume_high.svg
Normal file
1
htdocs/luci-static/argon/img/volume_high.svg
Normal file
@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1597500707209" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="9192" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M484.430769 51.2L236.307692 354.461538H118.153846c-43.323077 0-78.769231 35.446154-78.769231 78.769231v157.538462c0 43.323077 35.446154 78.769231 78.769231 78.769231h118.153846l248.123077 303.261538c25.6 25.6 66.953846 7.876923 66.953846-27.569231V78.769231c0-35.446154-43.323077-53.169231-66.953846-27.569231z m354.461539 120.123077c-7.876923-7.876923-19.692308-7.876923-27.569231 0l-27.569231 27.569231c-7.876923 7.876923-7.876923 21.661538 0 27.56923C858.584615 299.323077 905.846154 399.753846 905.846154 512c0 112.246154-47.261538 212.676923-122.092308 285.538462-7.876923 7.876923-7.876923 19.692308 0 27.56923l27.569231 27.569231c7.876923 7.876923 19.692308 7.876923 27.569231 0C927.507692 768 984.615385 645.907692 984.615385 512c0-133.907692-55.138462-256-145.723077-340.676923z m-124.061539 126.030769c-7.876923-7.876923-19.692308-7.876923-27.569231 0l-27.56923 27.569231c-7.876923 7.876923-7.876923 19.692308 0 27.569231 43.323077 39.384615 68.923077 96.492308 68.923077 159.507692 0 63.015385-27.569231 120.123077-70.892308 159.507692-7.876923 7.876923-7.876923 19.692308 0 27.569231l27.569231 27.569231c7.876923 7.876923 19.692308 7.876923 27.56923 0 57.107692-53.169231 94.523077-129.969231 94.523077-216.615385 0-82.707692-35.446154-159.507692-92.553846-212.676923z" p-id="9193" fill="#ffffff"></path></svg>
|
After Width: | Height: | Size: 1.7 KiB |
1
htdocs/luci-static/argon/img/volume_off.svg
Normal file
1
htdocs/luci-static/argon/img/volume_off.svg
Normal file
@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1597500723732" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="9385" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M484.430769 51.2L236.307692 354.461538H118.153846c-43.323077 0-78.769231 35.446154-78.769231 78.769231v157.538462c0 43.323077 35.446154 78.769231 78.769231 78.769231h118.153846l248.123077 303.261538c25.6 25.6 66.953846 7.876923 66.953846-27.569231V78.769231c0-35.446154-43.323077-53.169231-66.953846-27.569231zM882.215385 512l96.492307-96.492308c7.876923-7.876923 7.876923-19.692308 0-27.56923l-27.56923-27.569231c-7.876923-7.876923-19.692308-7.876923-27.569231 0L827.076923 456.861538l-96.492308-96.492307c-7.876923-7.876923-19.692308-7.876923-27.56923 0l-27.569231 27.569231c-7.876923 7.876923-7.876923 19.692308 0 27.56923l96.492308 96.492308-96.492308 96.492308c-7.876923 7.876923-7.876923 19.692308 0 27.56923l27.569231 27.569231c7.876923 7.876923 19.692308 7.876923 27.56923 0l96.492308-96.492307 96.492308 96.492307c7.876923 7.876923 19.692308 7.876923 27.569231 0l27.56923-27.569231c7.876923-7.876923 7.876923-19.692308 0-27.56923L882.215385 512z" p-id="9386" fill="#ffffff"></path></svg>
|
After Width: | Height: | Size: 1.3 KiB |
4
htdocs/luci-static/argon/js/jquery.min.js
vendored
4
htdocs/luci-static/argon/js/jquery.min.js
vendored
File diff suppressed because one or more lines are too long
@ -3,7 +3,7 @@
|
|||||||
* Argon is a clean HTML5 theme for LuCI. It is based on luci-theme-material and Argon Template
|
* Argon is a clean HTML5 theme for LuCI. It is based on luci-theme-material and Argon Template
|
||||||
*
|
*
|
||||||
* luci-theme-argon
|
* luci-theme-argon
|
||||||
* Copyright 2019 Jerrykuku <jerrykuku@qq.com>
|
* Copyright 2020 Jerrykuku <jerrykuku@qq.com>
|
||||||
*
|
*
|
||||||
* Have a bug? Please create an issue here on GitHub!
|
* Have a bug? Please create an issue here on GitHub!
|
||||||
* https://github.com/jerrykuku/luci-theme-argon/issues
|
* https://github.com/jerrykuku/luci-theme-argon/issues
|
||||||
@ -75,7 +75,10 @@
|
|||||||
--breakpoint-md: 768px;
|
--breakpoint-md: 768px;
|
||||||
--breakpoint-lg: 992px;
|
--breakpoint-lg: 992px;
|
||||||
--breakpoint-xl: 1200px;
|
--breakpoint-xl: 1200px;
|
||||||
|
--blur-radius: 10px;
|
||||||
|
--blur-opacity: 0.5;
|
||||||
|
--blur-radius-dark: 10px;
|
||||||
|
--blur-opacity-dark: 0.5;
|
||||||
--font-family-sans-serif: "Google Sans", "Microsoft Yahei", "WenQuanYi Micro Hei", "sans-serif", "Helvetica Neue", "Helvetica", "Hiragino Sans GB";
|
--font-family-sans-serif: "Google Sans", "Microsoft Yahei", "WenQuanYi Micro Hei", "sans-serif", "Helvetica Neue", "Helvetica", "Hiragino Sans GB";
|
||||||
--font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
|
--font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
|
||||||
--font-family-normal: Open Sans, PingFangSC-Regular, Microsoft Yahei, WenQuanYi Micro Hei, "Helvetica Neue", Helvetica, Hiragino Sans GB, sans-serif;
|
--font-family-normal: Open Sans, PingFangSC-Regular, Microsoft Yahei, WenQuanYi Micro Hei, "Helvetica Neue", Helvetica, Hiragino Sans GB, sans-serif;
|
||||||
@ -111,8 +114,8 @@ body {
|
|||||||
}
|
}
|
||||||
|
|
||||||
::selection {
|
::selection {
|
||||||
background-color: var(--primary);
|
|
||||||
background-color: #5e72e4;
|
background-color: #5e72e4;
|
||||||
|
background-color: var(--primary);
|
||||||
color: #ffffff;
|
color: #ffffff;
|
||||||
color: var(--white);
|
color: var(--white);
|
||||||
}
|
}
|
||||||
@ -355,6 +358,38 @@ hr {
|
|||||||
background-size: cover;
|
background-size: cover;
|
||||||
transition: all 0.5s;
|
transition: all 0.5s;
|
||||||
|
|
||||||
|
.video {
|
||||||
|
position: absolute;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
background-color: #000;
|
||||||
|
background-color: var(--darker);
|
||||||
|
overflow: hidden;
|
||||||
|
pointer-events: none;
|
||||||
|
video {
|
||||||
|
width: 100%;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.volume-control{
|
||||||
|
position: fixed;
|
||||||
|
right: 1rem;
|
||||||
|
top: 1rem;
|
||||||
|
width: 1.5rem;
|
||||||
|
height: 1.5rem;
|
||||||
|
z-index: 5000;
|
||||||
|
cursor: pointer;
|
||||||
|
background-size: contain;
|
||||||
|
background-image: url(../img/volume_high.svg);
|
||||||
|
&.mute{
|
||||||
|
background-image: url(../img/volume_off.svg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.login-container {
|
.login-container {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
margin-left: 4.5rem;
|
margin-left: 4.5rem;
|
||||||
@ -501,7 +536,7 @@ hr {
|
|||||||
width: 100%;
|
width: 100%;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
min-height: 50px;
|
min-height: 50px;
|
||||||
background-image: linear-gradient(-135deg, rgb(134, 146, 222) 0%, rgb(120, 138, 239) 100%);
|
background-color: #5e72e4 !important;
|
||||||
border-radius: 6px;
|
border-radius: 6px;
|
||||||
outline: none;
|
outline: none;
|
||||||
border-width: initial;
|
border-width: initial;
|
||||||
@ -515,7 +550,7 @@ hr {
|
|||||||
|
|
||||||
&:hover,
|
&:hover,
|
||||||
:focus {
|
:focus {
|
||||||
background-image: linear-gradient(-135deg, rgb(130, 143, 224) 0%, rgb(94, 114, 228) 100%);
|
background-color: #5065d8 !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -529,8 +564,13 @@ hr {
|
|||||||
justify-content: space-evenly;
|
justify-content: space-evenly;
|
||||||
margin-top: auto;
|
margin-top: auto;
|
||||||
padding: 0px 0px 30px;
|
padding: 0px 0px 30px;
|
||||||
|
color: #525461;
|
||||||
z-index: 10;
|
z-index: 10;
|
||||||
|
.ftc{
|
||||||
|
position: absolute;
|
||||||
|
bottom: 30px;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
.luci-link {
|
.luci-link {
|
||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
@ -541,9 +581,9 @@ hr {
|
|||||||
|
|
||||||
@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none) {
|
@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none) {
|
||||||
.login-page .login-container .login-form {
|
.login-page .login-container .login-form {
|
||||||
-webkit-backdrop-filter: blur(10px);
|
-webkit-backdrop-filter: blur(var(--blur-radius));
|
||||||
backdrop-filter: blur(10px);
|
backdrop-filter: blur(var(--blur-radius));
|
||||||
background-color: rgba(244, 245, 247, 0.7);
|
background-color: rgba(244, 245, 247, var(--blur-opacity));
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -4548,6 +4588,7 @@ pre.command-output {
|
|||||||
.cbi-button-neutral[onclick="handleConfig(event)"] {
|
.cbi-button-neutral[onclick="handleConfig(event)"] {
|
||||||
background: darkslateblue !important;
|
background: darkslateblue !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
[data-page="admin-system-opkg"] h2 {
|
[data-page="admin-system-opkg"] h2 {
|
||||||
|
|
||||||
color: #ccc !important;
|
color: #ccc !important;
|
||||||
@ -4555,9 +4596,9 @@ pre.command-output {
|
|||||||
|
|
||||||
@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none) {
|
@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none) {
|
||||||
.login-page .login-container .login-form {
|
.login-page .login-container .login-form {
|
||||||
-webkit-backdrop-filter: blur(10px);
|
-webkit-backdrop-filter: blur(var(--blur-radius-dark));
|
||||||
backdrop-filter: blur(10px);
|
backdrop-filter: blur(var(--blur-radius-dark));
|
||||||
background-color: rgba(0, 0, 0, 0.7);
|
background-color: rgba(0, 0, 0, var(--blur-opacity-dark));
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
786
htdocs/luci-static/argon/less/dark.less
Normal file
786
htdocs/luci-static/argon/less/dark.less
Normal file
@ -0,0 +1,786 @@
|
|||||||
|
/**
|
||||||
|
* Argon is a clean HTML5 theme for LuCI. It is based on luci-theme-material and Argon Template
|
||||||
|
*
|
||||||
|
* luci-theme-argon
|
||||||
|
* Copyright 2020 Jerryk <jerrykuku@gmail.com>
|
||||||
|
*
|
||||||
|
* Have a bug? Please create an issue here on GitHub!
|
||||||
|
* https://github.com/jerrykuku/luci-theme-argon/issues
|
||||||
|
*
|
||||||
|
* luci-theme-bootstrap:
|
||||||
|
* Copyright 2008 Steven Barth <steven@midlink.org>
|
||||||
|
* Copyright 2008 Jo-Philipp Wich <jow@openwrt.org>
|
||||||
|
* Copyright 2012 David Menting <david@nut-bolt.nl>
|
||||||
|
*
|
||||||
|
* MUI:
|
||||||
|
* https://github.com/muicss/mui
|
||||||
|
*
|
||||||
|
* luci-theme-material:
|
||||||
|
* https://github.com/LuttyYang/luci-theme-material/
|
||||||
|
*
|
||||||
|
* Agron Theme
|
||||||
|
* https://demos.creative-tim.com/argon-dashboard/index.html
|
||||||
|
*
|
||||||
|
* Login background
|
||||||
|
* https://unsplash.com/
|
||||||
|
*
|
||||||
|
* Licensed to the public under the Apache License 2.0
|
||||||
|
*/
|
||||||
|
|
||||||
|
body {
|
||||||
|
background: #1e1e1e;
|
||||||
|
color: #cccccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
.login-page .login-container {
|
||||||
|
|
||||||
|
.login-form {
|
||||||
|
background-color: #1e1e1e;
|
||||||
|
|
||||||
|
.brand {
|
||||||
|
color: #adb5bd;
|
||||||
|
}
|
||||||
|
|
||||||
|
.form-login {
|
||||||
|
.input-group {
|
||||||
|
&::before {
|
||||||
|
color: #adb5bd;
|
||||||
|
}
|
||||||
|
|
||||||
|
input {
|
||||||
|
background-color: transparent !important;
|
||||||
|
color: #adb5bd;
|
||||||
|
border-bottom: #adb5bd 1px solid !important;
|
||||||
|
border-radius: 0 !important;
|
||||||
|
border-top: none !important;
|
||||||
|
border-left: none !important;
|
||||||
|
border-right: none !important;
|
||||||
|
box-shadow: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-button-apply {
|
||||||
|
background-image: linear-gradient(-135deg, #6c61ab 0%, #594ca9 100%);
|
||||||
|
|
||||||
|
&:hover,
|
||||||
|
&:focus {
|
||||||
|
background-image: linear-gradient(-135deg, rgb(85, 76, 138) 0%, rgb(72, 61, 139) 100%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
header::after {
|
||||||
|
background-color: #1e1e1e !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.main {
|
||||||
|
.main-left {
|
||||||
|
|
||||||
|
background-color: #333333 !important;
|
||||||
|
box-shadow: 0 0 0.5rem 0 rgba(0, 0, 0, .15);
|
||||||
|
|
||||||
|
.sidenav-header .brand {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav {
|
||||||
|
.slide {
|
||||||
|
.slide-menu {
|
||||||
|
.active {
|
||||||
|
a {
|
||||||
|
color: #cccccc;
|
||||||
|
|
||||||
|
&::after {
|
||||||
|
background-color: #cccccc !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
li {
|
||||||
|
a {
|
||||||
|
color: #cccccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
a:hover {
|
||||||
|
background: none !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.menu.active {
|
||||||
|
background-color: darkslateblue !important;
|
||||||
|
color: #cccccc !important;
|
||||||
|
|
||||||
|
a::after {
|
||||||
|
background-color: #cccccc !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
li {
|
||||||
|
a {
|
||||||
|
color: #cccccc !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
a:hover {
|
||||||
|
background-color: darkslateblue !important;
|
||||||
|
color: #cccccc !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
&::-webkit-scrollbar-thumb {
|
||||||
|
background-color: #252526 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
&::-webkit-scrollbar-track {
|
||||||
|
background-color: #333;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.main-right {
|
||||||
|
background-color: #1e1e1e;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
h2 {
|
||||||
|
color: #ccc;
|
||||||
|
background: #333333;
|
||||||
|
}
|
||||||
|
|
||||||
|
h3 {
|
||||||
|
color: #ccc;
|
||||||
|
border-bottom: 0;
|
||||||
|
background: #333333;
|
||||||
|
}
|
||||||
|
|
||||||
|
a:-webkit-any-link {
|
||||||
|
color: -webkit-link;
|
||||||
|
cursor: pointer;
|
||||||
|
color: darkslateblue;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
input:-webkit-autofill {
|
||||||
|
background-color: #3c3c3c !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-value-field .cbi-input-apply,
|
||||||
|
.cbi-button-apply,
|
||||||
|
.cbi-button-edit {
|
||||||
|
color: #fff !important;
|
||||||
|
background-color: darkslateblue !important;
|
||||||
|
border-color: darkslateblue !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.cbi-section em {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
header.bg-primary {
|
||||||
|
background-color: #1e1e1e !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-map-descr {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-section {
|
||||||
|
background: none;
|
||||||
|
box-shadow: 0 0 0.5rem 0 rgba(0, 0, 0, .35)
|
||||||
|
}
|
||||||
|
|
||||||
|
.panel-title {
|
||||||
|
color: #ccc;
|
||||||
|
background-color: #333333;
|
||||||
|
border-bottom: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div>table>tbody>tr:nth-of-type(2n),
|
||||||
|
div>.table>.tr:nth-of-type(2n) {
|
||||||
|
background-color: #252526;
|
||||||
|
}
|
||||||
|
|
||||||
|
table>tbody>tr>td,
|
||||||
|
table>tfoot>tr>td,
|
||||||
|
table>thead>tr>td {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
fieldset>table>tbody>tr:nth-of-type(2n) {
|
||||||
|
background-color: #252526;
|
||||||
|
}
|
||||||
|
|
||||||
|
table>tbody>tr>td,
|
||||||
|
table>tfoot>tr>td,
|
||||||
|
table>thead>tr>td {
|
||||||
|
border-top: 1px solid #252526;
|
||||||
|
}
|
||||||
|
|
||||||
|
#swaptotal>div>div,
|
||||||
|
#swapfree>div>div,
|
||||||
|
#memfree>div>div,
|
||||||
|
#membuff>div>div,
|
||||||
|
#conns>div>div,
|
||||||
|
#memtotal>div>div {
|
||||||
|
background-color: #32325d !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#swaptotal>div>div>div>small,
|
||||||
|
#swapfree>div>div>div>small,
|
||||||
|
#memfree>div>div>div>small,
|
||||||
|
#membuff>div>div>div>small,
|
||||||
|
#conns>div>div>div>small,
|
||||||
|
#memtotal>div>div>div>small {
|
||||||
|
|
||||||
|
color: #ccc !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.node-system-packages>.main .cbi-section-node:first-child .cbi-value-last {
|
||||||
|
line-height: 1.8em;
|
||||||
|
|
||||||
|
div[style="margin:3px 0; width:300px; height:10px; border:1px solid #000000; background-color:#80C080"] {
|
||||||
|
border: 1px solid #999999 !important;
|
||||||
|
background-color: transparent !important;
|
||||||
|
|
||||||
|
div {
|
||||||
|
background-color: #32325d !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
table>tbody>tr>th,
|
||||||
|
table>tfoot>tr>th,
|
||||||
|
table>thead>tr>th {
|
||||||
|
|
||||||
|
background-color: #252526;
|
||||||
|
border-bottom: black 1px solid !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
tr>td,
|
||||||
|
tr>th,
|
||||||
|
.tr>.td,
|
||||||
|
.tr>.th,
|
||||||
|
.cbi-section-table-row::before,
|
||||||
|
#cbi-wireless>#wifi_assoclist_table>.tr:nth-child(2) {
|
||||||
|
border-top: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-rowstyle-2 {
|
||||||
|
background-color: #1e1e1e;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-rowstyle-1 {
|
||||||
|
background-color: #252526;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-section>h3:first-child,
|
||||||
|
.panel-title,
|
||||||
|
h3 {
|
||||||
|
color: #ccc;
|
||||||
|
border-bottom: 0;
|
||||||
|
border-bottom-left-radius: 0;
|
||||||
|
border-bottom-right-radius: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
h4 {
|
||||||
|
background-color: #1e1e1f;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-progressbar {
|
||||||
|
position: relative;
|
||||||
|
min-width: 170px;
|
||||||
|
height: 20px;
|
||||||
|
margin: 6px 0;
|
||||||
|
border: thin solid #999;
|
||||||
|
background: transparent;
|
||||||
|
border-radius: 0.2rem;
|
||||||
|
overflow: hidden;
|
||||||
|
|
||||||
|
div {
|
||||||
|
background-color: #32325d !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-section-table .cbi-section-table-titles .cbi-section-table-cell {
|
||||||
|
background-color: #1e1e1f;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-button {
|
||||||
|
color: #ccc !important;
|
||||||
|
background-color: darkslateblue;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-section-node {
|
||||||
|
background: none;
|
||||||
|
border-radius: 0 0 .375rem .375rem;
|
||||||
|
padding: 0rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
abbr {
|
||||||
|
color: #5e72e4;
|
||||||
|
}
|
||||||
|
|
||||||
|
div>table>tbody>tr:nth-of-type(2n),
|
||||||
|
div>.table>.tbody>.tr:nth-of-type(2n) {
|
||||||
|
background-color: #252526;
|
||||||
|
}
|
||||||
|
|
||||||
|
#content_syslog {
|
||||||
|
box-shadow: 0 0 0.5rem 0 rgba(0, 0, 0, .35)
|
||||||
|
}
|
||||||
|
|
||||||
|
#syslog {
|
||||||
|
color: #ccc;
|
||||||
|
background-color: #1e1e1e;
|
||||||
|
}
|
||||||
|
|
||||||
|
#iwsvg,
|
||||||
|
#iwsvg2,
|
||||||
|
#bwsvg {
|
||||||
|
overflow: hidden;
|
||||||
|
box-shadow: 0 0 0.5rem 0 rgba(0, 0, 0, .35);
|
||||||
|
background-color: #1e1e1e !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tabs {
|
||||||
|
background-color: #252526;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tabs>li[class~="active"]>a {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tabs>li[class~="active"],
|
||||||
|
.tabs>li:hover {
|
||||||
|
border-bottom: 0.18751rem solid darkslateblue;
|
||||||
|
color: #ccc;
|
||||||
|
background-color: #181819;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-tabmenu>li>a,
|
||||||
|
.tabs>li>a {
|
||||||
|
color: #ccc;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-tabmenu>li {
|
||||||
|
background: #2d2d2d;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-tabmenu li[class~="cbi-tab"] a {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-tabmenu>li:hover {
|
||||||
|
color: #ccc;
|
||||||
|
background: #2d2d2d;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-tabmenu>li[class~="cbi-tab"] {
|
||||||
|
background-color: #181819;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-tabcontainer>.cbi-value:nth-of-type(2n) {
|
||||||
|
background-color: #252526;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-value-title {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
select,
|
||||||
|
input {
|
||||||
|
color: #ccc;
|
||||||
|
background-color: transparent !important;
|
||||||
|
border: 1px solid #252526;
|
||||||
|
box-shadow: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
select:not([multiple="multiple"]):focus,
|
||||||
|
input:focus {
|
||||||
|
border-color: darkslateblue !important;
|
||||||
|
outline: 0;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
select {
|
||||||
|
background-color: #1e1e1e !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#cbi-dropbear h2,
|
||||||
|
#cbi-dropbear .cbi-map-descr,
|
||||||
|
#cbi-dropbear .cbi-map-descr abbr,
|
||||||
|
#cbi-rc h2,
|
||||||
|
#cbi-rc .cbi-map-descr,
|
||||||
|
#cbi-distfeedconf h2,
|
||||||
|
#cbi-distfeedconf .cbi-map-descr,
|
||||||
|
#cbi-customfeedconf h2,
|
||||||
|
#cbi-customfeedconf .cbi-map-descr,
|
||||||
|
#cbi-download h2,
|
||||||
|
#cbi-filelist h2 {
|
||||||
|
color: #ccc !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-value-field>ul>li .ifacebadge {
|
||||||
|
background-color: #3c3c3c;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-section-descr {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-input-textarea {
|
||||||
|
background-color: #1e1e1e;
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.cbi-section-remove:nth-of-type(2n),
|
||||||
|
.cbi-section-node:nth-of-type(2n) {
|
||||||
|
background-color: #1e1e1e;
|
||||||
|
}
|
||||||
|
|
||||||
|
.node-system-packages>.main table tr td:nth-last-child(1) {
|
||||||
|
color: #ccc;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-section-node .cbi-value {
|
||||||
|
padding: 1rem 1rem 0.3rem 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ifacebox {
|
||||||
|
background-color: none;
|
||||||
|
border: 1px solid #1e1e1e;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ifacebox-head {
|
||||||
|
color: #666;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ifacebox-body {
|
||||||
|
background-color: #333;
|
||||||
|
}
|
||||||
|
|
||||||
|
.zonebadge strong {
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
|
||||||
|
.zonebadge>.ifacebadge {
|
||||||
|
background-color: #3c3c3c;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.cbi-value var,
|
||||||
|
td.cbi-value-field var {
|
||||||
|
color: #5e72e4;
|
||||||
|
}
|
||||||
|
|
||||||
|
#diag-rc-output>pre {
|
||||||
|
color: #ccc;
|
||||||
|
background-color: #1e1e1e;
|
||||||
|
}
|
||||||
|
|
||||||
|
.node-services-vssr .block {
|
||||||
|
background-color: #3c3c3c !important;
|
||||||
|
box-shadow: 0 0 0.5rem 0 rgba(0, 0, 0, .35);
|
||||||
|
}
|
||||||
|
|
||||||
|
.node-services-vssr .block h4 {
|
||||||
|
color: #ccc !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.node-services-vssr .status-bar {
|
||||||
|
color: #ccc;
|
||||||
|
box-shadow: 0 0 0.5rem 0 rgba(0, 0, 0, .35);
|
||||||
|
background-color: #1e1e1e;
|
||||||
|
}
|
||||||
|
|
||||||
|
.node-services-vssr .cbi-section-table-row {
|
||||||
|
color: #ccc;
|
||||||
|
background-color: #3c3c3c !important;
|
||||||
|
box-shadow: 0 0 5px 0 rgba(0, 0, 0, .35)
|
||||||
|
}
|
||||||
|
|
||||||
|
.node-services-vssr .cbi-section-table-row.fast {
|
||||||
|
background: darkslateblue !important;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.node-services-vssr .ssr-button {
|
||||||
|
color: #ccc;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.node-services-vssr .incon:nth-child(2) {
|
||||||
|
border-right: #1e1e1e 1px solid;
|
||||||
|
}
|
||||||
|
|
||||||
|
#xhr_poll_status>.label.success {
|
||||||
|
color: #ccc !important;
|
||||||
|
|
||||||
|
background-color: darkolivegreen !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notice {
|
||||||
|
background-color: darkslateblue !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-input-find,
|
||||||
|
.cbi-input-save,
|
||||||
|
.cbi-button-add,
|
||||||
|
.cbi-button-save,
|
||||||
|
.cbi-button-find,
|
||||||
|
.cbi-input-reload,
|
||||||
|
.cbi-button-reload {
|
||||||
|
color: #fff !important;
|
||||||
|
background: darkolivegreen !important;
|
||||||
|
border-color: darkolivegreen !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-button-reset,
|
||||||
|
.cbi-input-remove {
|
||||||
|
color: #fff !important;
|
||||||
|
background-color: darkorange !important;
|
||||||
|
border-color: darkorange !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-page-actions .cbi-button-apply,
|
||||||
|
.cbi-section-actions .cbi-button-edit,
|
||||||
|
.cbi-button-edit.important,
|
||||||
|
.cbi-button-apply.important,
|
||||||
|
.cbi-button-reload.important,
|
||||||
|
.cbi-button-action.important {
|
||||||
|
border: 1px darkslateblue solid !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn[value="Dismiss"],
|
||||||
|
.cbi-button[value="Terminate"],
|
||||||
|
.cbi-button[value="Reset"],
|
||||||
|
.cbi-button[value="Disabled"],
|
||||||
|
.cbi-button[onclick^="iface_reconnect"],
|
||||||
|
.cbi-button[onclick="handleReset(event)"],
|
||||||
|
.cbi-button-neutral[value="Disable"] {
|
||||||
|
font-weight: normal;
|
||||||
|
color: #fff;
|
||||||
|
border: thin solid darkorange!important;
|
||||||
|
background-color: darkorange!important;
|
||||||
|
}
|
||||||
|
|
||||||
|
fieldset[id^="cbi-apply-"] {
|
||||||
|
background-color: #333333;
|
||||||
|
}
|
||||||
|
|
||||||
|
#detail-bubble>div {
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
border-radius: 2px;
|
||||||
|
padding: 5px;
|
||||||
|
background: #252525;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ifacebox-head.active {
|
||||||
|
background-color: #32325d !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
header .fill .status span[data-style="active"] {
|
||||||
|
color: #ccc !important;
|
||||||
|
background-color: darkolivegreen !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#cbi-wireless .td,
|
||||||
|
#cbi-network .tr:first-child>.td,
|
||||||
|
.table[width="100%"]>.tr:first-child>.td,
|
||||||
|
[data-page="admin-network-diagnostics"] .tr>.td,
|
||||||
|
.tr.table-titles>.th,
|
||||||
|
.tr.cbi-section-table-titles>.th {
|
||||||
|
background-color: #252526;
|
||||||
|
border-bottom: black 1px solid !important;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.network-status-table .ifacebox-body .ifacebadge {
|
||||||
|
background-color: #252526;
|
||||||
|
border-bottom: 0;
|
||||||
|
box-shadow: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
td>.ifacebadge,
|
||||||
|
.td>.ifacebadge {
|
||||||
|
|
||||||
|
background-color: darkslateblue;
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn.danger,
|
||||||
|
.cbi-section-remove>.cbi-button,
|
||||||
|
.cbi-button-remove,
|
||||||
|
.cbi-button-reset,
|
||||||
|
.cbi-button-negative,
|
||||||
|
.cbi-button[value="Stop"],
|
||||||
|
.cbi-button[value="Kill"],
|
||||||
|
.cbi-button[onclick="reboot(this)"],
|
||||||
|
.cbi-button-neutral[value="Restart"] {
|
||||||
|
border: thin solid darkorange;
|
||||||
|
background-color: darkorange;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-section,
|
||||||
|
.cbi-section-error,
|
||||||
|
#iptables,
|
||||||
|
.Firewall form,
|
||||||
|
#cbi-network>.cbi-section-node,
|
||||||
|
#cbi-wireless>.cbi-section-node,
|
||||||
|
#cbi-wireless>#wifi_assoclist_table,
|
||||||
|
[data-tab-title],
|
||||||
|
[data-page^="admin-system-admin"]:not(.node-main-login) .cbi-map:not(#cbi-dropbear),
|
||||||
|
[data-page="admin-system-opkg"] #maincontent>.container {
|
||||||
|
background: #1e1e1e !important;
|
||||||
|
box-shadow: 0 0 0.5rem 0 rgba(0, 0, 0, 0.35);
|
||||||
|
}
|
||||||
|
|
||||||
|
div[style="width:100%;height:300px;border:1px solid #000;background:#fff"] {
|
||||||
|
background: transparent !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
[data-page="admin-system-admin"] .cbi-map h2,
|
||||||
|
[data-page="admin-system-admin-password"] .cbi-map h2,
|
||||||
|
[data-page="admin-system-admin"] .cbi-map .cbi-map-descr,
|
||||||
|
[data-page="admin-system-admin-password"] .cbi-map .cbi-map-descr {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-value input[type="password"]+.cbi-button-neutral {
|
||||||
|
background-color: darkslateblue !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn,
|
||||||
|
button,
|
||||||
|
select,
|
||||||
|
input,
|
||||||
|
.cbi-dropdown {
|
||||||
|
border: 1px solid #3c3c3c !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.cbi-dropdown .preview {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-section-table-row {
|
||||||
|
background-color: #1e1e1e !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.modal {
|
||||||
|
background-color: #1e1e1e;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-button-positive {
|
||||||
|
color: #fff !important;
|
||||||
|
background-color: darkolivegreen !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
[data-page="admin-system-flash"] legend {
|
||||||
|
color: #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
.logout:before {
|
||||||
|
color: #adb5bd !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-dropdown[open] {
|
||||||
|
border-color: darkslateblue !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-dropdown[open]>ul.dropdown {
|
||||||
|
background: #252526 !important;
|
||||||
|
color: #ccc !important;
|
||||||
|
box-shadow: none;
|
||||||
|
border: 1px solid #3c3c3c !important;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-dropdown[open]>ul.dropdown li {
|
||||||
|
color: #ccc;
|
||||||
|
border-bottom: 1px solid #3c3c3c !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-dropdown[open]>ul.dropdown>li[selected] {
|
||||||
|
background-color: darkslateblue !important;
|
||||||
|
border-bottom: 1px solid #3c3c3c !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-dropdown[open]>ul.dropdown>li.focus {
|
||||||
|
background: darkslateblue;
|
||||||
|
outline: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ifacebadge {
|
||||||
|
background-color: #333333;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-dynlist>.item>span {
|
||||||
|
border: 1px solid #3c3c3c !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cbi-page-actions .cbi-button-apply,
|
||||||
|
.cbi-section-actions .cbi-button-edit,
|
||||||
|
.cbi-button-edit,
|
||||||
|
.cbi-button-apply,
|
||||||
|
.cbi-button-reload,
|
||||||
|
.cbi-button-action,
|
||||||
|
.cbi-button[value="Submit"],
|
||||||
|
.cbi-button[value="Upload"],
|
||||||
|
.cbi-button[value$="Apply"],
|
||||||
|
.cbi-button[onclick="addKey(event)"] {
|
||||||
|
background: darkslateblue !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn.primary,
|
||||||
|
.cbi-page-actions .cbi-button-save,
|
||||||
|
.cbi-page-actions .cbi-button-apply+.cbi-button-save,
|
||||||
|
.cbi-button-add,
|
||||||
|
.cbi-button-save,
|
||||||
|
.cbi-button-positive,
|
||||||
|
.cbi-button-link,
|
||||||
|
.cbi-button[value="Enable"],
|
||||||
|
.cbi-button[value="Scan"],
|
||||||
|
.cbi-button[value^="Back"],
|
||||||
|
.cbi-button-neutral[onclick="handleConfig(event)"] {
|
||||||
|
background: darkslateblue;
|
||||||
|
}
|
||||||
|
|
||||||
|
[data-page="admin-system-opkg"] h2 {
|
||||||
|
color: #ccc !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none) {
|
||||||
|
.login-page .login-container .login-form {
|
||||||
|
-webkit-backdrop-filter: blur(var(--blur-radius-dark));
|
||||||
|
backdrop-filter: blur(var(--blur-radius-dark));
|
||||||
|
background-color: rgba(0, 0, 0, var(--blur-opacity-dark));
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@media screen and (max-width: 480px) {
|
||||||
|
.node-status-iptables>.main div>.cbi-map>form {
|
||||||
|
background-color: #1e1e1e;
|
||||||
|
box-shadow: 0 0 0.5rem 0 rgba(0, 0, 0, .35);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -2,7 +2,7 @@
|
|||||||
Argon is a clean HTML5 theme for LuCI. It is based on luci-theme-material Argon Template
|
Argon is a clean HTML5 theme for LuCI. It is based on luci-theme-material Argon Template
|
||||||
|
|
||||||
luci-theme-argon
|
luci-theme-argon
|
||||||
Copyright 2019 Jerrykuku <jerrykuku@qq.com>
|
Copyright 2020 Jerrykuku <jerrykuku@qq.com>
|
||||||
|
|
||||||
Have a bug? Please create an issue here on GitHub!
|
Have a bug? Please create an issue here on GitHub!
|
||||||
https://github.com/jerrykuku/luci-theme-argon/issues
|
https://github.com/jerrykuku/luci-theme-argon/issues
|
||||||
@ -21,7 +21,7 @@
|
|||||||
<footer class="mobile-hide">
|
<footer class="mobile-hide">
|
||||||
<div>
|
<div>
|
||||||
<a class="luci-link" href="https://github.com/openwrt/luci">Powered by <%= ver.luciname %> (<%= ver.luciversion %>)</a> /
|
<a class="luci-link" href="https://github.com/openwrt/luci">Powered by <%= ver.luciname %> (<%= ver.luciversion %>)</a> /
|
||||||
<a href="https://github.com/jerrykuku/luci-theme-argon">ArgonTheme v2.2</a> /
|
<a href="https://github.com/jerrykuku/luci-theme-argon">ArgonTheme <%# vPKG_VERSION %></a> /
|
||||||
<%= ver.distversion %>
|
<%= ver.distversion %>
|
||||||
<ul class="breadcrumb pull-right" id="modemenu" style="display:none"></ul>
|
<ul class="breadcrumb pull-right" id="modemenu" style="display:none"></ul>
|
||||||
</div>
|
</div>
|
||||||
@ -31,6 +31,15 @@
|
|||||||
<script>
|
<script>
|
||||||
// thanks for Jo-Philipp Wich <jow@openwrt.org>
|
// thanks for Jo-Philipp Wich <jow@openwrt.org>
|
||||||
var luciLocation = <%= luci.http.write_json(luci.dispatcher.context.path) %>;
|
var luciLocation = <%= luci.http.write_json(luci.dispatcher.context.path) %>;
|
||||||
|
var winHeight = $(window).height();
|
||||||
|
$(window).resize(function () {
|
||||||
|
var winWidth = $(window).width()
|
||||||
|
if(winWidth < 600){
|
||||||
|
var newHeight = $(this).height();
|
||||||
|
var keyboradHeight = newHeight - winHeight;
|
||||||
|
$(".ftc").css("bottom", keyboradHeight + 30);
|
||||||
|
}
|
||||||
|
})
|
||||||
</script>
|
</script>
|
||||||
<script src="<%=media%>/js/script.js"></script>
|
<script src="<%=media%>/js/script.js"></script>
|
||||||
</body>
|
</body>
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
Argon is a clean HTML5 theme for LuCI. It is based on luci-theme-material Argon Template
|
Argon is a clean HTML5 theme for LuCI. It is based on luci-theme-material Argon Template
|
||||||
|
|
||||||
luci-theme-argon
|
luci-theme-argon
|
||||||
Copyright 2019 Jerrykuku <jerrykuku@qq.com>
|
Copyright 2020 Jerrykuku <jerrykuku@qq.com>
|
||||||
|
|
||||||
Have a bug? Please create an issue here on GitHub!
|
Have a bug? Please create an issue here on GitHub!
|
||||||
https://github.com/jerrykuku/luci-theme-argon/issues
|
https://github.com/jerrykuku/luci-theme-argon/issues
|
||||||
@ -29,27 +29,9 @@
|
|||||||
local fs = require "nixio.fs"
|
local fs = require "nixio.fs"
|
||||||
local nutil = require "nixio.util"
|
local nutil = require "nixio.util"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- send as HTML5
|
-- send as HTML5
|
||||||
http.prepare_content("text/html")
|
http.prepare_content("text/html")
|
||||||
|
|
||||||
math.randomseed(os.time())
|
math.randomseed(os.time())
|
||||||
function glob(...)
|
|
||||||
local iter, code, msg = fs.glob(...)
|
|
||||||
if iter then
|
|
||||||
return nutil.consume(iter)
|
|
||||||
else
|
|
||||||
return nil, code, msg
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
local bgcount = 0
|
|
||||||
for f in ipairs(glob("/www/luci-static/argon/img/*")) do
|
|
||||||
bgcount = bgcount + 1
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
-%>
|
-%>
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="<%=luci.i18n.context.lang%>">
|
<html lang="<%=luci.i18n.context.lang%>">
|
||||||
@ -83,6 +65,9 @@
|
|||||||
<meta name="msapplication-TileImage" content="<%=media%>/icon/ms-icon-144x144.png">
|
<meta name="msapplication-TileImage" content="<%=media%>/icon/ms-icon-144x144.png">
|
||||||
<meta name="theme-color" content="#5e72e4">
|
<meta name="theme-color" content="#5e72e4">
|
||||||
<link rel="stylesheet" href="<%=media%>/css/cascade.css?v=<%=math.random(1,100000)%>">
|
<link rel="stylesheet" href="<%=media%>/css/cascade.css?v=<%=math.random(1,100000)%>">
|
||||||
|
<% if nixio.fs.access("/etc/dark") then %>
|
||||||
|
<link rel="stylesheet" href="<%=media%>/css/dark.css?v=<%=math.random(1,100000)%>">
|
||||||
|
<% end -%>
|
||||||
<link rel="shortcut icon" href="<%=media%>/favicon.ico">
|
<link rel="shortcut icon" href="<%=media%>/favicon.ico">
|
||||||
<% if node and node.css then %>
|
<% if node and node.css then %>
|
||||||
<link rel="stylesheet" href="<%=resource%>/<%=node.css%>">
|
<link rel="stylesheet" href="<%=resource%>/<%=node.css%>">
|
||||||
@ -90,13 +75,12 @@
|
|||||||
<% if css then %>
|
<% if css then %>
|
||||||
<style title="text/css">
|
<style title="text/css">
|
||||||
<%=css %>
|
<%=css %>
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
<% end -%>
|
<% end -%>
|
||||||
<script src="<%=url('admin/translations', luci.i18n.context.lang)%><%# ?v=PKG_VERSION %>"></script>
|
<script src="<%=url('admin/translations', luci.i18n.context.lang)%><%# ?v=PKG_VERSION %>"></script>
|
||||||
<script src="<%=resource%>/cbi.js"></script>
|
<script src="<%=resource%>/cbi.js<%# ?v=PKG_VERSION %>"></script>
|
||||||
<script src="<%=resource%>/luci.js"></script>
|
<script src="<%=resource%>/luci.js<%# ?v=PKG_VERSION %>"></script>
|
||||||
<script src="<%=media%>/js/jquery.min.js"></script>
|
<script src="<%=media%>/js/jquery.min.js<%# ?v=PKG_VERSION %>"></script>
|
||||||
<script type="text/javascript">//<![CDATA[
|
<script type="text/javascript">//<![CDATA[
|
||||||
(function () {
|
(function () {
|
||||||
function get_children(node) {
|
function get_children(node) {
|
||||||
@ -233,7 +217,7 @@
|
|||||||
<div class="main">
|
<div class="main">
|
||||||
<div class="main-left" id="mainmenu" style="display:none">
|
<div class="main-left" id="mainmenu" style="display:none">
|
||||||
<div class="sidenav-header d-flex align-items-center">
|
<div class="sidenav-header d-flex align-items-center">
|
||||||
<a class="brand" href="#"><%=boardinfo.hostname or "?"%> ™</a>
|
<a class="brand" href="#"><%=boardinfo.hostname or "?"%></a>
|
||||||
<div class="ml-auto">
|
<div class="ml-auto">
|
||||||
<!-- Sidenav toggler -->
|
<!-- Sidenav toggler -->
|
||||||
<div class="sidenav-toggler d-none d-xl-block active" data-action="sidenav-unpin"
|
<div class="sidenav-toggler d-none d-xl-block active" data-action="sidenav-unpin"
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
edge is a clean HTML5 theme for LuCI. It is based on luci-theme-material edge Template
|
edge is a clean HTML5 theme for LuCI. It is based on luci-theme-material edge Template
|
||||||
|
|
||||||
luci-theme-edge
|
luci-theme-edge
|
||||||
Copyright 2019 Jerrykuku <jerrykuku@qq.com>
|
Copyright 2020 Jerrykuku <jerrykuku@qq.com>
|
||||||
|
|
||||||
Have a bug? Please create an issue here on GitHub!
|
Have a bug? Please create an issue here on GitHub!
|
||||||
https://github.com/jerrykuku/luci-theme-edge/issues
|
https://github.com/jerrykuku/luci-theme-edge/issues
|
||||||
@ -23,33 +23,14 @@
|
|||||||
local disp = require "luci.dispatcher"
|
local disp = require "luci.dispatcher"
|
||||||
|
|
||||||
local boardinfo = util.ubus("system", "board")
|
local boardinfo = util.ubus("system", "board")
|
||||||
|
|
||||||
local node = disp.context.dispatched
|
local node = disp.context.dispatched
|
||||||
|
|
||||||
local fs = require "nixio.fs"
|
local fs = require "nixio.fs"
|
||||||
local nutil = require "nixio.util"
|
local nutil = require "nixio.util"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- send as HTML5
|
-- send as HTML5
|
||||||
http.prepare_content("text/html")
|
http.prepare_content("text/html")
|
||||||
|
|
||||||
math.randomseed(os.time())
|
math.randomseed(tonumber(tostring(os.time()):reverse():sub(1, 9)))
|
||||||
function glob(...)
|
|
||||||
local iter, code, msg = fs.glob(...)
|
|
||||||
if iter then
|
|
||||||
return nutil.consume(iter)
|
|
||||||
else
|
|
||||||
return nil, code, msg
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
local bgcount = 0
|
|
||||||
for f in ipairs(glob("/www/luci-static/edge/img/*")) do
|
|
||||||
bgcount = bgcount + 1
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
-%>
|
-%>
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="<%=luci.i18n.context.lang%>">
|
<html lang="<%=luci.i18n.context.lang%>">
|
||||||
@ -84,25 +65,25 @@
|
|||||||
<meta name="theme-color" content="#5e72e4">
|
<meta name="theme-color" content="#5e72e4">
|
||||||
<link rel="stylesheet" href="<%=media%>/css/cascade.css?v=<%=math.random(1,100000)%>">
|
<link rel="stylesheet" href="<%=media%>/css/cascade.css?v=<%=math.random(1,100000)%>">
|
||||||
<link rel="shortcut icon" href="<%=media%>/favicon.ico">
|
<link rel="shortcut icon" href="<%=media%>/favicon.ico">
|
||||||
|
<% if nixio.fs.access("/etc/dark") then %>
|
||||||
|
<link rel="stylesheet" href="<%=media%>/css/dark.css?v=<%=math.random(1,100000)%>">
|
||||||
|
<% end -%>
|
||||||
<% if node and node.css then %>
|
<% if node and node.css then %>
|
||||||
<link rel="stylesheet" href="<%=resource%>/<%=node.css%>">
|
<link rel="stylesheet" href="<%=resource%>/<%=node.css%>">
|
||||||
<% end -%>
|
<% end -%>
|
||||||
<% if css then %>
|
<% if css then %>
|
||||||
<style title="text/css">
|
<style title="text/css">
|
||||||
<%=css %>
|
<%=css %>
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
<% end -%>
|
<% end -%>
|
||||||
<script src="<%=url('admin/translations', luci.i18n.context.lang)%>?v=2.1"></script>
|
<script src="<%=url('admin/translations', luci.i18n.context.lang)%><%# ?v=PKG_VERSION %>"></script>
|
||||||
<script src="<%=resource%>/cbi.js?v=2.1"></script>
|
<script src="<%=resource%>/cbi.js<%# ?v=PKG_VERSION %>"></script>
|
||||||
<script src="<%=resource%>/xhr.js?v=2.1"></script>
|
<script src="<%=resource%>/xhr.js<%# ?v=PKG_VERSION %>"></script>
|
||||||
<script src="<%=media%>/js/jquery.min.js?v=2.1"></script>
|
<script src="<%=media%>/js/jquery.min.js<%# ?v=PKG_VERSION %>"></script>
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body
|
<body
|
||||||
class="lang_<%=luci.i18n.context.lang%> <% if node then %><%= striptags( node.title ) %><% end %> <% if luci.dispatcher.context.authsession then %>logged-in<% end %>"
|
class="lang_<%=luci.i18n.context.lang%> <% if node then %><%= striptags( node.title ) %><% end %> <% if luci.dispatcher.context.authsession then %>logged-in<% end %>"
|
||||||
data-page="<%= table.concat(disp.context.requestpath, "-") %>">
|
data-page="<%= table.concat(disp.context.requestpath, "-") %>">
|
||||||
<div class="login-page">
|
|
||||||
<div class="login-container">
|
|
||||||
<div class="login-form">
|
|
@ -1,15 +1,92 @@
|
|||||||
<%#
|
<%#
|
||||||
|
Argon is a clean HTML5 theme for LuCI. It is based on luci-theme-bootstrap and MUI and Argon Template
|
||||||
|
|
||||||
|
luci-theme-argon
|
||||||
|
Copyright 2020 Jerryk <jerrykuku@gmail.com>
|
||||||
|
|
||||||
|
Have a bug? Please create an issue here on GitHub!
|
||||||
|
https://github.com/jerrykuku/luci-theme-argon/issues
|
||||||
|
|
||||||
|
luci-theme-bootstrap:
|
||||||
Copyright 2008 Steven Barth <steven@midlink.org>
|
Copyright 2008 Steven Barth <steven@midlink.org>
|
||||||
Copyright 2008-2012 Jo-Philipp Wich <jow@openwrt.org>
|
Copyright 2008-2016 Jo-Philipp Wich <jow@openwrt.org>
|
||||||
Licensed to the public under the Apache License 2.0.
|
Copyright 2012 David Menting <david@nut-bolt.nl>
|
||||||
|
|
||||||
|
MUI:
|
||||||
|
https://github.com/muicss/mui
|
||||||
|
|
||||||
|
Agron Theme
|
||||||
|
https://demos.creative-tim.com/argon-dashboard/index.html
|
||||||
|
|
||||||
|
Licensed to the public under the Apache License 2.0
|
||||||
-%>
|
-%>
|
||||||
|
|
||||||
<%+header_login%>
|
<%+header_login%>
|
||||||
<%
|
<%
|
||||||
local util = require "luci.util"
|
local util = require "luci.util"
|
||||||
local boardinfo = util.ubus("system", "board")
|
local boardinfo = util.ubus("system", "board")
|
||||||
|
local fs = require "nixio.fs"
|
||||||
|
local nutil = require "nixio.util"
|
||||||
|
|
||||||
|
function glob(...)
|
||||||
|
local iter, code, msg = fs.glob(...)
|
||||||
|
if iter then
|
||||||
|
return nutil.consume(iter)
|
||||||
|
else
|
||||||
|
return nil, code, msg
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function getExtension(str)
|
||||||
|
return str:match(".+%.(%w+)$")
|
||||||
|
end
|
||||||
|
|
||||||
|
local bgcount = 0
|
||||||
|
local currentBg = {}
|
||||||
|
local bgs,attr = {}
|
||||||
|
local theme_dir = media .. "/background/"
|
||||||
|
for i, f in ipairs(glob("/www" .. theme_dir .. "*")) do
|
||||||
|
attr = fs.stat(f)
|
||||||
|
if attr then
|
||||||
|
local ext = getExtension(fs.basename(f))
|
||||||
|
if ext == "jpg" or ext == "png" or ext == "gif" or ext == "mp4" then
|
||||||
|
local bg = {}
|
||||||
|
bg.type = ext
|
||||||
|
bg.url = theme_dir .. fs.basename(f)
|
||||||
|
table.insert(bgs,bg)
|
||||||
|
bgcount = bgcount + 1
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
if bgcount > 0 then
|
||||||
|
currentBg = bgs[math.random(1,bgcount)]
|
||||||
|
end
|
||||||
%>
|
%>
|
||||||
<a class="brand" href="/"><img src="/luci-static/argon/img/argon.svg" class="icon"><span
|
<div class="login-page">
|
||||||
|
<% if (bgcount > 0 and currentBg.type == "mp4") then %>
|
||||||
|
<div class="video">
|
||||||
|
<video autoplay loop muted id="video">
|
||||||
|
<source src="<%=currentBg.url%>" type="video/mp4">
|
||||||
|
</video>
|
||||||
|
</div>
|
||||||
|
<div class="volume-control mute"></div>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
$(".volume-control").click(function(){
|
||||||
|
if($(this).hasClass("mute")){
|
||||||
|
$(this).removeClass("mute")
|
||||||
|
$("#video").prop('muted', false);
|
||||||
|
}else{
|
||||||
|
$(this).addClass("mute")
|
||||||
|
$("#video").prop('muted', true);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
<% end %>
|
||||||
|
<div class="login-container">
|
||||||
|
<div class="login-form">
|
||||||
|
<a class="brand" href="/"><img src="<%=media%>/img/argon.svg" class="icon"><span
|
||||||
class="brand-text"><%=striptags( (boardinfo.hostname or "?") .. ( (node and node.title) and ' - ' .. translate(node.title) or '')) %></span></a>
|
class="brand-text"><%=striptags( (boardinfo.hostname or "?") .. ( (node and node.title) and ' - ' .. translate(node.title) or '')) %></span></a>
|
||||||
<form class="form-login" method="post" action="<%=pcdata(luci.http.getenv("REQUEST_URI"))%>">
|
<form class="form-login" method="post" action="<%=pcdata(luci.http.getenv("REQUEST_URI"))%>">
|
||||||
|
|
||||||
@ -17,7 +94,6 @@ local boardinfo = util.ubus("system", "board")
|
|||||||
<div class="errorbox"><%:Invalid username and/or password! Please try again.%></div>
|
<div class="errorbox"><%:Invalid username and/or password! Please try again.%></div>
|
||||||
<% end -%>
|
<% end -%>
|
||||||
|
|
||||||
|
|
||||||
<div class="input-container">
|
<div class="input-container">
|
||||||
<div class="input-group user-icon">
|
<div class="input-group user-icon">
|
||||||
<input class="cbi-input-user" id="cbi-input-user" type="text" name="luci_username" value="<%=duser%>" />
|
<input class="cbi-input-user" id="cbi-input-user" type="text" name="luci_username" value="<%=duser%>" />
|
||||||
@ -27,35 +103,42 @@ local boardinfo = util.ubus("system", "board")
|
|||||||
<input class="cbi-input-password" id="cbi-input-password" type="password" name="luci_password" />
|
<input class="cbi-input-password" id="cbi-input-password" type="password" name="luci_password" />
|
||||||
<label class="border" for="cbi-input-password"></label>
|
<label class="border" for="cbi-input-password"></label>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<input type="submit" value="<%:Login%>" class="cbi-button cbi-button-apply" />
|
<input type="submit" value="<%:Login%>" class="cbi-button cbi-button-apply" />
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
<%
|
<%
|
||||||
local bing = string.gsub(luci.sys.exec("content=`wget --no-check-certificate -q -O - 'http://www.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1&mkt=en-US'`;echo $content"), "\n", "")
|
if (bgcount == 0) then
|
||||||
|
local bingjson = "{}"
|
||||||
|
local http = require "socket.http"
|
||||||
|
local bing = http.request("http://www.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1&mkt=en-US")
|
||||||
|
if (bing and bing ~= '') then
|
||||||
|
bingjson = bing
|
||||||
|
end
|
||||||
%>
|
%>
|
||||||
<script type="text/javascript">//<![CDATA[
|
<script type="text/javascript">//<![CDATA[
|
||||||
var input = document.getElementsByName('luci_password')[0];
|
var input = document.getElementsByName('luci_password')[0];
|
||||||
if (input)
|
if (input)
|
||||||
input.focus();
|
input.focus();
|
||||||
|
|
||||||
try {
|
try {
|
||||||
var bing = <%=bing%>;
|
var bing = <%=bingjson%>;
|
||||||
var bg = "https://www.bing.com" + bing.images[0].url;
|
var bg = "https://www.bing.com" + bing.images[0].url;
|
||||||
$(".login-page").css("background-image", "url(" + bg + ")");
|
$(".login-page").css("background-image", "url(" + bg + ")");
|
||||||
} catch{
|
} catch{
|
||||||
console.log("can not access bing api");
|
console.log("can not access bing api");
|
||||||
$(".login-page").css("background-image", "url(/luci-static/argon/img/bg1.jpg)");
|
$(".login-page").css("background-image", "url(<%=media%>/img/bg1.jpg)");
|
||||||
}
|
}
|
||||||
|
|
||||||
//]]></script>
|
//]]></script>
|
||||||
|
<% elseif (bgcount > 0 and currentBg["type"] ~= "mp4") then%>
|
||||||
|
<script type="text/javascript">//<![CDATA[
|
||||||
|
console.log("can not access bing api");
|
||||||
|
$(".login-page").css("background-image", "url(<%=currentBg.url%>)");
|
||||||
|
//]]></script>
|
||||||
<%
|
<%
|
||||||
|
end
|
||||||
|
|
||||||
local uci = require "luci.model.uci".cursor()
|
local uci = require "luci.model.uci".cursor()
|
||||||
local fs = require "nixio.fs"
|
local fs = require "nixio.fs"
|
||||||
local https_key = uci:get("uhttpd", "main", "key")
|
local https_key = uci:get("uhttpd", "main", "key")
|
||||||
@ -67,7 +150,6 @@ end
|
|||||||
if https_port and fs.access(https_key) then
|
if https_port and fs.access(https_key) then
|
||||||
https_port = https_port:match("(%d+)$")
|
https_port = https_port:match("(%d+)$")
|
||||||
%>
|
%>
|
||||||
|
|
||||||
<script type="text/javascript">//<![CDATA[
|
<script type="text/javascript">//<![CDATA[
|
||||||
if (document.location.protocol != 'https:') {
|
if (document.location.protocol != 'https:') {
|
||||||
var url = 'https://' + window.location.hostname + ':' + '<%=https_port%>' + window.location.pathname;
|
var url = 'https://' + window.location.hostname + ':' + '<%=https_port%>' + window.location.pathname;
|
||||||
@ -79,7 +161,5 @@ if https_port and fs.access(https_key) then
|
|||||||
}, 5000);
|
}, 5000);
|
||||||
}
|
}
|
||||||
//]]></script>
|
//]]></script>
|
||||||
|
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
||||||
<%+footer%>
|
<%+footer%>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user