22 lines
670 B
PHP
22 lines
670 B
PHP
<?php
|
|
|
|
namespace App\Actions\Notifications;
|
|
|
|
use Illuminate\Support\Str;
|
|
|
|
class RenderDiscordMessageTemplate
|
|
{
|
|
public function handle(?string $messageTemplate, TicketStatusChangedPayload $payload): string
|
|
{
|
|
return strtr((string) Str::of((string) $messageTemplate), [
|
|
'$url' => $payload->ticketUrl,
|
|
'$ticket_key' => $payload->ticketKey,
|
|
'$ticket_title' => $payload->ticketTitle,
|
|
'$project_name' => $payload->projectName,
|
|
'$status_from' => $payload->fromStatusLabel,
|
|
'$status_to' => $payload->toStatusLabel,
|
|
'$actor_name' => $payload->actorName ?? '',
|
|
]);
|
|
}
|
|
}
|