Эх сурвалжийг харах

d06 Исправление на проверку кукис

SVI 2 жил өмнө
parent
commit
ffabe9e148

+ 13 - 14
server/serv_web/web_gui/web_gui.go

@@ -4,6 +4,7 @@ package web_gui
 import (
 	"fmt"
 	"log"
+	"net/http"
 	"strconv"
 
 	"github.com/gofiber/fiber/v2"
@@ -36,6 +37,10 @@ func НовВебГуи(вебСервер types.ИВебСервер) (*Веб
 
 // Показывает состояние бота по имени
 func (сам *ВебГуи) состояниеБота(кнт *fiber.Ctx) error {
+	имя := кнт.Cookies("login")
+	if имя != "svi" {
+		return кнт.Redirect("/", http.StatusSeeOther)
+	}
 	стрНомер := кнт.Params("number")
 	иНомер, ош := strconv.Atoi(стрНомер)
 	if ош != nil {
@@ -94,10 +99,7 @@ func (сам *ВебГуи) состояниеБота(кнт *fiber.Ctx) error
 func (сам *ВебГуи) гетБотНов(кнт *fiber.Ctx) error {
 	имя := кнт.Cookies("login")
 	if имя != "svi" {
-		return кнт.Render("index", fiber.Map{
-			"Title": "WarTank",
-			"err":   "Не выполнен вход",
-		})
+		return кнт.Redirect("/", http.StatusSeeOther)
 	}
 	log.Printf("ВебГуи.гетБотНов(): логин=%s\n", имя)
 	return кнт.Render("add_bot", fiber.Map{
@@ -109,10 +111,7 @@ func (сам *ВебГуи) гетБотНов(кнт *fiber.Ctx) error {
 func (сам *ВебГуи) списокБотов(кнт *fiber.Ctx) error {
 	имя := кнт.Cookies("login")
 	if имя != "svi" {
-		return кнт.Render("index", fiber.Map{
-			"Title": "WarTank",
-			"err":   "Не выполнен вход",
-		})
+		return кнт.Redirect("/", http.StatusSeeOther)
 	}
 	log.Printf("ВебГуи.списокБотов(): логин=%s\n", имя)
 	списокБотов := сам.серв.ServBots().ListBot()
@@ -129,11 +128,11 @@ func (сам *ВебГуи) списокБотов(кнт *fiber.Ctx) error {
 // Возвращает индексную страницу
 func (сам *ВебГуи) индекс(кнт *fiber.Ctx) error {
 	имя := кнт.Cookies("login")
-	if имя == "svi" {
-		return кнт.Redirect("/gui/list_bot")
+	if имя != "svi" {
+		return кнт.Render("index", fiber.Map{
+			"Title": "WarTank",
+			"err":   "Неправильный логин",
+		})
 	}
-	log.Printf("ВебГуи.индекс(): логин=%s\n", имя)
-	return кнт.Render("index", fiber.Map{
-		"Title": "WarTank",
-	})
+	return кнт.Redirect("/gui/list_bot", http.StatusSeeOther)
 }