This repository contains custom Drupal modules used by the EDCH Registry, and developed in the context of the DIAMAS project.
They target Drupal 10 and implement registry-specific UX, validation, and integration features.
Purpose: Provides a computed address string (e.g., concatenating street, city, postal, country) derived from existing entity fields so displays/exports are consistent and auto-updating.
Highlights
- Computed field/property; no duplication of stored data.
- Useful for listings, exports, search indexing.
Depends on: Drupal core field/entity API (and typically structured address fields).
Purpose: Adds a computed “Protected Email” for Organisation nodes by
obfuscating field_ipsp_contact_email (replaces @ with (at)) to deter
simple scraping.
Highlights
- Only for
nodebundleorganisation. - Returns obfuscated email when present.
Depends on: drupal:node (Core 10).
Purpose: Synchronizes organisation node moderation state with linked
users (via field_ipsp_organisation_ref), keeping visibility/access aligned
with the organisation’s status.
Highlights
- Listens on entity/node presave.
- Updates users referencing the organisation when moderation changes.
Depends on: drupal:node, likely drupal:content_moderation.
Purpose: Public listing page for published organisations with basic filtering/search.
Route: /organizations → OrganizationListingController::listOrganizations
UI: Table with Name, IPSP ID, Country; a country filter is built from node__field_country.
Depends on: drupal:views (declared), core 9/10.
Purpose: Adds a city autocomplete to Drupal Webforms backed by
GeoNames (and restcountries.com for country-code lookups).
Highlights
- JS (
webform_geonames_autocomplete.js) enhances inputs with class.webform-city-autocomplete. - Backend route:
/webform-geonames/autocompleteserves JSON suggestions. - Debounced fetch, 10-result dropdown, clears on country change.
Depends on: Webform module; GeoNames credentials (username).
Purpose: Validates organisation during user registration and supports admin review/confirmation flows with email notifications.
Highlights
- Email templates for user verification and admin review notices.
- Libraries for confirmation styling and admin table row toggling.
- Route:
POST /organization-validation/manageSelectedOrganisationsfor bulk/selected actions. - Workflow event subscriber to react to moderation transitions.
Depends on: drupal:user, drupal:node (Core 10).
Additional moderation features are supported via an event subscriber.
This work has been funded by the European Union's Horizon Europe research and innovation programme under grant agreement No 101058007 (DIAMAS).