2023-07-23 07:27:52 +00:00
< ? php
namespace App\Notifications\Netmails ;
use Illuminate\Support\Facades\Log ;
use App\Classes\FTN\Message ;
use App\Notifications\Netmails ;
2024-05-19 13:28:45 +00:00
use App\Models\ { Netmail , User };
2023-07-23 07:27:52 +00:00
use App\Traits\PageTemplate ;
class AddressLink extends Netmails
{
use PageTemplate ;
private const LOGKEY = 'NAL' ;
private User $uo ;
/**
* Create a netmail to enable a sysop to activate an address .
*
* @ param User $uo
*/
public function __construct ( User $uo )
{
parent :: __construct ();
$this -> uo = $uo ;
}
/**
* Get the mail representation of the notification .
*
* @ param mixed $notifiable
* @ return Netmail
* @ throws \Exception
*/
2023-12-18 04:13:16 +00:00
public function toNetmail ( object $notifiable ) : Netmail
2023-07-23 07:27:52 +00:00
{
2023-12-18 04:13:16 +00:00
$o = $this -> setupNetmail ( $notifiable );
2023-07-23 07:27:52 +00:00
$ao = $notifiable -> routeNotificationFor ( static :: via );
Log :: info ( sprintf ( '%s:+ Sending a link code for address [%s]' , self :: LOGKEY , $ao -> ftn ));
$o -> subject = 'Address Link Code' ;
$o -> flags = ( Message :: FLAG_LOCAL | Message :: FLAG_PRIVATE | Message :: FLAG_CRASH );
// Message
$msg = $this -> page ( TRUE , '#link' );
$msg -> addText ( sprintf (
" Hi %s, \r \r " .
" This message is to link your address [%s] to your user ID in the Clearing Houz web site. \r \r " .
" If you didnt start this process, then you can safely ignore this netmail. But if you wanted to link this address, please head over to [%s] and paste in the following: \r \r %s \r " ,
$ao -> system -> sysop ,
$ao -> ftn3d ,
url ( '/link' ),
2024-05-09 11:31:50 +00:00
$ao -> activation_set ( $this -> uo )
2023-07-23 07:27:52 +00:00
));
$o -> msg = $msg -> render ();
$o -> tagline = 'Address Linking...' ;
$o -> save ();
return $o ;
}
}