47 lines
1.3 KiB
Rust
47 lines
1.3 KiB
Rust
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
|
|
}
|