Scriptlog Docs

Scriptlog Documentation

Code reference for the Scriptlog codebase

User Tools

Site Tools


scriptlog:lib:service:notificationservice

This is an old revision of the document!


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 (0)

None declared.

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.

scriptlog/lib/service/notificationservice.1790414213.txt.gz · Last modified: by admin