/** * Sends a confirmation e-mail * * @param string $userId */ public function registerMail($userId) { $User = $this->_model->getUser($userId); if (!$User) { return false; } $handle = $User->handle; $email = $User->email; $key = APP_User::getSetting($userId, 'regkey'); if (!$key) { return false; } $key = $key->value; $confirmUrl = PVars::getObj('env')->baseuri . 'user/confirm/' . $handle . '/' . $key; $registerMailText = array(); require SCRIPT_BASE . 'text/' . PVars::get()->lang . '/apps/user/register.php'; $from = $registerMailText['from_name'] . ' <' . PVars::getObj('config_mailAddresses')->registration . '>'; $subject = $registerMailText['subject']; $Mail = new MOD_mail_Multipart(); $logoCid = $Mail->addAttachment(HTDOCS_BASE . 'images/logo.png', 'image/png'); ob_start(); require 'templates/register_html.php'; $mailHTML = ob_get_contents(); ob_end_clean(); $mailText = ''; require 'templates/register_plain.php'; $Mail->addMessage($mailText); $Mail->addMessage($mailHTML, 'text/html'); $Mail->buildMessage(); $Mailer = Mail::factory(PVars::getObj('config_smtp')->backend, PVars::get()->config_smtp); if (is_a($Mailer, 'PEAR_Error')) { $e = new PException($Mailer->getMessage()); $e->addMessage($Mailer->getDebugInfo()); throw $e; } $rcpts = $email; $header = $Mail->header; $header['From'] = $from; $header['To'] = $email; $header['Subject'] = $subject; $header['Message-Id'] = '<reg' . $userId . '.' . sha1(uniqid(rand())) . '@myTravelbook>'; $r = @$Mailer->send($rcpts, $header, $Mail->message); if (is_object($r) && is_a($r, 'PEAR_Error')) { $e = new PException($r->getMessage()); $e->addInfo($r->getDebugInfo()); throw $e; } }