mirror of
https://github.com/zitadel/zitadel.git
synced 2024-12-13 19:44:21 +00:00
5bdf1a4547
# Which Problems Are Solved Send SMS messages as a HTTP call to a relay, for own logic on handling different SMS providers. # How the Problems Are Solved Add HTTP as SMS provider type and handling of webhook messages in the notification handlers. # Additional Changes Clean up old Twilio events, which were supposed to handle the general SMS providers with deactivate, activate and remove. # Additional Context Partially closes #8270 --------- Co-authored-by: Livio Spring <livio.a@gmail.com>
52 lines
2.5 KiB
Go
52 lines
2.5 KiB
Go
package templates
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"github.com/zitadel/zitadel/internal/domain"
|
|
"github.com/zitadel/zitadel/internal/i18n"
|
|
)
|
|
|
|
const (
|
|
DefaultFontFamily = "-apple-system, BlinkMacSystemFont, Segoe UI, Lato, Arial, Helvetica, sans-serif"
|
|
DefaultFontColor = "#22292f"
|
|
DefaultBackgroundColor = "#fafafa"
|
|
DefaultPrimaryColor = "#5282C1"
|
|
)
|
|
|
|
type TemplateData struct {
|
|
Title string `json:"title,omitempty"`
|
|
PreHeader string `json:"preHeader,omitempty"`
|
|
Subject string `json:"subject,omitempty"`
|
|
Greeting string `json:"greeting,omitempty"`
|
|
Text string `json:"text,omitempty"`
|
|
URL string `json:"url,omitempty"`
|
|
ButtonText string `json:"buttonText,omitempty"`
|
|
PrimaryColor string `json:"primaryColor,omitempty"`
|
|
BackgroundColor string `json:"backgroundColor,omitempty"`
|
|
FontColor string `json:"fontColor,omitempty"`
|
|
LogoURL string `json:"logoUrl,omitempty"`
|
|
FontURL string `json:"fontUrl,omitempty"`
|
|
FontFaceFamily string `json:"fontFaceFamily,omitempty"`
|
|
FontFamily string `json:"fontFamily,omitempty"`
|
|
|
|
IncludeFooter bool `json:"includeFooter,omitempty"`
|
|
FooterText string `json:"footerText,omitempty"`
|
|
}
|
|
|
|
func (data *TemplateData) Translate(translator *i18n.Translator, msgType string, args map[string]interface{}, langs ...string) {
|
|
data.Title = translator.Localize(fmt.Sprintf("%s.%s", msgType, domain.MessageTitle), args, langs...)
|
|
data.PreHeader = translator.Localize(fmt.Sprintf("%s.%s", msgType, domain.MessagePreHeader), args, langs...)
|
|
data.Subject = translator.Localize(fmt.Sprintf("%s.%s", msgType, domain.MessageSubject), args, langs...)
|
|
data.Greeting = translator.Localize(fmt.Sprintf("%s.%s", msgType, domain.MessageGreeting), args, langs...)
|
|
data.Text = translator.Localize(fmt.Sprintf("%s.%s", msgType, domain.MessageText), args, langs...)
|
|
data.ButtonText = translator.Localize(fmt.Sprintf("%s.%s", msgType, domain.MessageButtonText), args, langs...)
|
|
// Footer text is neither included in i18n files nor defaults.yaml
|
|
footerText := fmt.Sprintf("%s.%s", msgType, domain.MessageFooterText)
|
|
data.FooterText = translator.Localize(footerText, args, langs...)
|
|
// translator returns the id of the string to be translated if no translation is found for that id
|
|
// we'll include the footer if we have a custom non-empty string and if the string doesn't include the
|
|
// id of the string that could not be translated example InitCode.Footer
|
|
data.IncludeFooter = len(data.FooterText) > 0 && data.FooterText != footerText
|
|
}
|