i18n slice 1 release C: storage, sharing, sign-in, guest, catch-all and debug pages in English
- 11 templates converted (storage, storage_network, storage_init, storage_attach, sharing, login,
claim, launcher_shared, launcher_share_password, catchall, debug); every key translated.
Six ASCII-only Hungarian JS fragments the extractor missed were found by eye and converted by hand
(", majd a(z)", "FIGYELEM:", "jelenlegi:", "mp", "p", " db").
- login, claim, both guest share pages and the catch-all render through executeTemplateLang (the
household language; no session CSRF, no escrow reminder). renderLogin now takes the request.
- Page titles: TitleKey for storage, network storage, the two drive wizards and sharing.
TestHandlerTitleKeysMatchHungarianTitle pins handler literal == hu.json value for every TitleKey.
- Tests: TestDirectRenderHandlersFollowLanguage (real routes, en + hu),
TestI18nDirectRenderPagesHaveNoAdminChrome (escrow reminder due; none on the guest page).
- Fixture correction: the release C cases had invented page titles; the cases now carry the handlers'
real titles (and the wizard pages their real page name), and those 12 fixtures were RE-CAPTURED from
the unconverted templates at 0555091. The diff to the old fixtures is the <title> line (and the nav
highlight on the two wizard pages) only.
- i18n gate: HU_FORMAL_CEILING 12 -> 16 — four more „ön" forms in the converted copy, unchanged by rule (R-516).
Hungarian: byte-identical (TestI18nParity against fixtures from unconverted templates).
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
This commit is contained in:
@@ -28,16 +28,16 @@ func i18nCasesC() []i18nCase {
|
||||
return d
|
||||
}},
|
||||
{"storage_full", "storage", func() map[string]interface{} {
|
||||
d := i18nLayoutData("storage", "Meghajtók kezelése")
|
||||
d := i18nLayoutData("storage", "Tárhely")
|
||||
d["StorageError"], d["StorageSuccess"] = "Az útvonal nem írható most.", "A tárhely hozzáadva rendben."
|
||||
d["StoragePaths"] = i18nStoragePaths()
|
||||
return d
|
||||
}},
|
||||
{"storage_empty", "storage", func() map[string]interface{} {
|
||||
return i18nLayoutData("storage", "Meghajtók kezelése")
|
||||
return i18nLayoutData("storage", "Tárhely")
|
||||
}},
|
||||
{"storage_network_full", "storage_network", func() map[string]interface{} {
|
||||
d := i18nLayoutData("storage-network", "Hálózati tárhely kezelése")
|
||||
d := i18nLayoutData("storage-network", "Hálózati tárhely")
|
||||
base := func(name, health string, orphan bool) m {
|
||||
return m{"Name": name, "Label": "NAS " + name, "Protocol": "nfs", "Server": "nas.example", "Export": "/export/" + name, "Path": "/mnt/net/" + name, "Health": health, "Orphan": orphan}
|
||||
}
|
||||
@@ -46,18 +46,18 @@ func i18nCasesC() []i18nCase {
|
||||
return d
|
||||
}},
|
||||
{"storage_network_nosupport", "storage_network", func() map[string]interface{} {
|
||||
d := i18nLayoutData("storage-network", "Hálózati tárhely kezelése")
|
||||
d := i18nLayoutData("storage-network", "Hálózati tárhely")
|
||||
d["NetAddSupport"] = "no"
|
||||
return d
|
||||
}},
|
||||
{"storage_init", "storage_init", func() map[string]interface{} {
|
||||
return i18nLayoutData("storage", "Új meghajtó előkészítése")
|
||||
return i18nLayoutData("storage_init", "Új meghajtó inicializálása")
|
||||
}},
|
||||
{"storage_attach", "storage_attach", func() map[string]interface{} {
|
||||
return i18nLayoutData("storage", "Meglévő meghajtó csatolása")
|
||||
return i18nLayoutData("storage_attach", "Meglévő meghajtó csatolása")
|
||||
}},
|
||||
{"sharing_full", "sharing", func() map[string]interface{} {
|
||||
d := i18nLayoutData("sharing", "Hálózati megosztás beállítása")
|
||||
d := i18nLayoutData("sharing", "Hálózati megosztás")
|
||||
d["Flash"] = "A megosztás elmentve rendben."
|
||||
d["SMBEnabled"], d["SMBRunning"], d["SMBUserSet"], d["SMBServerName"], d["SMBDirectAddress"] = true, true, false, "FELHOM", "192.168.1.10"
|
||||
d["SMBShares"] = []m{
|
||||
@@ -70,7 +70,7 @@ func i18nCasesC() []i18nCase {
|
||||
return d
|
||||
}},
|
||||
{"sharing_notarget_blocked", "sharing", func() map[string]interface{} {
|
||||
d := i18nLayoutData("sharing", "Hálózati megosztás beállítása")
|
||||
d := i18nLayoutData("sharing", "Hálózati megosztás")
|
||||
d["SMBEnabled"], d["SMBRunning"], d["SMBUserSet"], d["SMBServerName"] = true, false, true, "FELHOM"
|
||||
d["SMBShares"] = []m{{"Name": "docs", "Path": "/mnt/hdd1/docs", "Available": true}}
|
||||
d["SharesTier2Status"], d["SharesTier2Error"] = "no_target", "nincs második meghajtó"
|
||||
@@ -78,7 +78,7 @@ func i18nCasesC() []i18nCase {
|
||||
return d
|
||||
}},
|
||||
{"sharing_error_skipped", "sharing", func() map[string]interface{} {
|
||||
d := i18nLayoutData("sharing", "Hálózati megosztás beállítása")
|
||||
d := i18nLayoutData("sharing", "Hálózati megosztás")
|
||||
d["SMBEnabled"], d["SMBServerName"] = true, "FELHOM"
|
||||
d["SMBShares"] = []m{{"Name": "docs", "Path": "/mnt/hdd1/docs", "Available": true}}
|
||||
d["SharesTier2Status"], d["SharesTier2Error"] = "error", "rsync hiba történt"
|
||||
@@ -86,21 +86,21 @@ func i18nCasesC() []i18nCase {
|
||||
return d
|
||||
}},
|
||||
{"sharing_other_none", "sharing", func() map[string]interface{} {
|
||||
d := i18nLayoutData("sharing", "Hálózati megosztás beállítása")
|
||||
d := i18nLayoutData("sharing", "Hálózati megosztás")
|
||||
d["SMBEnabled"], d["SMBServerName"] = true, "FELHOM"
|
||||
d["SMBShares"] = []m{{"Name": "docs", "Path": "/mnt/hdd1/docs", "Available": true}}
|
||||
d["SharesOffsiteStatus"] = "failed"
|
||||
return d
|
||||
}},
|
||||
{"sharing_no_offsite_yet", "sharing", func() map[string]interface{} {
|
||||
d := i18nLayoutData("sharing", "Hálózati megosztás beállítása")
|
||||
d := i18nLayoutData("sharing", "Hálózati megosztás")
|
||||
d["SMBEnabled"], d["SMBServerName"] = true, "FELHOM"
|
||||
d["SMBShares"] = []m{{"Name": "docs", "Path": "/mnt/hdd1/docs", "Available": true}}
|
||||
d["SharesTier2Status"] = "ok"
|
||||
return d
|
||||
}},
|
||||
{"sharing_off", "sharing", func() map[string]interface{} {
|
||||
d := i18nLayoutData("sharing", "Hálózati megosztás beállítása")
|
||||
d := i18nLayoutData("sharing", "Hálózati megosztás")
|
||||
d["SMBEnabled"], d["SMBServerName"] = false, "FELHOM"
|
||||
return d
|
||||
}},
|
||||
|
||||
Reference in New Issue
Block a user