setup-members #19

Merged
paul merged 3 commits from setup-members into main 2026-01-21 19:28:25 +00:00
Showing only changes of commit 44326e7d26 - Show all commits

View File

@@ -101,12 +101,11 @@ func adminIDHandler(w http.ResponseWriter, r *http.Request) {
} }
func adminMembersHandler(w http.ResponseWriter, r *http.Request) { func adminMembersHandler(w http.ResponseWriter, r *http.Request) {
if r.Method == "GET" { if r.Method != http.MethodPost {
// Redirect to client's AdminMembersPage instead of serving members.html w.WriteHeader(http.StatusMethodNotAllowed)
w.Header().Set("Location", "/admin-members")
w.WriteHeader(http.StatusFound)
return return
} else if r.Method == "POST" { }
var year int var year int
var err error var err error
@@ -115,23 +114,25 @@ func adminMembersHandler(w http.ResponseWriter, r *http.Request) {
return return
} }
if y := r.FormValue("year"); y != "" { year_from_form := r.FormValue("year")
year, err = strconv.Atoi(y) if year_from_form == "" {
http.Error(w, "Year is required", http.StatusBadRequest)
return
} else {
year, err = strconv.Atoi(year_from_form)
if err != nil { if err != nil {
http.Error(w, "Invalid year", http.StatusBadRequest) http.Error(w, "Invalid year", http.StatusBadRequest)
return return
} }
} }
file, _, err := r.FormFile("members.csv") if file, _, err := r.FormFile("members.csv"); err != nil {
if err != nil {
http.Error(w, "Failed to upload file", http.StatusBadRequest) http.Error(w, "Failed to upload file", http.StatusBadRequest)
return return
} }
defer file.Close() defer file.Close()
fileBytes, err := ioutil.ReadAll(file) if fileBytes, err := ioutil.ReadAll(file); err != nil {
if err != nil {
http.Error(w, "Failed to read file", http.StatusInternalServerError) http.Error(w, "Failed to read file", http.StatusInternalServerError)
return return
} }
@@ -144,9 +145,6 @@ func adminMembersHandler(w http.ResponseWriter, r *http.Request) {
w.WriteHeader(http.StatusOK) w.WriteHeader(http.StatusOK)
json.NewEncoder(w).Encode(map[string]bool{"success": true}) json.NewEncoder(w).Encode(map[string]bool{"success": true})
} else {
w.WriteHeader(http.StatusMethodNotAllowed)
}
} }
func main() { func main() {