Esempio n. 1
0
 /**
  * Tests the addCC method.
  *
  * @covers  JMail::addCC
  *
  * @return void
  */
 public function testAddCC()
 {
     $recipient = '*****@*****.**';
     $name = 'test_name';
     $expected = array(array('*****@*****.**', 'test_name'));
     $this->object->addCC($recipient, $name);
     $this->assertThat($expected, $this->equalTo(TestReflection::getValue($this->object, 'cc')));
 }
Esempio n. 2
0
 /**
  * @param  JMail  $mail
  * @param  array  $receivers
  *
  * @return boolean
  */
 public static function send(JMail $mail, array $receivers)
 {
     $config = KunenaFactory::getConfig();
     if (!empty($config->email_recipient_count)) {
         $email_recipient_count = $config->email_recipient_count;
     } else {
         $email_recipient_count = 1;
     }
     $email_recipient_privacy = $config->get('email_recipient_privacy', 'bcc');
     // If we hide email addresses from other users, we need to add TO address to prevent email from becoming spam.
     if ($email_recipient_count > 1 && $email_recipient_privacy == 'bcc' && JMailHelper::isEmailAddress($config->get('email_visible_address'))) {
         $mail->AddAddress($config->email_visible_address, JMailHelper::cleanAddress($config->board_title));
         // Also make sure that email receiver limits are not violated (TO + CC + BCC = limit).
         if ($email_recipient_count > 9) {
             $email_recipient_count--;
         }
     }
     $chunks = array_chunk($receivers, $email_recipient_count);
     $success = true;
     foreach ($chunks as $emails) {
         if ($email_recipient_count == 1 || $email_recipient_privacy == 'to') {
             echo 'TO ';
             $mail->ClearAddresses();
             $mail->addRecipient($emails);
         } elseif ($email_recipient_privacy == 'cc') {
             echo 'CC ';
             $mail->ClearCCs();
             $mail->addCC($emails);
         } else {
             echo 'BCC ';
             $mail->ClearBCCs();
             $mail->addBCC($emails);
         }
         try {
             $mail->Send();
         } catch (Exception $e) {
             $success = false;
             JLog::add($e->getMessage(), JLog::ERROR, 'kunena');
         }
     }
     return $success;
 }
Esempio n. 3
0
 public static function sendEmail($from, $fromName, $replyTo, $toEmail, $cc, $bcc, $subject, $content, $isHtml)
 {
     jimport('joomla.mail.mail');
     $mail = new JMail();
     $mail->setSender(array($from, $fromName));
     if (isset($replyTo)) {
         $mail->addReplyTo($replyTo);
     }
     $mail->addRecipient($toEmail);
     if (isset($cc)) {
         $mail->addCC($cc);
     }
     if (isset($bcc)) {
         $mail->addBCC($bcc);
     }
     $mail->setSubject($subject);
     $mail->setBody($content);
     $mail->IsHTML($isHtml);
     $ret = $mail->send();
     $log = Logger::getInstance();
     $log->LogDebug("E-mail with subject " . $subject . " sent from " . $from . " to " . $toEmail . " " . serialize($bcc) . " result:" . $ret);
     return $ret;
 }