TTime/backend/internal/handlers/global_state.go

53 lines
2.3 KiB
Go
Raw Normal View History

package handlers
import (
"ttime/internal/database"
"github.com/gofiber/fiber/v2"
)
// The actual interface that we will use
type GlobalState interface {
2024-03-14 21:25:14 +01:00
Register(c *fiber.Ctx) error // To register a new user
UserDelete(c *fiber.Ctx) error // To delete a user
Login(c *fiber.Ctx) error // To get the token
LoginRenew(c *fiber.Ctx) error // To renew the token
CreateProject(c *fiber.Ctx) error // To create a new project
GetUserProjects(c *fiber.Ctx) error // To get all projects
2024-03-16 22:47:19 +01:00
SubmitWeeklyReport(c *fiber.Ctx) error
2024-03-17 18:05:54 +01:00
GetWeeklyReport(c *fiber.Ctx) error
SignReport(c *fiber.Ctx) error
GetProject(c *fiber.Ctx) error
AddUserToProjectHandler(c *fiber.Ctx) error
PromoteToAdmin(c *fiber.Ctx) error
GetWeeklyReportsUserHandler(c *fiber.Ctx) error
IsProjectManagerHandler(c *fiber.Ctx) error
// UpdateProject(c *fiber.Ctx) error // To update a project // WIP
2024-03-20 11:23:24 +01:00
DeleteProject(c *fiber.Ctx) error // To delete a project // WIP
// CreateTask(c *fiber.Ctx) error // To create a new task // WIP
// GetTasks(c *fiber.Ctx) error // To get all tasks // WIP
// GetTask(c *fiber.Ctx) error // To get a specific task // WIP
// UpdateTask(c *fiber.Ctx) error // To update a task // WIP
// DeleteTask(c *fiber.Ctx) error // To delete a task // WIP
// CreateCollection(c *fiber.Ctx) error // To create a new collection // WIP
// GetCollections(c *fiber.Ctx) error // To get all collections // WIP
// GetCollection(c *fiber.Ctx) error // To get a specific collection // WIP
// UpdateCollection(c *fiber.Ctx) error // To update a collection // WIP
// DeleteCollection(c *fiber.Ctx) error // To delete a collection // WIP
// SignCollection(c *fiber.Ctx) error // To sign a collection // WIP
ListAllUsers(c *fiber.Ctx) error // To get a list of all users in the application database
ListAllUsersProject(c *fiber.Ctx) error // To get a list of all users for a specific project
ProjectRoleChange(c *fiber.Ctx) error // To change a users role in a project
2024-03-20 12:11:05 +01:00
// ProjectNameChange(c * fiber.Ctx) error // WIP
}
// "Constructor"
func NewGlobalState(db database.Database) GlobalState {
return &GState{Db: db}
}
// The global state, which implements all the handlers
type GState struct {
Db database.Database
2024-03-06 09:41:36 +01:00
}