50 lines
1.1 KiB
Go
50 lines
1.1 KiB
Go
package api
|
|
|
|
import (
|
|
"context"
|
|
"fmt"
|
|
"net/http"
|
|
|
|
core "fr.latosa-escrima/api/core"
|
|
)
|
|
|
|
func HandleGetEvent(w http.ResponseWriter, r *http.Request) {
|
|
event_uuid := r.PathValue("event_uuid")
|
|
var event core.Event
|
|
_, err := core.DB.NewSelect().Model(&event).Where("uuid = ?", event_uuid).ScanAndCount(context.Background())
|
|
if err != nil {
|
|
core.JSONError{
|
|
Status: core.Error,
|
|
Message: err.Error(),
|
|
}.Respond(w, http.StatusInternalServerError)
|
|
return
|
|
}
|
|
|
|
core.JSONSuccess{
|
|
Status: core.Success,
|
|
Message: "Event successfully sent",
|
|
Data: event,
|
|
}.Respond(w, http.StatusOK)
|
|
return
|
|
}
|
|
|
|
func HangleGetEvents(w http.ResponseWriter, r *http.Request) {
|
|
var events []core.Event
|
|
rowsCount, err := core.DB.NewSelect().Model(&events).ScanAndCount(context.Background())
|
|
if err != nil {
|
|
core.JSONError{
|
|
Status: core.Error,
|
|
Message: err.Error(),
|
|
}.Respond(w, http.StatusInternalServerError)
|
|
return
|
|
}
|
|
|
|
core.JSONSuccess{
|
|
Status: core.Success,
|
|
Message: fmt.Sprintf("%d Event successfully sent", rowsCount),
|
|
Data: events,
|
|
}.Respond(w, http.StatusOK)
|
|
return
|
|
}
|
|
|