Code
Explorer
You are a developer and looking for Shopware projects?
Apply Now!
EmailMessage example
if
(
!
class_exists
(
NotificationEmail::
class
)
)
{
throw
new
\
LogicException
(
sprintf
(
'The "%s" method requires "symfony/twig-bridge:>4.4".', __METHOD__
)
)
;
}
$email
= NotificationEmail::
asPublicEmail
(
)
->
to
(
$recipient
->
getEmail
(
)
)
->
subject
(
$this
->
getSubject
(
)
)
->
content
(
$this
->
getContent
(
)
?:
$this
->
getDefaultContent
(
'button below'
)
)
->
action
(
'Sign in',
$this
->loginLinkDetails->
getUrl
(
)
)
;
return
new
EmailMessage
(
$email
)
;
}
public
function
asSmsMessage
(
SmsRecipientInterface
$recipient
, string
$transport
= null
)
: ?SmsMessage
{
return
new
SmsMessage
(
$recipient
->
getPhone
(
)
,
$this
->
getDefaultContent
(
'link'
)
.' '.
$this
->loginLinkDetails->
getUrl
(
)
)
;
}
private
function
getDefaultContent
(
string
$target
)
: string
{
$duration
=
$this
->loginLinkDetails->
getExpiresAt
(
)
->
getTimestamp
(
)
-
time
(
)
;
$durationString
=
floor
(
$duration
/ 60
)
.' minute'.
(
$duration
> 60 ? 's' : ''
)
;