Table of Contents
NotificationService
Layer: Service · Source: lib/service/NotificationService.php:21 (lines 21–419)
class NotificationService
NotificationService Class
Service for sending email notifications using Symfony Mailer Supports SMTP configuration for various email providers
Docblock Metadata
| Tag | Value |
|---|---|
@category | Service Class |
@author | Scriptlog |
@license | MIT |
@version | 1.0 |
@since | Since Release 1.0 |
Inheritance
No parent, interface or trait. This is a root type.
Constants (0)
None.
Properties (4)
| Visibility | Type | Name | Default | Line |
|---|---|---|---|---|
private | (untyped) | $dsn | 27 | |
private | (untyped) | $fromEmail | 33 | |
private | (untyped) | $fromName | 39 | |
private | (untyped) | $configService | 45 |
Methods (11)
| Visibility | Method | Summary | Line |
|---|---|---|---|
| public | __construct() | Constructor | 52 |
| private | loadConfiguration() | Load mail configuration | 63 |
| public | send() | Send email notification | 137 |
| protected | getMailer() | Get Mailer instance | 166 |
| protected | createEmail() | Create Email instance | 181 |
| private | applyEmailOptions() | Apply additional options to email | 201 |
| public | sendDataRequestConfirmation() | Send GDPR data request confirmation email to user | 228 |
| public | sendAdminNotification() | Send notification to admin about new data request | 278 |
| public | sendRequestCompleted() | Send data request completion email | 325 |
| public | sendProfileDeletionConfirmation() | Send profile deletion confirmation | 369 |
| public | getSmtpConfig() | Get SMTP configuration (for admin settings page) | 409 |
__construct()
public function __construct(?ConfigurationService $configService = null)
lines 52–56 (5)
Constructor
Load SMTP configuration from database or config.php
| Parameter | Type | Default | Description |
|---|---|---|---|
$configService | ''?ConfigurationService'' | null | none |
loadConfiguration()
private function loadConfiguration()
lines 63–126 (64)
Load mail configuration
Takes no parameters.
Returns: (none declared) — void
send()
public function send($to, $subject, $body, $options = [])
lines 137–157 (21)
Send email notification
| Parameter | Type | Default | Description |
|---|---|---|---|
$to | (untyped) | required | Email address to send to |
$subject | (untyped) | required | Email subject |
$body | (untyped) | required | Email body (HTML or plain text) |
$options | (untyped) | [] | Additional options |
Returns: (none declared) — bool
getMailer()
protected function getMailer()
lines 166–170 (5)
Get Mailer instance
Protected to allow mocking in tests
Takes no parameters.
Returns: (none declared) — \Symfony\Component\Mailer\MailerInterface
createEmail()
protected function createEmail($to, $subject, $body, $isHtml = true)
lines 181–196 (16)
Create Email instance
| Parameter | Type | Default | Description |
|---|---|---|---|
$to | (untyped) | required | none |
$subject | (untyped) | required | none |
$body | (untyped) | required | none |
$isHtml | (untyped) | true | none |
Returns: (none declared) — \Symfony\Component\Mime\Email
applyEmailOptions()
private function applyEmailOptions($email, $Cc, $Bcc, $replyTo)
lines 201–218 (18)
Apply additional options to email
| Parameter | Type | Default | Description |
|---|---|---|---|
$email | (untyped) | required | none |
$Cc | (untyped) | required | none |
$Bcc | (untyped) | required | none |
$replyTo | (untyped) | required | none |
Returns: (none declared)
sendDataRequestConfirmation()
public function sendDataRequestConfirmation($email, $requestType, $requestId)
lines 228–267 (40)
Send GDPR data request confirmation email to user
| Parameter | Type | Default | Description |
|---|---|---|---|
$email | (untyped) | required | User's email address |
$requestType | (untyped) | required | Type of request (export/deletion) |
$requestId | (untyped) | required | Request ID |
Returns: (none declared) — bool
sendAdminNotification()
public function sendAdminNotification($adminEmail, $userEmail, $requestType, $requestId)
lines 278–316 (39)
Send notification to admin about new data request
| Parameter | Type | Default | Description |
|---|---|---|---|
$adminEmail | (untyped) | required | Admin email address |
$userEmail | (untyped) | required | User's email address |
$requestType | (untyped) | required | Type of request |
$requestId | (untyped) | required | Request ID |
Returns: (none declared) — bool
sendRequestCompleted()
public function sendRequestCompleted($email, $requestType)
lines 325–361 (37)
Send data request completion email
| Parameter | Type | Default | Description |
|---|---|---|---|
$email | (untyped) | required | User's email address |
$requestType | (untyped) | required | Type of request |
Returns: (none declared) — bool
sendProfileDeletionConfirmation()
public function sendProfileDeletionConfirmation($email)
lines 369–402 (34)
Send profile deletion confirmation
| Parameter | Type | Default | Description |
|---|---|---|---|
$email | (untyped) | required | User's email address |
Returns: (none declared) — bool
getSmtpConfig()
public function getSmtpConfig()
lines 409–418 (10)
Get SMTP configuration (for admin settings page)
Takes no parameters.
Returns: (none declared) — array
This page is generated from source by 'tools/gendoc'. Edits will be overwritten.
