<?php namespace HashOver;// Copyright (C) 2018-2021 Jacob Barkdull// This file is part of HashOver.//// HashOver is free software: you can redistribute it and/or modify// it under the terms of the GNU Affero General Public License as// published by the Free Software Foundation, either version 3 of the// License, or (at your option) any later version.//// HashOver is distributed in the hope that it will be useful,// but WITHOUT ANY WARRANTY; without even the implied warranty of// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the// GNU Affero General Public License for more details.//// You should have received a copy of the GNU Affero General Public License// along with HashOver.  If not, see <http://www.gnu.org/licenses/>.class Email extends Secrets{	// E-mail delivery method class	protected $mailer;	public function __construct (Setup $setup)	{		// Name of mailer class to instantiate		$mail_class = 'HashOver\\' . $setup->mailer;		// Instantiate mailer class		$this->mailer = new $mail_class ($setup);		// Setup SMTP Mailer		if (mb_strtolower ($setup->mailer) !== 'sendmail') {			// Set SMTP server host			$this->mailer->setHost ($this->smtpHost);			// Set SMTP server port number			$this->mailer->setPort ($this->smtpPort);			// Set SMTP server encryption method			$this->mailer->setCrypto ($this->smtpCrypto);			// Set whether SMTP server requires authentication			$this->mailer->setAuth ($this->smtpAuth);			// Set SMTP server login user			$this->mailer->setUser ($this->smtpUser);			// Set SMTP server login password			$this->mailer->setPassword ($this->smtpPassword);		}	}	// Call mailer method	public function to ($email, $name = null)	{		$this->mailer->to ($email, $name);	}	// Call mailer method	public function from ($email, $name = null)	{		$this->mailer->from ($email, $name);	}	// Call mailer method	public function subject ($text)	{		$this->mailer->subject ($text);	}	// Call mailer method	public function replyTo ($email, $name = null)	{		$this->mailer->replyTo ($email, $name);	}	// Call mailer method	public function text ($text)	{		$this->mailer->text ($text);	}	// Call mailer method	public function html ($html)	{		$this->mailer->html ($html);	}	// Call mailer method	public function send ()	{		$this->mailer->send ();	}}