{{/* navitems 是导航链接本体,抽出来是因为它要渲染两遍:桌面上在 .nav-links 里平铺, 窄屏整行一定放不下(实测 390 溢 63px、320 溢 133px,最深处的「统计」会被切成半个字), 所以另收进 .nav-menu 那个折叠菜单。两份靠 display 二选一,DOM 里不会同时可见。 页面开关只管访客:站长登录后始终能访问全部页面(guardPage 也是这么放的), 导航必须跟着一起放行,否则关掉页面开关后站长自己也只剩「主页」一个入口。 */}} {{define "navitems"}} 主页 {{if or .IsAdmin (.Settings.HasPage "map")}}地图{{end}} {{if or .IsAdmin (.Settings.HasPage "places")}}地点{{end}} {{if or .IsAdmin (.Settings.HasPage "timeline")}}时间线{{end}} {{if or .IsAdmin (.Settings.HasPage "stats")}}统计{{end}} {{if .HasTopics}}专题{{end}} {{if or .IsAdmin (.Settings.HasPage "report")}}报告{{end}} {{end}} {{define "nav"}} {{end}} {{define "filters"}}
{{/* 窄屏折叠开关,与地图页筛选面板同一套(.panel-fold):桌面端它 display:none、表单照旧常开; 手机上默认收成这一条,只留「筛选 + 当前范围 + 箭头」。收起只是 CSS 隐藏, 表单里的控件都还在,筛选条件照旧随提交带上(act/hw/sort 那几个 hidden 也在)。 */}}
{{range .Presets}}{{.Label}}{{end}} {{.RangeLabel}} {{if .IsAdmin}} 含家/工作 {{end}}
{{/* 已选条件:以前只能靠「重置」全清,想撤掉其中一个得手动改回「全部」再点应用 */}} {{$chips := .ActiveChips}} {{if $chips}}
已选 {{range $chips}}{{.Label}}×{{end}} 全部清空
{{end}} {{if .Activities}}
{{range $i, $a := .Activities}}{{if or (lt $i 14) ($.IsAct $a.ID)}} {{$a.Name}} {{num $a.Count}} {{end}}{{end}}
{{if gt (len .Activities) 14}}
展开其余 {{len .Activities}} 个类型
{{range $i, $a := .Activities}}{{if and (ge $i 14) (not ($.IsAct $a.ID))}} {{$a.Name}} {{num $a.Count}} {{end}}{{end}}
{{end}} {{end}}
{{/* 下拉与日期改动即生效(见下面的脚本);这个按钮是给「关键词」和 关了 JS 的浏览器兜底的,所以不再是主按钮样式 */}} 重置
{{range .ActivityIDs}}{{end}} {{if .ShowHomeWork}}{{end}} {{if .Sort}}{{end}}
{{/* 窄屏折叠:脚本必须紧跟这个表单 —— 放到 body 末尾时,手机上会先按「全部展开」画一帧 再收起,看着就是闪一下整张大卡(地图页那块面板也是贴在面板后面)。收起态记在本地, 翻页/换页之后不该又自己弹开。 */}} {{end}} {{define "emptystate"}}
🗺️
还没有导入任何数据
登录后台,上传 rond 导出的 .rondbackup 备份文件即可生成足迹地图。
前往后台导入
{{end}} {{define "pager"}} {{if gt .PageCount 1}}
{{if gt .PageNo 1}}上一页{{end}} 第 {{.PageNo}} / {{.PageCount}} 页 {{if lt .PageNo .PageCount}}下一页{{end}}
{{end}} {{end}} {{define "layout"}} {{/* viewport-fit=cover 才会把刘海屏 / 底部 Home 指示条的安全区通过 env() 暴露出来,否则 CSS 里的 safe-area-inset 全是 0 */}} {{.Title}} · {{.Settings.SiteTitle}} {{if .HasMap}} {{if or (eq .Nav "map") (eq .Nav "topics")}} {{end}} {{end}} {{if .Flatpickr}} {{end}} {{/* accent-base 是站长选的主色原值:暗色模式会用 color-mix 把它提亮,否则深色底上的链接会看不清(原来的深绿在深底上只有 3.3:1)。 */}} {{template "nav" .}} {{template "content" .}} {{if ne .Nav "map"}} {{end}} {{if .HasMap}} {{if or (eq .Nav "map") (eq .Nav "topics")}}{{end}} {{end}} {{if .Flatpickr}} {{/* 时间框的解析器与输入引导。必须在 flatpickr 之后、页面内联脚本之前: 它不自己调 flatpickr,只提供 parseDate 与 attach,由各页 whenReady 调 attachPicker。 */}} {{end}} {{/* 输入弹层:替代 window.prompt(它会把提示文本与默认值写进地址栏)。 全站都可能用到(报告页复制链接、后台活动改名),所以无条件引入。 */}} {{/* 第三方统计脚本:只在公开页面挂,后台/登录页不挂(免得把自己的操作也统计进去) */}} {{if and .TrackScript (ne .Nav "admin")}} {{.TrackScript}} {{end}} {{/* 长列表(地点库 300+ 行、时间线 800+ 条)划到底后能一键回来。 地图页整页不滚动,所以这个按钮在那里不会出现。 */}} {{/* 顶部细进度条:筛选是整页 GET,慢网下点了没反应会让人以为卡住 */}} {{end}}