CUB-127: implement Control Center CRUD API in Go
Some checks failed
Dev Build / build-test (pull_request) Failing after 11m6s
Dev Build / build-test (push) Successful in 1m54s

This commit is contained in:
2026-05-06 17:29:44 -04:00
parent ab19a7ccde
commit cce3e061a7
16 changed files with 1523 additions and 0 deletions

View File

@@ -0,0 +1,28 @@
package handler
import (
"net/http"
"code.cubecraftcreations.com/CubeCraft-Creations/Control-Center/go-backend/internal/models"
)
// ─── Session Handlers ──────────────────────────────────────────────────────────
// ListSessions handles GET /api/sessions.
func (h *Handler) ListSessions(w http.ResponseWriter, r *http.Request) {
sessions := h.SessionStore.ListActive()
if sessions == nil {
sessions = []models.Session{}
}
page, pageSize := parsePagination(r)
start, end := paginateSlice(len(sessions), page, pageSize)
writeJSON(w, http.StatusOK, models.PaginatedResponse{
Data: sessions[start:end],
TotalCount: h.SessionStore.Count(),
Page: page,
PageSize: pageSize,
HasMore: end < len(sessions),
})
}