| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- package handlers
- import (
- "encoding/json"
- "net/http"
- "asterisk.is/dimesheet/internal/services"
- )
- func write_json(w http.ResponseWriter, data interface{}) error {
- w.Header().Set("Content-Type", "application/json")
- return json.NewEncoder(w).Encode(data)
- }
- // EventsHandler serves the /api endpoint.
- func RootHandler(w http.ResponseWriter, r *http.Request) {
- write_json(w, map[string]interface{}{})
- }
- // EventsHandler serves the /api/clients endpoint.
- func GetClients(w http.ResponseWriter, r *http.Request) {
- clients, err := services.GetClients()
- if err != nil {
- http.Error(w, "Unable to retrieve clients, "+err.Error(), http.StatusInternalServerError)
- return
- }
- if err := write_json(w, clients); err != nil {
- http.Error(w, "Unable to encode clients to JSON", http.StatusInternalServerError)
- }
- }
- func EventsHandler(w http.ResponseWriter, r *http.Request) {
- events, err := services.GetEvents()
- if err != nil {
- http.Error(w, "Unable to retrieve events, "+err.Error(), http.StatusInternalServerError)
- return
- }
- if err := write_json(w, events); err != nil {
- http.Error(w, "Unable to encode events to JSON", http.StatusInternalServerError)
- }
- }
|