Merge branch 'master' of https://github.com/leporel/TorrServer into pr/361

This commit is contained in:
nikk gitanes
2024-02-22 06:05:57 +03:00
2 changed files with 14 additions and 8 deletions

View File

@@ -6,7 +6,6 @@ import (
"net/http"
"os"
"path/filepath"
"slices"
"unsafe"
"github.com/gin-gonic/gin"
@@ -69,15 +68,11 @@ func BasicAuth(accounts gin.Accounts) gin.HandlerFunc {
}
}
func CheckAuth(exclude ...string) gin.HandlerFunc {
func CheckAuth() gin.HandlerFunc {
return func(c *gin.Context) {
if !settings.HttpAuth {
return
}
if slices.Contains(exclude, c.FullPath()) {
return
}
if _, ok := c.Get(gin.AuthUserKey); ok {
return

View File

@@ -1,6 +1,8 @@
package pages
import (
"slices"
"github.com/anacrolix/torrent/metainfo"
"github.com/gin-gonic/gin"
@@ -11,9 +13,18 @@ import (
)
func SetupRoute(route gin.IRouter) {
authorized := route.Group("/", auth.CheckAuth("/site.webmanifest"))
authorized := route.Group("/", auth.CheckAuth())
template.RouteWebPages(authorized)
webPagesAuth := route.Group("/", func() gin.HandlerFunc {
return func(c *gin.Context) {
if slices.Contains([]string{"/site.webmanifest"}, c.FullPath()) {
return
}
auth.CheckAuth()(c)
}
}())
template.RouteWebPages(webPagesAuth)
authorized.GET("/stat", statPage)
authorized.GET("/magnets", getTorrents)
}