33 lines
579 B
Go
33 lines
579 B
Go
package main
|
|
|
|
import (
|
|
"github.com/labstack/echo"
|
|
"net/http"
|
|
"strconv"
|
|
)
|
|
|
|
type AdminInfos struct {
|
|
Loggedin bool
|
|
Mode int
|
|
}
|
|
|
|
func adminHandler(c echo.Context) error {
|
|
//Config
|
|
SiteConf := initConfig()
|
|
|
|
rw := c.Response()
|
|
r := c.Request()
|
|
|
|
//Session init
|
|
sess := GlobalSessions.SessionStart(rw, r)
|
|
|
|
//Loggedin
|
|
loggedin := sess.Get("login")
|
|
|
|
if loggedin != nil {
|
|
return c.Render(http.StatusOK, "admin_mode_" + strconv.Itoa(SiteConf.Mode), AdminInfos{true, SiteConf.Mode})
|
|
} else {
|
|
return c.Render(http.StatusOK, "login", AdminInfos{false, SiteConf.Mode})
|
|
}
|
|
}
|