Ключ подписи ставится прямо в мастере (шаг «Ключ подписи»), а не на отдельной странице

- Мастер установки ключа — общий блок part_keywiz.html: на шаге мастера и на
  странице /admin/setup/keywizard. Формы возвращают туда, откуда открыли (ret=
  wizard), с выбранным контуром; вид — как у мастера.
- «Установить ключ» у канала на шаге «Шлюз НРД» ведёт на шаг «Ключ подписи» с
  контуром этого канала.
- Подсказка «сначала установите шлюз» — по установленному ИШ (раньше — по
  готовности шлюза, которая сама требует ключа).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014FsEKyJrYF69Cj9ZXzFLRi
This commit is contained in:
zuevav
2026-10-06 17:50:34 +03:00
parent 71be8f2052
commit 5af3c5e3ba
7 changed files with 183 additions and 121 deletions
+5
View File
@@ -185,6 +185,8 @@ type WizardData struct {
AutoDone []string // шаги до текущего, уже выполненные без участия пользователя, — с пояснением
Certs []cryptocli.Certificate
Flash string
KeyWiz *keyWizardData // шаг «Ключ подписи»: установка ключа прямо в мастере
IgateOK bool // ИШ на сервере установлен (ключ ставится в его профиль)
// главы мастера (wizchapters.go): путь этой установки, соседние шаги, шапка
Path []int
Chapters []WizChapter
@@ -322,6 +324,9 @@ func (h *setupHandlers) renderWizard(w http.ResponseWriter, r *http.Request) {
fd.InWizard = true
d.Fancy = &fd
}
if step == 8 {
d.KeyWiz, d.IgateOK = h.keyWizView(r.URL.Query().Get("contour"), true), igateInstalled()
}
if step == 3 {
d.Sub = depoWizardSub(r.URL.Query().Get("sub"))
d.DepoUser, d.DepoPass = depoSetupLogin(s.Fancy), s.Fancy.Password