v72:日历本显示与管理合并成一张清单,颜色改用内置调色模态框
用户 2026-10-21 两条:
「日历设置里面日历本显示和日历管理可以放在一起」
「预制的颜色点了之后没反应……选颜色那个地方点了之后是弹出 Windows 的
一个颜色选择框,这个不好,我们把它改成内置的」
改动:
· calendar/display 整页删除,并入 calendar/calendars(保留 302 老地址)
· 新增 templates/_color_picker.php(按钮 + 值载体,表单/独立双模式)
· 新增 templates/_color_picker_modal.php(全页唯一模态框,预置色 + hex 手输)
· 共享本提到同一清单,标注归属与权限;owner 校验服务端做
· 清掉 display.php 时代遗留的死 CSS(.cal-set-page / .cal-set-book* 等)
部署中抓出并修掉两处真问题:
· 部署脚本「清掉被取代文件」清单漏了 display.php —— tar 只新增/覆盖,
git rm 掉的文件在线上永远留着,被第 7 段断言拦下(断言是对的,缺的是删除步骤)
· _color_picker.php 里残留 <input type="color" class="cp-trigger">:
原生取色控件既不能有子元素、也没有 data-cp-open ⇒
按钮回显失效(找不到 .cp-trigger-dot/hex)+ 模态框永远打不开,
用户点到的还是 Windows 取色框。改成 <button type="button"> + 色点 + hex
(v72 探针在修复前实测 2 条红,修复后 50/0)
This commit is contained in:
@@ -23,11 +23,21 @@
|
||||
* 三处都是"☰ → 一串列表"。
|
||||
*
|
||||
* 四行(顺序是用户点名的):
|
||||
* ① 显示设置 → `calendar/display`(默认视图 + 显示哪些本子)★ 本批新增的独立页
|
||||
* ② 日历本管理 → `calendar/calendars`(改名/换色/共享/导入)
|
||||
* ① 显示设置 → **v72 起与「日历本管理」合并**:两行都落到 `calendar/calendars`
|
||||
* (用 `#cal-books` 锚点区分落点,见下)
|
||||
* ② 日历本管理 → `calendar/calendars`(显隐 + 改名/换色/共享/导入,全在一页)
|
||||
* ③ 订阅管理 → `calendar/calendars#caldav`(只读订阅进来的外部日历)
|
||||
* ④ DAV 口令 → `settings/me#dav`(日历 + 通讯录共用那一把)
|
||||
*
|
||||
* 🔴 v72(用户 2026-10-21):「日历设置里面日历本显示和日历管理可以放在一起啊。
|
||||
* 就是把日历本全都列出来,然后显示不显示,加个复选框就行了。」
|
||||
* ⇒ ① 与 ② **现在是同一页**。但**四行都留着**,原因:
|
||||
* · 用户 2026-10-15 第 6 条明确点名"下拉就是这四行",少一行他会以为功能没了;
|
||||
* · 两行落到同一页、用锚点定位到各自那一段 —— 点"显示设置"落在清单、
|
||||
* 点"日历本管理"也落在清单,但**用户想找的东西就在那儿**,不用再跳。
|
||||
* ⚠️ 千万别因为"合并了"就把菜单砍成三行:那是**把用户的入口拿走**,
|
||||
* 而他这次要的是"放一起",不是"少一个入口"。
|
||||
*
|
||||
* 用法(require 前 set 好):
|
||||
* $setCurrent 当前页 key('view'|'books'|'dav')用来高亮;
|
||||
* '' 也行(比如从旅程/观影页挂过来时没有当前项)
|
||||
@@ -57,7 +67,7 @@ $setIcon = static function (string $name): string {
|
||||
<div class="menu-list cal-set-list">
|
||||
<?php /* ⚠️ 这里**只放列表**(不做任何表单)—— 见文件头那段「为什么必须这么改」。
|
||||
表单全在各自的目标页上;下拉绝不随"日历本数量"变长。 */ ?>
|
||||
<a href="<?= e(url('calendar/display')) ?>"<?= $setOn('view') ?>><?= $setIcon('view') ?><span>显示设置</span></a>
|
||||
<a href="<?= e(url('calendar/calendars')) ?>#cal-books"<?= $setOn('view') ?>><?= $setIcon('view') ?><span>显示设置</span></a>
|
||||
<a href="<?= e(url('calendar/calendars')) ?>"<?= $setOn('books') ?>><?= $setIcon('books') ?><span>日历本管理</span></a>
|
||||
<a href="<?= e(url('calendar/calendars')) ?>#caldav"<?= $setOn('sub') ?>><?= $setIcon('sub') ?><span>订阅管理</span></a>
|
||||
<?php /* v24 第 22 批:口令改成通用 DAV 口令(日历 + 通讯录共用)。落到能**生成口令**的
|
||||
|
||||
Reference in New Issue
Block a user