use super::types::*; use wasm_bindgen::JsCast; use web_sys::HtmlInputElement; use yew::prelude::*; #[function_component(LocationTab)] pub fn location_tab(props: &TabProps) -> Html { let data = &props.data; let on_location_input = { let data = data.clone(); Callback::from(move |e: InputEvent| { if let Some(target) = e.target() { if let Ok(input) = target.dyn_into::() { let mut event_data = (*data).clone(); event_data.location = input.value(); data.set(event_data); } } }) }; let set_location = { let data = data.clone(); move |location: &str| { let data = data.clone(); let location = location.to_string(); Callback::from(move |_| { let mut event_data = (*data).clone(); event_data.location = location.clone(); data.set(event_data); }) } }; html! {

{"Enter the full address or location description for the event"}

{"Common Locations"}

{"Click to quickly set common location types"}

{"Location Features & Integration"}
  • {"Location information is included in calendar invitations"}
  • {"Supports both physical addresses and virtual meeting links"}
  • {"Compatible with mapping and navigation applications"}
  • {"Room booking integration available for enterprise setups"}
{"Geographic Coordinates (Advanced)"}

{"Future versions will support:"}

{"GPS Coordinates:"} {"Precise latitude/longitude positioning"}
{"Map Integration:"} {"Embedded maps in event details"}
{"Travel Time:"} {"Automatic travel time calculation"}
{"Proximity Alerts:"} {"Location-based notifications"}

{"Advanced geographic features will be implemented in future releases"}

{"Virtual Meeting Integration"}
{"Video Conferencing:"} {"Zoom, Teams, Google Meet links"}
{"Phone Conference:"} {"Dial-in numbers and access codes"}
{"Webinar Links:"} {"Live streaming and presentation URLs"}

{"Paste meeting links directly in the location field for virtual events"}

} }