Update luci-theme-argon
|
@ -8,8 +8,10 @@ include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
LUCI_TITLE:=Argon Theme
|
LUCI_TITLE:=Argon Theme
|
||||||
LUCI_DEPENDS:=+curl +jsonfilter
|
LUCI_DEPENDS:=+curl +jsonfilter
|
||||||
PKG_VERSION:=2.2.9.4
|
PKG_VERSION:=2.3.1
|
||||||
PKG_RELEASE:=20220425
|
PKG_RELEASE:=20230420
|
||||||
|
|
||||||
|
CONFIG_LUCI_CSSTIDY:=
|
||||||
|
|
||||||
include $(TOPDIR)/feeds/luci/luci.mk
|
include $(TOPDIR)/feeds/luci/luci.mk
|
||||||
|
|
||||||
|
|
|
@ -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">
|
<div align="center">
|
||||||
<img src="https://raw.githubusercontent.com/jerrykuku/staff/master/argon_title2.png" >
|
<img src="https://raw.githubusercontent.com/jerrykuku/staff/master/argon_title4.svg">
|
||||||
<h1 align="center">
|
|
||||||
A new LuCI theme for OpenWrt
|
# A brand new OpenWrt LuCI theme
|
||||||
</h1>
|
|
||||||
<h3 align="center">
|
Argon is **a clean and tidy OpenWrt LuCI theme** that allows<br/>
|
||||||
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>
|
users to customize their login interface with images or videos.
|
||||||
</h3>
|
It also supports automatic and manual switching between light and dark modes.
|
||||||
<a href="/LICENSE">
|
|
||||||
<img src="https://img.shields.io/github/license/jerrykuku/luci-theme-argon?style=flat-square&a=1" alt="">
|
[![license][license-badge]][license]
|
||||||
</a>
|
[![prs][prs-badge]][prs]
|
||||||
<a href="https://github.com/jerrykuku/luci-theme-argon/pulls">
|
[![issues][issues-badge]][issues]
|
||||||
<img src="https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square" alt="">
|
[![release][release-badge]][release]
|
||||||
</a><a href="https://github.com/jerrykuku/luci-theme-argon/issues/new">
|
[![download][download-badge]][download]
|
||||||
<img src="https://img.shields.io/badge/Issues-welcome-brightgreen.svg?style=flat-square">
|
[![contact][contact-badge]][contact]
|
||||||
</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">
|
**English** |
|
||||||
</a><a href="hhttps://github.com/jerrykuku/luci-theme-argon/releases">
|
[简体中文][zh-cn-link]
|
||||||
<img src="https://img.shields.io/github/downloads/jerrykuku/luci-theme-argon/total?style=flat-square">
|
|
||||||
</a><a href="https://t.me/jerryk6">
|
[Key Features](#key-features) •
|
||||||
<img src="https://img.shields.io/badge/Contact-telegram-blue?style=flat-square">
|
[Branch](#branch-introduction) •
|
||||||
</a>
|
[Version History](#version-history) •
|
||||||
</div>
|
[Getting started](#getting-started) •
|
||||||
<br>
|
[Screenshots](#screenshots) •
|
||||||
<div align="center">
|
[Contributors](#contributors) •
|
||||||
<img src="https://raw.githubusercontent.com/jerrykuku/staff/master/argon2.gif">
|
[Credits](#credits)
|
||||||
|
|
||||||
|
<img src="https://raw.githubusercontent.com/jerrykuku/staff/master/argon2.gif">
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<br>English | [简体中文](README_ZH.md)
|
## Key Features
|
||||||
|
|
||||||
## Notice
|
- Clean Layout.
|
||||||
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.
|
- Adapted to mobile display.
|
||||||
The mainline version of IE series currently has bugs to be resolved.
|
- Customizable theme colors.
|
||||||
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
|
- 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.
|
## Branch Introduction
|
||||||
You can checkout branch 18.06 for OpenWRT 18.06 or lean 19.07.
|
|
||||||
|
|
||||||
## 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
|
| Branch | Version | Description | Matching source |
|
||||||
- 【v2.2.9】Unify the settings of css spacing
|
| ------ | ------- | ---------------------------------- | --------------------------------------------------------- |
|
||||||
- 【v2.2.9】Refactored the code of the login page
|
| master | v2.x.x | Support the latest version of LuCI | [Official OpenWrt][official] • [ImmortalWrt][immortalwrt] |
|
||||||
- 【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.
|
| 18.06 | v1.x.x | Support the 18.06 version of LuCI | [Lean's LEDE][lede] |
|
||||||
- 【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.
|
|
||||||
|
|
||||||
## 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
|
||||||
cd lede/package/lean
|
|
||||||
rm -rf luci-theme-argon
|
```bash
|
||||||
git clone -b 18.06 https://github.com/jerrykuku/luci-theme-argon.git
|
cd lede/package/lean
|
||||||
make menuconfig #choose LUCI->Theme->Luci-theme-argon
|
rm -rf luci-theme-argon
|
||||||
make -j1 V=s
|
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
|
cd openwrt/package
|
||||||
git clone https://github.com/jerrykuku/luci-theme-argon.git
|
git clone https://github.com/jerrykuku/luci-theme-argon.git
|
||||||
make menuconfig #choose LUCI->Theme->Luci-theme-argon
|
make menuconfig #choose LUCI->Theme->Luci-theme-argon
|
||||||
make -j1 V=s
|
make -j1 V=s
|
||||||
```
|
```
|
||||||
|
|
||||||
## How to Install
|
### Install for LuCI 18.06 ( Lean's LEDE )
|
||||||
|
|
||||||
### For Lean openwrt 18.06 LuCI
|
```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
|
||||||
```
|
|
||||||
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
|
|
||||||
opkg install luci-theme-argon*.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-compat
|
||||||
opkg install luci-lib-ipkg
|
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
|
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/)
|
||||||
|
|
|
@ -1,110 +1,157 @@
|
||||||
<div align="center">
|
<!-- markdownlint-configure-file {
|
||||||
<img src="https://raw.githubusercontent.com/jerrykuku/staff/master/argon_title2.png" >
|
"MD013": {
|
||||||
<h1 align="center">
|
"code_blocks": false,
|
||||||
全新的 Openwrt 主题
|
"tables": false,
|
||||||
</h1>
|
"line_length":200
|
||||||
<h3 align="center">
|
},
|
||||||
Argon 是一个干净整洁的Openwrt主题,用户可以自定义登录界面,<br>包含图片或者视频,同时支持深色浅色的自动与手动切换
|
"MD033": false,
|
||||||
</h3>
|
"MD041": false
|
||||||
|
} -->
|
||||||
|
|
||||||
<a href="/LICENSE">
|
[license]: /LICENSE
|
||||||
<img src="https://img.shields.io/github/license/jerrykuku/luci-theme-argon?style=flat-square&a=1" alt="">
|
[license-badge]: https://img.shields.io/github/license/jerrykuku/luci-theme-argon?style=flat-square&a=1
|
||||||
</a><a href="https://github.com/jerrykuku/luci-theme-argon/pulls">
|
[prs]: https://github.com/jerrykuku/luci-theme-argon/pulls
|
||||||
<img src="https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square" alt="">
|
[prs-badge]: https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square
|
||||||
</a><a href="https://github.com/jerrykuku/luci-theme-argon/issues/new">
|
[issues]: https://github.com/jerrykuku/luci-theme-argon/issues/new
|
||||||
<img src="https://img.shields.io/badge/Issues-welcome-brightgreen.svg?style=flat-square">
|
[issues-badge]: https://img.shields.io/badge/Issues-welcome-brightgreen.svg?style=flat-square
|
||||||
</a><a href="https://github.com/jerrykuku/luci-theme-argon/releases">
|
[release]: https://github.com/jerrykuku/luci-theme-argon/releases
|
||||||
<img src="https://img.shields.io/github/release/jerrykuku/luci-theme-argon.svg?style=flat-square">
|
[release-badge]: https://img.shields.io/github/v/release/jerrykuku/luci-theme-argon?include_prereleases&style=flat-square
|
||||||
</a><a href="hhttps://github.com/jerrykuku/luci-theme-argon/releases">
|
[download]: https://github.com/jerrykuku/luci-theme-argon/releases
|
||||||
<img src="https://img.shields.io/github/downloads/jerrykuku/luci-theme-argon/total?style=flat-square">
|
[download-badge]: https://img.shields.io/github/downloads/jerrykuku/luci-theme-argon/total?style=flat-square
|
||||||
</a><a href="https://t.me/jerryk6">
|
[contact]: https://t.me/jerryk6
|
||||||
<img src="https://img.shields.io/badge/Contact-telegram-blue?style=flat-square">
|
[contact-badge]: https://img.shields.io/badge/Contact-telegram-blue?style=flat-square
|
||||||
</a>
|
[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>
|
</div>
|
||||||
|
|
||||||
![](/Screenshots/screenshot_pc.jpg)
|
## 特色
|
||||||
![](/Screenshots/screenshot_phone.jpg)
|
|
||||||
|
|
||||||
|
- 干净整洁的布局。
|
||||||
|
- 适配移动端显示。
|
||||||
|
- 可自定义主题颜色。
|
||||||
|
- 支持使用 Bing 图片作为登录背景。
|
||||||
|
- 支持自定义上传图片或视频作为登录背景。
|
||||||
|
- 通过系统自动在明暗模式之间切换,也可设置为固定模式。
|
||||||
|
- 带有扩展功能的设置插件 [luci-app-argon-config][config-link]
|
||||||
|
|
||||||
|
## 分支介绍
|
||||||
|
|
||||||
|
目前有两个主要的分支,适应于不同版本的**OpenWrt**源代码。
|
||||||
|
下表为详细的介绍:
|
||||||
|
|
||||||
|
| 分支 | 版本 | 介绍 | 匹配源码 |
|
||||||
|
| ------ | ------ | --------------------------- | ----------------------------------------------------- |
|
||||||
|
| master | v2.x.x | 支持最新和比较新版本的 LuCI | [官方 OpenWrt][official] • [ImmortalWrt][immortalwrt] |
|
||||||
|
| 18.06 | v1.x.x | 支持 18.06 版本的 LuCI | [Lean's LEDE][lede] |
|
||||||
|
|
||||||
|
## 版本历史
|
||||||
|
|
||||||
|
当前最新的版本为 v2.3.1 [点击这里][zh-cn-release-log]查看完整的版本历史日志.
|
||||||
|
|
||||||
|
## 快速开始
|
||||||
|
|
||||||
|
### 使用 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 luci-theme-argon
|
||||||
|
make menuconfig #choose LUCI->Theme->Luci-theme-argon
|
||||||
|
make -j1 V=s
|
||||||
|
```
|
||||||
|
|
||||||
|
### 使用官方 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 )
|
||||||
|
|
||||||
|
```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
|
||||||
|
```
|
||||||
|
|
||||||
|
### 在官方和 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.3.1/luci-theme-argon_2.3.1_all.ipk
|
||||||
|
opkg install luci-theme-argon*.ipk
|
||||||
|
```
|
||||||
|
|
||||||
|
### 安装 luci-app-argon-config
|
||||||
|
|
||||||
|
```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有最佳的兼容性。
|
|
||||||
主线版本 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代码 请选择这个版本]
|
|
||||||
|
|
||||||
|
- 强烈建议使用 Chrome 浏览器。这个主题中使用了一些新的 css3 功能,目前只有 Chrome 浏览器有最好的兼容性。
|
||||||
|
- 微软已正式退役 Internet Explorer,安息吧 IE🙏<del>目前,IE 系列的主线版本有需要解决的错误。</del>
|
||||||
|
- FireFox 默认不启用 backdrop-filter,[见这里](https://developer.mozilla.org/zh-CN/docs/Web/CSS/backdrop-filter)的打开方法。
|
||||||
|
|
||||||
## 更新日志 2021.10.16 v2.2.9
|
## 屏幕截图
|
||||||
|
|
||||||
- 【v2.2.9】修复了在手机模式下无法弹出菜单的bug
|
![desktop](/Screenshots/screenshot_pc.jpg)
|
||||||
- 【v2.2.9】统一css间距的设置
|
![mobile](/Screenshots/screenshot_phone.jpg)
|
||||||
- 【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】自动适应的暗黑模式。
|
|
||||||
|
|
||||||
## 如何编译
|
## 贡献者
|
||||||
|
|
||||||
进入 openwrt/package/lean 或者其他目录
|
<a href="https://github.com/jerrykuku/luci-theme-argon/graphs/contributors">
|
||||||
|
<img src="https://contrib.rocks/image?repo=jerrykuku/luci-theme-argon" />
|
||||||
|
</a>
|
||||||
|
|
||||||
### Lean源码
|
Made with [contrib.rocks](https://contrib.rocks).
|
||||||
|
|
||||||
```
|
## 相关项目
|
||||||
cd lede/package/lean
|
|
||||||
rm -rf luci-theme-argon
|
|
||||||
git clone -b 18.06 https://github.com/jerrykuku/luci-theme-argon.git
|
|
||||||
make menuconfig #choose LUCI->Theme->Luci-theme-argon
|
|
||||||
make -j1 V=s
|
|
||||||
```
|
|
||||||
|
|
||||||
### Openwrt 官方源码
|
- [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): 一个简单、易用且优雅的开源个人家庭云系统(我目前主要开发的项目)
|
||||||
|
|
||||||
```
|
## 鸣谢
|
||||||
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
|
|
||||||
```
|
|
||||||
|
|
||||||
## 如何安装
|
[luci-theme-material](https://github.com/LuttyYang/luci-theme-material/)
|
||||||
|
|
||||||
### 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
|
|
||||||
opkg install luci-theme-argon*.ipk
|
|
||||||
```
|
|
||||||
|
|
||||||
### For openwrt official 19.07 Snapshots LuCI master
|
|
||||||
|
|
||||||
```
|
|
||||||
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
|
|
||||||
opkg install luci-theme-argon*.ipk
|
|
||||||
```
|
|
||||||
|
|
||||||
## 感谢
|
|
||||||
|
|
||||||
luci-theme-material: https://github.com/LuttyYang/luci-theme-material/
|
|
||||||
|
|
73
luci-theme-argon/RELEASE.md
Normal 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.
|
71
luci-theme-argon/RELEASE_ZH.md
Normal 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 文件。
|
||||||
|
- 自动适应的暗黑模式。
|
Before Width: | Height: | Size: 15 KiB |
BIN
luci-theme-argon/htdocs/luci-static/argon/favicon.png
Normal file
After Width: | Height: | Size: 535 B |
Before Width: | Height: | Size: 6.3 KiB After Width: | Height: | Size: 8.1 KiB |
Before Width: | Height: | Size: 5.1 KiB After Width: | Height: | Size: 6.4 KiB |
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 3.5 KiB |
Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 3.9 KiB |
|
@ -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 |
Before Width: | Height: | Size: 1,019 B After Width: | Height: | Size: 2 KiB |
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 2.5 KiB |
Before Width: | Height: | Size: 3.6 KiB After Width: | Height: | Size: 4.7 KiB |
BIN
luci-theme-argon/htdocs/luci-static/argon/icon/favicon.png
Normal file
After Width: | Height: | Size: 535 B |
|
@ -1,41 +1,41 @@
|
||||||
{
|
{
|
||||||
"name": "Openwrt",
|
"name": "Openwrt",
|
||||||
"icons": [
|
"icons": [
|
||||||
{
|
{
|
||||||
"src": "\/android-icon-36x36.png",
|
"src": "\/android-icon-36x36.png",
|
||||||
"sizes": "36x36",
|
"sizes": "36x36",
|
||||||
"type": "image\/png",
|
"type": "image\/png",
|
||||||
"density": "0.75"
|
"density": "0.75"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"src": "\/android-icon-48x48.png",
|
"src": "\/android-icon-48x48.png",
|
||||||
"sizes": "48x48",
|
"sizes": "48x48",
|
||||||
"type": "image\/png",
|
"type": "image\/png",
|
||||||
"density": "1.0"
|
"density": "1.0"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"src": "\/android-icon-72x72.png",
|
"src": "\/android-icon-72x72.png",
|
||||||
"sizes": "72x72",
|
"sizes": "72x72",
|
||||||
"type": "image\/png",
|
"type": "image\/png",
|
||||||
"density": "1.5"
|
"density": "1.5"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"src": "\/android-icon-96x96.png",
|
"src": "\/android-icon-96x96.png",
|
||||||
"sizes": "96x96",
|
"sizes": "96x96",
|
||||||
"type": "image\/png",
|
"type": "image\/png",
|
||||||
"density": "2.0"
|
"density": "2.0"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"src": "\/android-icon-144x144.png",
|
"src": "\/android-icon-144x144.png",
|
||||||
"sizes": "144x144",
|
"sizes": "144x144",
|
||||||
"type": "image\/png",
|
"type": "image\/png",
|
||||||
"density": "3.0"
|
"density": "3.0"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"src": "\/android-icon-192x192.png",
|
"src": "\/android-icon-192x192.png",
|
||||||
"sizes": "192x192",
|
"sizes": "192x192",
|
||||||
"type": "image\/png",
|
"type": "image\/png",
|
||||||
"density": "4.0"
|
"density": "4.0"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
Before Width: | Height: | Size: 5.1 KiB After Width: | Height: | Size: 6.4 KiB |
|
@ -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 |
|
@ -1,61 +1,37 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!-- Generator: Adobe Illustrator 23.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
<!-- Generator: Adobe Illustrator 27.5.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"
|
<svg version="1.1" id="图层_1" xmlns:svg="http://www.w3.org/2000/svg"
|
||||||
viewBox="0 0 256 256" style="enable-background:new 0 0 256 256;" xml:space="preserve">
|
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 type="text/css">
|
style="enable-background:new 0 0 256 256;" xml:space="preserve">
|
||||||
.st0{fill-rule:evenodd;clip-rule:evenodd;fill:url(#SVGID_1_);}
|
<style type="text/css">
|
||||||
.st1{fill-rule:evenodd;clip-rule:evenodd;fill:url(#SVGID_2_);}
|
.st0{fill-rule:evenodd;clip-rule:evenodd;fill:url(#svg_2_00000009581766544743910510000007087157279682564742_);}
|
||||||
.st2{fill:#FFFFFF;}
|
.st1{fill-rule:evenodd;clip-rule:evenodd;fill:url(#svg_3_00000013155245276689480680000010334395393893521599_);}
|
||||||
</style>
|
.st2{fill:#FFFFFF;}
|
||||||
<g>
|
</style>
|
||||||
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="11.1379" y1="10.6499" x2="245.5302" y2="245.0422">
|
<g>
|
||||||
<stop offset="0" style="stop-color:#5E72E4"/>
|
<g id="svg_1">
|
||||||
<stop offset="1" style="stop-color:#778AFF"/>
|
|
||||||
</linearGradient>
|
<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)">
|
||||||
<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
|
<stop offset="0" style="stop-color:#5E72E4"/>
|
||||||
V35.9C0.7,16.2,16.7,0.2,36.4,0.2z"/>
|
<stop offset="1" style="stop-color:#778AFF"/>
|
||||||
<linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="0.6679" y1="0.18" x2="0.6679" y2="0.18">
|
</linearGradient>
|
||||||
<stop offset="0" style="stop-color:#5E72E4"/>
|
|
||||||
<stop offset="1" style="stop-color:#778AFF"/>
|
<path id="svg_2" style="fill-rule:evenodd;clip-rule:evenodd;fill:url(#svg_2_00000043442590260727270070000016472210641679865270_);" d="
|
||||||
</linearGradient>
|
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
|
||||||
<path class="st1" d="M0.7,0.2"/>
|
C0.7,16.2,16.7,0.2,36.4,0.2z"/>
|
||||||
</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
|
<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)">
|
||||||
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
|
<stop offset="0" style="stop-color:#5E72E4"/>
|
||||||
C207.8,68.2,172.2,32.6,128.3,32.6z"/>
|
<stop offset="1" style="stop-color:#778AFF"/>
|
||||||
<g>
|
</linearGradient>
|
||||||
<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
|
<path id="svg_3" style="fill-rule:evenodd;clip-rule:evenodd;fill:url(#svg_3_00000010280352489557108120000000938545297310085033_);" d="
|
||||||
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
|
M0.7,0.2"/>
|
||||||
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
|
</g>
|
||||||
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
|
<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
|
||||||
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
|
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
|
||||||
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
|
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
|
||||||
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"/>
|
C212.8,83.3,174.9,45.4,128.3,45.4L128.3,45.4z"/>
|
||||||
<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
|
</g>
|
||||||
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
|
<circle class="st2" cx="128.3" cy="131.6" r="18.3"/>
|
||||||
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
|
</svg>
|
||||||
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>
|
|
||||||
</svg>
|
|
||||||
|
|
Before Width: | Height: | Size: 4.9 KiB After Width: | Height: | Size: 2.3 KiB |
|
@ -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 |
|
@ -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 |
|
@ -78,7 +78,7 @@ return baseclass.extend({
|
||||||
submenu = this.renderMainMenu(children[i], url + '/' + children[i].name, l),
|
submenu = this.renderMainMenu(children[i], url + '/' + children[i].name, l),
|
||||||
hasChildren = submenu.children.length,
|
hasChildren = submenu.children.length,
|
||||||
slideClass = hasChildren ? 'slide' : null,
|
slideClass = hasChildren ? 'slide' : null,
|
||||||
menuClass = hasChildren ? 'menu' : null;
|
menuClass = hasChildren ? 'menu' : 'food';
|
||||||
if (isActive) {
|
if (isActive) {
|
||||||
ul.classList.add('active');
|
ul.classList.add('active');
|
||||||
slideClass += " active";
|
slideClass += " active";
|
||||||
|
|
4616
luci-theme-argon/less/cascade.less
Normal file
|
@ -20,8 +20,8 @@
|
||||||
</div>
|
</div>
|
||||||
<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" target="_blank">Powered by <%= ver.luciname %> (<%= ver.luciversion %>)</a> /
|
||||||
<a href="https://github.com/jerrykuku/luci-theme-argon">ArgonTheme <%# vPKG_VERSION %></a> /
|
<a href="https://github.com/jerrykuku/luci-theme-argon" target="_blank">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>
|
||||||
|
|
|
@ -20,8 +20,8 @@
|
||||||
</div>
|
</div>
|
||||||
<footer>
|
<footer>
|
||||||
<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" target="_blank">Powered by <%= ver.luciname %> (<%= ver.luciversion %>)</a> /
|
||||||
<a href="https://github.com/jerrykuku/luci-theme-argon">ArgonTheme <%# vPKG_VERSION %></a> /
|
<a href="https://github.com/jerrykuku/luci-theme-argon" target="_blank">ArgonTheme <%# vPKG_VERSION %></a> /
|
||||||
<%= ver.distversion %>
|
<%= ver.distversion %>
|
||||||
</div>
|
</div>
|
||||||
</footer>
|
</footer>
|
||||||
|
|
|
@ -59,54 +59,66 @@
|
||||||
<html lang="<%=luci.i18n.context.lang%>">
|
<html lang="<%=luci.i18n.context.lang%>">
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<title>
|
<title>
|
||||||
<%=striptags( (boardinfo.hostname or "?") .. ( (node and node.title) and ' - ' .. translate(node.title) or '')) %>
|
<%=striptags( (boardinfo.hostname or "?") .. ( (node and node.title) and ' - ' .. translate(node.title) or '')) %>
|
||||||
- LuCI</title>
|
- LuCI</title>
|
||||||
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport" />
|
<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="format-detection" content="telephone=no, email=no" />
|
||||||
<meta name="apple-mobile-web-app-capable" content="yes">
|
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||||
<meta name="mobile-web-app-capable" content="yes">
|
<meta name="mobile-web-app-capable" content="yes">
|
||||||
<meta name="x5-fullscreen" content="true">
|
<meta name="x5-fullscreen" content="true">
|
||||||
<meta name="full-screen" content="yes">
|
<meta name="full-screen" content="yes">
|
||||||
<meta name="x5-page-mode" content="app">
|
<meta name="x5-page-mode" content="app">
|
||||||
<meta name="browsermode" content="application">
|
<meta name="browsermode" content="application">
|
||||||
<meta name="msapplication-tap-highlight" content="no">
|
<meta name="msapplication-tap-highlight" content="no">
|
||||||
<meta name="msapplication-TileColor" content="<%=bar_color%>">
|
<meta name="msapplication-TileColor" content="<%=bar_color%>">
|
||||||
<meta name="application-name" content="<%=striptags( (boardinfo.hostname or "?") ) %> - LuCI">
|
<meta name="application-name" content="<%=striptags( (boardinfo.hostname or "?") ) %> - LuCI">
|
||||||
<meta name="apple-mobile-web-app-title" 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="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="72x72" href="<%=media%>/icon/apple-icon-72x72.png">
|
||||||
<link rel="apple-touch-icon" sizes="144x144" href="<%=media%>/icon/apple-icon-144x144.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="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="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="96x96" href="<%=media%>/icon/favicon-96x96.png">
|
||||||
<link rel="icon" type="image/png" sizes="16x16" href="<%=media%>/icon/favicon-16x16.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">
|
<link rel="manifest" href="<%=media%>/icon/manifest.json" crossorigin="use-credentials">
|
||||||
<meta name="msapplication-TileColor" content="<%=bar_color%>">
|
<meta name="msapplication-TileColor" content="<%=bar_color%>">
|
||||||
<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="<%=bar_color%>">
|
<meta name="theme-color" content="<%=bar_color%>">
|
||||||
<link rel="stylesheet" href="<%=media%>/css/cascade.css<%# ?v=PKG_VERSION %>">
|
<link rel="stylesheet" href="<%=media%>/css/cascade.css<%# ?v=PKG_VERSION %>">
|
||||||
<style title="text/css">
|
<style title="text/css">
|
||||||
<% if mode == 'normal' then %>
|
<% if mode ~= 'dark' then %>
|
||||||
@media (prefers-color-scheme: dark) {
|
@media (prefers-color-scheme: dark) {
|
||||||
<%=dark_css%>
|
<%=dark_css%>
|
||||||
}
|
}
|
||||||
<% elseif mode == 'dark' then %>
|
<% if fs.access('/etc/config/argon') then %>
|
||||||
<%=dark_css%>
|
:root {
|
||||||
<% end -%>
|
--primary: <%=primary%>;
|
||||||
<% if fs.access('/etc/config/argon') then %>
|
--dark-primary: <%=dark_primary%>;
|
||||||
:root {
|
--bar-bg: <%=primary%>;
|
||||||
--primary: <%=primary%>;
|
--blur-radius:<%=blur_radius%>px;
|
||||||
--dark-primary: <%=dark_primary%>;
|
--blur-opacity:<%=blur_opacity%>;
|
||||||
--blur-radius:<%=blur_radius%>px;
|
--blur-radius-dark:<%=blur_radius_dark%>px;
|
||||||
--blur-opacity:<%=blur_opacity%>;
|
--blur-opacity-dark:<%=blur_opacity_dark%>;
|
||||||
--blur-radius-dark:<%=blur_radius_dark%>px;
|
}
|
||||||
--blur-opacity-dark:<%=blur_opacity_dark%>;
|
<% end -%>
|
||||||
}
|
<% elseif mode == 'dark' then %>
|
||||||
<% end -%>
|
<%=dark_css%>
|
||||||
</style>
|
<% if fs.access('/etc/config/argon') then %>
|
||||||
<link rel="shortcut icon" href="<%=media%>/favicon.ico">
|
: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 %>
|
<% if node and node.css then %>
|
||||||
<link rel="stylesheet" href="<%=resource%>/<%=node.css%>">
|
<link rel="stylesheet" href="<%=resource%>/<%=node.css%>">
|
||||||
<% end -%>
|
<% end -%>
|
||||||
|
|
|
@ -56,63 +56,63 @@
|
||||||
<html lang="<%=luci.i18n.context.lang%>">
|
<html lang="<%=luci.i18n.context.lang%>">
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<title>
|
<title>
|
||||||
<%=striptags( (boardinfo.hostname or "?") .. ( (node and node.title) and ' - ' .. translate(node.title) or '')) %>
|
<%=striptags( (boardinfo.hostname or "?") .. ( (node and node.title) and ' - ' .. translate(node.title) or '')) %>
|
||||||
- LuCI</title>
|
- LuCI</title>
|
||||||
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport" />
|
<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="format-detection" content="telephone=no, email=no" />
|
||||||
<meta name="apple-mobile-web-app-capable" content="yes">
|
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||||
<meta name="mobile-web-app-capable" content="yes">
|
<meta name="mobile-web-app-capable" content="yes">
|
||||||
<meta name="x5-fullscreen" content="true">
|
<meta name="x5-fullscreen" content="true">
|
||||||
<meta name="full-screen" content="yes">
|
<meta name="full-screen" content="yes">
|
||||||
<meta name="x5-page-mode" content="app">
|
<meta name="x5-page-mode" content="app">
|
||||||
<meta name="browsermode" content="application">
|
<meta name="browsermode" content="application">
|
||||||
<meta name="msapplication-tap-highlight" content="no">
|
<meta name="msapplication-tap-highlight" content="no">
|
||||||
<meta name="msapplication-TileColor" content="<%=bar_color%>">
|
<meta name="msapplication-TileColor" content="<%=bar_color%>">
|
||||||
<meta name="application-name" content="<%=striptags( (boardinfo.hostname or "?") ) %> - LuCI">
|
<meta name="application-name" content="<%=striptags( (boardinfo.hostname or "?") ) %> - LuCI">
|
||||||
<meta name="apple-mobile-web-app-title" 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="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="72x72" href="<%=media%>/icon/apple-icon-72x72.png">
|
||||||
<link rel="apple-touch-icon" sizes="144x144" href="<%=media%>/icon/apple-icon-144x144.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="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="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="96x96" href="<%=media%>/icon/favicon-96x96.png">
|
||||||
<link rel="icon" type="image/png" sizes="16x16" href="<%=media%>/icon/favicon-16x16.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">
|
<link rel="manifest" href="<%=media%>/icon/manifest.json" crossorigin="use-credentials">
|
||||||
<meta name="msapplication-TileColor" content="<%=bar_color%>">
|
<meta name="msapplication-TileColor" content="<%=bar_color%>">
|
||||||
<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="<%=bar_color%>">
|
<meta name="theme-color" content="<%=bar_color%>">
|
||||||
<link rel="stylesheet" href="<%=media%>/css/cascade.css<%# ?v=PKG_VERSION %>">
|
<link rel="stylesheet" href="<%=media%>/css/cascade.css<%# ?v=PKG_VERSION %>">
|
||||||
<style title="text/css">
|
<style title="text/css">
|
||||||
<% if mode == 'normal' then %>
|
<% if mode == 'normal' then %>
|
||||||
@media (prefers-color-scheme: dark) {
|
@media (prefers-color-scheme: dark) {
|
||||||
<%=dark_css%>
|
<%=dark_css%>
|
||||||
}
|
}
|
||||||
<% elseif mode == 'dark' then %>
|
<% elseif mode == 'dark' then %>
|
||||||
<%=dark_css%>
|
<%=dark_css%>
|
||||||
<% end -%>
|
<% end -%>
|
||||||
<% if fs.access('/etc/config/argon') then %>
|
<% if fs.access('/etc/config/argon') then %>
|
||||||
:root {
|
:root {
|
||||||
--primary: <%=primary%>;
|
--primary: <%=primary%>;
|
||||||
--dark-primary: <%=dark_primary%>;
|
--dark-primary: <%=dark_primary%>;
|
||||||
--blur-radius:<%=blur_radius%>px;
|
--blur-radius:<%=blur_radius%>px;
|
||||||
--blur-opacity:<%=blur_opacity%>;
|
--blur-opacity:<%=blur_opacity%>;
|
||||||
--blur-radius-dark:<%=blur_radius_dark%>px;
|
--blur-radius-dark:<%=blur_radius_dark%>px;
|
||||||
--blur-opacity-dark:<%=blur_opacity_dark%>;
|
--blur-opacity-dark:<%=blur_opacity_dark%>;
|
||||||
}
|
}
|
||||||
<% end -%>
|
<% end -%>
|
||||||
</style>
|
</style>
|
||||||
<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%>">
|
||||||
<% end -%>
|
<% end -%>
|
||||||
<% if css then %>
|
<% if css then %>
|
||||||
<style title="text/css">
|
<style title="text/css">
|
||||||
<%=css %>
|
<%=css %>
|
||||||
</style>
|
</style>
|
||||||
<% end -%>
|
<% end -%>
|
||||||
<script src="<%=media%>/js/jquery.min.js?v=3.5.1"></script>
|
<script src="<%=media%>/js/jquery.min.js?v=3.5.1"></script>
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
|
|
|
@ -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")
|
|
||||||
%>
|
|
|
@ -31,7 +31,7 @@
|
||||||
local uci = require 'luci.model.uci'.cursor()
|
local uci = require 'luci.model.uci'.cursor()
|
||||||
|
|
||||||
-- Fetch Local Background Media
|
-- Fetch Local Background Media
|
||||||
|
|
||||||
local function glob(...)
|
local function glob(...)
|
||||||
local iter, code, msg = fs.glob(...)
|
local iter, code, msg = fs.glob(...)
|
||||||
if iter then
|
if iter then
|
||||||
|
@ -42,12 +42,12 @@
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
local imageTypes = " jpg png gif "
|
local imageTypes = " jpg png gif webp "
|
||||||
local videoTypes = " mp4 webm "
|
local videoTypes = " mp4 webm "
|
||||||
local allTypes = imageTypes .. videoTypes
|
local allTypes = imageTypes .. videoTypes
|
||||||
local function fetchMedia(path,themeDir)
|
local function fetchMedia(path, themeDir)
|
||||||
local backgroundTable = {}
|
local backgroundTable = {}
|
||||||
local backgroundCount = 0
|
local backgroundCount = 0
|
||||||
for i, f in ipairs(glob(path)) do
|
for i, f in ipairs(glob(path)) do
|
||||||
attr = fs.stat(f)
|
attr = fs.stat(f)
|
||||||
if attr then
|
if attr then
|
||||||
|
@ -59,43 +59,44 @@
|
||||||
local bg = {}
|
local bg = {}
|
||||||
bg.type = ext
|
bg.type = ext
|
||||||
bg.url = themeDir .. fs.basename(f)
|
bg.url = themeDir .. fs.basename(f)
|
||||||
table.insert(backgroundTable,bg)
|
table.insert(backgroundTable, bg)
|
||||||
backgroundCount = backgroundCount + 1
|
backgroundCount = backgroundCount + 1
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
return backgroundTable,backgroundCount
|
return backgroundTable, backgroundCount
|
||||||
end
|
end
|
||||||
local function selectBackground(themeDir)
|
local function selectBackground(themeDir)
|
||||||
local bgUrl = media .. "/img/bg1.jpg"
|
local bgUrl = media .. "/img/bg1.jpg"
|
||||||
local backgroundType = "Image"
|
local backgroundType = "Image"
|
||||||
local mimeType = ""
|
local mimeType = ""
|
||||||
|
|
||||||
if fs.access("/etc/config/argon") then
|
if fs.access("/etc/config/argon") then
|
||||||
if uci:get_first('argon', 'global', 'bing_background') == "1" then
|
local online_wallpaper = uci:get_first('argon', 'global', 'online_wallpaper') or (uci:get_first('argon', 'global', 'bing_background') == '1' and 'bing')
|
||||||
local bing = sys.exec("/usr/libexec/argon/bing_wallpaper")
|
if (online_wallpaper and online_wallpaper ~= "none") then
|
||||||
if (bing and bing ~= '') then
|
local picurl = sys.exec("/usr/libexec/argon/online_wallpaper")
|
||||||
return bing, "Image", ""
|
if (picurl and picurl ~= '') then
|
||||||
|
return picurl, "Image", ""
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
local backgroundTable, backgroundCount = fetchMedia("/www" .. themeDir .. "*",themeDir)
|
local backgroundTable, backgroundCount = fetchMedia("/www" .. themeDir .. "*", themeDir)
|
||||||
if ( backgroundCount > 0 ) then
|
if ( backgroundCount > 0 ) then
|
||||||
local currentBg = backgroundTable[math.random(1,backgroundCount)]
|
local currentBg = backgroundTable[math.random(1, backgroundCount)]
|
||||||
bgUrl = currentBg.url
|
bgUrl = currentBg.url
|
||||||
if (string.match(videoTypes, " "..currentBg.type.." ") ~= nil) then
|
if (string.match(videoTypes, " "..currentBg.type.." ") ~= nil) then
|
||||||
backgroundType = "Video"
|
backgroundType = "Video"
|
||||||
mimeType = "video/" .. currentBg.type
|
mimeType = "video/" .. currentBg.type
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
return bgUrl,backgroundType,mimeType
|
return bgUrl, backgroundType, mimeType
|
||||||
end
|
end
|
||||||
|
|
||||||
local boardinfo = util.ubus("system", "board")
|
local boardinfo = util.ubus("system", "board")
|
||||||
local themeDir = media .. "/background/"
|
local themeDir = media .. "/background/"
|
||||||
local bgUrl,backgroundType,mimeType = selectBackground(themeDir)
|
local bgUrl, backgroundType, mimeType = selectBackground(themeDir)
|
||||||
%>
|
%>
|
||||||
<!-- Login Page Start -->
|
<!-- Login Page Start -->
|
||||||
<div class="login-page">
|
<div class="login-page">
|
||||||
|
@ -129,7 +130,7 @@
|
||||||
<div class="login-form">
|
<div class="login-form">
|
||||||
<!-- Logo Start -->
|
<!-- Logo Start -->
|
||||||
<a class="brand" href="/"><img src="<%=media%>/img/argon.svg" class="icon">
|
<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>
|
</a>
|
||||||
<!-- Logo End -->
|
<!-- Logo End -->
|
||||||
<!-- Login Form Start -->
|
<!-- Login Form Start -->
|
||||||
|
@ -150,7 +151,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</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>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
<!-- Login Form End -->
|
<!-- Login Form End -->
|
||||||
|
@ -159,28 +160,4 @@
|
||||||
if (input)
|
if (input)
|
||||||
input.focus();
|
input.focus();
|
||||||
//]]></script>
|
//]]></script>
|
||||||
<%
|
<%+themes/argon/footer_login%>
|
||||||
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%>
|
|
||||||
|
|
|
@ -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
|
|
105
luci-theme-argon/root/usr/libexec/argon/online_wallpaper
Executable 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
|