router.go 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package system
  2. import (
  3. "github.com/0xJacky/Nginx-UI/internal/middleware"
  4. "github.com/gin-gonic/gin"
  5. )
  6. func authIfInstalled(ctx *gin.Context) {
  7. if installLockStatus() || isInstallTimeoutExceeded() {
  8. middleware.AuthRequired()(ctx)
  9. } else {
  10. ctx.Next()
  11. }
  12. }
  13. func InitPublicRouter(r *gin.RouterGroup) {
  14. r.GET("install", InstallLockCheck)
  15. r.POST("install", middleware.EncryptedParams(), InstallNginxUI)
  16. r.GET("translation/:code", GetTranslation)
  17. }
  18. func InitPrivateRouter(r *gin.RouterGroup) {
  19. r.GET("upgrade/release", GetRelease)
  20. r.GET("upgrade/current", GetCurrentVersion)
  21. r.GET("system/processing", GetProcessingStatus)
  22. r.POST("system/port_scan", PortScan)
  23. }
  24. func InitSelfCheckRouter(r *gin.RouterGroup) {
  25. g := r.Group("self_check", authIfInstalled)
  26. g.GET("", middleware.Proxy(), SelfCheck)
  27. g.POST("/:name/fix", middleware.Proxy(), SelfCheckFix)
  28. g.GET("sse", middleware.Proxy(), CheckSSE)
  29. g.GET("websocket", middleware.ProxyWs(), CheckWebSocket)
  30. g.GET("timeout", middleware.Proxy(), TimeoutCheck)
  31. }
  32. func InitBackupRestoreRouter(r *gin.RouterGroup) {
  33. // Backup and restore routes moved to api/backup package
  34. }
  35. func InitWebSocketRouter(r *gin.RouterGroup) {
  36. r.GET("upgrade/perform", PerformCoreUpgrade)
  37. }