package components
import (
"context"
"fmt"
)
templ Notifications(ctx context.Context, data SettingsNotificationsData) {
@LayoutWithContext("Notification Services", ctx) {
if data.SuccessMessage != "" {
{ data.SuccessMessage }
}
if data.ErrorMessage != "" {
{ data.ErrorMessage }
}
Notification Services
if len(data.NotificationServices) == 0 {
No notification services configured
Use the form above to add your first notification service.
} else {
for _, service := range data.NotificationServices {
-
if service.Type == "email" {
} else if service.Type == "webhook" {
} else {
}
{ service.Name }
{ service.Description }
if service.IsEnabled {
Active
} else {
Disabled
}
{ service.Type }
if len(service.EventTriggers) > 0 && service.Type == "webhook" {
{ fmt.Sprintf("%d triggers", len(service.EventTriggers)) }
}
if service.SuccessCount > 0 || service.FailureCount > 0 {
{ fmt.Sprintf("%d/%d", service.SuccessCount, service.SuccessCount + service.FailureCount) }
}
if service.Type == "webhook" {
Events:
if len(service.EventTriggers) == 0 {
None
} else {
for i, trigger := range service.EventTriggers {
if i > 0 {
,
}
{ trigger }
}
}
Retry:
if service.RetryPolicy == "" {
Default
} else {
{ service.RetryPolicy }
}
} else {
Last sent:
if service.SuccessCount > 0 {
"Recently"
} else {
"Never"
}
}
}
}
Notification services allow the system to send alerts for job events such as completion, errors, or when jobs start.
}
}