use chrono::{Local, NaiveDate}; use leptos::*; use rust_decimal::Decimal; use crate::backend::data::ApiResponse; use crate::components::modal_box::{DialogOpener, ModalBody, ModalDialog, ModalFooter}; use crate::components::validation_err::ValidationErr; use crate::locales::{loc_date, trl}; use crate::validator::Validator; #[component] pub fn res_error(opener: DialogOpener, validator: Validator) -> impl IntoView { view! { } } #[component] pub fn res_saved( opener: DialogOpener, save_result: RwSignal, ServerFnError>>>, day: RwSignal, price: WriteSignal, slots: WriteSignal>) -> impl IntoView { view! {{move ||{ if let Some(r) = save_result.get() { match r { Ok(ar) => { match ar { ApiResponse::Data(d) => { view! {

{trl("Your reservation has been successfully saved.")}

{trl("We look forward to seeing you on")}" "{loc_date(d)}

} }, ApiResponse::Error(err) => { view! {
{trl("Reservation cannot be saved.")}
{trl(&err)}
} } } } Err(err) => { view! {
{trl("Error while saving reservation.")}
{trl(&err.to_string())}
} } } } else { view! {
} } }} } }