diff --git a/run-non-nix.sh b/run-non-nix.sh index 1e4db6f..839cf74 100755 --- a/run-non-nix.sh +++ b/run-non-nix.sh @@ -15,5 +15,5 @@ EXAMPLES=${EXAMPLES:-../examples} echo Starting server serving ${EXAMPLES} mkdir -p .session_store make kitchen -./target/debug/kitchen --verbose debug serve --listen 0.0.0.0:3030 --session_dir .session_store --dir ${EXAMPLES} --tls --cert ~/tls-certs/localhost+2.pem --cert_key ~/tls-certs/localhost+2-key.pem $@ +./target/debug/kitchen --verbose debug serve --listen 127.0.0.1:3030 --session_dir .session_store --dir ${EXAMPLES} --tls --cert ~/tls-certs/localhost+2.pem --cert_key ~/tls-certs/localhost+2-key.pem $@ # This is ghetto but I'm doing it anyway diff --git a/web/src/app_state.rs b/web/src/app_state.rs index bb44012..e0d18d7 100644 --- a/web/src/app_state.rs +++ b/web/src/app_state.rs @@ -466,24 +466,25 @@ impl MessageMapper for StateMachine { let store = self.store.clone(); let local_store = self.local_store.clone(); spawn_local_scoped(cx, async move { - if let Some(mut plan) = store + if let Ok(Some(mut plan)) = store .fetch_plan_for_date(&date) .await - .expect("Failed to fetch plan for date") { // Note(jwall): This is a little unusual but because this // is async code we can't rely on the set below. original_copy.recipe_counts = BTreeMap::from_iter(plan.drain(0..).map(|(k, v)| (k, v as u32))); + let (filtered, modified, extras) = store + .fetch_inventory_for_date(&date) + .await + .expect("Failed to fetch inventory_data for date"); + original_copy.modified_amts = modified; + original_copy.filtered_ingredients = filtered; + original_copy.extras = extras; + } else { + store.store_plan_for_date(Vec::new(), &date).await.expect("failed to set plan on server"); } - let (filtered, modified, extras) = store - .fetch_inventory_for_date(&date) - .await - .expect("Failed to fetch inventory_data for date"); original_copy.plan_dates.insert(date.clone()); - original_copy.modified_amts = modified; - original_copy.filtered_ingredients = filtered; - original_copy.extras = extras; original_copy.selected_plan_date = Some(date.clone()); store .store_plan_for_date(vec![], &date)