admin-dashboard-backend/routers/router/api/v1/logger/logger.go

43 lines
1.1 KiB
Go

package logger
import (
"janex/admin-dashboard-backend/modules/logger"
"janex/admin-dashboard-backend/modules/structs"
"janex/admin-dashboard-backend/modules/utils"
"janex/admin-dashboard-backend/socketclients"
"github.com/gofiber/fiber/v2"
)
func GetSystemLog(c *fiber.Ctx) error {
t := c.Query("type")
date := c.Query("date")
if t == "" || date == "" {
return c.SendStatus(fiber.StatusBadRequest)
}
if t == "g" && !socketclients.HasPermission(c.Locals("userId").(string), utils.PermissionGroupTasksHistory) || t == "s" && !socketclients.HasPermission(c.Locals("userId").(string), utils.PermissionAdminAreaLogs) {
return c.SendStatus(fiber.StatusUnauthorized)
}
if t == "g" { // grouptasks logs
return c.JSON(struct {
Logs []structs.LogMessageResponse
Dates []string
}{
Logs: logger.ReadLogs(date, false),
Dates: logger.GetAllLogMessagesDates(false),
})
}
// system logs
return c.JSON(struct {
Logs []structs.LogMessageResponse
Dates []string
}{
Logs: logger.ReadLogs(date, true),
Dates: logger.GetAllLogMessagesDates(true),
})
}