💋 Sync 2026-11-03 13:49:21

This commit is contained in:
github-actions[bot] committed 2026-11-03 13:49:21 +08:00
1 parent e37cccd846
commit d3bdfa7f1c
8 files changed
+123 -14

No files matched your search

+3 -4
View File
@@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=apfree-wifidog
PKG_RELEASE:=10
PKG_RELEASE:=11
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/liudf0716/apfree-wifidog.git
PKG_SOURCE_DATE:=2026-10-25
PKG_SOURCE_VERSION:=9997baf26c737102940dd3a44e9d95c84dd57dab
PKG_SOURCE_DATE:=2026-11-03
PKG_SOURCE_VERSION:=f012073104f2a1aa75954b5bc0e013b14bf663d4
PKG_MIRROR_HASH:=skip
PKG_MAINTAINER:=Dengfeng Liu <liudf0716@gmail.com>
@@ -51,7 +51,6 @@ define Package/apfree-wifidog/install
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/wdctlx $(1)/usr/bin/wdctlx
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_DIR) $(1)/etc
$(INSTALL_DATA) $(PKG_BUILD_DIR)/wifidog-msg.html $(1)/etc/
$(INSTALL_DATA) $(PKG_BUILD_DIR)/wifidog-redir.html $(1)/etc/
$(INSTALL_DATA) $(PKG_BUILD_DIR)/wifidog-redir.html.front $(1)/etc/
$(INSTALL_DATA) $(PKG_BUILD_DIR)/wifidog-redir.html.rear $(1)/etc/
+2 -2
View File
@@ -5,8 +5,8 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=gately
PKG_VERSION:=0.6.3
PKG_RELEASE:=23
PKG_VERSION:=0.6.3.5
PKG_RELEASE:=24
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/wangwanjie/gately/tar.gz/v$(PKG_VERSION)?
@@ -25,7 +25,7 @@ document.querySelector('head').appendChild(E('style', [
'
]));
const hm_dir = '/var/run/fchomo';
const RUN_DIR = '/var/run/fchomo';
function getRuntimeLog(name, option_index, section_id, in_table) {
const filename = this.option.split('_')[1];
@@ -84,7 +84,7 @@ function getRuntimeLog(name, option_index, section_id, in_table) {
let log;
poll.add(function() {
return fs.read_direct(String.format('%s/%s.log', hm_dir, filename), 'text')
return fs.read_direct(String.format('%s/%s.log', RUN_DIR, filename), 'text')
.then((res) => {
log = E('pre', { 'wrap': 'pre' }, [
res.trim() || _('Log is empty.')
+2 -2
View File
@@ -1,8 +1,8 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=luci-app-open-box
PKG_VERSION:=0.1.390
PKG_RELEASE:=59
PKG_VERSION:=0.1.392
PKG_RELEASE:=60
PKG_MAINTAINER:=liandu2024
PKG_LICENSE:=GPL-3.0-or-later
+1 -1
View File
@@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=luci-theme-liquid
PKG_VERSION:=1.0
PKG_RELEASE:=3
PKG_RELEASE:=4
PKG_MAINTAINER:=然后七年 <z@7ze.top>
PKG_LICENSE:=Apache-2.0
@@ -5290,3 +5290,24 @@ body:is([data-page="admin-system-startup"], [data-page="admin/system/startup"])
min-width: min(420px, 75vw);
max-width: 75vw;
}
/* ===== 登录页防页脚遮挡(几何触发,仅重叠的设备生效)=====
#liquid-login 是 fixed 全屏 + flex 垂直居中;页脚 p.luci 是 fixed bottom:4
z-index:2001 —— 矮视口(折叠机外屏)或 iOS 工具栏展开时,卡片下半截(登录
按钮)被页脚文字压住,内屏(大屏)轻微覆盖。
main.js 实测"整个 stack(顶部胶囊+卡片)相对视口与页脚"重叠才加类:
· clear → 给页脚留 72px 净空(卡片上移,解决轻微覆盖)
· fit → 仍不行则整栈 zoom 等比缩小(小屏不滚动、页脚固定可见、
顶部胶囊不被裁——用户要求:缩小登录页所有元素比例)
其它平台视口够高 → 不重叠 → 不加类 → 渲染完全不变。
注:不靠 UA/分辨率猜设备(iOS UA 无机型信息),靠几何测量。 */
body.liquid-login.liquid-login-clear #liquid-login {
padding-bottom: 72px;
}
/* 第二级:整栈等比缩小(zoom 由 main.js 按几何计算后写入 inline style)。
目的是"小屏不滚动、页脚固定可见"(用户要求:缩小登录页所有元素比例),
同时保证顶部胶囊(暗黑模式/颜色选择)不被裁掉。 */
body.liquid-login.liquid-login-fit #liquid-login .liquid-login-stack {
/* zoom 在 inline style 上;此处只留调试标记用的 class,无强制样式 */
}
@@ -1910,6 +1910,95 @@
m.insertBefore(w.firstChild, m.firstChild);
}
/* ===== 登录页:卡片与固定页脚的重叠检测(Duo 外屏/内屏、iOS 工具栏展开等)=====
起因:外屏登录框下半截被页脚压住(连登录按钮都被盖)、内屏轻微覆盖。
为什么不用 UA/分辨率判断设备:iOS 的 EdgiOS UA 只有 OS 版本+浏览器构建号,
读不到机型与屏幕形态;分辨率能区分内外屏但会误伤同尺寸的其它设备。
这里直接量几何——整个 stack(顶部胶囊+卡片)的上下边 vs 视口安全区与
页脚顶线(fixed bottom:4+自身高),重叠才分级处理:
clear=页脚留净空(卡片上移) / fit=整栈 zoom 等比缩小(不滚动、页脚始终
可见、顶部胶囊不裁)。不重叠的平台零变化。监听 resize / orientationchange
/ visualViewport 以覆盖 iOS 工具栏展开收起引起的视口变化。 */
function syncLoginFooterClearance() {
var body = document.body;
if (!body || !body.classList.contains('liquid-login'))
return;
var overlay = document.getElementById('liquid-login');
var stack = overlay && overlay.querySelector('.liquid-login-stack');
var card = stack && stack.querySelector('.modal.login');
var foot = document.querySelector('p.luci');
if (!overlay || !stack || !card || !foot)
return;
/* 复位到"零变化"基线 */
body.classList.remove('liquid-login-clear');
body.classList.remove('liquid-login-fit');
stack.style.zoom = '';
function geom() {
var sr = stack.getBoundingClientRect();
var fh = foot.offsetHeight || 0;
var vh = overlay.clientHeight;
return {
top: sr.top,
bottom: sr.bottom,
height: sr.height,
footTop: vh - 4 - fh,
vh: vh
};
}
function fits() {
var g = geom();
/* 顶部不被裁(留8px)、底部不进页脚区(留8px气口)、卡片不超高 */
return g.top >= 8 && g.bottom <= g.footTop - 8 &&
card.getBoundingClientRect().height <= g.vh - 8;
}
if (fits())
return; /* 不重叠 → 一个 class 都不加(其它平台零变化) */
/* 级1 clear:给页脚留净空,卡片整体上移一点(解决轻微覆盖) */
body.classList.add('liquid-login-clear');
if (fits())
return;
/* 级2 fit:整栈等比缩小(zoom)——小屏不滚动、页脚固定可见、
顶部胶囊不被裁(用户要求:缩小登录页所有元素比例)。
注意 flex 是垂直居中:栈底 = (内容高+缩放后高)/2,不能按顶对齐公式
算,改为"保留 clear 净空 + 逐次收敛"——每缩 8% 复测一次直到 fits。 */
body.classList.add('liquid-login-clear'); /* fit 期间保留净空,整体上移 */
body.classList.add('liquid-login-fit');
var scale = 1;
stack.style.zoom = scale;
for (var i = 0; i < 12 && !fits(); i++) {
scale = Math.max(scale * 0.92, 0.4); /* 0.4 兜底,避免缩到不可读 */
stack.style.zoom = scale;
if (scale <= 0.401)
break;
}
}
function scheduleLoginFooterClearance() {
if (window.requestAnimationFrame)
window.requestAnimationFrame(syncLoginFooterClearance);
else
syncLoginFooterClearance();
}
scheduleLoginFooterClearance();
window.addEventListener('load', scheduleLoginFooterClearance);
window.addEventListener('resize', scheduleLoginFooterClearance);
window.addEventListener('orientationchange', scheduleLoginFooterClearance);
if (window.visualViewport)
window.visualViewport.addEventListener('resize', scheduleLoginFooterClearance);
setTimeout(scheduleLoginFooterClearance, 300); /* 字体/布局落定后复核 */
if (window.MutationObserver) {
/* 输密码报错会让卡片变高 → 重新判定 */
new MutationObserver(scheduleLoginFooterClearance)
.observe(document.getElementById('liquid-login') || document.body,
{ childList: true, subtree: true, characterData: true });
}
/* 窗口尺寸变化时重新计算已打开下拉框的方向 */
window.addEventListener('resize', function () {
setTimeout(adjustDropdownDirection, 60);
+3 -3
View File
@@ -8,12 +8,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=xkcptun
PKG_RELEASE:=9
PKG_RELEASE:=10
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/liudf0716/xkcptun.git
PKG_SOURCE_DATE:=2026-10-25
PKG_SOURCE_VERSION:=e5ec5ed74a20a75e9c3b22221d7f07346ffa0d1e
PKG_SOURCE_DATE:=2026-11-03
PKG_SOURCE_VERSION:=cddcd5e6d5dfa5d376dec0d2e8ef35fdc9409967
PKG_MIRROR_HASH:=skip
PKG_MAINTAINER:=Dengfeng Liu <liudf0716@gmail.com>