mentorenwahl/frontend/src/routes/home/teacher_home.rs

51 lines
1.1 KiB
Rust

use yew::prelude::*;
use crate::routes::home::teacher_registration;
pub enum Msg {
Registered,
}
#[derive(Properties, PartialEq)]
pub struct TeacherHomeProps {
pub token: String,
pub registered: bool,
}
pub struct TeacherHome {
registered: bool,
}
impl Component for TeacherHome {
type Message = Msg;
type Properties = TeacherHomeProps;
fn create(ctx: &Context<Self>) -> Self {
Self {
registered: ctx.props().registered,
}
}
fn update(&mut self, _ctx: &Context<Self>, msg: Self::Message) -> bool {
match msg {
Msg::Registered => {
self.registered = true;
true
}
}
}
fn view(&self, ctx: &Context<Self>) -> Html {
html! {
if self.registered {
<p>{ "Alles in Ordnung." }</p>
} else {
<teacher_registration::TeacherRegistration
token={ctx.props().token.to_owned()}
onregistered={ctx.link().callback(|_| Msg::Registered)}
/>
}
}
}
}