Exemple #1
1
 public static function Send($event, $lid, $arFields, $Duplicate = "Y", $message_id = "", $files = array())
 {
     foreach (GetModuleEvents("main", "OnBeforeEventAdd", true) as $arEvent) {
         if (ExecuteModuleEventEx($arEvent, array(&$event, &$lid, &$arFields, &$message_id, &$files)) === false) {
             return false;
         }
     }
     $arLocalFields = array("EVENT_NAME" => $event, "C_FIELDS" => $arFields, "LID" => is_array($lid) ? implode(",", $lid) : $lid, "DUPLICATE" => $Duplicate != "N" ? "Y" : "N", "FILE" => $files);
     if (intval($message_id) > 0) {
         $arLocalFields["MESSAGE_ID"] = intval($message_id);
     }
     $result = Mail\Event::send($arLocalFields);
     $id = false;
     if ($result->isSuccess()) {
         $id = $result->getId();
     }
     return $id;
 }
Exemple #2
1
 /**
  * @param string $email
  * @param array $mailingList
  * @param string $siteId
  * @return void
  * //send email with url to confirmation of subscription
  */
 public static function sendEventConfirm($email, array $mailingIdList, $siteId)
 {
     $mailingNameList = array();
     $mailingDb = MailingTable::getList(array('select' => array('NAME'), 'filter' => array('ID' => $mailingIdList)));
     while ($mailing = $mailingDb->fetch()) {
         $mailingNameList[] = $mailing['NAME'];
     }
     $subscription = array('EMAIL' => $email, 'SITE_ID' => $siteId, 'MAILING_LIST' => $mailingIdList);
     $confirmUrl = static::getLinkSub($subscription);
     $date = new \Bitrix\Main\Type\DateTime();
     $eventSendFields = array("EVENT_NAME" => "SENDER_SUBSCRIBE_CONFIRM", "C_FIELDS" => array("EMAIL" => $email, "DATE" => $date->toString(), "CONFIRM_URL" => $confirmUrl, "MAILING_LIST" => implode("\r\n", $mailingNameList)), "LID" => is_array($siteId) ? implode(",", $siteId) : $siteId);
     \Bitrix\Main\Mail\Event::send($eventSendFields);
 }