package main import ( "fmt" "strings" "verstak/internal/i18n" ) func userRegisterHTML(locale string) string { return fmt.Sprintf(` Verstak Sync — %s

%s

%s

%s %s

`, i18n.T(locale, "server.registerTitle"), i18n.T(locale, "server.register"), i18n.T(locale, "server.username"), i18n.T(locale, "server.email"), i18n.T(locale, "server.password"), i18n.T(locale, "server.passwordHint"), i18n.T(locale, "server.registerBtn"), i18n.T(locale, "server.alreadyHaveAccount"), i18n.T(locale, "server.loginBtn"), ) } func userLoginHTML(locale string) string { return fmt.Sprintf(` Verstak Sync — %s

Verstak Sync

`, i18n.T(locale, "server.loginTitle"), i18n.T(locale, "server.usernameOrEmail"), i18n.T(locale, "server.password"), i18n.T(locale, "server.loginBtn"), i18n.T(locale, "server.forgotPassword"), i18n.T(locale, "server.registerBtn"), i18n.T(locale, "server.adminLink"), ) } func adminLoginHTML(locale string) string { return fmt.Sprintf(` %s

Verstak Sync

`, i18n.T(locale, "admin.login"), i18n.T(locale, "admin.username"), i18n.T(locale, "admin.password"), i18n.T(locale, "admin.loginBtn"), ) } func adminUsersHTML(locale string) string { newPassResult := i18n.T(locale, "server.newPasswordResult") newPassParts := strings.SplitN(newPassResult, "%s", 2) newPassPrefix := newPassParts[0] newPassSuffix := strings.ReplaceAll(newPassParts[1], "\n", "\\n") deleteMsg := i18n.T(locale, "admin.deleteUserMessage") deleteMsgParts := strings.SplitN(deleteMsg, "%s", 2) delMsgPrefix := deleteMsgParts[0] delMsgSuffix := deleteMsgParts[1] return fmt.Sprintf(` %[1]s

%[2]s

%[3]s

%[5]s %[6]s %[7]s %[8]s %[9]s %[10]s
`, i18n.T(locale, "admin.users"), i18n.T(locale, "admin.usersHeading"), i18n.T(locale, "server.dashboard"), i18n.T(locale, "admin.filterPlaceholder"), i18n.T(locale, "admin.username"), i18n.T(locale, "admin.email"), i18n.T(locale, "admin.status"), i18n.T(locale, "admin.devices"), i18n.T(locale, "admin.lastSeen"), i18n.T(locale, "admin.actions"), i18n.T(locale, "admin.confirmTitle"), i18n.T(locale, "admin.modalCancel"), i18n.T(locale, "admin.modalConfirm"), i18n.T(locale, "admin.editUser"), i18n.T(locale, "admin.username"), i18n.T(locale, "admin.email"), i18n.T(locale, "admin.modalCancel"), i18n.T(locale, "admin.editBtn"), i18n.T(locale, "admin.resultTitle"), i18n.T(locale, "common.ok"), i18n.T(locale, "admin.confirmed"), i18n.T(locale, "admin.unconfirmed"), i18n.T(locale, "admin.blocked"), i18n.T(locale, "admin.unblock"), i18n.T(locale, "admin.block"), i18n.T(locale, "admin.resetPassword"), i18n.T(locale, "admin.noUsers"), i18n.T(locale, "server.newPassword"), newPassPrefix, newPassSuffix, i18n.T(locale, "admin.resetPasswordConfirm"), i18n.T(locale, "admin.resetPasswordMessage"), i18n.T(locale, "admin.resetBtn"), i18n.T(locale, "admin.deleteUser"), delMsgPrefix, delMsgSuffix, i18n.T(locale, "admin.deleteBtn"), i18n.T(locale, "admin.unblockUserTitle"), i18n.T(locale, "admin.blockUserTitle"), i18n.T(locale, "admin.unblockUserMessage"), i18n.T(locale, "admin.blockUserMessage"), ) } func confirmedHTML(locale string) string { return fmt.Sprintf(` Verstak Sync — %s

%s

%s

%s
`, i18n.T(locale, "server.emailConfirmed"), i18n.T(locale, "server.emailConfirmed"), i18n.T(locale, "server.emailConfirmedMessage"), i18n.T(locale, "server.loginBtn"), ) } func registrationOKHTML(locale string) string { return fmt.Sprintf(` Verstak Sync — %s

%s

%s

%s

%s
`, i18n.T(locale, "server.registerTitle"), i18n.T(locale, "server.registrationSuccess"), i18n.T(locale, "server.registrationEmailSent"), i18n.T(locale, "server.registrationCheckEmail"), i18n.T(locale, "server.loginBtn"), ) } func registrationAutoHTML(locale string) string { return fmt.Sprintf(` Verstak Sync — %s

%s

%s

%s
`, i18n.T(locale, "server.registerTitle"), i18n.T(locale, "server.registrationSuccess"), i18n.T(locale, "server.registrationAutoMessage"), i18n.T(locale, "server.loginBtn"), ) } func forgotPasswordHTML(locale string) string { return fmt.Sprintf(` %s

%s

%s

`, i18n.T(locale, "server.resetPasswordTitle"), i18n.T(locale, "server.resetPassword"), i18n.T(locale, "server.resetInstruction"), i18n.T(locale, "server.email"), i18n.T(locale, "server.sendLink"), i18n.T(locale, "server.backToLogin"), ) } func forgotSentHTML(locale string) string { return fmt.Sprintf(` %s

%s

%s

%s
`, i18n.T(locale, "server.emailSentTitle"), i18n.T(locale, "server.emailSent"), i18n.T(locale, "server.emailSentMessage"), i18n.T(locale, "server.goHome"), ) } func resetPasswordHTML(locale string) string { return fmt.Sprintf(` %s

%s

%s
`, i18n.T(locale, "server.newPasswordTitle"), i18n.T(locale, "server.newPassword"), i18n.T(locale, "server.password"), i18n.T(locale, "server.passwordConfirm"), i18n.T(locale, "server.adminPwdHint"), i18n.T(locale, "server.save"), ) } func resetDoneHTML(locale string) string { return fmt.Sprintf(` Verstak Sync — %s

%s

%s

%s
`, i18n.T(locale, "server.passwordChanged"), i18n.T(locale, "server.passwordChanged"), i18n.T(locale, "server.passwordChangedMessage"), i18n.T(locale, "server.loginBtn"), ) } func errorPageHTML(locale, title, msg, backURL string) string { return fmt.Sprintf(` Verstak Sync — %s

%s

%s

%s
`, title, title, msg, backURL, i18n.T(locale, "server.back")) }