Jump to content

ICT:D - Maintenance TEMPLATE

From Costa Sano MediaWiki

[Subsystem Name] – Technical Implementation Documentation

This page documents the *actual implementation* of this subsystem in Drupal. It is not about design intentions, but about how the system is configured, where it lives, and how to maintain or debug it.

1. Purpose

Describe in 2–3 lines what this subsystem is supposed to do. Example:

  • Provides a read-only publisher view of a record.
  • Displays the asset table for the selected node.

2. Where It Is Implemented

List exact Drupal UI locations and file paths.

2.1 Drupal UI Locations

  • Content type: [Content Type Name]
  • Manage fields: [Field Name]
  • Manage form display: [Form Mode]
  • Manage display: [View Mode]
  • View: [View Name] → [Display Name]
  • Block placement: [Theme] → [Region]

2.2 Custom Code Locations (if any)

  • Module: custom_[module_name]
  • File: src/Plugin/.../...
  • Hook: hook_form_alter() or similar

2.3 CSS Overrides (if any)

  • File: themes/custom/[theme]/css/[file].css
  • Selectors used:
 * .some-selector { display: none; }

3. Configuration Summary

Bullet list of the important settings.

Example:

  • Field field_assets is NOT translatable.
  • View uses contextual filter Content: Nid.
  • Display mode “Publisher view” hides metadata fields.

4. Dependencies

List modules, fields, or other subsystems this depends on.

Example:

  • Depends on: Views, Media, Asset-chain View.
  • Requires field field_assets to exist.

5. Interaction With Other Subsystems

Explain how this subsystem connects to others.

Example:

  • The asset table is embedded using the Asset-chain View.
  • The admin listing links to this view via a custom URL.

6. Known Quirks

Document anything Drupal does that is “special”.

Example:

  • Contextual filter fails if node is unpublished.
  • Translation tab appears even though no fields are translatable.

7. How to Modify It Safely

Step-by-step instructions for future changes.

Example:

  1. Edit the View “Record View – Places”.
  2. Do NOT change the contextual filter.
  3. Add new fields only at the bottom of the field list.

8. How to Debug

Where to look when something goes wrong.

Example:

  • If assets do not appear → check relationship in the View.
  • If the page is empty → check contextual filter.
  • If translation behaves oddly → check field translatability.