diff --git a/internal/web/ui.go b/internal/web/ui.go index fca25c6..02547cf 100644 --- a/internal/web/ui.go +++ b/internal/web/ui.go @@ -3418,6 +3418,12 @@ func (u *UI) pageTemplateSettings(w http.ResponseWriter, r *http.Request) { return } + if data.AssetTemplate.ReadOnly { + data.Error = "这是标准模板,不能直接调整参数。请先在控制台部署一次,系统会自动复制为用户模板。" + u.render(w, r, "template_settings", data) + return + } + if items, err := u.preview.GetTuningItems(name); err == nil { data.TuningItems = items // Group items @@ -3445,6 +3451,12 @@ func (u *UI) actionTemplateSettings(w http.ResponseWriter, r *http.Request) { action := r.FormValue("action") + // Prevent modifying standard templates + if strings.HasPrefix(name, "std_") { + http.Error(w, "标准模板不允许修改", http.StatusForbidden) + return + } + // Collect tuning values from form values := map[string]float64{} for key, vals := range r.Form { diff --git a/internal/web/ui/templates/template_settings.html b/internal/web/ui/templates/template_settings.html index cc77d1a..26db213 100644 --- a/internal/web/ui/templates/template_settings.html +++ b/internal/web/ui/templates/template_settings.html @@ -1,5 +1,8 @@ {{define "template_settings"}} {{template "asset_tabs" .}} +{{if .Error}} +
{{.Error}}
+{{end}} {{if .TuningItems}}
diff --git a/safesightd-linux-arm64 b/safesightd-linux-arm64 index 0444de4..40e52eb 100644 Binary files a/safesightd-linux-arm64 and b/safesightd-linux-arm64 differ