- Updated silent.go to replace hardcoded strings with i18n keys for user feedback. - Enhanced telegraph.go to use i18n for error messages and prompts. - Modified update.go to implement i18n for version update notifications and errors. - Refactored dir.go to utilize i18n for help messages related to directory operations. - Updated parse.go to replace static text with i18n keys for parsed text entities. - Enhanced rule.go to use i18n for rule management help messages. - Refactored storage.go to implement i18n for storage selection prompts. - Updated task.go to utilize i18n for task addition notifications. - Added new i18n keys in keys.go for various messages. - Updated Chinese localization in zh-Hans.yaml to reflect new i18n keys and messages.
40 lines
1.3 KiB
Go
40 lines
1.3 KiB
Go
package msgelem
|
|
|
|
import (
|
|
"fmt"
|
|
"strings"
|
|
|
|
"github.com/gotd/td/telegram/message/styling"
|
|
"github.com/krau/SaveAny-Bot/common/i18n"
|
|
"github.com/krau/SaveAny-Bot/common/i18n/i18nk"
|
|
"github.com/krau/SaveAny-Bot/database"
|
|
)
|
|
|
|
func BuildRuleHelpStyling(enabled bool, rules []database.Rule) []styling.StyledTextOption {
|
|
return []styling.StyledTextOption{
|
|
styling.Bold(i18n.T(i18nk.BotMsgRuleHelpUsage, nil)),
|
|
styling.Bold(func() string {
|
|
if enabled {
|
|
return i18n.T(i18nk.BotMsgRuleHelpCurrentModeEnabled, nil)
|
|
}
|
|
return i18n.T(i18nk.BotMsgRuleHelpCurrentModeDisabled, nil)
|
|
}()),
|
|
styling.Plain(i18n.T(i18nk.BotMsgRuleHelpAvailableOps, nil)),
|
|
styling.Code("switch"),
|
|
styling.Plain(i18n.T(i18nk.BotMsgRuleHelpSwitchSuffix, nil)),
|
|
styling.Code("add"),
|
|
styling.Plain(i18n.T(i18nk.BotMsgRuleHelpAddSuffix, nil)),
|
|
styling.Code("del"),
|
|
styling.Plain(i18n.T(i18nk.BotMsgRuleHelpDelSuffix, nil)),
|
|
styling.Plain(i18n.T(i18nk.BotMsgRuleHelpExistingRulesPrefix, nil)),
|
|
styling.Blockquote(func() string {
|
|
var sb strings.Builder
|
|
for _, rule := range rules {
|
|
ruleText := fmt.Sprintf("%s %s %s %s", rule.Type, rule.Data, rule.StorageName, rule.DirPath)
|
|
sb.WriteString(fmt.Sprintf("%d: %s\n", rule.ID, ruleText))
|
|
}
|
|
return sb.String()
|
|
}(), true),
|
|
}
|
|
}
|