mirror of
https://github.com/Rain-kl/OpenFlare.git
synced 2026-10-10 17:26:38 +08:00
49d32d0b25
Unify OpenFlare console auth to user.IsAdmin and token_admin instead of the legacy Admin/Root role tiers. Route groups now use apiutil.AdminMiddlewares (LoginRequired + LoginAdminRequired) so admin checks cannot be skipped. Add middleware tests and extend integration coverage for 401/404/400 responses.
33 lines
1.0 KiB
Go
33 lines
1.0 KiB
Go
// Copyright 2026 Arctel.net
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
|
|
package openflare
|
|
|
|
import (
|
|
"github.com/Rain-kl/Wavelet/internal/apps/openflare/apiutil"
|
|
"github.com/Rain-kl/Wavelet/internal/apps/openflare/option"
|
|
"github.com/gin-gonic/gin"
|
|
)
|
|
|
|
func registerOptionRoutes(apiGroup *gin.RouterGroup) {
|
|
apiGroup.GET("/status", option.GetStatusHandler)
|
|
apiGroup.GET("/notice", option.GetNoticeHandler)
|
|
apiGroup.GET("/about", option.GetAboutHandler)
|
|
|
|
optionRoute := apiGroup.Group("/option")
|
|
optionRoute.Use(apiutil.AdminMiddlewares()...)
|
|
{
|
|
apiutil.RegisterCollection(optionRoute, "GET", option.ListOptionsHandler)
|
|
optionRoute.POST("/update", option.UpdateOptionHandler)
|
|
optionRoute.POST("/update-batch", option.UpdateOptionsBatchHandler)
|
|
optionRoute.POST("/geoip/lookup", option.LookupGeoIPHandler)
|
|
optionRoute.POST("/database/cleanup", option.CleanupDatabaseHandler)
|
|
}
|
|
|
|
uptimeKumaRoute := apiGroup.Group("/uptimekuma")
|
|
uptimeKumaRoute.Use(apiutil.AdminMiddlewares()...)
|
|
{
|
|
uptimeKumaRoute.POST("/sync", option.SyncUptimeKumaHandler)
|
|
}
|
|
}
|