use std::collections::HashMap; use gloo_net::http::Request; use crate::zuordnung::{NetworkObjekte, ZuordnungMessage}; /// A helper function that sends a request to the specified URL and returns a ZuordnungMessage with the /// given network object and the response. async fn fetch_data(url: &str, network_object: NetworkObjekte) -> ZuordnungMessage { // Send the request to the specified URL. let response = Request::new(url).send().await; // Return the ZuordnungMessage with the given network object and the response. ZuordnungMessage::Recieved(network_object, response) } pub async fn fetch_verteilpunkte() -> ZuordnungMessage { fetch_data( "/orga/api/verteilpunkte/", NetworkObjekte::Verteilpunkt(HashMap::new()), ) .await } pub async fn fetch_wünsche(jahr: u32) -> ZuordnungMessage { fetch_data( &format!("/orga/api/wuensche/{}/", jahr), NetworkObjekte::Wunsch(None), ) .await } pub async fn fetch_user(jahr: u32) -> ZuordnungMessage { fetch_data( &format!("/orga/api/benutzer/{}/", jahr), NetworkObjekte::User(None), ) .await } pub async fn fetch_zuordnung(jahr: u32) -> ZuordnungMessage { fetch_data( &format!("/orga/api/zuordnung_jahr/{}/", jahr), NetworkObjekte::ZuordnungVorjahr(None), ) .await }