package endpoints import ( "arbeitszeitmessung/helper" "arbeitszeitmessung/models" "encoding/json" "fmt" "net/http" ) func LogoutHandler(w http.ResponseWriter, r *http.Request) { helper.SetCors(w) switch r.Method { case "GET": autoLogout(w) default: http.Error(w, "Method not allowed", http.StatusMethodNotAllowed) } } func autoLogout(w http.ResponseWriter) { users, err := (*models.User).GetAll(nil) var logged_out_users []models.User if err != nil { fmt.Printf("Error getting user list %v\n", err) } for _, user := range users { if user.CheckAnwesenheit() { err = user.Logout() if err != nil { fmt.Printf("Error logging out user %v\n", err) }else { logged_out_users = append(logged_out_users, user) } } } w.Header().Set("Content-Type", "application/json") w.WriteHeader(http.StatusOK) json.NewEncoder(w).Encode(logged_out_users) }