feat(email): implement secure unsubscribe link generator and email helper integration
This commit is contained in:
parent
cf146973f2
commit
5ec5195d89
|
|
@ -11,6 +11,8 @@ namespace WizdomNetworks\WizeWeb\Utilities;
|
|||
|
||||
use PHPMailer\PHPMailer\PHPMailer;
|
||||
use PHPMailer\PHPMailer\Exception;
|
||||
use WizdomNetworks\WizeWeb\Services\TokenService;
|
||||
use WizdomNetworks\WizeWeb\Services\UnsubscribeTokenService;
|
||||
|
||||
class EmailHelper
|
||||
{
|
||||
|
|
@ -154,4 +156,20 @@ class EmailHelper
|
|||
return '';
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Generate a secure unsubscribe link for a subscriber email.
|
||||
*
|
||||
* @param string $email
|
||||
* @return string
|
||||
*/
|
||||
public static function buildUnsubscribeLink(string $email): string
|
||||
{
|
||||
$ts = time();
|
||||
$tokenService = new TokenService();
|
||||
$unsubscribeTokenService = new UnsubscribeTokenService($tokenService);
|
||||
|
||||
$sig = $unsubscribeTokenService->generate($email, $ts);
|
||||
|
||||
return $_ENV['APP_URL'] . "/unsubscribe?email=" . urlencode($email) . "&ts=$ts&sig=$sig";
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue