{{define "configure-system.html"}} {{template "base" .}} {{end}} {{define "content"}}
{{if .Loading}}
Downloading YANG schema from device… this takes a moment on first login.
{{template "configure-toolbar" .}}
{{else}} {{$d := .Desc}} {{if .Error}}
{{.Error}}
{{end}}
{{/* ── Identity ─────────────────────────────────────────────────────── */}}
Identity
Hostname{{template "field-info" (index $d "hostname")}}
Contact{{template "field-info" (index $d "contact")}}
Location{{template "field-info" (index $d "location")}}
{{/* ── Date & Time ────────────────────────────────────────────────── One table for all three rows so the value and action columns line up. The two write paths have different semantics (Set time = immediate RPC, Timezone = candidate save), so they're declared as sibling
s and bound to the table's inputs / buttons via the HTML5 form="…" attribute. The System time row's data-server-time seeds the JS-driven live tick (initDatetimePicker in app.js). */}}
Date & Time
System time {{/* Span pads itself to match the Set time input's border+left padding (1px + 0.6rem), so plain text and the input text start at the same x-position. */}} {{if .CurrentDatetime}}{{else}}unavailable{{end}}
Set time{{template "field-info" "Manually set the device system clock. The time you enter is interpreted in your browser's local timezone and converted to UTC on submit."}}
Timezone{{template "field-info" (index $d "timezone")}} {{$tz := .Timezone}}
{{/* ── Preferences ─────────────────────────────────────────────────── */}}
Preferences
Text editor{{template "field-info" (index $d "text-editor")}}
Login banner{{template "field-info" (index $d "motd-banner")}}
{{template "configure-toolbar" .}} {{end}}{{/* end {{else}} — schema ready */}} {{end}}