103 lines
4.5 KiB
Go
103 lines
4.5 KiB
Go
package renderer
|
|
|
|
import (
|
|
"net/http"
|
|
|
|
mobilityaccountsstorage "git.coopgo.io/coopgo-platform/mobility-accounts/storage"
|
|
)
|
|
|
|
const solidarityTransportMenu = "solidarity_transport"
|
|
|
|
func (renderer *Renderer) SolidarityTransportOverview(w http.ResponseWriter, r *http.Request, drivers any, driversMap any, passengersMap any, bookings any, bookingsHistory any, filters any, hist_filters any, tab string) {
|
|
files := renderer.ThemeConfig.GetStringSlice("views.solidarity_transport.overview.files")
|
|
state := NewState(r, renderer.ThemeConfig, solidarityTransportMenu)
|
|
state.ViewState = map[string]any{
|
|
"drivers": drivers,
|
|
"drivers_map": driversMap,
|
|
"passengers_map": passengersMap,
|
|
"bookings": bookings,
|
|
"bookings_history": bookingsHistory,
|
|
"filters": filters,
|
|
"hist_filters": hist_filters,
|
|
"tab": tab,
|
|
}
|
|
|
|
renderer.Render("solidarity transport overview", w, r, files, state)
|
|
}
|
|
|
|
func (renderer *Renderer) SolidarityTransportCreateDriver(w http.ResponseWriter, r *http.Request) {
|
|
files := renderer.ThemeConfig.GetStringSlice("views.solidarity_transport.driver_create.files")
|
|
profileFields := renderer.GlobalConfig.Get("modules.solidarity_transport.drivers.profile_optional_fields")
|
|
|
|
state := NewState(r, renderer.ThemeConfig, solidarityTransportMenu)
|
|
state.ViewState = map[string]any{
|
|
"profile_optional_fields": profileFields,
|
|
}
|
|
|
|
renderer.Render("solidarity transport driver creation", w, r, files, state)
|
|
}
|
|
|
|
func (renderer *Renderer) SolidarityTransportUpdateDriver(w http.ResponseWriter, r *http.Request, driver any) {
|
|
files := renderer.ThemeConfig.GetStringSlice("views.solidarity_transport.driver_update.files")
|
|
profileFields := renderer.GlobalConfig.Get("modules.solidarity_transport.drivers.profile_optional_fields")
|
|
|
|
state := NewState(r, renderer.ThemeConfig, solidarityTransportMenu)
|
|
state.ViewState = map[string]any{
|
|
"driver": driver,
|
|
"profile_optional_fields": profileFields,
|
|
}
|
|
|
|
renderer.Render("solidarity transport driver update", w, r, files, state)
|
|
}
|
|
|
|
func (renderer *Renderer) SolidarityTransportDriverDisplay(w http.ResponseWriter, r *http.Request, driver mobilityaccountsstorage.Account, availabilities any, documents any, bookings any, stats map[string]any, walletBalance float64) {
|
|
files := renderer.ThemeConfig.GetStringSlice("views.solidarity_transport.driver_display.files")
|
|
profileFields := renderer.GlobalConfig.Get("modules.solidarity_transport.drivers.profile_optional_fields")
|
|
state := NewState(r, renderer.ThemeConfig, solidarityTransportMenu)
|
|
|
|
drivers_file_types := renderer.GlobalConfig.GetStringSlice("modules.solidarity_transport.drivers.documents_types")
|
|
file_types_map := renderer.GlobalConfig.GetStringMapString("storage.files.file_types")
|
|
|
|
state.ViewState = map[string]any{
|
|
"driver": driver,
|
|
"availabilities": availabilities,
|
|
"bookings": bookings,
|
|
"documents": documents,
|
|
"drivers_file_types": drivers_file_types,
|
|
"file_types_map": file_types_map,
|
|
"stats": stats,
|
|
"profile_optional_fields": profileFields,
|
|
"wallet_balance": walletBalance,
|
|
}
|
|
|
|
renderer.Render("solidarity transport driver creation", w, r, files, state)
|
|
}
|
|
|
|
func (renderer *Renderer) SolidarityTransportDriverJourney(w http.ResponseWriter, r *http.Request, driverJourney any, driver any, passenger any, beneficiaries any, passengerWalletBalance float64) {
|
|
files := renderer.ThemeConfig.GetStringSlice("views.solidarity_transport.driver_journey.files")
|
|
state := NewState(r, renderer.ThemeConfig, solidarityTransportMenu)
|
|
state.ViewState = map[string]any{
|
|
"driver": driver,
|
|
"passenger": passenger,
|
|
"beneficiaries": beneficiaries,
|
|
"driver_journey": driverJourney,
|
|
"config": renderer.GlobalConfig,
|
|
"passenger_wallet_balance": passengerWalletBalance,
|
|
}
|
|
|
|
renderer.Render("solidarity transport driver creation", w, r, files, state)
|
|
}
|
|
|
|
func (renderer *Renderer) SolidarityTransportBookingDisplay(w http.ResponseWriter, r *http.Request, booking any, driver any, passenger any, passengerWalletBalance float64) {
|
|
files := renderer.ThemeConfig.GetStringSlice("views.solidarity_transport.booking_display.files")
|
|
state := NewState(r, renderer.ThemeConfig, solidarityTransportMenu)
|
|
state.ViewState = map[string]any{
|
|
"driver": driver,
|
|
"passenger": passenger,
|
|
"booking": booking,
|
|
"passenger_wallet_balance": passengerWalletBalance,
|
|
}
|
|
|
|
renderer.Render("booking display", w, r, files, state)
|
|
}
|