handlers

package
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 13, 2026 License: MIT Imports: 38 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ActivateUserInvitation

func ActivateUserInvitation(db *mongo.Database, cfg *configs.Config) gin.HandlerFunc

func AddIncidentUpdate

func AddIncidentUpdate(db *mongo.Database, hub *Hub) gin.HandlerFunc

func BroadcastEvent

func BroadcastEvent(hub *Hub, eventType string, data interface{})

func CreateComponent

func CreateComponent(db *mongo.Database, hub *Hub) gin.HandlerFunc

func CreateIncident

func CreateIncident(db *mongo.Database, hub *Hub) gin.HandlerFunc

func CreateMaintenance

func CreateMaintenance(db *mongo.Database) gin.HandlerFunc

func CreateMonitor

func CreateMonitor(db *mongo.Database) gin.HandlerFunc

func CreateSubComponent

func CreateSubComponent(db *mongo.Database) gin.HandlerFunc

func CreateUserInvitation

func CreateUserInvitation(db *mongo.Database, cfg *configs.Config) gin.HandlerFunc

func CreateWebhookChannel

func CreateWebhookChannel(db *mongo.Database) gin.HandlerFunc

CreateWebhookChannel creates a new webhook channel.

func DeleteComponent

func DeleteComponent(db *mongo.Database) gin.HandlerFunc

func DeleteIncident

func DeleteIncident(db *mongo.Database, hub *Hub) gin.HandlerFunc

func DeleteMaintenance

func DeleteMaintenance(db *mongo.Database) gin.HandlerFunc

func DeleteMonitor

func DeleteMonitor(db *mongo.Database) gin.HandlerFunc

func DeleteSubComponent

func DeleteSubComponent(db *mongo.Database) gin.HandlerFunc

func DeleteSubscriber

func DeleteSubscriber(db *mongo.Database) gin.HandlerFunc

func DeleteUser

func DeleteUser(db *mongo.Database) gin.HandlerFunc

func DeleteWebhookChannel

func DeleteWebhookChannel(db *mongo.Database) gin.HandlerFunc

DeleteWebhookChannel deletes a webhook channel by ID.

func DispatchWebhookEvent

func DispatchWebhookEvent(db *mongo.Database, eventType string, data interface{})

DispatchWebhookEvent sends a webhook event to all enabled webhook channels. This function is best-effort and never returns an error. Failures are logged.

func GetAdminStatusPageSettings

func GetAdminStatusPageSettings(db *mongo.Database) gin.HandlerFunc

func GetComponents

func GetComponents(db *mongo.Database) gin.HandlerFunc

func GetIncidentByID

func GetIncidentByID(db *mongo.Database) gin.HandlerFunc

func GetIncidentHistory

func GetIncidentHistory(db *mongo.Database) gin.HandlerFunc

func GetIncidentUpdates

func GetIncidentUpdates(db *mongo.Database) gin.HandlerFunc

func GetIncidents

func GetIncidents(db *mongo.Database) gin.HandlerFunc

func GetMaintenance

func GetMaintenance(db *mongo.Database) gin.HandlerFunc

func GetMaintenanceByID

func GetMaintenanceByID(db *mongo.Database) gin.HandlerFunc

func GetMaintenanceHistory

func GetMaintenanceHistory(db *mongo.Database) gin.HandlerFunc

func GetMe

func GetMe(db *mongo.Database, jwtSecret, emailEncryptionKey string) gin.HandlerFunc

func GetMonitorHistory

func GetMonitorHistory(db *mongo.Database) gin.HandlerFunc

func GetMonitorLogs

func GetMonitorLogs(db *mongo.Database) gin.HandlerFunc

func GetMonitorMetrics

func GetMonitorMetrics(db *mongo.Database) gin.HandlerFunc

func GetMonitorOutages

func GetMonitorOutages(db *mongo.Database) gin.HandlerFunc

func GetMonitorUptime

func GetMonitorUptime(db *mongo.Database) gin.HandlerFunc

func GetMonitors

func GetMonitors(db *mongo.Database) gin.HandlerFunc

func GetPublicMaintenance

func GetPublicMaintenance(db *mongo.Database) gin.HandlerFunc

func GetPublicStatusPageSettings

func GetPublicStatusPageSettings(db *mongo.Database) gin.HandlerFunc

func GetStatusCategory

func GetStatusCategory(db *mongo.Database) gin.HandlerFunc

func GetStatusComponents

func GetStatusComponents(db *mongo.Database) gin.HandlerFunc

func GetStatusIncidents

func GetStatusIncidents(db *mongo.Database) gin.HandlerFunc

func GetStatusSummary

func GetStatusSummary(db *mongo.Database) gin.HandlerFunc

func GetSubComponents

func GetSubComponents(db *mongo.Database) gin.HandlerFunc

func GetSubscribers

func GetSubscribers(db *mongo.Database) gin.HandlerFunc

func GetUserInvitations

func GetUserInvitations(db *mongo.Database, cfg *configs.Config) gin.HandlerFunc

func GetUsers

func GetUsers(db *mongo.Database, cfg *configs.Config) gin.HandlerFunc

func GetWebhookChannels

func GetWebhookChannels(db *mongo.Database) gin.HandlerFunc

GetWebhookChannels retrieves all webhook channels from the database.

func Login

func Login(db *mongo.Database, jwtSecret, emailEncryptionKey string) gin.HandlerFunc

func Logout

func Logout() gin.HandlerFunc

func MFADisable

func MFADisable(db *mongo.Database, cfg *configs.Config) gin.HandlerFunc

func MFARecoveryVerify

func MFARecoveryVerify(db *mongo.Database, cfg *configs.Config) gin.HandlerFunc

func MFASetup

func MFASetup(db *mongo.Database, cfg *configs.Config) gin.HandlerFunc

func MFAVerify

func MFAVerify(db *mongo.Database, cfg *configs.Config) gin.HandlerFunc

func ParsePaginationParams

func ParsePaginationParams(c *gin.Context, config PaginationConfig) (int, int, error)

ParsePaginationParams parses and validates pagination parameters from query string. Returns page (>=1), limit (clamped to max if configured), and error if invalid.

func PatchUser

func PatchUser(db *mongo.Database) gin.HandlerFunc

func ProfileUpdate

func ProfileUpdate(db *mongo.Database, cfg *configs.Config) gin.HandlerFunc

func RefreshUserInvitation

func RefreshUserInvitation(db *mongo.Database, cfg *configs.Config) gin.HandlerFunc

func ResolveIncident

func ResolveIncident(db *mongo.Database, hub *Hub) gin.HandlerFunc

func RevokeUserInvitation

func RevokeUserInvitation(db *mongo.Database) gin.HandlerFunc

func SSOCallback

func SSOCallback(db *mongo.Database, cfg *configs.Config) gin.HandlerFunc

func SearchUserByEmail

func SearchUserByEmail(db *mongo.Database, cfg *configs.Config) gin.HandlerFunc

func ServeWs

func ServeWs(hub *Hub) gin.HandlerFunc

func Subscribe

func Subscribe(db *mongo.Database) gin.HandlerFunc

func TestMonitor

func TestMonitor() gin.HandlerFunc

func UpdateComponent

func UpdateComponent(db *mongo.Database, hub *Hub) gin.HandlerFunc

func UpdateIncident

func UpdateIncident(db *mongo.Database, hub *Hub) gin.HandlerFunc

func UpdateMaintenance

func UpdateMaintenance(db *mongo.Database) gin.HandlerFunc

func UpdateMonitor

func UpdateMonitor(db *mongo.Database) gin.HandlerFunc

func UpdateStatusPageSettings

func UpdateStatusPageSettings(db *mongo.Database, hub *Hub) gin.HandlerFunc

func UpdateSubComponent

func UpdateSubComponent(db *mongo.Database) gin.HandlerFunc

Types

type Client

type Client struct {
	// contains filtered or unexported fields
}

type ComponentWithSubStatusInfo

type ComponentWithSubStatusInfo struct {
	models.Component
	SubComponents []models.SubComponent `json:"subComponents"`
	UptimeHistory []UptimeBar           `json:"uptimeHistory"`
	LastIncident  *IncidentStatusInfo   `json:"lastIncident,omitempty"`
}

type ComponentWithSubs

type ComponentWithSubs struct {
	models.Component
	SubComponents []models.SubComponent `json:"subComponents"`
	UptimeHistory []UptimeBar           `json:"uptimeHistory"`
}

type Hub

type Hub struct {
	// contains filtered or unexported fields
}

func NewHub

func NewHub() *Hub

func (*Hub) Run

func (h *Hub) Run()

type IncidentStatusInfo

type IncidentStatusInfo struct {
	Date     time.Time `json:"date"`
	Duration string    `json:"duration"`
	Title    string    `json:"title"`
}

type PaginationConfig

type PaginationConfig struct {
	DefaultLimit int
	MaxLimit     int // 0 means no maximum
}

PaginationConfig configures pagination parsing behavior.

func DefaultPaginationConfig

func DefaultPaginationConfig() PaginationConfig

DefaultPaginationConfig returns the standard pagination config (default=20, no max).

func MonitorLogsPaginationConfig

func MonitorLogsPaginationConfig() PaginationConfig

MonitorLogsPaginationConfig returns the monitor-logs-specific config (default=10, max=100).

type StatusSummary

type StatusSummary struct {
	OverallStatus   string         `json:"overallStatus"`
	ComponentCounts map[string]int `json:"componentCounts"`
	ActiveIncidents int            `json:"activeIncidents"`
	ScheduledMaint  int            `json:"scheduledMaintenance"`
}

type UptimeBar

type UptimeBar struct {
	Date          string  `json:"date"`
	UptimePercent float64 `json:"uptimePercent"`
	Status        string  `json:"status"`
}

type WSEvent

type WSEvent struct {
	Type string      `json:"type"`
	Data interface{} `json:"data"`
}

type WebhookEvent

type WebhookEvent struct {
	Type      string      `json:"type"`
	Timestamp time.Time   `json:"timestamp"`
	Data      interface{} `json:"data"`
}

WebhookEvent represents the payload structure for webhook deliveries.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL