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 16b11a9..f829ad5 100644 --- a/config.yaml +++ b/config.yaml @@ -1,14 +1,57 @@ name: PARCOURSMOB +menu_items: + - name: dashboard + title: Tableau de bord + link: /app/ + icon: hero:outline/home + - name: beneficiaries + title: Bénéficiaires + link: /app/beneficiaries/ + icon: hero:outline/user-group + - name: journeys + title: Déplacements + link: /app/journeys/ + icon: hero:outline/map + - name: solidarity_transport + title: Transport solidaire + link: /app/solidarity-transport/ + icon: tabler-icons:car + - name: organized_carpool + title: Covoiturage solidaire + link: /app/organized-carpool/ + icon: tabler-icons:car + - name: vehicles + title: Véhicules partagés + link: /app/vehicles/ + icon: tabler-icons:car + - name: vehicles_management + title: Gestion des véhicules + link: /app/vehicles-management/ + icon: hero:outline/briefcase + - name: agenda + title: Agenda dispositifs + link: /app/agenda/ + icon: hero:outline/calendar + - name: directory + title: Répertoire solutions + link: /app/directory/ + icon: hero:outline/document-text + - name: support + title: Support + link: /app/support/ + icon: hero:outline/support + views: generic: files: - - web/layouts/layout.html + - web/layouts/layout.html - web/layouts/_partials/mainmenu.html dashboard: files: - web/layouts/dashboard/_partials/agenda-widget.html - web/layouts/dashboard/_partials/beneficiaries-widget.html + - web/layouts/dashboard/_partials/bookings-widget.html - web/layouts/dashboard/dashboard.html beneficiaries: list: @@ -28,7 +71,13 @@ views: - web/layouts/beneficiaries/_partials/beneficiary-events.html - web/layouts/beneficiaries/_partials/beneficiary-files.html - web/layouts/beneficiaries/_partials/beneficiary-organizations.html + - web/layouts/beneficiaries/_partials/beneficiary-diags.html + - web/layouts/beneficiaries/_partials/beneficiary-wallet.html + - web/layouts/beneficiaries/_partials/beneficiary-solidarity-transport.html - web/layouts/beneficiaries/display.html + create_diag: + files: + - web/layouts/beneficiaries/create-diag.html update: files: - web/layouts/_partials/address_autocomplete.html @@ -50,29 +99,32 @@ views: - web/layouts/administration/_partials/groups_admins.html - web/layouts/administration/_partials/group_members.html - web/layouts/group/settings.html - - + vehicles: - search: - files: + search: + files: - web/layouts/_partials/address_autocomplete.html - web/layouts/vehicles_management/_partials/vehicle-type-select.html - web/layouts/vehicles/search.html - booking_display: - files: + booking_display: + files: - web/layouts/vehicles/booking-display.html - bookings_list: - files: + - web/layouts/vehicles_management/_partials/booking-diags.html + bookings_list: + files: - web/layouts/vehicles_management/_partials/bookings-list.html - web/layouts/vehicles/bookings-list.html + create_booking_diag: + files: + - web/layouts/vehicles/create-booking-diag.html vehicles_management: overview: files: - web/layouts/vehicles_management/_partials/bookings-list.html - web/layouts/vehicles_management/_partials/vehicles-list.html - web/layouts/vehicles_management/overview.html - bookings_list: - files: + bookings_list: + files: - web/layouts/vehicles_management/_partials/bookings-list.html - web/layouts/vehicles_management/bookings-list.html fleet_add: @@ -84,35 +136,45 @@ views: files: - web/layouts/vehicles_management/_partials/calendar.html - web/layouts/vehicles_management/fleet-display.html + - web/layouts/vehicles_management/_partials/vehicle-diags.html fleet_update: files: - web/layouts/_partials/address_autocomplete.html - web/layouts/agenda/_partials/address.html - web/layouts/vehicles_management/_partials/vehicle-type-select.html - web/layouts/vehicles_management/fleet-update.html - booking_display: - files: + booking_display: + files: - web/layouts/vehicles_management/booking-display.html - delete_booking: - files: + - web/layouts/vehicles_management/_partials/booking-diags.html + delete_booking: + files: - web/layouts/vehicles_management/delete-booking.html - agenda: - list: - files: + create_vehicle_diag: + files: + - web/layouts/vehicles_management/create-vehicle-diag.html + create_booking_diag: + files: + - web/layouts/vehicles_management/create-booking-diag.html + agenda: + list: + files: - web/layouts/agenda/home.html - history: - files: + history: + files: - web/layouts/agenda/history.html - display_event: - files: + display_event: + files: - web/layouts/agenda/_partials/subscribers-table.html - web/layouts/agenda/display-event.html - create_event: - files: + - web/layouts/agenda/_partials/event-files.html + create_event: + files: - web/layouts/_partials/address_autocomplete.html - web/layouts/agenda/create-event.html - delete_subscriber: - files: + - web/layouts/agenda/_partials/event-files.html + delete_subscriber: + files: - web/layouts/agenda/delete-subscriber.html history_event: files: @@ -125,18 +187,20 @@ views: delete: files: - web/layouts/agenda/delete-event.html - directory: - home: - files: + directory: + home: + files: - web/layouts/directory/home.html - journeys: - search: - files: - - web/layouts/_partials/address_autocomplete.html + journeys: + search: + files: + - web/layouts/_partials/orb_address_autocomplete.html - 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 list: files: @@ -165,10 +229,93 @@ views: files: - web/layouts/_partials/address_autocomplete.html - web/layouts/group_module/create_group.html - + display_group: files: - web/layouts/group_module/display_group.html + diags: + list: + files: + - web/layouts/diags/home.html + display_diag: + files: + - web/layouts/diags/display-diag.html + - web/layouts/diags/_partials/diags-files.html + delete: + files: + - web/layouts/diags/delete-diag.html + update: + files: + - web/layouts/diags/update-diag.html + history: + files: + - web/layouts/diags/history-diags.html + + solidarity_transport: + overview: + files: + - web/layouts/solidarity_transport/_partials/drivers_list.html + - web/layouts/solidarity_transport/_partials/bookings_list.html + - web/layouts/solidarity_transport/_partials/bookings_history.html + - web/layouts/solidarity_transport/overview.html + driver_create: + files: + - web/layouts/_partials/address_autocomplete.html + - web/layouts/solidarity_transport/driver_create.html + driver_update: + files: + - web/layouts/agenda/_partials/address.html + - web/layouts/_partials/address_autocomplete.html + - web/layouts/solidarity_transport/driver_update.html + driver_display: + files: + - web/layouts/_partials/address_autocomplete.html + - web/layouts/solidarity_transport/_partials/driver_availabilities.html + - web/layouts/solidarity_transport/_partials/driver_history.html + - web/layouts/solidarity_transport/_partials/driver_documents.html + - web/layouts/solidarity_transport/driver_display.html + driver_journey: + files: + - web/layouts/solidarity_transport/_partials/journey_map.html + - sms/solidarity_transport/request_driver.tmpl + - web/layouts/_partials/submit_with_sms.html + - web/layouts/solidarity_transport/_partials/journey_preview.html + - web/layouts/solidarity_transport/driver_journey.html + booking_display: + files: + - web/layouts/solidarity_transport/_partials/journey_map.html + - web/layouts/solidarity_transport/_partials/journey_preview.html + - web/layouts/solidarity_transport/booking_display.html + + ext: + booking_proposal: + files: + - sms/solidarity_transport/driver_accept.tmpl + - web/layouts/_partials/submit_with_sms.html + - web/layouts/solidarity_transport/_partials/journey_map.html + - web/layouts/solidarity_transport/_partials/journey_preview.html + - web/layouts/solidarity_transport/ext/booking_proposal.html + + organized_carpool: + overview: + files: + - web/layouts/organized_carpool/_partials/drivers_list.html + - web/layouts/organized_carpool/_partials/bookings_list.html + - web/layouts/organized_carpool/overview.html + driver_create: + files: + - web/layouts/_partials/address_autocomplete.html + - web/layouts/organized_carpool/driver_create.html + driver_display: + files: + - web/layouts/_partials/address_autocomplete.html + - web/layouts/organized_carpool/_partials/driver_availabilities.html + - web/layouts/solidarity_transport/_partials/driver_documents.html + - web/layouts/organized_carpool/driver_display.html + journey: + files: + - web/layouts/organized_carpool/_partials/journey_preview.html + - web/layouts/organized_carpool/journey.html administration: home: @@ -195,7 +342,7 @@ views: files: - web/layouts/administration/_partials/bookings_list.html - web/layouts/administration/bookings_stats.html - settings: + settings: files: - web/layouts/administration/_partials/groups_admins.html - web/layouts/administration/_partials/group_members.html @@ -205,27 +352,30 @@ views: files: - web/layouts/auth/groups.html lost_password: - init: - files: + init: + files: - web/layouts/auth/lost-password-init.html - recover: + recover: form: - files: + files: - web/layouts/auth/lost-password-recover.html - ko: + ko: files: - web/layouts/auth/lost-password-recover-ko.html onboarding: form: files: - web/layouts/auth/onboarding.html - ko: + ko: files: - web/layouts/auth/onboarding-ko.html icons: svg: coopgo:parcoursmob/monogram: + hero:outline/archive-box: + hero:outline/arrow-long-right: + hero:outline/arrow-path-rounded-square: hero:outline/briefcase: hero:outline/support: hero:outline/group_module: @@ -239,6 +389,7 @@ icons: hero:outline/information-circle: hero:outline/map: hero:outline/office-building: + hero:outline/paper-airplane: hero:outline/paper-clip: hero:outline/plus-circle: hero:outline/shield-check: @@ -253,9 +404,10 @@ icons: tabler-icons:car: tabler-icons:walk: tabler-icons:bus: + tabler-icons:train: emails: - onboarding: + onboarding: new_administrator: subject: PARCOURSMOB - Vous avez été invité comme administrateur files: @@ -276,10 +428,10 @@ emails: files: - emails/layout.html - emails/onboarding/existing-member.html - auth: + auth: retrieve_password: subject: PAROURSMOB - Réinitialisez votre mot de passe - files: + files: - emails/layout.html - emails/auth/retrieve-password.html fleets: @@ -301,3 +453,19 @@ emails: files: - emails/layout.html - emails/onboarding/delete-subscriber.html + solidarity_transport: + boking_driver_accept: + subject: Trajet accepté par un conducteur + files: + - emails/layout.html + - emails/solidarity_transport/booking_driver_accept.html + boking_driver_decline: + subject: Trajet accepté par un conducteur + files: + - emails/layout.html + - emails/solidarity_transport/booking_driver_accept.html + +sms: + solidarity_transport: + request_driver: + - sms/solidarity_transport/request_driver.tmpl diff --git a/emails/auth/retrieve-password.html b/emails/auth/retrieve-password.html index 569e5a5..d42571a 100644 --- a/emails/auth/retrieve-password.html +++ b/emails/auth/retrieve-password.html @@ -1,5 +1,5 @@ {{define "content"}}
Bonjour,
Vous avez demandé à réinitialiser votre mot de passe pour {{.username}}
-Pour créer votre nouveau mot de passe, cliquez sur le lien suivant : https://spie06.parcoursmob.fr/auth/lost-password/recover?key={{.key}}
-{{end}} \ No newline at end of file +Pour créer votre nouveau mot de passe, cliquez sur le lien suivant : {{ .baseUrl }}/auth/lost-password/recover?key={{.key}}
+{{end}} diff --git a/emails/onboarding/support_emailing.html b/emails/onboarding/support_emailing.html index 1d8d7d3..bf81792 100644 --- a/emails/onboarding/support_emailing.html +++ b/emails/onboarding/support_emailing.html @@ -1,4 +1,4 @@ {{define "content"}} -Vous avez reçu un message sur le support PARCOURSMOB de la part de {{.user}}
-{{.key}}
-{{end}} \ No newline at end of file +Vous avez reçu un commentaire sur PARCOURSMOB de la part de {{.user}}
+{{unescapeHTML .key}}
+{{end}} diff --git a/emails/solidarity_transport/booking_driver_accept.html b/emails/solidarity_transport/booking_driver_accept.html new file mode 100644 index 0000000..b07a0e7 --- /dev/null +++ b/emails/solidarity_transport/booking_driver_accept.html @@ -0,0 +1,5 @@ +{{define "content"}} +Bonjour,
+Trajet accepté par un conducteur.
+Voir le trajet : {{ .baseUrl }}/solidarity-transport/bookings/{{.bookingid}}
+{{end}} diff --git a/emails/solidarity_transport/booking_driver_decline.html b/emails/solidarity_transport/booking_driver_decline.html new file mode 100644 index 0000000..ac762b4 --- /dev/null +++ b/emails/solidarity_transport/booking_driver_decline.html @@ -0,0 +1,5 @@ +{{define "content"}} +Bonjour,
+Trajet refusé par un conducteur.
+Voir le trajet : {{ .baseUrl }}/solidarity-transport/bookings/{{.bookingid}}
+{{end}} diff --git a/sms/solidarity_transport/driver_accept.tmpl b/sms/solidarity_transport/driver_accept.tmpl new file mode 100644 index 0000000..d435dff --- /dev/null +++ b/sms/solidarity_transport/driver_accept.tmpl @@ -0,0 +1 @@ +{{ define "sms_template" }}[{{ .name }}] {{ .driver_first_name }} {{ .driver_last_name }} vient d'accepter votre trajet vers {{.address}} le {{.date}}.{{ end }} diff --git a/sms/solidarity_transport/request_driver.tmpl b/sms/solidarity_transport/request_driver.tmpl new file mode 100644 index 0000000..3c06dcc --- /dev/null +++ b/sms/solidarity_transport/request_driver.tmpl @@ -0,0 +1,2 @@ +{{ define "sms_template" }}[{{ .name }}] Nouvelle demande de trajet solidaire le {{ .datetime }}. +Acceptez ou refusez sur {{ .baseUrl }}/ext/st/bp/{booking_id}{{ end }} diff --git a/web/assets/css/main.css b/web/assets/css/main.css index 15ab027..f045e41 100644 --- a/web/assets/css/main.css +++ b/web/assets/css/main.css @@ -1,6 +1,15 @@ -@tailwind base; -@tailwind components; -@tailwind utilities; +@import "tailwindcss"; + +@theme { + --color-co-blue: #00727e; + --color-co-lightblue: #907eff; + --color-co-red: #de1581; + --color-co-green: #6cc11f; + --color-co-yellow: #ffdd00; + --color-co-orange: #ff5300; + + --radius-co: 40%; +} @font-face { font-family: "Manometer"; @@ -16,4 +25,7 @@ html { font-family: Bitter, serif; } -} \ No newline at end of file + input { + padding: 2px; + } +} diff --git a/web/assets/js/main.js b/web/assets/js/main.js index 0b0b059..773e98d 100644 --- a/web/assets/js/main.js +++ b/web/assets/js/main.js @@ -1,6 +1,11 @@ import '@kingshott/iodine'; import Alpine from 'alpinejs' +import { Protocol } from "pmtiles"; +import { layers, namedFlavor } from '@protomaps/basemaps'; window.Alpine = Alpine -Alpine.start() \ No newline at end of file +Alpine.start() + +let protocol = new Protocol(); +maplibregl.addProtocol("pmtiles",protocol.tile); diff --git a/web/layouts/_partials/address_autocomplete.html b/web/layouts/_partials/address_autocomplete.html index 3ffd1b2..374059c 100644 --- a/web/layouts/_partials/address_autocomplete.html +++ b/web/layouts/_partials/address_autocomplete.html @@ -1,13 +1,12 @@ {{ define "address_autocomplete" }} - -Aucun document
+ {{end}} + + {{if gt (len .ViewState.documents) 0}} + +Type | +Nom du document | +Ajouté le | ++ Actions + | +
---|---|---|---|
+
+ {{index $.ViewState.file_types_map .Metadata.Type}}
+
+ |
+ {{.Metadata.Name}} | +{{.LastModified.Format "02/01/2006"}} | ++ + + + | +