laoyang
|
c8515632fb
|
节点与活动支持导出 ICS 日历(批 27)
- 新增 src/Ics.php:RFC 5545 生成器(CRLF、75 octet 折行且不切断
UTF-8 字符、TEXT 转义、时间输出 UTC Z、UID 固定为 triplog-node-{id}
使重复导入按 UID 更新而不堆重复事件)。
- 新增路由 nodes/ics、activities/ics:节点级导出单个事件
(SUMMARY=活动名·节点标题、DTSTART/DTEND、LOCATION=出发地、
DESCRIPTION=车次/航班号+备注);活动级导出整个行程(跳过已取消
节点与已生成执行记录的计划节点,口径与详情页展示一致)。
- 入口:活动详情页「导出日历」、节点详情页「导出日历」、
节点卡片「日历」链接。
- 修复隐性事故:index.php 漏 require src/Ics.php(无 autoloader 的
项目里新增类必须同步入口),部署哨兵新增「src/ 每个类文件都被
index.php require」逐文件对账。
- 验证:php -l 61 文件全过;渲染检查 386 项全过;Ics 单测 42 项
全过(转义/折行/UTC/拼装);服务器 e2e 391 项全过(含 11c 节
17 项 ICS 断言)。
|
2026-09-29 07:58:31 +08:00 |
|
laoyang
|
7ec3ea559e
|
安装向导:首次部署浏览器引导建库建表(批 26)
- 新增 install.php 独立安装向导:环境检查 → 表单(站点标题/家庭名/数据库/
高德/管理员)→ 全量建表 → 基本种子数据 → 生成 config.php → 自动自删。
已安装判定以 config.php 为准,重复访问只显示「已安装」。
- 新增 sql/schema.sql 全量建表脚本(15 张表,按外键依赖排序,全部
IF NOT EXISTS),由向导执行;tools/migrate.php 继续负责增量迁移。
- index.php 加未安装检测:config.php 缺失或无效时跳转安装页。
- layout.php 标题回退值接通 app.name,安装时填的网站标题在页面上生效。
- 种子数据仅基本款:节点类型 5、角色标签 4、出行方式 9(不含需绑定
车辆的自驾两类);管理员账号按既有加密方式写入。
- README 部署章节改为向导优先,手动方式降为备选。
- 验证:本地 60 文件 php -l 全过;渲染检查 386 项全过;
安装流程端到端 46 项全过(临时副本 + 独立 MariaDB:跳转、表单、
建表、种子、加密可逆、自删、已安装拒绝、错误路径)。
|
2026-09-28 20:55:16 +08:00 |
|
laoyang
|
4a5dd19503
|
docs: 补全 README(功能、结构、部署、使用)
原文只有两行(标题 + 一句话),作为公开仓库的门面信息量不足。
按实际代码补全:功能清单、目录结构、环境要求、数据库初始化与迁移、
Web 服务器与高德配置、后台使用说明。
配置示例统一用 example.com 占位,不含任何开发者个人信息。
|
2026-09-28 20:18:25 +08:00 |
|
laoyang
|
6c1345e202
|
Initial commit
|
2026-09-22 12:45:12 +00:00 |
|