diff --git a/renderer/beneficiaries.go b/renderer/beneficiaries.go index 912604e..1d1e01d 100755 --- a/renderer/beneficiaries.go +++ b/renderer/beneficiaries.go @@ -97,7 +97,7 @@ func (renderer *Renderer) BeneficiaryDisplay(w http.ResponseWriter, r *http.Requ renderer.Render("beneficiaries_display", w, r, files, state) } -func (renderer *Renderer) BeneficiaryUpdate(w http.ResponseWriter, r *http.Request, beneficiary any) { +func (renderer *Renderer) BeneficiaryUpdate(w http.ResponseWriter, r *http.Request, beneficiary mobilityaccountsstorage.Account) { files := renderer.ThemeConfig.GetStringSlice("views.beneficiaries.update.files") profileFields := renderer.GlobalConfig.Get("modules.beneficiaries.profile_optional_fields") @@ -106,6 +106,7 @@ func (renderer *Renderer) BeneficiaryUpdate(w http.ResponseWriter, r *http.Reque "beneficiary": beneficiary, "profile_optional_fields": profileFields, } + state.DynamicData = beneficiary.Data renderer.Render("beneficiaries_update", w, r, files, state) } diff --git a/renderer/organized-carpool.go b/renderer/organized-carpool.go index 3b760d5..45ab064 100644 --- a/renderer/organized-carpool.go +++ b/renderer/organized-carpool.go @@ -56,22 +56,24 @@ func (renderer *Renderer) OrganizedCarpoolUpdateDriver(w http.ResponseWriter, r func (renderer *Renderer) OrganizedCarpoolDriverDisplay(w http.ResponseWriter, r *http.Request, driver mobilityaccountsstorage.Account, trips any, documents any, bookings any, beneficiariesMap any, stats map[string]any, walletBalance float64, tab string) { files := renderer.ThemeConfig.GetStringSlice("views.organized_carpool.driver_display.files") + profileFields := renderer.GlobalConfig.Get("modules.organized_carpool.drivers.profile_optional_fields") state := NewState(r, renderer.ThemeConfig, organizedCarpoolMenu) drivers_file_types := renderer.GlobalConfig.GetStringSlice("modules.organized_carpool.drivers.documents_types") file_types_map := renderer.GlobalConfig.GetStringMapString("storage.files.file_types") state.ViewState = map[string]any{ - "driver": driver, - "trips": trips, - "documents": documents, - "bookings": bookings, - "beneficiaries_map": beneficiariesMap, - "stats": stats, - "drivers_file_types": drivers_file_types, - "file_types_map": file_types_map, - "wallet_balance": walletBalance, - "tab": tab, + "driver": driver, + "trips": trips, + "documents": documents, + "bookings": bookings, + "beneficiaries_map": beneficiariesMap, + "stats": stats, + "drivers_file_types": drivers_file_types, + "file_types_map": file_types_map, + "profile_optional_fields": profileFields, + "wallet_balance": walletBalance, + "tab": tab, } renderer.Render("organized carpool driver display", w, r, files, state) diff --git a/renderer/renderer.go b/renderer/renderer.go index d9e6d69..bdd3738 100755 --- a/renderer/renderer.go +++ b/renderer/renderer.go @@ -105,11 +105,12 @@ func (r *Renderer) templateFile(file string) string { type RenderState struct { icons.IconSet LayoutState - UserID string - UserClaims map[string]any - Group storage.Group - Roles any - ViewState any // This is a state specific to a given view + UserID string + UserClaims map[string]any + Group storage.Group + Roles any + ViewState any // This is a state specific to a given view + DynamicData any // Data to be serialized as JSON in a