1
0
Fork 0
mirror of https://github.com/Ysurac/openmptcprouter-feeds.git synced 2025-02-12 10:31:51 +00:00

Update luci-theme-argon

This commit is contained in:
Ycarus (Yannick Chabanois) 2024-02-19 14:17:15 +01:00
parent 663ff604d4
commit dad8e2cfe7
38 changed files with 6532 additions and 5420 deletions

View file

@ -8,8 +8,10 @@ include $(TOPDIR)/rules.mk
LUCI_TITLE:=Argon Theme
LUCI_DEPENDS:=+curl +jsonfilter
PKG_VERSION:=2.2.9.4
PKG_RELEASE:=20220425
PKG_VERSION:=2.3.1
PKG_RELEASE:=20230420
CONFIG_LUCI_CSSTIDY:=
include $(TOPDIR)/feeds/luci/luci.mk

View file

@ -1,114 +1,157 @@
<!-- markdownlint-configure-file {
"MD013": {
"code_blocks": false,
"tables": false,
"line_length":200
},
"MD033": false,
"MD041": false
} -->
[license]: /LICENSE
[license-badge]: https://img.shields.io/github/license/jerrykuku/luci-theme-argon?style=flat-square&a=1
[prs]: https://github.com/jerrykuku/luci-theme-argon/pulls
[prs-badge]: https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square
[issues]: https://github.com/jerrykuku/luci-theme-argon/issues/new
[issues-badge]: https://img.shields.io/badge/Issues-welcome-brightgreen.svg?style=flat-square
[release]: https://github.com/jerrykuku/luci-theme-argon/releases
[release-badge]: https://img.shields.io/github/v/release/jerrykuku/luci-theme-argon?include_prereleases&style=flat-square
[download]: https://github.com/jerrykuku/luci-theme-argon/releases
[download-badge]: https://img.shields.io/github/downloads/jerrykuku/luci-theme-argon/total?style=flat-square
[contact]: https://t.me/jerryk6
[contact-badge]: https://img.shields.io/badge/Contact-telegram-blue?style=flat-square
[en-us-link]: /README.md
[zh-cn-link]: /README_ZH.md
[en-us-release-log]: /RELEASE.md
[zh-cn-release-log]: /RELEASE_ZH.md
[config-link]: https://github.com/jerrykuku/luci-app-argon-config/releases
[lede]: https://github.com/coolsnowwolf/lede
[official]: https://github.com/openwrt/openwrt
[immortalwrt]: https://github.com/immortalwrt/immortalwrt
<div align="center">
<img src="https://raw.githubusercontent.com/jerrykuku/staff/master/argon_title2.png" >
<h1 align="center">
A new LuCI theme for OpenWrt
</h1>
<h3 align="center">
Argon is a clean HTML5 theme for LuCI. Users may<br>setup their own favorite logins, including beautiful<br>pics and customized mp4 videos.<br><br>
</h3>
<a href="/LICENSE">
<img src="https://img.shields.io/github/license/jerrykuku/luci-theme-argon?style=flat-square&a=1" alt="">
</a>
<a href="https://github.com/jerrykuku/luci-theme-argon/pulls">
<img src="https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square" alt="">
</a><a href="https://github.com/jerrykuku/luci-theme-argon/issues/new">
<img src="https://img.shields.io/badge/Issues-welcome-brightgreen.svg?style=flat-square">
</a><a href="https://github.com/jerrykuku/luci-theme-argon/releases">
<img src="https://img.shields.io/github/release/jerrykuku/luci-theme-argon.svg?style=flat-square">
</a><a href="hhttps://github.com/jerrykuku/luci-theme-argon/releases">
<img src="https://img.shields.io/github/downloads/jerrykuku/luci-theme-argon/total?style=flat-square">
</a><a href="https://t.me/jerryk6">
<img src="https://img.shields.io/badge/Contact-telegram-blue?style=flat-square">
</a>
</div>
<br>
<div align="center">
<img src="https://raw.githubusercontent.com/jerrykuku/staff/master/argon2.gif">
<img src="https://raw.githubusercontent.com/jerrykuku/staff/master/argon_title4.svg">
# A brand new OpenWrt LuCI theme
Argon is **a clean and tidy OpenWrt LuCI theme** that allows<br/>
users to customize their login interface with images or videos.
It also supports automatic and manual switching between light and dark modes.
[![license][license-badge]][license]
[![prs][prs-badge]][prs]
[![issues][issues-badge]][issues]
[![release][release-badge]][release]
[![download][download-badge]][download]
[![contact][contact-badge]][contact]
**English** |
[简体中文][zh-cn-link]
[Key Features](#key-features) •
[Branch](#branch-introduction) •
[Version History](#version-history) •
[Getting started](#getting-started) •
[Screenshots](#screenshots) •
[Contributors](#contributors) •
[Credits](#credits)
<img src="https://raw.githubusercontent.com/jerrykuku/staff/master/argon2.gif">
</div>
<br>English | [简体中文](README_ZH.md)
## Key Features
## Notice
It is strongly recommended to use the Chrome browser. Some new css3 features are used in the theme, and currently only Chrome has the best compatibility.
The mainline version of IE series currently has bugs to be resolved.
FireFox does not enable the backdrop-filter by default, see here for the opening method: https://developer.mozilla.org/zh-CN/docs/Web/CSS/backdrop-filter
- Clean Layout.
- Adapted to mobile display.
- Customizable theme colors.
- Support for using Bing images as login background.
- Support for custom uploading of images or videos as login background.
- Automatically switch between light and dark modes with the system, and can also be set to a fixed mode.
- Settings plugin with extensions [luci-app-argon-config][config-link]
v2.x.x Adapt to official mainline snapshot.
You can checkout branch 18.06 for OpenWRT 18.06 or lean 19.07.
## Branch Introduction
## Update Log 2021.10.16 v2.2.9
There are currently two main branches that are adapted to different versions of the **OpenWrt** source code.
The table below will provide a detailed introduction:
- 【v2.2.9】Fix the problem that the menu could not pop up in mobile mode
- 【v2.2.9】Unify the settings of css spacing
- 【v2.2.9】Refactored the code of the login page
- 【v2.2.8】Fix the problem that the Minify Css option is turned on when compiling, which causes the frosted glass effect to be invalid and the logo font is lost.
- 【v2.2.5】New config app for argon theme. You can set the blur and transparency of the login page of argon theme, and manage the background pictures and videos.[Chrome is recommended] [Download](https://github.com/jerrykuku/luci-app-argon-config/releases/download/v0.8-beta/luci-app-argon-config_0.8-beta_all.ipk)
- 【v2.2.5】Automatically set as the default theme when compiling.
- 【v2.2.5】Modify the file structure to adapt to luci-app-argon-config. The old method of turning on dark mode is no longer applicable, please use it with luci-app-argon-config.
- 【v2.2.5】Adapt to Koolshare lede 2.3.6。
- 【v2.2.5】Fix some Bug。
- 【v2.2.4】Fix the problem that the login background cannot be displayed on some phones.
- 【v2.2.4】Remove the dependency of luasocket.
- 【v2.2.3】Fix Firmware flash page display error in dark mode.
- 【v2.2.3】Update font icon, add a default icon of undefined menu.
- 【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.1】Add blur effect for login form.
- 【v2.2.1】New login theme, Request background imge from bing.com, Auto change everyday.
- 【v2.2.1】New theme icon.
- 【v2.2.1】Add more menu category icon.
- 【v2.2.1】Fix font-size and padding margin.
- 【v2.2.1】Restructure css file.
- 【v2.2.1】Auto adapt to dark mode.
| Branch | Version | Description | Matching source |
| ------ | ------- | ---------------------------------- | --------------------------------------------------------- |
| master | v2.x.x | Support the latest version of LuCI | [Official OpenWrt][official] • [ImmortalWrt][immortalwrt] |
| 18.06 | v1.x.x | Support the 18.06 version of LuCI | [Lean's LEDE][lede] |
## How to build
## Version History
Enter in your openwrt/package/lean or other
The latest version is v2.3.1 [Click here][en-us-release-log] to view the full version history record.
### Lean lede
## Getting started
```
### Build for Lean's LEDE project
```bash
cd lede/package/lean
rm -rf luci-theme-argon
git clone -b 18.06 https://github.com/jerrykuku/luci-theme-argon.git
git clone -b 18.06 https://github.com/jerrykuku/luci-theme-argon.git luci-theme-argon
make menuconfig #choose LUCI->Theme->Luci-theme-argon
make -j1 V=s
```
### Openwrt official SnapShots
### Build for OpenWrt official SnapShots and ImmortalWrt
```
```bash
cd openwrt/package
git clone https://github.com/jerrykuku/luci-theme-argon.git
make menuconfig #choose LUCI->Theme->Luci-theme-argon
make -j1 V=s
```
## How to Install
### Install for LuCI 18.06 ( Lean's LEDE )
### For Lean openwrt 18.06 LuCI
```
wget --no-check-certificate https://github.com/jerrykuku/luci-theme-argon/releases/download/v1.7.3/luci-theme-argon-18.06_1.7.3-20220421_all.ipk
```bash
wget --no-check-certificate https://github.com/jerrykuku/luci-theme-argon/releases/download/v1.8.2/luci-theme-argon_1.8.2-20230609_all.ipk
opkg install luci-theme-argon*.ipk
```
### For openwrt official 19.07 Snapshots LuCI master
### Install for OpenWrt official SnapShots and ImmortalWrt
```
```bash
opkg install luci-compat
opkg install luci-lib-ipkg
wget --no-check-certificate https://github.com/jerrykuku/luci-theme-argon/releases/download/v2.2.9/luci-theme-argon_2.2.9-20211016-1_all.ipk
wget --no-check-certificate https://github.com/jerrykuku/luci-theme-argon/releases/download/v2.3.1/luci-theme-argon_2.3.1_all.ipk
opkg install luci-theme-argon*.ipk
```
![](/Screenshots/screenshot_pc.jpg)
![](/Screenshots/screenshot_phone.jpg)
## Thanks to
### Install luci-app-argon-config
luci-theme-material: https://github.com/LuttyYang/luci-theme-material/
```bash
wget --no-check-certificate https://github.com/jerrykuku/luci-app-argon-config/releases/download/v0.9/luci-app-argon-config_0.9_all.ipk
opkg install luci-app-argon-config*.ipk
```
## Notice
- Chrome browser is highly recommended. There are some new css3 features used in this theme, currently only Chrome has the best compatibility.
- Microsoft has officially retired Internet Explorer, RIP IE🙏<del>Currently, the mainline version of the IE series has bugs that need to be addressed.</del>
- FireFox does not enable the backdrop-filter by default, [see here](https://developer.mozilla.org/zh-CN/docs/Web/CSS/backdrop-filter) for the opening method.
## Screenshots
![desktop](/Screenshots/screenshot_pc.jpg)
![mobile](/Screenshots/screenshot_phone.jpg)
## Contributors
<a href="https://github.com/jerrykuku/luci-theme-argon/graphs/contributors">
<img src="https://contrib.rocks/image?repo=jerrykuku/luci-theme-argon&v=2" />
</a>
Made with [contrib.rocks](https://contrib.rocks).
## Related Projects
- [luci-app-argon-config](https://github.com/jerrykuku/luci-app-argon-config): Argon theme config plugin
- [openwrt-package](https://github.com/jerrykuku/openwrt-package): My OpenWrt package
- [CasaOS](https://github.com/IceWhaleTech/CasaOS): A simple, easy-to-use, elegant open-source Personal Cloud system (My current main project)
## Credits
[luci-theme-material](https://github.com/LuttyYang/luci-theme-material/)

View file

@ -1,110 +1,157 @@
<div align="center">
<img src="https://raw.githubusercontent.com/jerrykuku/staff/master/argon_title2.png" >
<h1 align="center">
全新的 Openwrt 主题
</h1>
<h3 align="center">
Argon 是一个干净整洁的Openwrt主题用户可以自定义登录界面<br>包含图片或者视频,同时支持深色浅色的自动与手动切换
</h3>
<!-- markdownlint-configure-file {
"MD013": {
"code_blocks": false,
"tables": false,
"line_length":200
},
"MD033": false,
"MD041": false
} -->
<a href="/LICENSE">
<img src="https://img.shields.io/github/license/jerrykuku/luci-theme-argon?style=flat-square&a=1" alt="">
</a><a href="https://github.com/jerrykuku/luci-theme-argon/pulls">
<img src="https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square" alt="">
</a><a href="https://github.com/jerrykuku/luci-theme-argon/issues/new">
<img src="https://img.shields.io/badge/Issues-welcome-brightgreen.svg?style=flat-square">
</a><a href="https://github.com/jerrykuku/luci-theme-argon/releases">
<img src="https://img.shields.io/github/release/jerrykuku/luci-theme-argon.svg?style=flat-square">
</a><a href="hhttps://github.com/jerrykuku/luci-theme-argon/releases">
<img src="https://img.shields.io/github/downloads/jerrykuku/luci-theme-argon/total?style=flat-square">
</a><a href="https://t.me/jerryk6">
<img src="https://img.shields.io/badge/Contact-telegram-blue?style=flat-square">
</a>
[license]: /LICENSE
[license-badge]: https://img.shields.io/github/license/jerrykuku/luci-theme-argon?style=flat-square&a=1
[prs]: https://github.com/jerrykuku/luci-theme-argon/pulls
[prs-badge]: https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square
[issues]: https://github.com/jerrykuku/luci-theme-argon/issues/new
[issues-badge]: https://img.shields.io/badge/Issues-welcome-brightgreen.svg?style=flat-square
[release]: https://github.com/jerrykuku/luci-theme-argon/releases
[release-badge]: https://img.shields.io/github/v/release/jerrykuku/luci-theme-argon?include_prereleases&style=flat-square
[download]: https://github.com/jerrykuku/luci-theme-argon/releases
[download-badge]: https://img.shields.io/github/downloads/jerrykuku/luci-theme-argon/total?style=flat-square
[contact]: https://t.me/jerryk6
[contact-badge]: https://img.shields.io/badge/Contact-telegram-blue?style=flat-square
[en-us-link]: /README.md
[zh-cn-link]: /README_ZH.md
[en-us-release-log]: /RELEASE.md
[zh-cn-release-log]: /RELEASE_ZH.md
[config-link]: https://github.com/jerrykuku/luci-app-argon-config/releases
[lede]: https://github.com/coolsnowwolf/lede
[official]: https://github.com/openwrt/openwrt
[immortalwrt]: https://github.com/immortalwrt/immortalwrt
<div align="center">
<img src="https://raw.githubusercontent.com/jerrykuku/staff/master/argon_title4.svg">
# 一个全新的 OpenWrt 主题
Argon 是**一款干净整洁的 OpenWrt LuCI 主题**
允许用户使用图片或视频自定义其登录界面。
它还支持在浅色模式和深色模式之间自动或手动切换。
[![license][license-badge]][license]
[![prs][prs-badge]][prs]
[![issues][issues-badge]][issues]
[![release][release-badge]][release]
[![download][download-badge]][download]
[![contact][contact-badge]][contact]
[English][en-us-link] |
**简体中文**
[特色](#特色) •
[分支介绍](#分支介绍) •
[版本历史](#版本历史) •
[快速开始](#快速开始) •
[屏幕截图](#屏幕截图) •
[贡献者](#贡献者) •
[鸣谢](#鸣谢)
<img src="https://raw.githubusercontent.com/jerrykuku/staff/master/argon2.gif">
</div>
![](/Screenshots/screenshot_pc.jpg)
![](/Screenshots/screenshot_phone.jpg)
## 特色
- 干净整洁的布局。
- 适配移动端显示。
- 可自定义主题颜色。
- 支持使用 Bing 图片作为登录背景。
- 支持自定义上传图片或视频作为登录背景。
- 通过系统自动在明暗模式之间切换,也可设置为固定模式。
- 带有扩展功能的设置插件 [luci-app-argon-config][config-link]
## 注意
强烈建议使用Chrome 浏览器。主题中使用了一些新的css3特性目前只有Chrome有最佳的兼容性。
主线版本 IE 系列目前还有Bug有待解决。
FireFox 默认不开启backdrop-filter开启方法见这里https://developer.mozilla.org/zh-CN/docs/Web/CSS/backdrop-filter
当前master版本基于官方 OpenWrt 19.07.1 稳定版固件进行移植适配。
v2.x.x 适配主线快照版本。
v1.x.x 适配18.06 和 Lean Openwrt [如果你是lean代码 请选择这个版本]
## 分支介绍
目前有两个主要的分支,适应于不同版本的**OpenWrt**源代码。
下表为详细的介绍:
## 更新日志 2021.10.16 v2.2.9
| 分支 | 版本 | 介绍 | 匹配源码 |
| ------ | ------ | --------------------------- | ----------------------------------------------------- |
| master | v2.x.x | 支持最新和比较新版本的 LuCI | [官方 OpenWrt][official] • [ImmortalWrt][immortalwrt] |
| 18.06 | v1.x.x | 支持 18.06 版本的 LuCI | [Lean's LEDE][lede] |
- 【v2.2.9】修复了在手机模式下无法弹出菜单的bug
- 【v2.2.9】统一css间距的设置
- 【v2.2.9】重构了登录页面的代码
- 【v2.2.9】为导航菜单添加滑动效果
- 【v2.2.8】修复编译时打开Minify Css选项导致磨砂玻璃效果无效logo字体丢失的问题
- 【v2.2.5】全新的设置app.你可以设置argon 主题的登录页面的模糊和透明度,并管理背景图片与视频。[建议使用 Chrome][点击下载](https://github.com/jerrykuku/luci-app-argon-config/releases/download/v0.8-beta/luci-app-argon-config_0.8-beta_all.ipk)
- 【v2.2.5】当编译固件时,将自动设置为默认主题。
- 【v2.2.5】修改文件结构以适应luci-app-argon-config旧的开启暗色模式方法将不再适用请搭配luci-app-argon-config使用。
- 【v2.2.5】适配Koolshare lede 2.3.6。
- 【v2.2.5】修复了一些Bug。
- 【v2.2.4】修复了在某些手机下图片背景第一次加载不能显示的问题。
- 【v2.2.4】取消 luasocket 的依赖,无需再担心依赖问题。
- 【v2.2.3】修正了在暗色模式下,固件刷写弹窗内的显示错误。
- 【v2.2.3】更新了图标库,为未定义的菜单增加了一个默认的图标。
- 【v2.2.2】背景文件策略调整为,同时接受 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.1】登录背景添加毛玻璃效果。
- 【v2.2.1】全新的登录界面,图片背景跟随Bing.com每天自动切换。
- 【v2.2.1】全新的主题icon。
- 【v2.2.1】增加多个导航icon。
- 【v2.2.1】细致的微调了 字号大小边距等等。
- 【v2.2.1】重构了css文件。
- 【v2.2.1】自动适应的暗黑模式。
## 版本历史
## 如何编译
当前最新的版本为 v2.3.1 [点击这里][zh-cn-release-log]查看完整的版本历史日志.
进入 openwrt/package/lean 或者其他目录
## 快速开始
### Lean源码
### 使用 Lean's LEDE 构建
```
```bash
cd lede/package/lean
rm -rf luci-theme-argon
git clone -b 18.06 https://github.com/jerrykuku/luci-theme-argon.git
git clone -b 18.06 https://github.com/jerrykuku/luci-theme-argon.git luci-theme-argon
make menuconfig #choose LUCI->Theme->Luci-theme-argon
make -j1 V=s
```
### Openwrt 官方源码
### 使用官方 OpenWrt SnapShots 和 ImmortalWrt
```
```bash
cd openwrt/package
git clone https://github.com/jerrykuku/luci-theme-argon.git
make menuconfig #choose LUCI->Theme->Luci-theme-argon
make -j1 V=s
```
## 如何安装
### 在 18.06 的 LuCI 上安装 ( Lean's LEDE )
### Lean源码
```
wget --no-check-certificate https://github.com/jerrykuku/luci-theme-argon/releases/download/v1.7.0/luci-theme-argon_1.7.0-20200909_all.ipk
```bash
wget --no-check-certificate https://github.com/jerrykuku/luci-theme-argon/releases/download/v1.8.2/luci-theme-argon_1.8.2-20230609_all.ipk
opkg install luci-theme-argon*.ipk
```
### For openwrt official 19.07 Snapshots LuCI master
### 在官方和 ImmortalWrt 上安装
```
wget --no-check-certificate https://github.com/jerrykuku/luci-theme-argon/releases/download/v2.2.5/luci-theme-argon_2.2.5-20200914_all.ipk
```bash
opkg install luci-compat
opkg install luci-lib-ipkg
wget --no-check-certificate https://github.com/jerrykuku/luci-theme-argon/releases/download/v2.3.1/luci-theme-argon_2.3.1_all.ipk
opkg install luci-theme-argon*.ipk
```
## 感谢
### 安装 luci-app-argon-config
luci-theme-material: https://github.com/LuttyYang/luci-theme-material/
```bash
wget --no-check-certificate https://github.com/jerrykuku/luci-app-argon-config/releases/download/v0.9/luci-app-argon-config_0.9_all.ipk
opkg install luci-app-argon-config*.ipk
```
## 注意
- 强烈建议使用 Chrome 浏览器。这个主题中使用了一些新的 css3 功能,目前只有 Chrome 浏览器有最好的兼容性。
- 微软已正式退役 Internet Explorer安息吧 IE🙏<del>目前IE 系列的主线版本有需要解决的错误。</del>
- FireFox 默认不启用 backdrop-filter[见这里](https://developer.mozilla.org/zh-CN/docs/Web/CSS/backdrop-filter)的打开方法。
## 屏幕截图
![desktop](/Screenshots/screenshot_pc.jpg)
![mobile](/Screenshots/screenshot_phone.jpg)
## 贡献者
<a href="https://github.com/jerrykuku/luci-theme-argon/graphs/contributors">
<img src="https://contrib.rocks/image?repo=jerrykuku/luci-theme-argon" />
</a>
Made with [contrib.rocks](https://contrib.rocks).
## 相关项目
- [luci-app-argon-config](https://github.com/jerrykuku/luci-app-argon-config): Argon 主题的设置插件
- [openwrt-package](https://github.com/jerrykuku/openwrt-package): 我的 OpenWrt Package
- [CasaOS](https://github.com/IceWhaleTech/CasaOS): 一个简单、易用且优雅的开源个人家庭云系统(我目前主要开发的项目)
## 鸣谢
[luci-theme-material](https://github.com/LuttyYang/luci-theme-material/)

View file

@ -0,0 +1,73 @@
# Update log for master branch
## v2.3.1 [ 2023.04.20 ]
- Fixed the issue where the dropdown menu was being clipped.
- Fixed the problem where the exit icon was replaced with the app store icon.
- Fixed the issue where some colors were out of control in dark mode.
- Fixed the problem where the local startup script textarea could not be scrolled in the startup item.
- Fixed the problem where the Passwall node list button was misaligned.
- Fixed the text overflow problem in dynlist
- Support wallpaper from Unsplashargon
- Fix menu style mis-match on macOS+Chrome
- Fixed the issue of the login page icon becoming larger
- Support wallpaper from wallhaven
> open footer links in new tab
- Remake theme icon
## v2.3 [ 2023.04.03 ]
- Updated the style of Loading.
- Fixed a large number of CSS style errors and made the overall more uniform.
- Fixed the problem of uncontrolled individual colors in dark mode.
## v2.2.9
- Unify the settings of css spacing
- Refactored the code of the login page
- Fix the problem that the Minify Css option is turned on when compiling, which causes the
- Fix the problem that the menu could not pop up in mobile mode
- Unify the settings of css spacing
- Refactored the code of the login page
## v2.2.8
- Fix the problem that the Minify Css option is turned on when compiling, which causes the frosted glass effect to be invalid and the logo font is lost.
## v2.2.5
- New config app for argon theme. You can set the blur and transparency of the login page of argon theme, and manage the background pictures and videos.[Chrome is recommended] [Download](https://github.com/jerrykuku/luci-app-argon-config/releases/download/v0.8-beta/luci-app-argon-config_0.8-beta_all.ipk)
- Automatically set as the default theme when compiling.
- Modify the file structure to adapt to luci-app-argon-config. The old method of turning on dark mode is no longer applicable, please use it with luci-app-argon-config.
- Adapt to Koolshare lede 2.3.6。
- Fix some Bug。
## v2.2.4
- Fix the problem that the login background cannot be displayed on some phones.
- Remove the dependency of luasocket.
## v2.2.3
- Fix Firmware flash page display error in dark mode.
- Update font icon, add a default icon of undefined menu.
## 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.
- Add force dark mode, login ssh and type "touch /etc/dark" to open dark mode.
- Add a volume mute button for video background, default is muted.
- fix login page when keyboard show the bottom text overlay the button on mobile.
- fix select color in dark mode,and add a style for scrollbar.
- jquery update to v3.5.1.
- change request bing api method form wget to luasocket (DEPENDS).
## v2.2.1
- Add blur effect for login form.
- New login theme, Request background imge from bing.com, Auto change everyday.
- New theme icon.
- Add more menu category icon.
- Fix font-size and padding margin.
- Restructure css file.
- Auto adapt to dark mode.

View file

@ -0,0 +1,71 @@
# Master 分支的更新日志
## v2.3.1 [ 2023.04.20 ]
- 修复了下拉菜单被裁切的问题
- 修复了退出图标变成了应用商店图标的问题
- 修复了暗色模式下个别颜色不受控制的问题
- 修复了启动项--本地启动脚本文本框不能滑动的问题
- 修复了Passwall节点列表按钮错位的问题
- 修复在dynlist中的文本溢出问题
- 登录页面 支持自来 Unsplash 的在线壁纸
- 修复在macOS的Chrome中,菜单的style异常
- 修复在登录页面中,主题图标变大的问题
- 登录页面 支持自来 wallhaven 的在线壁纸
> 打开页脚链接时使用新标签页
- 重制主题图标
## v2.3 [ 2023.04.03 ]
- 更新了 Loading 的样式
- 修复了大量的 CSS 样式错误,整体更加统一
- 修复了暗色模式下个别颜色不受控制的问题
## v2.2.9
- 修复了在手机模式下无法弹出菜单的 bug
- 统一 css 间距的设置
- 重构了登录页面的代码
- 为导航菜单添加滑动效果
## v2.2.8
- 【v2.2.8】修复编译时打开 Minify Css 选项导致磨砂玻璃效果无效logo 字体丢失的问题
## v2.2.5
- 全新的设置 app.你可以设置 argon 主题的登录页面的模糊和透明度,并管理背景图片与视频。[建议使用 Chrome][点击下载](https://github.com/jerrykuku/luci-app-argon-config/releases/download/v0.8-beta/luci-app-argon-config_0.8-beta_all.ipk)
- 当编译固件时,将自动设置为默认主题。
- 修改文件结构,以适应 luci-app-argon-config旧的开启暗色模式方法将不再适用请搭配 luci-app-argon-config 使用。
- 适配 Koolshare lede 2.3.6。
- 修复了一些 Bug。
## v2.2.4
- 修复了在某些手机下图片背景第一次加载不能显示的问题。
- 取消 luasocket 的依赖,无需再担心依赖问题。
## v2.2.3
- 修正了在暗色模式下,固件刷写弹窗内的显示错误。
- 更新了图标库,为未定义的菜单增加了一个默认的图标。
## v2.2.2
- 背景文件策略调整为,同时接受 jpg png gif mp4, 自行上传文件至 /www/luci-static/argon/background 图片和视频同时随机。
- 增加强制暗色模式,进入 ssh 输入 "touch /etc/dark" 进行开启。
- 视频背景加了一个音量开关,喜欢带声音的可以自行点击开启,默认为静音模式。
- 修复了手机模式下,登录页面出现键盘时,文字覆盖按钮的问题。
- 修正了暗黑模式下下拉选项的背景颜色,同时修改了滚动条的样式。
- jquery 更新到 v3.5.1。
- 获取 Bing Api 的方法从 wget 更新到 luasocket 并添加依赖。
## v2.2.1
- 登录背景添加毛玻璃效果。
- 全新的登录界面,图片背景跟随 Bing.com每天自动切换。
- 全新的主题 icon。
- 增加多个导航 icon。
- 细致的微调了 字号大小边距等等。
- 重构了 css 文件。
- 自动适应的暗黑模式。

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 535 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.3 KiB

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

After

Width:  |  Height:  |  Size: 6.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

View file

@ -1 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path fill="#adaeaf" d="m8,10.033663l-6.898535,-6.013274l-1.060688,0.972974l7.959223,6.986249l7.959223,-6.986249l-1.060688,-0.972974l-6.898535,6.013274z"/></svg>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16">
<path fill="#adaeaf" d="m8,10.033663l-6.898535,-6.013274l-1.060688,0.972974l7.959223,6.986249l7.959223,-6.986249l-1.060688,-0.972974l-6.898535,6.013274z"/>
</svg>

Before

Width:  |  Height:  |  Size: 222 B

After

Width:  |  Height:  |  Size: 225 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1,019 B

After

Width:  |  Height:  |  Size: 2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 535 B

View file

@ -1,41 +1,41 @@
{
"name": "Openwrt",
"icons": [
{
"src": "\/android-icon-36x36.png",
"sizes": "36x36",
"type": "image\/png",
"density": "0.75"
},
{
"src": "\/android-icon-48x48.png",
"sizes": "48x48",
"type": "image\/png",
"density": "1.0"
},
{
"src": "\/android-icon-72x72.png",
"sizes": "72x72",
"type": "image\/png",
"density": "1.5"
},
{
"src": "\/android-icon-96x96.png",
"sizes": "96x96",
"type": "image\/png",
"density": "2.0"
},
{
"src": "\/android-icon-144x144.png",
"sizes": "144x144",
"type": "image\/png",
"density": "3.0"
},
{
"src": "\/android-icon-192x192.png",
"sizes": "192x192",
"type": "image\/png",
"density": "4.0"
}
]
"name": "Openwrt",
"icons": [
{
"src": "\/android-icon-36x36.png",
"sizes": "36x36",
"type": "image\/png",
"density": "0.75"
},
{
"src": "\/android-icon-48x48.png",
"sizes": "48x48",
"type": "image\/png",
"density": "1.0"
},
{
"src": "\/android-icon-72x72.png",
"sizes": "72x72",
"type": "image\/png",
"density": "1.5"
},
{
"src": "\/android-icon-96x96.png",
"sizes": "96x96",
"type": "image\/png",
"density": "2.0"
},
{
"src": "\/android-icon-144x144.png",
"sizes": "144x144",
"type": "image\/png",
"density": "3.0"
},
{
"src": "\/android-icon-192x192.png",
"sizes": "192x192",
"type": "image\/png",
"density": "4.0"
}
]
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

After

Width:  |  Height:  |  Size: 6.4 KiB

View file

@ -1 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path fill="#888" d="M8,0c-4.355,0-7.898,3.481-7.998,7.812,0.092-3.779,2.966-6.812,6.498-6.812,3.59,0,6.5,3.134,6.5,7,0,0.828,0.672,1.5,1.5,1.5s1.5-0.672,1.5-1.5c0-4.418-3.582-8-8-8zM8,16c4.355,0,7.898-3.481,7.998-7.812-0.092,3.779-2.966,6.812-6.498,6.812-3.59,0-6.5-3.134-6.5-7,0-0.828-0.672-1.5-1.5-1.5s-1.5,0.672-1.5,1.5c0,4.418,3.582,8,8,8z"/></svg>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16">
<path fill="#888" d="M8,0c-4.355,0-7.898,3.481-7.998,7.812,0.092-3.779,2.966-6.812,6.498-6.812,3.59,0,6.5,3.134,6.5,7,0,0.828,0.672,1.5,1.5,1.5s1.5-0.672,1.5-1.5c0-4.418-3.582-8-8-8zM8,16c4.355,0,7.898-3.481,7.998-7.812-0.092,3.779-2.966,6.812-6.498,6.812-3.59,0-6.5-3.134-6.5-7,0-0.828-0.672-1.5-1.5-1.5s-1.5,0.672-1.5,1.5c0,4.418,3.582,8,8,8z"/>
</svg>

Before

Width:  |  Height:  |  Size: 413 B

After

Width:  |  Height:  |  Size: 417 B

View file

@ -1,61 +1,37 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 23.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 256 256" style="enable-background:new 0 0 256 256;" xml:space="preserve">
<!-- Generator: Adobe Illustrator 27.5.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="图层_1" xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 256 256"
style="enable-background:new 0 0 256 256;" xml:space="preserve">
<style type="text/css">
.st0{fill-rule:evenodd;clip-rule:evenodd;fill:url(#SVGID_1_);}
.st1{fill-rule:evenodd;clip-rule:evenodd;fill:url(#SVGID_2_);}
.st0{fill-rule:evenodd;clip-rule:evenodd;fill:url(#svg_2_00000009581766544743910510000007087157279682564742_);}
.st1{fill-rule:evenodd;clip-rule:evenodd;fill:url(#svg_3_00000013155245276689480680000010334395393893521599_);}
.st2{fill:#FFFFFF;}
</style>
<g>
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="11.1379" y1="10.6499" x2="245.5302" y2="245.0422">
<stop offset="0" style="stop-color:#5E72E4"/>
<stop offset="1" style="stop-color:#778AFF"/>
</linearGradient>
<path class="st0" d="M36.4,0.2h183.8c19.7,0,35.7,16,35.7,35.7v183.8c0,19.7-16,35.7-35.7,35.7H36.4c-19.7,0-35.7-16-35.7-35.7
V35.9C0.7,16.2,16.7,0.2,36.4,0.2z"/>
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="0.6679" y1="0.18" x2="0.6679" y2="0.18">
<stop offset="0" style="stop-color:#5E72E4"/>
<stop offset="1" style="stop-color:#778AFF"/>
</linearGradient>
<path class="st1" d="M0.7,0.2"/>
</g>
<path class="st2" d="M128.3,32.6c-43.9,0-79.4,35.6-79.4,79.4c0,35.3,23.1,65.2,55,75.6l9.9-40.1c-14-5.7-23.8-19.4-23.8-35.5
c0-21.2,17.2-38.3,38.3-38.3c21.2,0,38.3,17.2,38.3,38.3c0,16-9.8,29.7-23.8,35.5l9.9,40.1c31.9-10.3,55-40.2,55-75.6
C207.8,68.2,172.2,32.6,128.3,32.6z"/>
<g>
<path class="st2" d="M48.5,234.8c-2.3,0-4.3-0.3-6.1-0.9c-1.7-0.6-3.3-1.6-4.7-3c-1.4-1.4-2.5-2.8-3.3-4.2
c-0.8-1.4-1.3-2.9-1.6-4.4c-0.3-1.5-0.4-3.2-0.4-4.9c0-2.3,0.3-4.3,0.8-5.9c0.5-1.7,1.1-3.1,1.8-4.3c0.7-1.2,1.8-2.4,3.1-3.6
c1.3-1.2,2.8-2.1,4.4-2.8c1.6-0.7,3.5-1.1,5.7-1.1c2,0,3.8,0.3,5.6,0.9c1.7,0.6,3.3,1.5,4.7,2.7c1.4,1.2,2.6,2.6,3.5,4.4
c1,1.7,1.6,3.4,1.9,5c0.3,1.6,0.4,3.2,0.4,4.8c-0.1,2.5-0.4,4.7-1,6.6c-0.6,1.9-1.3,3.5-2.2,4.7c-0.9,1.2-1.9,2.3-3.2,3.2
c-1.2,0.9-2.7,1.7-4.3,2.2C52.3,234.5,50.5,234.8,48.5,234.8z M48,227.6c1.1,0.1,2.3-0.1,3.4-0.4c1.1-0.4,2.2-1.1,3.2-2.1
c1-1,1.6-2.3,1.9-3.8c0.3-1.5,0.5-2.9,0.4-4.3c0-1.9-0.3-3.4-0.7-4.6c-0.4-1.2-1-2.2-1.6-3c-0.6-0.8-1.4-1.5-2.3-2
c-0.9-0.5-1.9-0.8-3.1-0.9c-1.1-0.1-2.2,0.1-3.2,0.4c-1,0.4-1.9,0.9-2.7,1.5c-0.8,0.6-1.5,1.5-2.2,2.5c-0.6,1-1,2.1-1.1,3.2
c-0.1,1.1-0.2,2.1-0.2,3c0,1.2,0.1,2.4,0.4,3.6c0.2,1.2,0.7,2.3,1.3,3.4c0.6,1,1.5,1.8,2.7,2.4C45.4,227.2,46.6,227.5,48,227.6z"/>
<path class="st2" d="M77,243.9h-7.2v-32.8H77l0,2c0.3-0.3,0.7-0.6,1.1-0.9c0.4-0.3,0.9-0.5,1.6-0.7c0.7-0.2,1.3-0.3,2-0.3
c1.4,0,2.7,0.4,4,1.1c1.3,0.8,2.3,1.8,3.2,3c0.8,1.3,1.4,2.6,1.8,4.1c0.3,1.5,0.5,2.8,0.5,4.1c0,1.3-0.2,2.7-0.7,4.1
c-0.5,1.7-1.4,3.1-2.5,4.3c-1.1,1.2-2.3,1.9-3.5,2.2c-1.2,0.3-2.3,0.4-3.1,0.4c-1.6,0-2.7-0.3-3.3-0.8l-1-0.7V243.9z M77,225.8
l0,1.7c0.2,0.5,0.5,1,0.9,1.3c0.3,0.4,1.1,0.6,2.1,0.6c1.1,0,1.9-0.3,2.5-0.9c0.5-0.5,0.8-1.3,1-2.3c0.2-1.1,0.3-2.2,0.3-3.5
c0-1.3-0.1-2.4-0.4-3.3c-0.3-0.8-0.7-1.5-1.2-2.1c-0.6-0.6-1.3-0.9-2.1-0.8c-0.5,0-1.1,0.2-1.7,0.6c-0.6,0.4-1,0.9-1.2,1.6
l-0.2,0.6V225.8z"/>
<path class="st2" d="M103.3,224.3c0,0.2,0,0.4,0,0.6c0,0.2,0.1,0.7,0.1,1.4c0.1,0.7,0.3,1.5,0.7,2.3c0.4,0.8,0.8,1.3,1.2,1.6
c0.5,0.3,0.9,0.3,1.5,0.3c0.4-0.1,0.9-0.2,1.3-0.5c0.4-0.3,0.7-0.7,0.9-1.1c0.2-0.4,0.4-0.8,0.5-1.2l0.2-1h7.4
c-0.1,0.5-0.2,1.1-0.3,1.7c-0.1,0.7-0.5,1.4-1,2.3c-0.5,0.8-1.1,1.6-1.9,2.2c-0.7,0.6-1.7,1.1-3,1.5c-1.3,0.4-2.7,0.6-4.3,0.5
c-1.6-0.1-3.2-0.4-4.6-0.9c-1.5-0.6-2.6-1.3-3.5-2.3c-0.9-1-1.5-2.2-1.9-3.5c-0.4-1.3-0.6-2.9-0.6-4.6c0-1,0.1-1.9,0.3-2.9
c0.2-1,0.5-2,0.9-2.9c0.4-0.9,1-1.9,1.7-2.8c0.7-0.9,1.9-1.8,3.4-2.6c1.5-0.8,3.2-1.2,4.9-1.1c0.7,0,1.7,0.2,2.8,0.5
c1.2,0.3,2.3,1,3.5,2c1.2,1,2.1,2.3,2.6,3.8c0.6,1.5,0.9,2.8,0.9,4l0.1,3H103.3z M110,220.2c0-0.6-0.1-1.1-0.2-1.6
c-0.1-0.5-0.2-1-0.5-1.6s-0.6-0.9-0.9-1.2c-0.3-0.2-0.8-0.4-1.3-0.4c-0.6,0-1.1,0.1-1.6,0.4c-0.5,0.3-0.9,0.8-1.3,1.6
c-0.4,0.7-0.6,1.3-0.6,1.8l-0.1,0.9H110z"/>
<path class="st2" d="M142.4,234.4h-7.2v-13.1c0-1-0.1-1.8-0.2-2.4c-0.1-0.6-0.4-1.1-0.9-1.6c-0.5-0.4-1.2-0.6-2.1-0.6
c-0.6,0.1-1.1,0.3-1.6,0.6c-0.5,0.3-0.8,0.8-1,1.3c-0.2,0.5-0.3,1.3-0.3,2.3v13.3h-7.2v-23.3h7.2v1.3c0.3-0.1,0.6-0.3,1.1-0.5
c0.4-0.2,1-0.4,1.6-0.6c0.6-0.2,1.5-0.2,2.5-0.2c1,0.1,1.9,0.2,2.7,0.5c0.8,0.3,1.5,0.7,2.3,1.3c0.7,0.6,1.4,1.3,1.8,2.1
c0.5,0.8,0.8,1.7,1,2.5c0.2,0.8,0.3,1.9,0.3,3.1V234.4z"/>
<path class="st2" d="M163.5,221.2l-3.7,13.3h-5.6l-6.7-23.3h7.1l2.5,11.1l3.4-11.1h6.1l3.2,11l2.3-11h7.1l-6.3,23.3h-5.6
L163.5,221.2z"/>
<path class="st2" d="M184.4,211.1h6.7v4.3c0.3-0.5,0.8-1,1.2-1.5c0.5-0.5,1.3-1.1,2.4-1.7c1.2-0.6,2.1-0.9,2.9-0.9l3.8-0.3v6.2
c-0.7-0.1-1.4-0.1-2-0.2c-0.6,0-1.5,0-2.5,0.1c-1.1,0.1-2.1,0.5-3.1,1c-1,0.5-1.6,1-1.9,1.6l-0.8,1.3v13.4h-6.7V211.1z"/>
<path class="st2" d="M218.3,211.1h5.2v4.6h-5.2v10.9c0,0.8,0.1,1.4,0.3,1.8c0.2,0.4,0.5,0.6,0.8,0.8c0.4,0.1,1,0.2,1.9,0.2h2.3
l-0.1,5h-5.1c-0.7,0-1.4,0-2.1-0.1c-0.7-0.1-1.4-0.3-2.1-0.7c-0.7-0.4-1.3-0.9-1.8-1.4c-0.5-0.6-0.8-1.2-1-2
c-0.2-0.7-0.3-1.7-0.3-2.8v-11.6h-4.8v-4.6h4.8v-7.6h7.2V211.1z"/>
<g id="svg_1">
<linearGradient id="svg_2_00000043442590260727270070000016472210641679865270_" gradientUnits="userSpaceOnUse" x1="11.1563" y1="247.3437" x2="245.4437" y2="13.0563" gradientTransform="matrix(1 0 0 -1 0 258)">
<stop offset="0" style="stop-color:#5E72E4"/>
<stop offset="1" style="stop-color:#778AFF"/>
</linearGradient>
<path id="svg_2" style="fill-rule:evenodd;clip-rule:evenodd;fill:url(#svg_2_00000043442590260727270070000016472210641679865270_);" d="
M36.4,0.2h183.8c19.7,0,35.7,16,35.7,35.7v183.8c0,19.7-16,35.7-35.7,35.7H36.4c-19.7,0-35.7-16-35.7-35.7V35.9
C0.7,16.2,16.7,0.2,36.4,0.2z"/>
<linearGradient id="svg_3_00000010280352489557108120000000938545297310085033_" gradientUnits="userSpaceOnUse" x1="0.7" y1="257.8" x2="0.7" y2="257.8" gradientTransform="matrix(1 0 0 -1 0 258)">
<stop offset="0" style="stop-color:#5E72E4"/>
<stop offset="1" style="stop-color:#778AFF"/>
</linearGradient>
<path id="svg_3" style="fill-rule:evenodd;clip-rule:evenodd;fill:url(#svg_3_00000010280352489557108120000000938545297310085033_);" d="
M0.7,0.2"/>
</g>
<path id="svg_4" class="st2" d="M128.3,45.4c-46.7,0-84.4,37.8-84.4,84.4c0,32.2,18.1,60.2,44.6,74.4c6.8,3.7,15.3-0.2,17.2-7.7
l4.3-17.6c1.5-6.2-1-12.6-6.1-16.4c-10-7.4-16.4-19.3-16.4-32.7c0-22.5,18.3-40.7,40.7-40.7c22.5,0,40.7,18.3,40.7,40.7
c0,13.4-6.4,25.2-16.4,32.7c-5.1,3.8-7.6,10.2-6.1,16.5l4.4,17.6c1.9,7.5,10.3,11.4,17.2,7.7c26.6-14.2,44.6-42.2,44.6-74.5
C212.8,83.3,174.9,45.4,128.3,45.4L128.3,45.4z"/>
</g>
<circle class="st2" cx="128.3" cy="131.6" r="18.3"/>
</svg>

Before

Width:  |  Height:  |  Size: 4.9 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

View file

@ -1 +1,3 @@
<?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>
<svg xmlns="http://www.w3.org/2000/svg" width="200" height="200" class="icon" viewBox="0 0 1024 1024">
<path fill="#fff" d="M484.430769 51.2 236.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.153846L484.430769 972.8c25.6 25.6 66.953846 7.876923 66.953846-27.569231V78.769231c0-35.446154-43.323077-53.169231-66.953846-27.569231zm354.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 512s-55.138462-256-145.723077-340.676923zM714.830769 297.353846c-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.569231C703.015385 391.876923 728.615385 448.984616 728.615385 512c0 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"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

View file

@ -1 +1,3 @@
<?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>
<svg xmlns="http://www.w3.org/2000/svg" width="200" height="200" class="icon" viewBox="0 0 1024 1024">
<path fill="#fff" d="M484.430769 51.2 236.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.153846L484.430769 972.8c25.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 0l-96.492308 96.492307-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.56923L771.938462 512l-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"/>
</svg>

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

File diff suppressed because it is too large Load diff

View file

@ -78,7 +78,7 @@ return baseclass.extend({
submenu = this.renderMainMenu(children[i], url + '/' + children[i].name, l),
hasChildren = submenu.children.length,
slideClass = hasChildren ? 'slide' : null,
menuClass = hasChildren ? 'menu' : null;
menuClass = hasChildren ? 'menu' : 'food';
if (isActive) {
ul.classList.add('active');
slideClass += " active";

File diff suppressed because it is too large Load diff

View file

@ -1,9 +1,9 @@
// compress: true , sourceMap: false
// out: ../htdocs/luci-static/argon/css/dark.css, compress: true , sourceMap: false
/**
* 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>
* Copyright 2023 Jerryk <jerrykuku@gmail.com>
*
* Have a bug? Please create an issue here on GitHub!
* https://github.com/jerrykuku/luci-theme-argon/issues
@ -20,7 +20,7 @@
* https://github.com/LuttyYang/luci-theme-material/
*
* Agron Theme
* https://demos.creative-tim.com/argon-dashboard/index.html
* https://demos.creative-tim.com/argon-dashboard/index.html
*
* Login background
* https://unsplash.com/
@ -28,6 +28,7 @@
* Licensed to the public under the Apache License 2.0
*/
body {
background: #1e1e1e;
color: #cccccc;
@ -90,7 +91,7 @@ header::after {
box-shadow: 0 0 0.5rem 0 rgba(0, 0, 0, .15);
.sidenav-header .brand {
color: #ccc;
color: #cccccc;
}
.nav {
@ -104,6 +105,10 @@ header::after {
background-color: #cccccc !important;
}
}
&::after {
background-color: var(--dark-primary) !important;
}
}
li {
@ -114,16 +119,20 @@ header::after {
a:hover {
background: none !important;
}
&::after {
background-color: var(--dark-primary) !important;
}
}
}
.menu.active {
background-color: #483d8b !important;
background-color: var(--dark-primary) !important;
color: #cccccc !important;
color: #ffffff !important;
a::after {
background-color: #cccccc !important;
background-color: #ffffff !important;
}
}
}
@ -136,8 +145,9 @@ header::after {
a:hover {
background-color: #483d8b !important;
background-color: var(--dark-primary) !important;
color: #cccccc !important;
color: #ffffff !important;
}
}
}
@ -167,11 +177,16 @@ h3 {
background: #333333;
}
a:-webkit-any-link {
color: -webkit-link;
cursor: pointer;
color: #483d8b;
color: var(--dark-primary);
h4 {
color: #8C6900;
}
abbr {
color: var(--dark-primary) !important;
}
a:link, a:visited, a:active {
color: #a5b2ff;
}
@ -179,6 +194,10 @@ input:-webkit-autofill {
background-color: #3c3c3c !important;
}
#channel_graph {
background-color: transparent !important;
}
.cbi-value-field .cbi-input-apply,
.cbi-button-apply,
.cbi-button-edit {
@ -210,50 +229,48 @@ header.bg-primary {
.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) {
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;
table > tbody > tr > td,
table > tfoot > tr > td,
table > thead > tr > td {
color: #cccccc;
}
fieldset>table>tbody>tr:nth-of-type(2n) {
fieldset > table > tbody > tr:nth-of-type(2n) {
background-color: #252526;
}
table>tbody>tr>td,
table>tfoot>tr>td,
table>thead>tr>td {
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,
#swapfree > div > div,
#memfree > div > div,
#membuff > div > div,
#conns > div > div,
#memtotal > div > div {
background-color: var(--dark-primary) !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 {
#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 {
.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"] {
@ -261,26 +278,25 @@ table>thead>tr>td {
background-color: transparent !important;
div {
background-color: #32325d !important;
background-color: #ba8b00 !important;
}
}
}
table>tbody>tr>th,
table>tfoot>tr>th,
table>thead>tr>th {
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,
tr > td,
tr > th,
.tr > .td,
.tr > .th,
.cbi-section-table-row::before,
#cbi-wireless>#wifi_assoclist_table>.tr:nth-child(2) {
#cbi-wireless > #wifi_assoclist_table > .tr:nth-child(2) {
border-top: 0;
}
@ -298,13 +314,10 @@ body:not(.Interfaces) .cbi-rowstyle-2:first-child {
background-color: rgb(102, 102, 102) !important;
}
.cbi-section>h3:first-child,
.cbi-section > h3:first-child,
.panel-title,
h3 {
color: #ccc;
border-bottom: 0;
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
}
h4 {
@ -312,17 +325,10 @@ h4 {
}
.cbi-progressbar {
position: relative;
min-width: 170px;
height: 20px;
margin: 6px 0;
border: thin solid #999;
background: transparent;
border-radius: 0.2rem;
overflow: hidden;
background: #282a2c;
div {
background-color: #32325d !important;
background-color: var(--dark-primary) !important;
}
}
@ -331,23 +337,21 @@ h4 {
}
.cbi-button {
color: #ccc !important;
color: #ffffff !important;
background-color: #483d8b;
background-color: var(--dark-primary);
}
.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) {
div > table > tbody > tr:nth-of-type(2n),
div > .table > .tbody > .tr:nth-of-type(2n) {
background-color: #252526;
}
@ -370,22 +374,32 @@ div>.table>.tbody>.tr:nth-of-type(2n) {
.tabs {
background-color: #252526;
li[class~="active"],
li:hover {
cursor: pointer;
color: #ccc !important;
a {
color: #ccc !important;
}
}
}
.tabs>li[class~="active"]>a {
.tabs > li[class~="active"] > a {
color: #ccc;
}
.tabs>li[class~="active"],
.tabs>li:hover {
.tabs > li[class~="active"],
.tabs > li:hover {
border-bottom: 0.18751rem solid #483d8b;
border-bottom: 0.18751rem solid var(--dark-primary);
color: #ccc;
color: var(--dark-primary) !important;
background-color: #181819;
}
.cbi-tabmenu>li>a,
.tabs>li>a {
.cbi-tabmenu > li > a,
.tabs > li > a {
color: #ccc;
&:hover {
@ -393,7 +407,7 @@ div>.table>.tbody>.tr:nth-of-type(2n) {
}
}
.cbi-tabmenu>li {
.cbi-tabmenu > li {
background: #2d2d2d;
}
@ -401,16 +415,18 @@ div>.table>.tbody>.tr:nth-of-type(2n) {
color: #ccc;
}
.cbi-tabmenu>li:hover {
.cbi-tabmenu > li:hover {
color: #ccc;
background: #2d2d2d;
border-bottom: 0.18751rem solid var(--dark-primary) !important;
}
.cbi-tabmenu>li[class~="cbi-tab"] {
.cbi-tabmenu > li[class~="cbi-tab"] {
background-color: #181819;
border-bottom: 0.18751rem solid var(--dark-primary) !important;
}
.cbi-tabcontainer>.cbi-value:nth-of-type(2n) {
.cbi-tabcontainer > .cbi-value:nth-of-type(2n) {
background-color: #252526;
}
@ -426,6 +442,7 @@ input {
box-shadow: none;
}
select:not([multiple="multiple"]):focus,
input:focus {
border-color: #483d8b !important;
@ -434,6 +451,13 @@ input:focus {
}
select:not([multiple="multiple"]):focus,
input:not(.cbi-button):focus,
.cbi-dropdown:focus {
border-color: #5e72e4;
border-color: var(--dark-primary) !important;
}
select {
background-color: #1e1e1e !important;
}
@ -452,7 +476,7 @@ select {
color: #ccc !important;
}
.cbi-value-field>ul>li .ifacebadge {
.cbi-value-field > ul > li .ifacebadge {
background-color: #3c3c3c;
}
@ -463,8 +487,14 @@ select {
.cbi-input-textarea {
background-color: #1e1e1e;
color: #ccc;
border: 1px solid #3c3c3c !important;
}
textarea {
&:focus-visible {
border: 1px solid var(--dark-primary);
}
}
.cbi-section-remove:nth-of-type(2n),
@ -472,22 +502,24 @@ select {
background-color: #1e1e1e;
}
.node-system-packages>.main table tr td:nth-last-child(1) {
.node-system-packages > .main table tr td:nth-last-child(1) {
color: #ccc;
}
.cbi-section-node .cbi-value {
padding: 1rem 1rem 0.3rem 1rem;
.cbi-tooltip {
background-color: var(--primary);
color: #fff;
}
.ifacebox {
background-color: none;
background-color: transparent !important;
border: 1px solid #1e1e1e;
}
.ifacebox-head {
color: #666;
color: #ccc;
background: #666;
}
.ifacebox-body {
@ -498,7 +530,7 @@ select {
color: #333;
}
.zonebadge>.ifacebadge {
.zonebadge > .ifacebadge {
background-color: #3c3c3c;
}
@ -507,7 +539,7 @@ td.cbi-value-field var {
color: #5e72e4;
}
#diag-rc-output>pre {
#diag-rc-output > pre {
color: #ccc;
background-color: #1e1e1e;
}
@ -548,7 +580,7 @@ td.cbi-value-field var {
border-right: #1e1e1e 1px solid;
}
#xhr_poll_status>.label.success {
#xhr_poll_status > .label.success {
color: #ccc !important;
background-color: darkolivegreen !important;
@ -595,7 +627,6 @@ td.cbi-value-field var {
.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;
@ -605,15 +636,13 @@ fieldset[id^="cbi-apply-"] {
background-color: #333333;
}
#detail-bubble>div {
#detail-bubble > div {
border: 1px solid #ccc;
border-radius: 2px;
padding: 5px;
background: #252525;
}
.ifacebox-head.active {
background-color: #32325d !important;
background-color: var(--dark-primary) !important;
}
header .fill .status span[data-style="active"] {
@ -622,11 +651,11 @@ header .fill .status span[data-style="active"] {
}
#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 {
#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;
@ -638,16 +667,107 @@ header .fill .status span[data-style="active"] {
box-shadow: none;
}
td>.ifacebadge,
.td>.ifacebadge {
td > .ifacebadge,
.td > .ifacebadge {
color: #fff;
background-color: #483d8b;
background-color: var(--dark-primary);
border: 0;
}
.alert, .alert-message {
background-color: #333;
}
.alert-message.warning {
background-color: #986400 !important;
}
.alert.error, .alert-message.error {
background-color: #784f00;
}
.alert h4, .alert-message h4 {
background-color: #784f00;
color: #ffbf00;
}
.alert-message [class="btn"] {
background-color: #777777;
color: #ccc;
}
.uci-dialog {
.cbi-section {
.uci-change-legend {
.uci-change-legend-label {
> ins {
border-color: #00ad00;
background-color: #688668;
}
> del {
border-color: #c60000;
background-color: #896565;
}
> var {
background-color: #333;
border-color: #666;
ins {
background-color: #688668;
}
del {
background-color: #896565;
}
}
}
}
.uci-change-list {
> var {
background-color: #333;
border-color: #666;
del {
background-color: #896565;
}
ins {
background-color: #688668;
}
}
> ins {
border-color: #00ad00;
background-color: #688668;
}
> del {
border-color: #c60000;
background-color: #896565;
}
}
.uci-change-list + .right {
.btn {
color: #ccc;
}
.cbi-button {
border: 1px solid #3c3c3c !important;
}
}
}
}
.btn.danger,
.cbi-section-remove>.cbi-button,
.cbi-section-remove > .cbi-button,
.cbi-button-remove,
.cbi-button-reset,
.cbi-button-negative,
@ -663,12 +783,12 @@ td>.ifacebadge,
.cbi-section-error,
#iptables,
.Firewall form,
#cbi-network>.cbi-section-node,
#cbi-wireless>.cbi-section-node,
#cbi-wireless>#wifi_assoclist_table,
#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 {
[data-page="admin-system-opkg"] #maincontent > .container {
background: #1e1e1e !important;
box-shadow: 0 0 0.5rem 0 rgba(0, 0, 0, 0.35);
}
@ -686,7 +806,7 @@ div[style="width:100%;height:300px;border:1px solid #000;background:#fff"] {
[data-page="admin-system-flash"] {
.modal {
label>input[type="checkbox"] {
label > input[type="checkbox"] {
top: -0.35rem;
}
@ -706,9 +826,10 @@ div[style="width:100%;height:300px;border:1px solid #000;background:#fff"] {
}
}
.cbi-value input[type="password"]+.cbi-button-neutral {
.cbi-value input[type="password"] + .cbi-button-neutral {
background-color: #483d8b !important;
background-color: var(--dark-primary) !important;
border-color: var(--dark-primary) !important;
}
.btn,
@ -750,27 +871,27 @@ input,
border-color: var(--dark-primary) !important;
}
.cbi-dropdown[open]>ul.dropdown {
.cbi-dropdown[open] > ul.dropdown {
background: #252526 !important;
color: #ccc !important;
color: #ffffff !important;
box-shadow: none;
border: 1px solid #3c3c3c !important;
}
.cbi-dropdown[open]>ul.dropdown li {
color: #ccc;
.cbi-dropdown[open] > ul.dropdown li {
color: #ffffff;
border-bottom: 1px solid #3c3c3c !important;
}
.cbi-dropdown[open]>ul.dropdown>li[selected] {
.cbi-dropdown[open] > ul.dropdown > li[selected] {
background-color: #483d8b !important;
background-color: var(--dark-primary) !important;
border-bottom: 1px solid #3c3c3c !important;
}
.cbi-dropdown[open]>ul.dropdown>li.focus {
.cbi-dropdown[open] > ul.dropdown > li.focus {
background: #483d8b;
background: var(--dark-primary);
outline: none;
@ -780,7 +901,7 @@ input,
background-color: #333333;
}
.cbi-dynlist>.item>span {
.cbi-dynlist > .item > span {
border: 1px solid #3c3c3c !important;
}
@ -796,11 +917,12 @@ input,
.cbi-button[onclick="addKey(event)"] {
background: #483d8b !important;
background: var(--dark-primary) !important;
border-color: var(--dark-primary) !important;
}
.btn.primary,
.cbi-page-actions .cbi-button-save,
.cbi-page-actions .cbi-button-apply+.cbi-button-save,
.cbi-page-actions .cbi-button-apply + .cbi-button-save,
.cbi-button-add,
.cbi-button-save,
.cbi-button-positive,
@ -817,14 +939,216 @@ input,
color: #ccc !important;
}
[data-page="admin-system-startup"] textarea {
color: #ccc;
background-color: transparent;
&:focus-visible {
border: 1px solid var(--dark-primary);
}
}
[data-page="admin-network-firewall-custom"] #view p textarea,
[data-page="admin-status-routes"] #view p textarea,
[data-page="admin-system-crontab"] #view p textarea {
color: #ccc;
background-color: transparent;
}
#view > .spinning {
background: #333333 !important;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.03) !important;
}
@media screen and (min-width: 600px) {
::-webkit-scrollbar-thumb {
background: var(--dark-primary);
}
::-webkit-scrollbar-thumb:hover {
background: var(--dark-primary);
}
::-webkit-scrollbar-thumb:active {
background: var(--dark-primary);
}
}
@media screen and (max-width: 480px) {
.node-status-iptables>.main div>.cbi-map>form {
.node-status-iptables > .main div > .cbi-map > form {
background-color: #1e1e1e;
box-shadow: 0 0 0.5rem 0 rgba(0, 0, 0, .35);
}
}
[data-page="admin-dashboard"] {
.main-right > #maincontent {
.Dashboard {
color: #ccc !important;
h3 {
color: #ccc;
}
hr {
border-top: 1px solid rgba(255, 255, 255, 1);
}
.dashboard-bg {
background-color: #333333;
}
}
.router-status-info .title img,
.lan-info .title img,
.wifi-info .title img {
filter: invert(90%);
}
tr {
border-top: thin solid #4d4d4d;
&:last-child {
border-bottom: thin solid #4d4d4d;
}
}
}
}
[data-page="admin-system-fileassistant"] {
.fb-container .panel-container {
border-bottom-color: #3c3c3c !important;
}
.fb-container td[class$="-icon"]::before {
filter: invert(0.7);
}
}
[data-page^="admin-services-openclash"] {
.cbi-tabmenu::-webkit-scrollbar-thumb {
background-color: #5b5b5b;
}
.cbi-tabmenu::-webkit-scrollbar-track {
background-color: rgba(60, 60, 60, 0.75);
}
#tab {
border-color: #3c3c3c;
}
#diag-rc-output > pre,
#dns-rc-output > pre {
color: #ccc;
border: 1px solid #3c3c3c !important;
background-color: #1e1e1e;
}
img[src$="arrow-clockwise-light.svg"],
img[src$="wrench-light.svg"],
img[src$="eye-light.svg"] {
filter: invert(0.9);
}
}
[data-page="admin-network-diagnostics"] {
.cbi-section {
background: #252526 !important;
}
textarea {
background: transparent;
border-radius: 0.25rem;
color: #ccc;
border: 1px solid #3c3c3c !important;
}
.tr > .td {
background-color: #252526 !important;
}
}
[data-page="admin-network-network"] {
.ifacebox-head[style*="--zone-color-rgb: 144, 240, 144"] {
background-color: rgb(73, 126, 73) !important;
color: #ccc !important;
}
.ifacebox-head[style*="--zone-color-rgb: 240, 144, 144;"] {
background-color: rgb(156, 79, 79) !important;
color: #ccc !important;
}
.ifacebox-head[style*="--zone-color-rgb: 238, 238, 238;"] {
background-color: #666 !important;
}
}
[data-page="admin-network-firewall-rules"] {
#cbi-firewall-rule {
.zonebadge[style*="--zone-color-rgb:240, 144, 144;"] {
--zone-color-rgb: 156, 79, 79 !important;
strong {
color: #ccc !important;
}
}
.zonebadge[style*="--zone-color-rgb:238, 238, 238;"] {
--zone-color-rgb: 112, 112, 112 !important;
em {
color: #ccc !important;
}
}
> table > .cbi-section-table-row[data-title]::before {
background-color: #252526 !important;
}
}
}
[data-page="admin-network-network"],
[data-page="admin-network-firewall-rules"] {
.cbi-dropdown {
.zonebadge[style*="--zone-color-rgb:240, 144, 144;"] {
--zone-color-rgb: 156, 79, 79 !important;
color: #ccc !important;
strong {
color: #ccc !important;
}
}
.zonebadge[style*="--zone-color-rgb:144, 240, 144;"] {
--zone-color-rgb: 73, 126, 73 !important;
color: #ccc !important;
strong {
color: #ccc !important;
}
}
.zonebadge[style*="--zone-color-rgb:238, 238, 238;"] {
--zone-color-rgb: 112, 112, 112 !important;
strong {
color: #ccc !important;
+ span {
color: #ccc !important;
}
}
}
}
}
.btn {
background-color: rgb(112, 112, 112);
color: #fff;
}

View file

@ -20,8 +20,8 @@
</div>
<footer class="mobile-hide">
<div>
<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 <%# vPKG_VERSION %></a> /
<a class="luci-link" href="https://github.com/openwrt/luci" target="_blank">Powered by <%= ver.luciname %> (<%= ver.luciversion %>)</a> /
<a href="https://github.com/jerrykuku/luci-theme-argon" target="_blank">ArgonTheme <%# vPKG_VERSION %></a> /
<%= ver.distversion %>
<ul class="breadcrumb pull-right" id="modemenu" style="display:none"></ul>
</div>

View file

@ -20,8 +20,8 @@
</div>
<footer>
<div>
<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 <%# vPKG_VERSION %></a> /
<a class="luci-link" href="https://github.com/openwrt/luci" target="_blank">Powered by <%= ver.luciname %> (<%= ver.luciversion %>)</a> /
<a href="https://github.com/jerrykuku/luci-theme-argon" target="_blank">ArgonTheme <%# vPKG_VERSION %></a> /
<%= ver.distversion %>
</div>
</footer>

View file

@ -59,54 +59,66 @@
<html lang="<%=luci.i18n.context.lang%>">
<head>
<meta charset="utf-8">
<title>
<%=striptags( (boardinfo.hostname or "?") .. ( (node and node.title) and ' - ' .. translate(node.title) or '')) %>
- LuCI</title>
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport" />
<meta name="format-detection" content="telephone=no, email=no" />
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="mobile-web-app-capable" content="yes">
<meta name="x5-fullscreen" content="true">
<meta name="full-screen" content="yes">
<meta name="x5-page-mode" content="app">
<meta name="browsermode" content="application">
<meta name="msapplication-tap-highlight" content="no">
<meta name="msapplication-TileColor" content="<%=bar_color%>">
<meta name="application-name" content="<%=striptags( (boardinfo.hostname or "?") ) %> - LuCI">
<meta name="apple-mobile-web-app-title" content="<%=striptags( (boardinfo.hostname or "?") ) %> - LuCI">
<link rel="apple-touch-icon" sizes="60x60" href="<%=media%>/icon/apple-icon-60x60.png">
<link rel="apple-touch-icon" sizes="72x72" href="<%=media%>/icon/apple-icon-72x72.png">
<link rel="apple-touch-icon" sizes="144x144" href="<%=media%>/icon/apple-icon-144x144.png">
<link rel="icon" type="image/png" sizes="192x192" href="<%=media%>/icon/android-icon-192x192.png">
<link rel="icon" type="image/png" sizes="32x32" href="<%=media%>/icon/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="96x96" href="<%=media%>/icon/favicon-96x96.png">
<link rel="icon" type="image/png" sizes="16x16" href="<%=media%>/icon/favicon-16x16.png">
<link rel="manifest" href="<%=media%>/icon/manifest.json" crossorigin="use-credentials">
<meta name="msapplication-TileColor" content="<%=bar_color%>">
<meta name="msapplication-TileImage" content="<%=media%>/icon/ms-icon-144x144.png">
<meta name="theme-color" content="<%=bar_color%>">
<link rel="stylesheet" href="<%=media%>/css/cascade.css<%# ?v=PKG_VERSION %>">
<style title="text/css">
<% if mode == 'normal' then %>
@media (prefers-color-scheme: dark) {
<%=dark_css%>
}
<% elseif mode == 'dark' then %>
<%=dark_css%>
<% end -%>
<% if fs.access('/etc/config/argon') then %>
:root {
--primary: <%=primary%>;
--dark-primary: <%=dark_primary%>;
--blur-radius:<%=blur_radius%>px;
--blur-opacity:<%=blur_opacity%>;
--blur-radius-dark:<%=blur_radius_dark%>px;
--blur-opacity-dark:<%=blur_opacity_dark%>;
}
<% end -%>
</style>
<link rel="shortcut icon" href="<%=media%>/favicon.ico">
<meta charset="utf-8">
<title>
<%=striptags( (boardinfo.hostname or "?") .. ( (node and node.title) and ' - ' .. translate(node.title) or '')) %>
- LuCI</title>
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport" />
<meta name="format-detection" content="telephone=no, email=no" />
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="mobile-web-app-capable" content="yes">
<meta name="x5-fullscreen" content="true">
<meta name="full-screen" content="yes">
<meta name="x5-page-mode" content="app">
<meta name="browsermode" content="application">
<meta name="msapplication-tap-highlight" content="no">
<meta name="msapplication-TileColor" content="<%=bar_color%>">
<meta name="application-name" content="<%=striptags( (boardinfo.hostname or "?") ) %> - LuCI">
<meta name="apple-mobile-web-app-title" content="<%=striptags( (boardinfo.hostname or "?") ) %> - LuCI">
<link rel="apple-touch-icon" sizes="60x60" href="<%=media%>/icon/apple-icon-60x60.png">
<link rel="apple-touch-icon" sizes="72x72" href="<%=media%>/icon/apple-icon-72x72.png">
<link rel="apple-touch-icon" sizes="144x144" href="<%=media%>/icon/apple-icon-144x144.png">
<link rel="icon" type="image/png" sizes="192x192" href="<%=media%>/icon/android-icon-192x192.png">
<link rel="icon" type="image/png" sizes="32x32" href="<%=media%>/icon/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="96x96" href="<%=media%>/icon/favicon-96x96.png">
<link rel="icon" type="image/png" sizes="16x16" href="<%=media%>/icon/favicon-16x16.png">
<link rel="manifest" href="<%=media%>/icon/manifest.json" crossorigin="use-credentials">
<meta name="msapplication-TileColor" content="<%=bar_color%>">
<meta name="msapplication-TileImage" content="<%=media%>/icon/ms-icon-144x144.png">
<meta name="theme-color" content="<%=bar_color%>">
<link rel="stylesheet" href="<%=media%>/css/cascade.css<%# ?v=PKG_VERSION %>">
<style title="text/css">
<% if mode ~= 'dark' then %>
@media (prefers-color-scheme: dark) {
<%=dark_css%>
}
<% if fs.access('/etc/config/argon') then %>
:root {
--primary: <%=primary%>;
--dark-primary: <%=dark_primary%>;
--bar-bg: <%=primary%>;
--blur-radius:<%=blur_radius%>px;
--blur-opacity:<%=blur_opacity%>;
--blur-radius-dark:<%=blur_radius_dark%>px;
--blur-opacity-dark:<%=blur_opacity_dark%>;
}
<% end -%>
<% elseif mode == 'dark' then %>
<%=dark_css%>
<% if fs.access('/etc/config/argon') then %>
:root {
--primary: <%=primary%>;
--dark-primary: <%=dark_primary%>;
--bar-bg: <%=dark_primary%>;
--blur-radius:<%=blur_radius%>px;
--blur-opacity:<%=blur_opacity%>;
--blur-radius-dark:<%=blur_radius_dark%>px;
--blur-opacity-dark:<%=blur_opacity_dark%>;
}
<% end -%>
<% end -%>
</style>
<link rel="shortcut icon" href="<%=media%>/favicon.png">
<% if node and node.css then %>
<link rel="stylesheet" href="<%=resource%>/<%=node.css%>">
<% end -%>

View file

@ -56,63 +56,63 @@
<html lang="<%=luci.i18n.context.lang%>">
<head>
<meta charset="utf-8">
<title>
<%=striptags( (boardinfo.hostname or "?") .. ( (node and node.title) and ' - ' .. translate(node.title) or '')) %>
- LuCI</title>
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport" />
<meta name="format-detection" content="telephone=no, email=no" />
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="mobile-web-app-capable" content="yes">
<meta name="x5-fullscreen" content="true">
<meta name="full-screen" content="yes">
<meta name="x5-page-mode" content="app">
<meta name="browsermode" content="application">
<meta name="msapplication-tap-highlight" content="no">
<meta name="msapplication-TileColor" content="<%=bar_color%>">
<meta name="application-name" content="<%=striptags( (boardinfo.hostname or "?") ) %> - LuCI">
<meta name="apple-mobile-web-app-title" content="<%=striptags( (boardinfo.hostname or "?") ) %> - LuCI">
<link rel="apple-touch-icon" sizes="60x60" href="<%=media%>/icon/apple-icon-60x60.png">
<link rel="apple-touch-icon" sizes="72x72" href="<%=media%>/icon/apple-icon-72x72.png">
<link rel="apple-touch-icon" sizes="144x144" href="<%=media%>/icon/apple-icon-144x144.png">
<link rel="icon" type="image/png" sizes="192x192" href="<%=media%>/icon/android-icon-192x192.png">
<link rel="icon" type="image/png" sizes="32x32" href="<%=media%>/icon/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="96x96" href="<%=media%>/icon/favicon-96x96.png">
<link rel="icon" type="image/png" sizes="16x16" href="<%=media%>/icon/favicon-16x16.png">
<link rel="manifest" href="<%=media%>/icon/manifest.json" crossorigin="use-credentials">
<meta name="msapplication-TileColor" content="<%=bar_color%>">
<meta name="msapplication-TileImage" content="<%=media%>/icon/ms-icon-144x144.png">
<meta name="theme-color" content="<%=bar_color%>">
<link rel="stylesheet" href="<%=media%>/css/cascade.css<%# ?v=PKG_VERSION %>">
<style title="text/css">
<% if mode == 'normal' then %>
@media (prefers-color-scheme: dark) {
<%=dark_css%>
}
<% elseif mode == 'dark' then %>
<%=dark_css%>
<% end -%>
<% if fs.access('/etc/config/argon') then %>
:root {
--primary: <%=primary%>;
--dark-primary: <%=dark_primary%>;
--blur-radius:<%=blur_radius%>px;
--blur-opacity:<%=blur_opacity%>;
--blur-radius-dark:<%=blur_radius_dark%>px;
--blur-opacity-dark:<%=blur_opacity_dark%>;
}
<% end -%>
</style>
<link rel="shortcut icon" href="<%=media%>/favicon.ico">
<% if node and node.css then %>
<link rel="stylesheet" href="<%=resource%>/<%=node.css%>">
<% end -%>
<% if css then %>
<style title="text/css">
<%=css %>
</style>
<% end -%>
<script src="<%=media%>/js/jquery.min.js?v=3.5.1"></script>
<meta charset="utf-8">
<title>
<%=striptags( (boardinfo.hostname or "?") .. ( (node and node.title) and ' - ' .. translate(node.title) or '')) %>
- LuCI</title>
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport" />
<meta name="format-detection" content="telephone=no, email=no" />
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="mobile-web-app-capable" content="yes">
<meta name="x5-fullscreen" content="true">
<meta name="full-screen" content="yes">
<meta name="x5-page-mode" content="app">
<meta name="browsermode" content="application">
<meta name="msapplication-tap-highlight" content="no">
<meta name="msapplication-TileColor" content="<%=bar_color%>">
<meta name="application-name" content="<%=striptags( (boardinfo.hostname or "?") ) %> - LuCI">
<meta name="apple-mobile-web-app-title" content="<%=striptags( (boardinfo.hostname or "?") ) %> - LuCI">
<link rel="apple-touch-icon" sizes="60x60" href="<%=media%>/icon/apple-icon-60x60.png">
<link rel="apple-touch-icon" sizes="72x72" href="<%=media%>/icon/apple-icon-72x72.png">
<link rel="apple-touch-icon" sizes="144x144" href="<%=media%>/icon/apple-icon-144x144.png">
<link rel="icon" type="image/png" sizes="192x192" href="<%=media%>/icon/android-icon-192x192.png">
<link rel="icon" type="image/png" sizes="32x32" href="<%=media%>/icon/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="96x96" href="<%=media%>/icon/favicon-96x96.png">
<link rel="icon" type="image/png" sizes="16x16" href="<%=media%>/icon/favicon-16x16.png">
<link rel="manifest" href="<%=media%>/icon/manifest.json" crossorigin="use-credentials">
<meta name="msapplication-TileColor" content="<%=bar_color%>">
<meta name="msapplication-TileImage" content="<%=media%>/icon/ms-icon-144x144.png">
<meta name="theme-color" content="<%=bar_color%>">
<link rel="stylesheet" href="<%=media%>/css/cascade.css<%# ?v=PKG_VERSION %>">
<style title="text/css">
<% if mode == 'normal' then %>
@media (prefers-color-scheme: dark) {
<%=dark_css%>
}
<% elseif mode == 'dark' then %>
<%=dark_css%>
<% end -%>
<% if fs.access('/etc/config/argon') then %>
:root {
--primary: <%=primary%>;
--dark-primary: <%=dark_primary%>;
--blur-radius:<%=blur_radius%>px;
--blur-opacity:<%=blur_opacity%>;
--blur-radius-dark:<%=blur_radius_dark%>px;
--blur-opacity-dark:<%=blur_opacity_dark%>;
}
<% end -%>
</style>
<link rel="shortcut icon" href="<%=media%>/favicon.ico">
<% if node and node.css then %>
<link rel="stylesheet" href="<%=resource%>/<%=node.css%>">
<% end -%>
<% if css then %>
<style title="text/css">
<%=css %>
</style>
<% end -%>
<script src="<%=media%>/js/jquery.min.js?v=3.5.1"></script>
</head>

View file

@ -1,27 +0,0 @@
<%#
Copyright 2008 Steven Barth <steven@midlink.org>
Copyright 2008-2019 Jo-Philipp Wich <jo@mein.io>
Licensed to the public under the Apache License 2.0.
-%>
<%
local is_rollback_pending, rollback_time_remaining, rollback_session, rollback_token = luci.model.uci:rollback_pending()
if is_rollback_pending or trigger_apply or trigger_revert then
%>
<script type="text/javascript">
document.addEventListener("luci-loaded", function() {
<% if trigger_apply then -%>
L.ui.changes.apply(true);
<%- elseif trigger_revert then -%>
L.ui.changes.revert();
<%- else -%>
L.ui.changes.confirm(true, Date.now() + <%=rollback_time_remaining%> * 1000, <%=luci.http.write_json(rollback_token)%>);
<%- end %>
});
</script>
<%
end
include("themes/" .. theme .. "/footer_login")
%>

View file

@ -42,12 +42,12 @@
end
local imageTypes = " jpg png gif "
local imageTypes = " jpg png gif webp "
local videoTypes = " mp4 webm "
local allTypes = imageTypes .. videoTypes
local function fetchMedia(path,themeDir)
local backgroundTable = {}
local backgroundCount = 0
local function fetchMedia(path, themeDir)
local backgroundTable = {}
local backgroundCount = 0
for i, f in ipairs(glob(path)) do
attr = fs.stat(f)
if attr then
@ -59,43 +59,44 @@
local bg = {}
bg.type = ext
bg.url = themeDir .. fs.basename(f)
table.insert(backgroundTable,bg)
table.insert(backgroundTable, bg)
backgroundCount = backgroundCount + 1
end
end
end
return backgroundTable,backgroundCount
return backgroundTable, backgroundCount
end
local function selectBackground(themeDir)
local bgUrl = media .. "/img/bg1.jpg"
local backgroundType = "Image"
local mimeType = ""
local bgUrl = media .. "/img/bg1.jpg"
local backgroundType = "Image"
local mimeType = ""
if fs.access("/etc/config/argon") then
if uci:get_first('argon', 'global', 'bing_background') == "1" then
local bing = sys.exec("/usr/libexec/argon/bing_wallpaper")
if (bing and bing ~= '') then
return bing, "Image", ""
local online_wallpaper = uci:get_first('argon', 'global', 'online_wallpaper') or (uci:get_first('argon', 'global', 'bing_background') == '1' and 'bing')
if (online_wallpaper and online_wallpaper ~= "none") then
local picurl = sys.exec("/usr/libexec/argon/online_wallpaper")
if (picurl and picurl ~= '') then
return picurl, "Image", ""
end
end
end
local backgroundTable, backgroundCount = fetchMedia("/www" .. themeDir .. "*",themeDir)
local backgroundTable, backgroundCount = fetchMedia("/www" .. themeDir .. "*", themeDir)
if ( backgroundCount > 0 ) then
local currentBg = backgroundTable[math.random(1,backgroundCount)]
bgUrl = currentBg.url
local currentBg = backgroundTable[math.random(1, backgroundCount)]
bgUrl = currentBg.url
if (string.match(videoTypes, " "..currentBg.type.." ") ~= nil) then
backgroundType = "Video"
mimeType = "video/" .. currentBg.type
backgroundType = "Video"
mimeType = "video/" .. currentBg.type
end
end
return bgUrl,backgroundType,mimeType
return bgUrl, backgroundType, mimeType
end
local boardinfo = util.ubus("system", "board")
local themeDir = media .. "/background/"
local bgUrl,backgroundType,mimeType = selectBackground(themeDir)
local bgUrl, backgroundType, mimeType = selectBackground(themeDir)
%>
<!-- Login Page Start -->
<div class="login-page">
@ -129,7 +130,7 @@
<div class="login-form">
<!-- Logo Start -->
<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>
<span class="brand-text"><%=striptags( (boardinfo.hostname or "?") ) %></span>
</a>
<!-- Logo End -->
<!-- Login Form Start -->
@ -150,7 +151,7 @@
</div>
</div>
<div>
<input type="submit" value="<%:Login%>" class="cbi-button cbi-button-apply" />
<input type="submit" value="<%:Log in%>" class="cbi-button cbi-button-apply" />
</div>
</form>
<!-- Login Form End -->
@ -159,28 +160,4 @@
if (input)
input.focus();
//]]></script>
<%
local uci = require "luci.model.uci".cursor()
local fs = require "nixio.fs"
local https_key = uci:get("uhttpd", "main", "key")
local https_port = uci:get("uhttpd", "main", "listen_https")
if type(https_port) == "table" then
https_port = https_port[1]
end
if https_port and fs.access(https_key) then
https_port = https_port:match("(%d+)$")
%>
<script type="text/javascript">//<![CDATA[
if (document.location.protocol != 'https:') {
var url = 'https://' + window.location.hostname + ':' + '<%=https_port%>' + window.location.pathname;
var img = new Image;
img.onload = function () { window.location = url };
img.src = 'https://' + window.location.hostname + ':' + '<%=https_port%>' + '<%=resource%>/cbi/up.gif?' + Math.random();;
setTimeout(function () {
img.src = ''
}, 5000);
}
//]]></script>
<% end %>
<%+themes/argon/out_footer_login%>
<%+themes/argon/footer_login%>

View file

@ -1,52 +0,0 @@
#!/bin/sh
# author jjm2473
BING_BASE=http://www.bing.com
CACHE=/var/run/argon_bing.url
WRLOCK=/var/lock/argon_bing.lock
fetch_url_path() {
curl --fail --show-error --max-time 1 \
"$BING_BASE/HPImageArchive.aspx?format=js&idx=0&n=1&mkt=en-US" 2>/dev/null \
| jsonfilter -q -e '@.images[0].url'
}
try_update() {
local lock="$WRLOCK"
exec 200>$lock
if flock -n 200 >/dev/null 2>&1; then
local path=`fetch_url_path`
if [ -n "$path" ]; then
echo "${BING_BASE}${path}" | tee "$CACHE"
else
if [ -s "$CACHE" ]; then
cat "$CACHE"
else
touch "$CACHE"
fi
fi
flock -u 200 >/dev/null 2>&1
elif [ -s "$CACHE" ]; then
cat "$CACHE"
fi
}
get_url() {
if [ -f "$CACHE" ]; then
local idle_t=$((`date '+%s'` - `date -r "$CACHE" '+%s' 2>/dev/null || echo '0'`))
if [ -s "$CACHE" ]; then
if [ $idle_t -le 43200 ]; then
cat "$CACHE"
return
fi
else
if [ $idle_t -le 120 ]; then
return
fi
fi
fi
try_update
}
get_url

View file

@ -0,0 +1,105 @@
#!/bin/sh
# author jjm2473
# the script will be excuted when `argon.@global[0].bing_background == '1'`
# defaults to 'bing' to be compatible with old config
WEB_PIC_SRC=$(uci -q get argon.@global[0].online_wallpaper || echo 'bing')
# For now, the next two variables are used for wallhaven.cc with specified Tag ID
# API_KEY if user has an account with wallhaven and want to use their apikey to allow for more images
# EXACT_RESO is used for exact resolution by default, if not use 'atleast' instead of 'resolutions'
API_KEY=$(uci -q get argon.@global[0].use_api_key)
EXACT_RESO=$(uci -q get argon.@global[0].use_exact_resolution || echo '1')
CACHE=/var/run/argon_${WEB_PIC_SRC}.url
WRLOCK=/var/lock/argon_${WEB_PIC_SRC}.lock
fetch_pic_url() {
case $WEB_PIC_SRC in
bing)
local picpath=$(curl -fks --max-time 3 \
"https://www.bing.com/HPImageArchive.aspx?format=js&n=1" |
jsonfilter -qe '@.images[0].url')
[ -n "${picpath}" ] && echo "//www.bing.com${picpath}"
;;
unsplash)
if [ -z "$API_KEY" ]; then
curl -fks --max-time 3 \
"https://source.unsplash.com/1920x1080/daily?wallpapers" |
sed -E 's#^.*href="([^?]+)\?.*$#\1?fm=jpg\&fit=crop\&w=1920\&h=1080#'
else
curl -fks --max-time 3 \
"https://api.unsplash.com/photos/random?client_id=${API_KEY}" |
jsonfilter -qe '@["urls"]["regular"]'
fi
;;
unsplash_*)
local collection_id=${WEB_PIC_SRC#unsplash_}
if [ -z "$API_KEY" ]; then
curl -fks --max-time 3 \
"https://source.unsplash.com/collection/${collection_id}/1920x1080" |
sed -E 's#^.*href="([^?]+)\?.*$#\1?fm=jpg\&fit=crop\&w=1920\&h=1080#'
else
curl -fks --max-time 3 \
"https://api.unsplash.com/photos/random?client_id=${API_KEY}&collections=${collection_id}" |
jsonfilter -qe '@["urls"]["regular"]'
fi
;;
wallhaven)
curl -fks --max-time 3 \
"https://wallhaven.cc/api/v1/search?resolutions=1920x1080&sorting=random" |
jsonfilter -qe '@.data[0].path'
;;
wallhaven_*)
local tag_id=${WEB_PIC_SRC#wallhaven_}
local has_api_key=""
[ -n "$API_KEY" ] && has_api_key="apikey=$API_KEY&" || has_api_key=""
local use_reso="resolutions"
[ "$EXACT_RESO" -eq "1" ] && use_reso='resolutions' || use_reso='atleast'
curl -fks --max-time 3 \
"https://wallhaven.cc/api/v1/search?${has_api_key}q=id%3A${tag_id}&${use_reso}=1920x1080&sorting=random" |
jsonfilter -qe '@.data[0].path'
;;
esac
}
try_update() {
local lock="$WRLOCK"
exec 200>$lock
if flock -n 200 >/dev/null 2>&1; then
local picurl=$(fetch_pic_url)
if [[ "$WEB_PIC_SRC" == wallhave* ]] ; then
curl -fks --max-time 3 --url "${picurl}" > /dev/null
fi
if [ -n "$picurl" ]; then
echo "${picurl}" | tee "$CACHE"
else
if [ -s "$CACHE" ]; then
cat "$CACHE"
else
touch "$CACHE"
fi
fi
flock -u 200 >/dev/null 2>&1
elif [ -s "$CACHE" ]; then
cat "$CACHE"
fi
}
get_url() {
if [ -f "$CACHE" ]; then
local idle_t=$(($(date '+%s') - $(date -r "$CACHE" '+%s' 2>/dev/null || echo '0')))
if [ -s "$CACHE" ]; then
if [ $idle_t -le 43200 ]; then
cat "$CACHE"
return
fi
else
if [ $idle_t -le 120 ]; then
return
fi
fi
fi
try_update
}
get_url