Aller au contenu principal
Jahia Store
FR

Store Locator

community
Télécharger 1.1.0

Informations

Identifiant du module
js-store-locator
Identifiant de groupe
org.jahia.modules.se.javascript
Statut
community
Catégorie
Demo templates and components
Auteur
smonier@jahia.com
Site web du développeur
https://github.com/smonier
Nécessite Jahia
8.2.0.0
Publié le
2026-10-01
Étiquettes
  • maps
  • leaflet
  • location
  • stores
  • ui extension

This is a Jahia Javascript Module for Jahia 8.2+

Store Locator is a Jahia V8.2+ JS module that brings a full store-location experience to authors: the content model covers addresses, geolocation, and opening hours via reusable, translated fieldsets. The module now ships a lightweight, native-UI OpeningHoursSelector that registers as a selectorType for the openingHours field; editors get friendly day/opens/closes dropdowns styled to fill the editor width while values stay stored as JSON for compatibility. Translation is handled in‑module via a tiny provider that reads the settings/locales JSON and reuses Jahia’s current locale instead of reinitializing i18next, so the platform-wide i18n stack stays untouched. The Vite build shares React/i18n singletons with the Jahia shell, exposes @smonier/js-store-locator/init for both the shell and jContent, and records activation in the console—so you can verify the selector type loads. Source, README, and docs remain on the GitHub repo.

Captures d'écran

Dépendances

Modules dépendants

Aucun module n'en dépend.

Versions

1.1.0 (2026-10-01)

Accessibility (RGAA 4.1.2, WCAG 2.1 AA)

  • The map is a named region with the store list as its equivalent; markers are buttons named after the store and work with the keyboard; the details take the focus, and Escape or the close button return it to the control that opened them.
  • Search with a visible label, results announced, accents ignored.
  • Opening hours as a table; open or closed shown as text and a symbol, not by colour alone.
  • Readable without JavaScript: the list renders on the server and each store links to its own page.
  • Store pages get a full-page view with the store name as their heading.
  • At 320 px the panes stack; named controls with 44 px targets and a visible focus ring.

Theming and translation

  • Every colour is a --jsstoreloc-* custom property, so a host theme can map it, including dark mode; the panel's colour scheme can follow the host.
  • Every visitor-facing text and the content-manager previews are translated (EN, FR).

Robustness

  • The map stylesheet is served from the module.
  • Store data is rendered as text; website links accept http and https (www. addresses included); telephone links are built from the number as entered, without the national "(0)" or an extension.
  • Opening hours are parsed strictly.
  • The list refreshes when stores or their images change.

Build

  • yarn build builds the views, the island and the UI extension; yarn dev builds the UI extension once, then watches.
  • Unit tests (Vitest) for opening hours, search and links, run in CI.

Requires Jahia 8.2 and javascript-modules-engine 1.x.

Nécessite Jahia 8.2.0.0Publié le 2026-10-01
Nécessite Jahia 8.2.0.0Publié le 2026-01-28