From dc9df23c39bb89c26b49106f9dd0f7b062d6752e Mon Sep 17 00:00:00 2001 From: Arnaud Delcasse Date: Mon, 5 May 2025 01:03:36 +0200 Subject: [PATCH] Add public transit with MOTIS --- README.md | 3 +- config.yaml | 8 +- web/layouts/beneficiaries/display.html | 10 +- web/layouts/beneficiaries/list.html | 7 + .../journeys/_partials/journeys-all.html | 78 +++------- .../journeys/_partials/journeys-carpool.html | 141 ++++++++++++++---- .../journeys-public-transit-motis.html | 71 +++++++++ web/layouts/journeys/search.html | 6 +- .../_partials/drivers_list.html | 7 + .../organized_carpool/driver_display.html | 5 + .../_partials/bookings_list.html | 4 +- .../_partials/driver_documents.html | 6 +- .../_partials/drivers_list.html | 7 + .../solidarity_transport/booking_display.html | 4 + .../solidarity_transport/driver_display.html | 4 + 15 files changed, 261 insertions(+), 100 deletions(-) create mode 100644 web/layouts/journeys/_partials/journeys-public-transit-motis.html diff --git a/README.md b/README.md index a1e283a..3f71357 100644 --- a/README.md +++ b/README.md @@ -23,4 +23,5 @@ To bundle Javascript with esbuild inside the web/ directory : ``` npx esbuild assets/js/main.js --bundle --outfile=public/js/main.js -``` \ No newline at end of file +``` + diff --git a/config.yaml b/config.yaml index ed97388..a57b203 100644 --- a/config.yaml +++ b/config.yaml @@ -197,7 +197,7 @@ views: - web/layouts/journeys/_partials/journeys-all.html - web/layouts/journeys/_partials/journeys-others.html - web/layouts/journeys/_partials/journeys-carpool.html - - web/layouts/journeys/_partials/journeys-public-transit.html + - web/layouts/journeys/_partials/journeys-public-transit-motis.html - web/layouts/journeys/_partials/journeys-solidarity-transport.html - web/layouts/journeys/_partials/journeys-organized-carpools.html - web/layouts/journeys/search.html @@ -353,6 +353,7 @@ views: icons: svg: coopgo:parcoursmob/monogram: + hero:outline/archive-box: hero:outline/briefcase: hero:outline/support: hero:outline/group_module: @@ -428,3 +429,8 @@ emails: files: - emails/layout.html - emails/onboarding/delete-subscriber.html + +sms: + solidarity_transport: + request_driver: + - sms/solidarity_transport/request_driver.tmpl diff --git a/web/layouts/beneficiaries/display.html b/web/layouts/beneficiaries/display.html index 4c44e47..56b662f 100644 --- a/web/layouts/beneficiaries/display.html +++ b/web/layouts/beneficiaries/display.html @@ -12,16 +12,18 @@

{{.ViewState.beneficiary.Data.first_name}} {{.ViewState.beneficiary.Data.last_name}}

+

{{if .ViewState.beneficiary.Data.archived}}Bénéficiaire archivé{{end}}

{{if .ViewState.beneficiary.Metadata.created}}Ajouté le par - Conseiller 1{{end}} + datetime="2022-07-25">{{.ViewState.beneficiary.Metadata.created}}{{end}}

- + {{if not .ViewState.beneficiary.Data.archived}}{{end}} + {{if .ViewState.beneficiary.Data.archived}}{{end}}
diff --git a/web/layouts/beneficiaries/list.html b/web/layouts/beneficiaries/list.html index e88028e..c16c4d0 100644 --- a/web/layouts/beneficiaries/list.html +++ b/web/layouts/beneficiaries/list.html @@ -14,6 +14,13 @@ Exporter + + + + {{end}} - {{ if and .ViewState.journeys (gt (len .ViewState.journeys.Journeys) 0)}} -
+ {{ if and .ViewState.journeys (gt (len .ViewState.journeys) 0)}} + {{$itinerary := index .ViewState.journeys 0}} +
{{.IconSet.Icon "tabler-icons:bus" "h-6 w-6 inline-flex mr-4"}} - {{(timeFrom (index .ViewState.journeys.Journeys 0).Departure).Format "15:04"}} - {{(timeFrom (index .ViewState.journeys.Journeys 0).Arrival).Format "15:04"}} - ({{(index .ViewState.journeys.Journeys 0).Duration.Minutes | printf "%.0f"}} Minutes) + {{( timeFrom $itinerary.StartTime).Format "15:04"}} - {{(timeFrom $itinerary.EndTime).Format "15:04"}} + ({{divideInt $itinerary.Duration 60}} Minutes)
- {{$firstwalk := true}} - {{range (index .ViewState.journeys.Journeys 0).Sections}} - {{if eq .Type "street_network"}} - - {{$.IconSet.Icon "tabler-icons:walk" "h-4 w-4 stroke-gray-800"}} + {{range $itinerary.Legs }} + {{if eq .Mode "BUS"}} + + {{.AgencyName}} - {{if $firstwalk}} - {{$firstwalk = false}} - {{$.IconSet.Icon "hero:outline/chevron-right" "h-3 w-3 stroke-gray-800 m-2"}} - {{end}} - {{end}} - {{if eq .Type "public_transport"}} - - {{if eq .Display.Network "Antibes - Envibus"}}Envibus{{else}}{{.Display.Network}}{{end}} Ligne {{.Display.Label}} + + {{.RouteShortName}} - {{$.IconSet.Icon "hero:outline/chevron-right" "h-3 w-3 stroke-gray-800 m-2"}} {{end}} {{end}}
- +
{{end}} diff --git a/web/layouts/journeys/_partials/journeys-carpool.html b/web/layouts/journeys/_partials/journeys-carpool.html index 1a0a198..108b2a3 100644 --- a/web/layouts/journeys/_partials/journeys-carpool.html +++ b/web/layouts/journeys/_partials/journeys-carpool.html @@ -1,10 +1,11 @@ {{define "journeys_carpool"}} - +
{{ if eq (len .ViewState.carpools) 0}}

Aucun covoiturage disponible pour ce trajet.

{{end}} {{$first := true}} +{{$i := 0}} {{range .ViewState.carpools}} {{if $first}} {{$first = false}} @@ -13,44 +14,132 @@
+{{end}} diff --git a/web/layouts/journeys/_partials/journeys-public-transit-motis.html b/web/layouts/journeys/_partials/journeys-public-transit-motis.html new file mode 100644 index 0000000..4b0cff3 --- /dev/null +++ b/web/layouts/journeys/_partials/journeys-public-transit-motis.html @@ -0,0 +1,71 @@ +{{ define "journeys_public_transit" }} +{{ range .ViewState.journeys }} +
+
+
{{ (timeFrom .StartTime).Format "15:04" }} - {{ (timeFrom .EndTime).Format "15:04" }}
+
{{ divideInt .Duration 60 }} Minutes
+
+
+ + +
+ +
+{{ end }} +{{ end }} diff --git a/web/layouts/journeys/search.html b/web/layouts/journeys/search.html index 5b0f3aa..deb17a2 100644 --- a/web/layouts/journeys/search.html +++ b/web/layouts/journeys/search.html @@ -6,13 +6,13 @@

diff --git a/web/layouts/organized_carpool/_partials/drivers_list.html b/web/layouts/organized_carpool/_partials/drivers_list.html index 078c9d5..07016ce 100644 --- a/web/layouts/organized_carpool/_partials/drivers_list.html +++ b/web/layouts/organized_carpool/_partials/drivers_list.html @@ -12,6 +12,13 @@ Exporter --> + + + {{end}} + {{if .ViewState.driver.Data.archived}}{{end}} + + + + {{end}} {{if eq .ViewState.booking.Status "WAITING_CONFIRMATION" }} diff --git a/web/layouts/solidarity_transport/driver_display.html b/web/layouts/solidarity_transport/driver_display.html index 521100e..2c6636a 100644 --- a/web/layouts/solidarity_transport/driver_display.html +++ b/web/layouts/solidarity_transport/driver_display.html @@ -20,6 +20,10 @@
+ {{if not .ViewState.driver.Data.archived}}{{end}} + {{if .ViewState.driver.Data.archived}}{{end}}