use crate::view::organizational::*; use super::*; #[derive(Clone,Debug,PartialEq)] pub struct Organizational { pub org: String, pub logo: String, pub title: String, pub role: String, pub member: String, pub related: String, } impl VCardPropertyInputObject for Organizational { fn new() -> Self { Self { org: String::new(), logo: String::new(), title: String::new(), role: String::new(), member: String::new(), related: String::new(), } } fn get_input_fields(&self, link: &yew::html::Scope) -> std::vec::Vec { let typ = String::from("text"); vec![ VCardPropertyInputField::Text{ label: "Organisation".to_string(), id: Some("org".to_string()), placeholder: None, oninput: link.callback(|e: InputData| Msg::UpdateOrg(e.value)), value: self.org.clone(), typ: typ.clone(), }, VCardPropertyInputField::Text{ // TODO: Add Upload for logo label: "Logo".to_string(), id: Some("logo".to_string()), placeholder: None, oninput: link.callback(|e: InputData| Msg::UpdateLogo(e.value)), value: self.logo.clone(), typ: typ.clone(), }, VCardPropertyInputField::Text{ label: "Title".to_string(), id: Some("title".to_string()), placeholder: None, oninput: link.callback(|e: InputData| Msg::UpdateTitle(e.value)), value: self.title.clone(), typ: typ.clone(), }, VCardPropertyInputField::Text{ label: "Role".to_string(), id: Some("role".to_string()), placeholder: None, oninput: link.callback(|e: InputData| Msg::UpdateRole(e.value)), value: self.role.clone(), typ: typ.clone(), }, VCardPropertyInputField::Text{ label: "Member".to_string(), id: Some("member".to_string()), placeholder: None, oninput: link.callback(|e: InputData| Msg::UpdateMember(e.value)), value: self.member.clone(), typ: typ.clone(), }, VCardPropertyInputField::Text{ label: "Related".to_string(), id: Some("related".to_string()), placeholder: None, oninput: link.callback(|e: InputData| Msg::UpdateRelated(e.value)), value: self.related.clone(), typ: typ, }, ] } fn is_empty(&self) -> bool { self.org.is_empty() && self.logo.is_empty() && self.title.is_empty() && self.role.is_empty() && self.member.is_empty() && self.related.is_empty() } }