定制 faithcatholic/masstimes_widget 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

faithcatholic/masstimes_widget

最新稳定版本:v1.0.4

Composer 安装命令:

composer require faithcatholic/masstimes_widget

包简介

A custom Drupal module embedding a full-screen interactive map and sidebar list of Catholic parishes, powered by the MassTimes Trust database & API.

README 文档

README

A custom Drupal module embedding a full-screen interactive map and sidebar list of Catholic parishes, powered by the MassTimes Trust database & API.

🚀 Features

  • Auto-detect your current location via browser geolocation
  • Fallback to configurable default latitude/longitude if geolocation is unavailable or denied
  • Search by ZIP code or City, State (US-only autocomplete via Nominatim)
  • Interactive map (Leaflet) with parish markers & popups
  • Scrollable sidebar of parish details, synchronized with map clicks
  • Mobile-friendly responsive layout

⚙️ Configuration

  1. In the Block layout screen, place the MassTimes Map Fullscreen Block.

  2. Under Default latitude and Default longitude, enter your preferred fallback coordinates.
    If the user declines geolocation or no URL query parameters are present, the map will center on these values.

    Default Lat/Long Settings

  3. When viewing the page, the map will render full-width with the sidebar alongside:

    Full-Screen Map & Sidebar

🔧 Installation

  1. Clone or download into web/modules/custom/mass_times_widget.
  2. Ensure dependencies in mass_times_widget.info.yml are met (e.g. leaflet module).
  3. Run drush en mass_times_widget -y (or enable via the UI).
  4. Clear caches: drush cr.

🧩 How It Works

  • Block plugin (MassTimesMapBlock) fetches user coordinates from URL (?lat=…&long=…) or falls back to the values configured on the block.
  • It calls the MassTimes API (https://apiv4.updateparishdata.org/Churchs/) to retrieve nearby churches, sorts them by distance, and builds a GeoJSON feature collection.
  • The Twig template (masstimes-map.html.twig) renders the map container and sidebar.
  • The accompanying JS behavior initializes the Leaflet map, adds parish markers, and ties marker clicks to opening the corresponding <details> in the sidebar.
  • The module ships with CSS to ensure a full-width layout, responsive sidebar, and styled parish cards.

🙏 Credits

This module leverages:

  • Peter Wagner & the MassTimes Trust (masstimes.org) for their comprehensive global database of Catholic parishes and worship times.
  • Leaflet for interactive maps.
  • Nominatim (OpenStreetMap) for address/ZIP autocomplete.

📝 License

Licensed under GPL-2.0-or-later. All church data © Mass Times Trust; used with permission.

统计信息

  • 总下载量: 29
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: CSS

其他信息

  • 授权协议: Unknown
  • 更新时间: 2025-07-21