. */ declare(strict_types=1); namespace FireflyIII\Mail; use Illuminate\Bus\Queueable; use Illuminate\Mail\Mailable; use Illuminate\Queue\SerializesModels; /** * Class NewIPAddressWarningMail */ class NewIPAddressWarningMail extends Mailable { use Queueable, SerializesModels; public string $host; public string $ipAddress; public string $time; /** * OAuthTokenCreatedMail constructor. * * @param string $ipAddress */ public function __construct(string $ipAddress) { $this->ipAddress = $ipAddress; } /** * Build the message. * * @return $this */ public function build(): self { // time $this->time = now()->formatLocalized((string)trans('config.date_time')); $this->host = ''; $hostName = gethostbyaddr($this->ipAddress); if ($hostName !== $this->ipAddress) { $this->host = $hostName; } return $this->view('v1.emails.new-ip-html')->text('v1.emails.new-ip-text') ->subject((string)trans('email.login_from_new_ip')); } }