| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- // package web_gui -- веб-сервер для графики
- package web_gui
- import (
- "fmt"
- "log"
- "github.com/gofiber/fiber/v2"
- "wartank/pkg/types"
- )
- // ВебГип -- веб-сервер для графики
- type ВебГуи struct {
- серв types.ИСервер
- файбер *fiber.App
- }
- // НовВебГуи -- возвращает новый веб-сервер для графики
- func НовВебГуи(вебСервер types.ИВебСервер) (*ВебГуи, error) {
- if вебСервер == nil {
- return nil, fmt.Errorf("НовВебГуи(): ИВебСервер==nil")
- }
- сам := &ВебГуи{
- серв: вебСервер.Сервер(),
- файбер: вебСервер.Файбер(),
- }
- сам.файбер.Get("/", сам.индекс)
- сам.файбер.Get("/gui/list_bot", сам.списокБотов)
- return сам, nil
- }
- // Возвращает страницу со списком ботов
- func (сам *ВебГуи) списокБотов(кнт *fiber.Ctx) error {
- имя := кнт.Cookies("login")
- if имя != "svi" {
- return кнт.Render("index", fiber.Map{
- "Title": "WarTank",
- "err": "Не выполнен вход",
- })
- }
- log.Printf("ВебГуи.списокБотов(): логин=%s\n", имя)
- return кнт.Render("list_bot", fiber.Map{
- "Title": "WarTank",
- })
- }
- // Возвращает индексную страницу
- func (сам *ВебГуи) индекс(кнт *fiber.Ctx) error {
- return кнт.Render("index", fiber.Map{
- "Title": "WarTank",
- })
- }
|