Skip to content

Services and plugins

Service

Service ID Class Interface Purpose
moderation_note.menu_count Drupal\moderation_note\Service\MenuCountService Drupal\moderation_note\ModerationNoteMenuCountInterface Builds “View notes” tab link (with count) for a moderated entity and “Assigned notes” link (with count) for a user.

Defined in moderation_note.services.yml; arguments: entity_type.manager, string_translation.

  • contentLink(string $entity_type, int $entity_id): Returns a render array for a local task link “View Note(s)” with count of published top-level notes for that entity. Used by hook_menu_local_tasks_alter.
  • assignedTo(int $uid): Returns a render array for the “Assigned notes” link with count for the user. Used by hook_toolbar_alter.

Plugins

Mail

Plugin ID Class Purpose
moderation_note Drupal\moderation_note\Plugin\Mail\NoteMail Sends HTML mail for moderation note notifications. Extends PhpMail; used when send_email config is enabled.

File: src/Plugin/Mail/NoteMail.php.

Entity Reference Selection

Plugin ID Class Purpose
(used on assignee field) Drupal\moderation_note\Plugin\EntityReferenceSelection\ModerationNoteUserSelection Restricts assignee selection (e.g. to active users).

File: src/Plugin/EntityReferenceSelection/ModerationNoteUserSelection.php.

Views field

Plugin ID Class Purpose
moderation_note_link Drupal\moderation_note\Plugin\views\field\ModerationNoteLink Exposes “Link to note” field in Views (see Views and extending).

File: src/Plugin/views/field/ModerationNoteLink.php.

Plugin ID Class Purpose
(task for assigned_list) Drupal\moderation_note\Plugin\Menu\LocalTask\AssignedNotes Local task “Assigned Notes” on user canonical; provides dynamic title/count.

Defined in moderation_note.links.task.yml (base_route: entity.user.canonical). File: src/Plugin/Menu/LocalTask/AssignedNotes.php.