kleinTodo/handler/storeHandler.go
2025-07-26 23:31:00 +02:00

33 lines
700 B
Go

package handler
import (
"encoding/json"
"gitea.kleinsense.nl/DariusKlein/kleinTodo/common"
"gitea.kleinsense.nl/DariusKlein/kleinTodo/common/jwt"
"net/http"
)
func StoreHandler(w http.ResponseWriter, r *http.Request) {
user, err := jwt.GetVerifiedUser(r)
if handleError(w, http.StatusUnauthorized, err) {
return
}
var todo common.StoreTodoRequest
// Decode input
err = json.NewDecoder(r.Body).Decode(&todo)
if handleError(w, http.StatusBadRequest, err) {
return
}
store, err := common.GetTodoDataStore()
if handleError(w, http.StatusInternalServerError, err) {
return
}
err = todo.Store(store, user)
if handleError(w, http.StatusInternalServerError, err) {
return
}
}