/** * Creates events for sending e-mail. * @return bool */ public static function installEvents() { $dbEvent = \CEventMessage::GetList($b = "ID", $order = "ASC", array("EVENT_NAME" => "SALE_EBAY_ERROR")); if (!$dbEvent->Fetch()) { $langs = \CLanguage::GetList($b = "", $o = ""); while ($lang = $langs->Fetch()) { $lid = $lang["LID"]; $obEventType = new \CEventType(); $obEventType->Add(array("EVENT_NAME" => "SALE_EBAY_ERROR", "NAME" => Loc::getMessage("SALE_EBAY_HLP_EVNT_TYPE_ERROR"), "LID" => $lid, "DESCRIPTION" => "\n\t\t\t\t\t#ERROR_TYPE# - " . Loc::getMessage("SALE_EBAY_HLP_EVNT_TYPE_ERROR_TYPE") . "\n\t\t\t\t\t#ERROR_DETAILS# - " . Loc::getMessage("SALE_EBAY_HLP_EVNT_TYPE_ERROR_DETAIL") . "\n\t\t\t\t\t#EMAIL_FROM# - " . Loc::getMessage("SALE_EBAY_HLP_EVNT_TYPE_FROM") . "\n\t\t\t\t\t#EMAIL_TO# - " . Loc::getMessage("SALE_EBAY_HLP_EVNT_TYPE_TO") . "\n\t\t\t\t\t#BCC# - " . Loc::getMessage("SALE_EBAY_HLP_EVNT_TYPE_BCC"))); $arSites = array(); $sites = \CSite::GetList($b = "", $o = "", array("LANGUAGE_ID" => $lid)); while ($site = $sites->Fetch()) { $arSites[] = $site["LID"]; } if (count($arSites) > 0) { $arr = array(); $arr["ACTIVE"] = "Y"; $arr["EVENT_NAME"] = "SALE_EBAY_ERROR"; $arr["LID"] = $arSites; $arr["EMAIL_FROM"] = "#DEFAULT_EMAIL_FROM#"; $arr["EMAIL_TO"] = "#EMAIL_TO#"; $arr["BCC"] = "#BCC#"; $arr["SUBJECT"] = "#SITE_NAME# " . Loc::getMessage("SALE_EBAY_EVNT_MSG_SBUJ']") . "."; $arr["BODY_TYPE"] = "text"; $arr["MESSAGE"] = Loc::getMessage("SALE_EBAY_EVNT_MSG_INFO_SITE") . " #SITE_NAME#.\n\n" . Loc::getMessage("SALE_EBAY_EVNT_MSG") . ":\n\n" . "#ERROR_TYPE#\n\n" . "#ERROR_DETAILS#"; $obTemplate = new \CEventMessage(); $obTemplate->Add($arr); } } } return true; }
function InstallDB($arParams = array()) { RegisterModuleDependences('main', 'OnBuildGlobalMenu', self::MODULE_ID, 'CIpdesignK', 'OnBuildGlobalMenu'); $arsites = array(); $rsSites = CSite::GetList($by="sort", $order="desc", false); while ($arSite = $rsSites->Fetch()){ $arsites[] = $arSite['ID']; } $arFilter = array( "TYPE_ID" => "SENDWISHLIST", ); $rsET = CEventType::GetList($arFilter); $arET = $rsET->Fetch(); if(empty($arET)){ $et = new CEventType; $arMessageFields = array("USER_ID" => $UserProduct['USER']['ID'], "USER_NAME" => $UserProduct['USER']["NAME"].' '.$UserProduct['USER']["LAST_NAME"], "USER_EMAIL" => $UserProduct['USER']["EMAIL"], "PRODUCTS_LIST" => $strListProduct); $DESCRIPTION = '#USER_ID# - '.GetMessage("IT_BASKET_SENDER_USER_ID"); $DESCRIPTION .= '\n#USER_NAME# - '.GetMessage("IT_BASKET_SENDER_USER_NAME"); $DESCRIPTION .= '\n#USER_EMAIL# - '.GetMessage("IT_BASKET_SENDER_USER_EMAIL"); $DESCRIPTION .= '\n#PRODUCTS_LIST# - '.GetMessage("IT_BASKET_SENDER_PRODUCTS_LIST"); $sendType = $et->Add(array( "LID" => 'ru', "EVENT_NAME" => "SENDWISHLIST", "NAME" => GetMessage("IT_SENDER_TYPE_NAME"), "DESCRIPTION" => $DESCRIPTION )); }else{ $sendType = $arET['ID']; } $rsMess = CEventMessage::GetList($by="site_id", $order="desc", array('TYPE' => 'SENDWISHLIST')); $arMess = $rsMess->Fetch(); if(empty($arMess)){ $message = ''; $message .= '<h2>'.GetMessage("IT_BASKET_SENDER_TEMPLATE_HELLO").',#USER_NAME#</h2>'; $message .= '<p>'.GetMessage("IT_BASKET_SENDER_TEMPLATE_WHISHLIST").'</p>'; $message .= '<hr />'; $message .= '#PRODUCTS_LIST#'; $arFields = array("ACTIVE" => 'Y', "EVENT_NAME" => "SENDWISHLIST", "LID" => $arsites, "EMAIL_FROM" => "#DEFAULT_EMAIL_FROM#", "EMAIL_TO" => "#USER_EMAIL#", "BCC" => "", "MESSAGE" => $message, "BODY_TYPE" => "html", "SUBJECT" => GetMessage("IT_SENDER_MESSAGE_SUBJECT"). " #SERVER_NAME# ", ); $emess = new CEventMessage; if($emess->Add($arFields)){ } }; RegisterModuleDependences("sale", "OnCondSaleActionsControlBuildList", self::MODULE_ID, "CSaleActionCtrlBasketMain", "GetControlDescr"); RegisterModuleDependences("main", "OnBeforeProlog", "main", "", "", 110, '/modules/ipdesign.k1785/itdiscount.php'); return true; }
/** * {@inheritdoc} */ public function send(array $data, array $attachFiles = array()) { $eventName = $this->parameters->get('EVENT_NAME'); $eventTemplate = is_numeric($this->parameters->get('EVENT_TEMPLATE')) ? $this->parameters->get('EVENT_TEMPLATE') : ''; $eventType = $this->eventType->getList(array('EVENT_NAME' => $eventName))->getNext(); if ($eventName && !is_array($eventType)) { return false; } if ($this->parameters->get('EVENT_TYPE') == 'IMMEDIATE') { return $this->sendImmediate($eventName, $eventTemplate, $data, $attachFiles); } return $this->sendDefault($eventName, $eventTemplate, $data, $attachFiles); }
function UnInstallEvent() { global $DB; //Удаляем тип почтового события $et = new CEventType(); $et->Delete($this->EVENT_NAME); //Находим все почтовые шаблоные которые были привязаны к нашему типу $DB->StartTransaction(); $emessage = new CEventMessage(); $rsMess = CEventMessage::GetList($by = "site_id", $order = "desc", array("TYPE_ID" => $this->EVENT_NAME)); //рекурсивно по одному удаляем найденные шаблоны while ($events = $rsMess->GetNext()) { $emessage->Delete(intval($events["ID"])); $DB->Commit(); } }
/** * @param $eventName * @param $fields array(), key LID = language id * @return bool|int * @throws \Sprint\Migration\Exceptions\HelperException */ public function addEventTypeIfNotExists($eventName, $fields) { $this->checkRequiredKeys(__METHOD__, $fields, array('LID')); /** @noinspection PhpDynamicAsStaticMethodCallInspection */ $aItem = \CEventType::GetList(array('TYPE_ID' => $eventName, 'LID' => $fields['LID']))->Fetch(); if ($aItem) { return $aItem['ID']; } $default = array("LID" => $fields['LID'], "EVENT_NAME" => 'event_name', "NAME" => 'NAME', "DESCRIPTION" => 'description'); $fields = array_replace_recursive($default, $fields); $fields['EVENT_NAME'] = $eventName; $event = new \CEventType(); $id = $event->Add($fields); if ($id) { return $id; } $this->throwException(__METHOD__, 'Event type %s not added', $eventName); }
function GetAdditionalFields($id = 0){ $arFieldList = array( "ID" => "SEND_MAIL", "SIZE" => 5, "TYPE" => "SELECT", "CTYPE" => "SINGLE", "VALUES" => array() ); $curEventMessage = array(); $arFilter = array( "ACTIVE" => "Y" ); if($id > 0){ $arFilter["ID"] = $id; } //echo "<pre>";print_r($arFilter);echo "</pre>"; $rsEmailTemplates = CEventMessage::GetList($by, $order, $arFilter); if($arEmailTemplate = $rsEmailTemplates->GetNext()){ //echo "<pre>";print_r($arEmailTemplate);echo "</pre>"; $arFieldList["VALUES"][] = array( "ID" => $arEmailTemplate["ID"], "NAME" => $arEmailTemplate["EVENT_TYPE"] ); $curEventMessage = array( "ID" => $arEmailTemplate["ID"], "TYPE_ID" => $arEmailTemplate["EVENT_NAME"] ); } if($id > 0 && !empty($curEventMessage)){ $rsEmailEventType = CEventType::GetList( array( "TYPE_ID" => $curEventMessage["TYPE_ID"], "LID" => "ru" ) ); if($arEmailEventType = $rsEmailEventType->Fetch()){ //echo "<pre>";print_r($arEmailEventType);echo "</pre>"; preg_match_all('/#([A-Za-z_]+)#/iu', $arEmailEventType["DESCRIPTION"], $out); //echo "<pre>";print_r($out);echo "</pre>";die; if(!empty($out[0])){ return implode(",",$out[0]); } }else{ return ""; } //return ($arEmailEventType = $rsEmailEventType->Fetch() ? $arEmailEventType["DESCRIPTION"] : ""); }else{ return ""; } }
<tr> <td><?php echo GetMessage("MAIN_F_EVENT_TYPE"); ?> </td> <td><input type="text" name="find_event_type" size="47" value="<?php echo htmlspecialcharsbx($find_event_type); ?> "><?php echo ShowFilterLogicHelp(); ?> <br><?php $event_type_ref = array(); $event_type_ref_id = array(); $ref_en = array(); $rsType = CEventType::GetList(array("LID" => LANGUAGE_ID), array("name" => "asc")); while ($arType = $rsType->Fetch()) { $event_type_ref[] = $arType["NAME"] . ($arType["NAME"] == '' ? '' : ' ') . "[" . $arType["EVENT_NAME"] . "]"; $event_type_ref_id[] = $arType["EVENT_NAME"]; } $arr = array("REFERENCE" => $event_type_ref, "REFERENCE_ID" => $event_type_ref_id); echo SelectBoxFromArray("find_type_id", $arr, htmlspecialcharsbx($find_type_id), GetMessage("MAIN_ALL")); ?> </td> </tr> <tr> <td><?php echo GetMessage("MAIN_F_TIMESTAMP") . ":"; ?> </td> <td><?php
function InstallEvents() { $arEventTypes = array(); $langs = CLanguage::GetList($b = "", $o = ""); while ($language = $langs->Fetch()) { $lid = $language["LID"]; IncludeModuleLangFile(__FILE__, $lid); $arEventTypes[] = array("LID" => $lid, "EVENT_NAME" => "NEW_USER", "NAME" => GetMessage("MAIN_NEW_USER_TYPE_NAME"), "DESCRIPTION" => GetMessage("MAIN_NEW_USER_TYPE_DESC"), "SORT" => 1); $arEventTypes[] = array("LID" => $lid, "EVENT_NAME" => "USER_INFO", "NAME" => GetMessage("MAIN_USER_INFO_TYPE_NAME"), "DESCRIPTION" => GetMessage("MAIN_USER_INFO_TYPE_DESC"), "SORT" => 2); $arEventTypes[] = array("LID" => $lid, "EVENT_NAME" => "NEW_USER_CONFIRM", "NAME" => GetMessage("MAIN_NEW_USER_CONFIRM_TYPE_NAME"), "DESCRIPTION" => GetMessage("MAIN_NEW_USER_CONFIRM_TYPE_DESC"), "SORT" => 3); $arEventTypes[] = array("LID" => $lid, "EVENT_NAME" => "USER_PASS_REQUEST", "NAME" => GetMessage("MAIN_USER_PASS_REQUEST_TYPE_NAME"), "DESCRIPTION" => GetMessage("MAIN_USER_INFO_TYPE_DESC"), "SORT" => 4); $arEventTypes[] = array("LID" => $lid, "EVENT_NAME" => "USER_PASS_CHANGED", "NAME" => GetMessage("MAIN_USER_PASS_CHANGED_TYPE_NAME"), "DESCRIPTION" => GetMessage("MAIN_USER_INFO_TYPE_DESC"), "SORT" => 5); $arEventTypes[] = array("LID" => $lid, "EVENT_NAME" => "USER_INVITE", "NAME" => GetMessage("MAIN_USER_INVITE_TYPE_NAME"), "DESCRIPTION" => GetMessage("MAIN_USER_INVITE_TYPE_DESC"), "SORT" => 6); $arEventTypes[] = array("LID" => $lid, "EVENT_NAME" => "FEEDBACK_FORM", "NAME" => GetMessage("MF_EVENT_NAME"), "DESCRIPTION" => GetMessage("MF_EVENT_DESCRIPTION"), "SORT" => 7); } $type = new CEventType(); foreach ($arEventTypes as $arEventType) { $type->Add($arEventType); } IncludeModuleLangFile(__FILE__); $arMessages = array(); $arMessages[] = array("EVENT_NAME" => "NEW_USER", "LID" => "s1", "EMAIL_FROM" => "#DEFAULT_EMAIL_FROM#", "EMAIL_TO" => "#DEFAULT_EMAIL_FROM#", "SUBJECT" => GetMessage("MAIN_NEW_USER_EVENT_NAME"), "MESSAGE" => GetMessage("MAIN_NEW_USER_EVENT_DESC")); $arMessages[] = array("EVENT_NAME" => "USER_INFO", "LID" => "s1", "EMAIL_FROM" => "#DEFAULT_EMAIL_FROM#", "EMAIL_TO" => "#EMAIL#", "SUBJECT" => GetMessage("MAIN_USER_INFO_EVENT_NAME"), "MESSAGE" => GetMessage("MAIN_USER_INFO_EVENT_DESC")); $arMessages[] = array("EVENT_NAME" => "USER_PASS_REQUEST", "LID" => "s1", "EMAIL_FROM" => "#DEFAULT_EMAIL_FROM#", "EMAIL_TO" => "#EMAIL#", "SUBJECT" => GetMessage("MAIN_USER_PASS_REQUEST_EVENT_NAME"), "MESSAGE" => GetMessage("MAIN_USER_PASS_REQUEST_EVENT_DESC")); $arMessages[] = array("EVENT_NAME" => "USER_PASS_CHANGED", "LID" => "s1", "EMAIL_FROM" => "#DEFAULT_EMAIL_FROM#", "EMAIL_TO" => "#EMAIL#", "SUBJECT" => GetMessage("MAIN_USER_PASS_CHANGED_EVENT_NAME"), "MESSAGE" => GetMessage("MAIN_USER_PASS_CHANGED_EVENT_DESC")); $arMessages[] = array("EVENT_NAME" => "NEW_USER_CONFIRM", "LID" => "s1", "EMAIL_FROM" => "#DEFAULT_EMAIL_FROM#", "EMAIL_TO" => "#EMAIL#", "SUBJECT" => GetMessage("MAIN_NEW_USER_CONFIRM_EVENT_NAME"), "MESSAGE" => GetMessage("MAIN_NEW_USER_CONFIRM_EVENT_DESC")); $arMessages[] = array("EVENT_NAME" => "USER_INVITE", "LID" => "s1", "EMAIL_FROM" => "#DEFAULT_EMAIL_FROM#", "EMAIL_TO" => "#EMAIL#", "SUBJECT" => GetMessage("MAIN_USER_INVITE_EVENT_NAME"), "MESSAGE" => GetMessage("MAIN_USER_INVITE_EVENT_DESC")); $arMessages[] = array("EVENT_NAME" => "FEEDBACK_FORM", "LID" => "s1", "EMAIL_FROM" => "#DEFAULT_EMAIL_FROM#", "EMAIL_TO" => "#EMAIL_TO#", "SUBJECT" => GetMessage("MF_EVENT_SUBJECT"), "MESSAGE" => GetMessage("MF_EVENT_MESSAGE")); $message = new CEventMessage(); foreach ($arMessages as $arMessage) { $message->Add($arMessage); } return true; }
function Fetch() { $arr = array(); $arr_lid = array(); $arr_lids = array(); if ($res = parent::Fetch()) { if ($this->type != "none") { $db_res_ = CEventType::GetList(array("EVENT_NAME" => $res["EVENT_NAME"])); if ($db_res_ && ($res_ = $db_res_->Fetch())) { do { $arr[$res_["ID"]] = $res_; $arr_lid[] = $res_["LID"]; $arr_lids[$res_["LID"]] = $res_; } while ($res_ = $db_res_->Fetch()); } $res["ID"] = array_keys($arr); $res["LID"] = $arr_lid; $res["NAME"] = empty($arr_lids[$this->LID]["NAME"]) ? $arr_lids["en"]["NAME"] : $arr_lids[$this->LID]["NAME"]; $res["SORT"] = empty($arr_lids[$this->LID]["SORT"]) ? $arr_lids["en"]["SORT"] : $arr_lids[$this->LID]["SORT"]; $res["DESCRIPTION"] = empty($arr_lids[$this->LID]["DESCRIPTION"]) ? $arr_lids["en"]["DESCRIPTION"] : $arr_lids[$this->LID]["DESCRIPTION"]; $res["TYPE"] = $arr; if ($this->type != "type") { $arr = array(); $db_res_ = CEventMessage::GetList($sort = "sort", $by = "asc", array("EVENT_NAME" => $res["EVENT_NAME"])); if ($db_res_ && ($res_ = $db_res_->Fetch())) { do { $arr[$res_["ID"]] = $res_; } while ($res_ = $db_res_->Fetch()); } $res["TEMPLATES"] = $arr; } } } return $res; }
<?php $langs = CLanguage::GetList($b = "", $o = ""); while ($lang = $langs->Fetch()) { $lid = $lang["LID"]; IncludeModuleLangFile(__FILE__, $lid); $et = new CEventType(); $et->Add(array("LID" => $lid, "EVENT_NAME" => "EXTRANET_WG_TO_ARCHIVE", "NAME" => GetMessage("EXTRANET_WG_TO_ARCHIVE_NAME"), "DESCRIPTION" => GetMessage("EXTRANET_WG_TO_ARCHIVE_DESC"))); $et = new CEventType(); $et->Add(array("LID" => $lid, "EVENT_NAME" => "EXTRANET_WG_FROM_ARCHIVE", "NAME" => GetMessage("EXTRANET_WG_FROM_ARCHIVE_NAME"), "DESCRIPTION" => GetMessage("EXTRANET_WG_FROM_ARCHIVE_DESC"))); $et = new CEventType(); $et->Add(array("LID" => $lid, "EVENT_NAME" => "EXTRANET_INVITATION", "NAME" => GetMessage("EXTRANET_INVITATION_NAME"), "DESCRIPTION" => GetMessage("EXTRANET_INVITATION_DESC"))); $arSites = array(); $sites = CSite::GetList($b = "", $o = "", array("LANGUAGE_ID" => $lid)); while ($site = $sites->Fetch()) { $arSites[] = $site["LID"]; } if (count($arSites) > 0) { $emess = new CEventMessage(); $emess->Add(array("ACTIVE" => "Y", "EVENT_NAME" => "EXTRANET_WG_TO_ARCHIVE", "LID" => $arSites, "EMAIL_FROM" => "#DEFAULT_EMAIL_FROM#", "EMAIL_TO" => "#MEMBER_EMAIL#", "BCC" => "", "SUBJECT" => GetMessage("EXTRANET_WG_TO_ARCHIVE_SUBJECT"), "MESSAGE" => GetMessage("EXTRANET_WG_TO_ARCHIVE_MESSAGE"), "BODY_TYPE" => "text")); $emess = new CEventMessage(); $emess->Add(array("ACTIVE" => "Y", "EVENT_NAME" => "EXTRANET_WG_FROM_ARCHIVE", "LID" => $arSites, "EMAIL_FROM" => "#DEFAULT_EMAIL_FROM#", "EMAIL_TO" => "#MEMBER_EMAIL#", "BCC" => "", "SUBJECT" => GetMessage("EXTRANET_WG_FROM_ARCHIVE_SUBJECT"), "MESSAGE" => GetMessage("EXTRANET_WG_FROM_ARCHIVE_MESSAGE"), "BODY_TYPE" => "text")); $emess = new CEventMessage(); $emess->Add(array("ACTIVE" => "Y", "EVENT_NAME" => "EXTRANET_INVITATION", "LID" => $arSites, "EMAIL_FROM" => "#DEFAULT_EMAIL_FROM#", "EMAIL_TO" => "#EMAIL#", "BCC" => "", "SUBJECT" => GetMessage("EXTRANET_INVITATION_SUBJECT"), "MESSAGE" => GetMessage("EXTRANET_INVITATION_MESSAGE"), "BODY_TYPE" => "text")); } }
} else { $DB->Commit(); } break; } } } $arLID = array(); $db_res = CLanguage::GetList($by_ = "sort", $order_ = "asc"); if ($db_res && ($res = $db_res->GetNext())) { do { $arLID[$res["LID"]] = $res["LID"]; } while ($res = $db_res->GetNext()); } $lAdmin->AddHeaders(array(array("id" => "ID", "content" => "ID", "default" => true), array("id" => "LID", "content" => GetMessage("LANG"), "default" => true), array("id" => "EVENT_NAME", "content" => GetMessage("EVENT_TYPE"), "sort" => "event_name", "default" => true), array("id" => "NAME", "content" => GetMessage("EVENT_NAME"), "default" => true), array("id" => "DESCRIPTION", "content" => GetMessage("EVENT_DESCRIPTION"), "default" => false), array("id" => "TEMPLATES", "content" => GetMessage("EVENT_TEMPLATES"), "default" => false))); $db_res = CEventType::GetListEx(array($by => $order), $arFilter, array("type" => "full")); if ($db_res && ($res = $db_res->Fetch())) { do { $arResult[] = $res; } while ($res = $db_res->Fetch()); } $rsData = new CDBResult(); $rsData->InitFromArray($arResult); $rsData = new CAdminResult($rsData, $sTableID); $rsData->NavStart(); $lAdmin->NavText($rsData->GetNavPrint(GetMessage("PAGES"))); while ($arRes = $rsData->NavNext(true, "f_")) { $arr = $f_ID; $f_ID = $f_EVENT_NAME; $row =& $lAdmin->AddRow($f_EVENT_NAME, $arRes, "type_edit.php?EVENT_NAME=" . $f_EVENT_NAME, GetMessage("type_admin_edit_title")); $row->AddViewField("ID", implode("<br />", $arr));
<?php $langs = CLanguage::GetList($b = "", $o = ""); while ($lang = $langs->Fetch()) { $lid = $lang["LID"]; IncludeModuleLangFile(__FILE__, $lid); $et = new CEventType(); $et->Add(array("LID" => $lid, "EVENT_NAME" => "VIRUS_DETECTED", "NAME" => GetMessage("VIRUS_DETECTED_NAME"), "DESCRIPTION" => GetMessage("VIRUS_DETECTED_DESC"))); $arSites = array(); $sites = CSite::GetList($b = "", $o = "", array("LANGUAGE_ID" => $lid)); while ($site = $sites->Fetch()) { $arSites[] = $site["LID"]; } if (count($arSites) > 0) { $emess = new CEventMessage(); $emess->Add(array("ACTIVE" => "Y", "EVENT_NAME" => "VIRUS_DETECTED", "LID" => $arSites, "EMAIL_FROM" => "#DEFAULT_EMAIL_FROM#", "EMAIL_TO" => "#EMAIL#", "BCC" => "", "SUBJECT" => GetMessage("VIRUS_DETECTED_SUBJECT"), "MESSAGE" => GetMessage("VIRUS_DETECTED_MESSAGE"), "BODY_TYPE" => "text")); } }
<?php $langs = CLanguage::GetList($b = "", $o = ""); while ($lang = $langs->Fetch()) { $lid = $lang["LID"]; IncludeModuleLangFile(__FILE__, $lid); $arSites = array(); $sites = CSite::GetList($b = "", $o = "", array("LANGUAGE_ID" => $lid)); while ($site = $sites->Fetch()) { $arSites[] = $site["LID"]; } $et = new CEventType(); $et->Add(array("LID" => $lid, "EVENT_NAME" => "CALENDAR_INVITATION", "NAME" => GetMessage("CALENDAR_INVITATION_NAME"), "DESCRIPTION" => GetMessage("CALENDAR_INVITATION_DESC"))); if (count($arSites) > 0) { $emess = new CEventMessage(); $emess->Add(array("ACTIVE" => "Y", "EVENT_NAME" => "CALENDAR_INVITATION", "LID" => $arSites, "EMAIL_FROM" => "#DEFAULT_EMAIL_FROM#", "EMAIL_TO" => "#EMAIL_TO#", "BCC" => "", "SUBJECT" => "#TITLE#", "MESSAGE" => "#MESSAGE#" . GetMessage('CALENDAR_INVITATION_AUTO_GENERATED'), "BODY_TYPE" => "text")); } }
function CreatTypeMailEvent() { $oEventType = new CEventType(); $oEventType->Add( array( "LID" => SITE_ID, "EVENT_NAME" => "ADD_MAILBOX_PDD", "NAME" => GetMessage("PDD_NAME_TYPE_MAIL_EVENT"), "DESCRIPTION" => "#LOGIN_PDD# - ".GetMessage("PDD_LOGIN_PDD")." #DOMAIN_PDD# - ".GetMessage("DOMAIN_PDD")." #PASSWORD_PDD# - ".GetMessage("PASSWORD_PDD")." #LINK_PDD# - ".GetMessage("LINK_PDD")." #EMAIL# - ".GetMessage("EMAIL")." " ) ); }
function UET($EVENT_NAME, $NAME, $LID, $DESCRIPTION) { $et = new CEventType(); $et->Add(array("LID" => $LID, "EVENT_NAME" => $EVENT_NAME, "NAME" => $NAME, "DESCRIPTION" => $DESCRIPTION)); }
$et->Add(array("LID" => $lid, "EVENT_NAME" => "NEW_BLOG_MESSAGE", "NAME" => GetMessage("NEW_BLOG_MESSAGE_NAME"), "DESCRIPTION" => GetMessage("NEW_BLOG_MESSAGE_DESC"))); $et = new CEventType(); $et->Add(array("LID" => $lid, "EVENT_NAME" => "NEW_BLOG_COMMENT", "NAME" => GetMessage("NEW_BLOG_COMMENT_NAME"), "DESCRIPTION" => GetMessage("NEW_BLOG_COMMENT_DESC"))); $et = new CEventType(); $et->Add(array("LID" => $lid, "EVENT_NAME" => "NEW_BLOG_COMMENT2COMMENT", "NAME" => GetMessage("NEW_BLOG_COMMENT2COMMENT_NAME"), "DESCRIPTION" => GetMessage("NEW_BLOG_COMMENT2COMMENT_DESC"))); $et = new CEventType(); $et->Add(array("LID" => $lid, "EVENT_NAME" => "NEW_BLOG_COMMENT_WITHOUT_TITLE", "NAME" => GetMessage("NEW_BLOG_COMMENT_WITHOUT_TITLE_NAME"), "DESCRIPTION" => GetMessage("NEW_BLOG_COMMENT_WITHOUT_TITLE_DESC"))); $et = new CEventType(); $et->Add(array("LID" => $lid, "EVENT_NAME" => "NEW_BLOG_COMMENT2COMMENT_WITHOUT_TITLE", "NAME" => GetMessage("NEW_BLOG_COMMENT2COMMENT_WITHOUT_TITLE_NAME"), "DESCRIPTION" => GetMessage("NEW_BLOG_COMMENT2COMMENT_WITHOUT_TITLE_DESC"))); $et = new CEventType(); $et->Add(array("LID" => $lid, "EVENT_NAME" => "BLOG_YOUR_BLOG_TO_USER", "NAME" => GetMessage("BLOG_YOUR_BLOG_TO_USER_NAME"), "DESCRIPTION" => GetMessage("BLOG_YOUR_BLOG_TO_USER_DESC"))); $et = new CEventType(); $et->Add(array("LID" => $lid, "EVENT_NAME" => "BLOG_YOU_TO_BLOG", "NAME" => GetMessage("BLOG_YOU_TO_BLOG_NAME"), "DESCRIPTION" => GetMessage("BLOG_YOU_TO_BLOG_DESC"))); $et = new CEventType(); $et->Add(array("LID" => $lid, "EVENT_NAME" => "BLOG_BLOG_TO_YOU", "NAME" => GetMessage("BLOG_BLOG_TO_YOU_NAME"), "DESCRIPTION" => GetMessage("BLOG_BLOG_TO_YOU_DESC"))); $et = new CEventType(); $et->Add(array("LID" => $lid, "EVENT_NAME" => "BLOG_USER_TO_YOUR_BLOG", "NAME" => GetMessage("BLOG_USER_TO_YOUR_BLOG_NAME"), "DESCRIPTION" => GetMessage("BLOG_USER_TO_YOUR_BLOG_DESC"))); $arSites = array(); $sites = CSite::GetList($b = "", $o = "", array("LANGUAGE_ID" => $lid)); while ($site = $sites->Fetch()) { $arSites[] = $site["LID"]; } if (count($arSites) > 0) { $emess = new CEventMessage(); $emess->Add(array("ACTIVE" => "Y", "EVENT_NAME" => "NEW_BLOG_MESSAGE", "LID" => $arSites, "EMAIL_FROM" => "#EMAIL_FROM#", "EMAIL_TO" => "#EMAIL_TO#", "SUBJECT" => GetMessage("NEW_BLOG_MESSAGE_SUBJECT"), "MESSAGE" => GetMessage("NEW_BLOG_MESSAGE_MESSAGE"), "BODY_TYPE" => "text")); $emess = new CEventMessage(); $emess->Add(array("ACTIVE" => "Y", "EVENT_NAME" => "NEW_BLOG_COMMENT", "LID" => $arSites, "EMAIL_FROM" => "#EMAIL_FROM#", "EMAIL_TO" => "#EMAIL_TO#", "SUBJECT" => GetMessage("NEW_BLOG_COMMENT_SUBJECT"), "MESSAGE" => GetMessage("NEW_BLOG_COMMENT_MESSAGE"), "BODY_TYPE" => "text")); $emess = new CEventMessage(); $emess->Add(array("ACTIVE" => "Y", "EVENT_NAME" => "NEW_BLOG_COMMENT2COMMENT", "LID" => $arSites, "EMAIL_FROM" => "#EMAIL_FROM#", "EMAIL_TO" => "#EMAIL_TO#", "SUBJECT" => GetMessage("NEW_BLOG_COMMENT2COMMENT_SUBJECT"), "MESSAGE" => GetMessage("NEW_BLOG_COMMENT2COMMENT_MESSAGE"), "BODY_TYPE" => "text")); $emess = new CEventMessage(); $emess->Add(array("ACTIVE" => "Y", "EVENT_NAME" => "NEW_BLOG_COMMENT_WITHOUT_TITLE", "LID" => $arSites, "EMAIL_FROM" => "#EMAIL_FROM#", "EMAIL_TO" => "#EMAIL_TO#", "SUBJECT" => GetMessage("NEW_BLOG_COMMENT_WITHOUT_TITLE_SUBJECT"), "MESSAGE" => GetMessage("NEW_BLOG_COMMENT_WITHOUT_TITLE_MESSAGE"), "BODY_TYPE" => "text"));
<?php /* * This file is part of the Studio Fact package. * * (c) Kulichkin Denis (onEXHovia) <*****@*****.**> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ if (!defined('B_PROLOG_INCLUDED') || B_PROLOG_INCLUDED !== true) { die; } use Bitrix\Main\Localization\Loc; Loc::loadMessages(__FILE__); $eventTypeList = array(); $eventType = CEventType::GetList(array('LID' => SITE_ID)); while ($item = $eventType->GetNext()) { $eventTypeList[$item['EVENT_NAME']] = sprintf('[%s] %s', $item['EVENT_NAME'], $item['NAME']); } $eventTemplateList = array(); if (strlen($arCurrentValues['EVENT_NAME']) > 0) { $eventTemplate = CEventMessage::GetList($o = '', $b = '', array('EVENT_NAME' => $arCurrentValues['EVENT_NAME'])); while ($item = $eventTemplate->GetNext()) { $eventTemplateList[$item['ID']] = sprintf('[%d] %s', $item['ID'], $item['SUBJECT']); } } $arComponentParameters = array('PARAMETERS' => array('ID' => array('PARENT' => 'BASE', 'NAME' => Loc::getMessage('ID'), 'TYPE' => 'STRING'), 'TYPE' => array('PARENT' => 'BASE', 'NAME' => Loc::getMessage('TYPE'), 'TYPE' => 'LIST', 'VALUES' => array('IBLOCK' => Loc::getMessage('TYPE_IBLOCK'), 'HLBLOCK' => Loc::getMessage('TYPE_HLBLOCK'), 'CUSTOM' => Loc::getMessage('TYPE_CUSTOM'))), 'ALIAS_FIELDS' => array('NAME' => Loc::getMessage('ALIAS_FIELDS'), 'TYPE' => 'CUSTOM', 'ADDITIONAL_VALUES' => 'Y', 'MULTIPLE' => 'Y', 'VALUES' => array()), 'DISPLAY_FIELDS' => array('NAME' => Loc::getMessage('DISPLAY_FIELDS'), 'TYPE' => 'STRING', 'ADDITIONAL_VALUES' => 'Y', 'MULTIPLE' => 'Y', 'VALUES' => array()), 'ATTACH_FIELDS' => array('NAME' => Loc::getMessage('ATTACH_FIELDS'), 'TYPE' => 'STRING', 'ADDITIONAL_VALUES' => 'Y', 'MULTIPLE' => 'Y', 'VALUES' => array()), 'EVENT_NAME' => array('NAME' => Loc::getMessage('EVENT_NAME'), 'TYPE' => 'LIST', 'ADDITIONAL_VALUES' => 'Y', 'VALUES' => $eventTypeList, 'REFRESH' => 'Y', 'DEFAULT' => ''), 'EVENT_TEMPLATE' => array('NAME' => Loc::getMessage('EVENT_TEMPLATE'), 'TYPE' => 'LIST', 'VALUES' => $eventTemplateList, 'ADDITIONAL_VALUES' => 'Y', 'DEFAULT' => ''), 'EVENT_TYPE' => array('NAME' => Loc::getMessage('EVENT_TYPE'), 'TYPE' => 'STRING', 'DEFAULT' => ''), 'BUILDER' => array('NAME' => Loc::getMessage('BUILDER'), 'TYPE' => 'STRING', 'DEFAULT' => ''), 'STORAGE' => array('NAME' => Loc::getMessage('STORAGE'), 'TYPE' => 'STRING', 'DEFAULT' => ''), 'VALIDATOR' => array('NAME' => Loc::getMessage('VALIDATOR'), 'TYPE' => 'STRING', 'DEFAULT' => ''), 'AJAX' => array('NAME' => Loc::getMessage('AJAX'), 'TYPE' => 'CHECKBOX', 'DEFAULT' => ''), 'USE_CAPTCHA' => array('NAME' => Loc::getMessage('USE_CAPTCHA'), 'TYPE' => 'CHECKBOX', 'DEFAULT' => 'Y'), 'USE_CSRF' => array('NAME' => Loc::getMessage('USE_CSRF'), 'TYPE' => 'CHECKBOX', 'DEFAULT' => 'Y'), 'REDIRECT_PATH' => array('NAME' => Loc::getMessage('REDIRECT_PATH'), 'TYPE' => 'STRING', 'DEFAULT' => ''), 'CACHE_TIME' => array('DEFAULT' => 36000000), 'CACHE_GROUPS' => array('PARENT' => 'CACHE_SETTINGS', 'NAME' => Loc::getMessage('CACHE_GROUPS'), 'TYPE' => 'CHECKBOX', 'DEFAULT' => 'Y')));
<?php $langs = CLanguage::GetList($b = "", $o = ""); while ($lang = $langs->Fetch()) { $lid = $lang["LID"]; IncludeModuleLangFile($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/learning/install/events.php", $lid); $et = new CEventType(); $et->Add(array("LID" => $lid, "EVENT_NAME" => "NEW_LEARNING_TEXT_ANSWER", "NAME" => GetMessage("NEW_LEARNING_TEXT_ANSWER_NAME"), "DESCRIPTION" => GetMessage("NEW_LEARNING_TEXT_ANSWER_DESC"))); $arSites = array(); $sites = CSite::GetList($b = "", $o = "", array("LANGUAGE_ID" => $lid)); while ($site = $sites->Fetch()) { $arSites[] = $site["LID"]; } if (count($arSites) > 0) { $emess = new CEventMessage(); $emess->Add(array("ACTIVE" => "Y", "EVENT_NAME" => "NEW_LEARNING_TEXT_ANSWER", "LID" => $arSites, "EMAIL_FROM" => "#EMAIL_FROM#", "EMAIL_TO" => "#EMAIL_TO#", "SUBJECT" => GetMessage("NEW_LEARNING_TEXT_ANSWER_SUBJECT"), "MESSAGE" => GetMessage("NEW_LEARNING_TEXT_ANSWER_MESSAGE"), "BODY_TYPE" => "text")); } }
$DB->Rollback(); } else { $DB->Commit(); if ($_POST["save"] != '') { LocalRedirect(BX_ROOT . "/admin/type_admin.php?lang=" . LANGUAGE_ID); } else { LocalRedirect(BX_ROOT . "/admin/type_edit.php?EVENT_NAME=" . $res["EVENT_NAME"] . "&lang=" . LANGUAGE_ID); } } } if ($bVarsFromForm && ($e = $APPLICATION->GetException())) { $message = new CAdminMessage(GetMessage("MAIN_ERROR_SAVING"), $e); } $arParams["EVENT_NAME"] = $_REQUEST["EVENT_NAME"]; if ($arParams["EVENT_NAME"] != '') { $db_res = CEventType::GetListEx(array(), array("EVENT_NAME" => $arParams["EVENT_NAME"]), array("type" => "full")); if ($db_res && ($res = $db_res->Fetch())) { $arParams["DATA"] = $res; if (is_array($res["TYPE"])) { foreach ($res["TYPE"] as $r) { $arParams["DATA"][$r["LID"]] = $r; } } $arParams["ACTION"] = "UPDATE"; $arParams["DATA_OLD"] = $arParams["DATA"]; } } $aTabs = array(array("DIV" => "edit1", "TAB" => GetMessage("EVENT_NAME_TITLE"), "ICON" => "mail", "TITLE" => GetMessage("EVENT_NAME_DESCR"))); if ($arParams["ACTION"] == "UPDATE") { $aTabs[] = array("DIV" => "edit2", "TAB" => GetMessage("TEMPLATES_TITLE"), "ICON" => "mail", "TITLE" => GetMessage("TEMPLATES_DESCR")); }
public static function SetMailTemplate($WEB_FORM_ID, $STATUS_ID, $ADD_NEW_TEMPLATE="Y", $old_SID="", $bReturnFullInfo = false) { global $DB, $MESS, $strError; $err_mess = (CAllForm::err_mess())."<br>Function: SetMailTemplate<br>Line: "; $arrReturn = array(); $WEB_FORM_ID = intval($WEB_FORM_ID); $q = CForm::GetByID($WEB_FORM_ID); if ($arrForm = $q->Fetch()) { $dbRes = CFormStatus::GetByID($STATUS_ID); if ($arrStatus = $dbRes->Fetch()) { $MAIL_EVENT_TYPE = "FORM_STATUS_CHANGE_".$arrForm["SID"]."_".$arrStatus['ID']; if (strlen($old_SID)>0) $old_MAIL_EVENT_TYPE = "FORM_STATUS_CHANGE_".$old_SID."_".$arrStatus['ID']; $et = new CEventType; $em = new CEventMessage; if (strlen($MAIL_EVENT_TYPE)>0) $et->Delete($MAIL_EVENT_TYPE); $z = CLanguage::GetList($v1, $v2); $OLD_MESS = $MESS; $MESS = array(); while ($arLang = $z->Fetch()) { IncludeModuleLangFile($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/form/admin/form_status_mail.php", $arLang["LID"]); $str = ""; $str .= "#EMAIL_TO# - ".GetMessage("FORM_L_EMAIL_TO")."\n"; $str .= "#RS_FORM_ID# - ".GetMessage("FORM_L_FORM_ID")."\n"; $str .= "#RS_FORM_NAME# - ".GetMessage("FORM_L_NAME")."\n"; $str .= "#RS_FORM_SID# - ".GetMessage("FORM_L_SID")."\n"; $str .= "#RS_RESULT_ID# - ".GetMessage("FORM_L_RESULT_ID")."\n"; $str .= "#RS_DATE_CREATE# - ".GetMessage("FORM_L_DATE_CREATE")."\n"; $str .= "#RS_USER_ID# - ".GetMessage("FORM_L_USER_ID")."\n"; $str .= "#RS_USER_EMAIL# - ".GetMessage("FORM_L_USER_EMAIL")."\n"; $str .= "#RS_USER_NAME# - ".GetMessage("FORM_L_USER_NAME")."\n"; $str .= "#RS_STATUS_ID# - ".GetMessage("FORM_L_STATUS_ID")."\n"; $str .= "#RS_STATUS_NAME# - ".GetMessage("FORM_L_STATUS_NAME")."\n"; $et->Add( Array( "LID" => $arLang["LID"], "EVENT_NAME" => $MAIL_EVENT_TYPE, "NAME" => str_replace(array('#FORM_SID#', '#STATUS_NAME#'), array($arrForm['SID'], $arrStatus['TITLE']), GetMessage("FORM_CHANGE_STATUS")), "DESCRIPTION" => $str ) ); } // create new event type for old templates if (strlen($old_MAIL_EVENT_TYPE)>0 && $old_MAIL_EVENT_TYPE!=$MAIL_EVENT_TYPE) { $e = $em->GetList($by="id",$order="desc",array("EVENT_NAME"=>$old_MAIL_EVENT_TYPE)); while ($er=$e->Fetch()) { $em->Update($er["ID"],array("EVENT_NAME"=>$MAIL_EVENT_TYPE)); } if (strlen($old_MAIL_EVENT_TYPE)>0) $et->Delete($old_MAIL_EVENT_TYPE); } if ($ADD_NEW_TEMPLATE=="Y") { $z = CSite::GetList($v1, $v2); while ($arSite = $z->Fetch()) $arrSiteLang[$arSite["ID"]] = $arSite["LANGUAGE_ID"]; $arrFormSite = CForm::GetSiteArray($WEB_FORM_ID); if (is_array($arrFormSite) && count($arrFormSite)>0) { foreach($arrFormSite as $sid) { IncludeModuleLangFile($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/form/admin/form_status_mail.php", $arrSiteLang[$sid]); $SUBJECT = GetMessage("FORM_CHANGE_STATUS_S"); $MESSAGE = GetMessage("FORM_CHANGE_STATUS_B"); // добавляем новый шаблон $arFields = Array( "ACTIVE" => "Y", "EVENT_NAME" => $MAIL_EVENT_TYPE, "LID" => $sid, "EMAIL_FROM" => "#DEFAULT_EMAIL_FROM#", "EMAIL_TO" => "#EMAIL_TO#", "SUBJECT" => $SUBJECT, "MESSAGE" => $MESSAGE, "BODY_TYPE" => "text" ); //echo '<pre>'; print_r($arFields); echo '</pre>'; $TEMPLATE_ID = $em->Add($arFields); if ($bReturnFullInfo) $arrReturn[] = array( 'ID' => $TEMPLATE_ID, 'FIELDS' => $arFields, ); else $arrReturn[] = $TEMPLATE_ID; } } } CFormStatus::Set(array('FORM_ID' => $WEB_FORM_ID, 'MAIL_EVENT_TYPE' => $MAIL_EVENT_TYPE), $STATUS_ID, 'N'); $MESS = $OLD_MESS; } } return $arrReturn; }
protected function deleteMailEvType() { $et = \Bitrix\Main\Config\Option::get($this->MODULE_ID, "mail_event_name"); CEventType::Delete($et); return true; }
$template = str_replace("#SITE_CHARSET#", $lang["CHARSET"], $templateGeneral); $arHTMLEvents = array("SALE_NEW_ORDER", "SALE_ORDER_CANCEL", "SALE_ORDER_DELIVERY", "SALE_ORDER_PAID", "SALE_ORDER_REMIND_PAYMENT", "SALE_SUBSCRIBE_PRODUCT", "SALE_ORDER_TRACKING_NUMBER"); foreach ($arHTMLEvents as $eventName) { $emess = new CEventMessage(); $message = str_replace(array("#TITLE#", "#SUB_TITLE#", "#TEXT#", "#FOOTER_BR#", "#FOOTER_SHOP#"), array(GetMessage($eventName . "_HTML_TITLE"), GetMessage($eventName . "_HTML_SUB_TITLE"), str_replace("\n", "<br />\n", GetMessage($eventName . "_HTML_TEXT")), GetMessage("SMAIL_FOOTER_BR"), GetMessage("SMAIL_FOOTER_SHOP")), $template); $emess->Add(array("ACTIVE" => "Y", "EVENT_NAME" => $eventName, "LID" => $arSites, "EMAIL_FROM" => "#SALE_EMAIL#", "EMAIL_TO" => "#EMAIL#", "BCC" => "#BCC#", "SUBJECT" => GetMessage($eventName . "_SUBJECT"), "MESSAGE" => $message, "BODY_TYPE" => "html")); } $emess = new CEventMessage(); $emess->Add(array("ACTIVE" => "Y", "EVENT_NAME" => "SALE_NEW_ORDER_RECURRING", "LID" => $arSites, "EMAIL_FROM" => "#SALE_EMAIL#", "EMAIL_TO" => "#EMAIL#", "BCC" => "#BCC#", "SUBJECT" => GetMessage("SALE_NEW_ORDER_RECURRING_SUBJECT"), "MESSAGE" => GetMessage("SALE_NEW_ORDER_RECURRING_MESSAGE"), "BODY_TYPE" => "text")); $emess = new CEventMessage(); $emess->Add(array("ACTIVE" => "Y", "EVENT_NAME" => "SALE_RECURRING_CANCEL", "LID" => $arSites, "EMAIL_FROM" => "#SALE_EMAIL#", "EMAIL_TO" => "#EMAIL#", "BCC" => "#BCC#", "SUBJECT" => GetMessage("SALE_RECURRING_CANCEL_SUBJECT"), "MESSAGE" => GetMessage("SALE_RECURRING_CANCEL_MESSAGE"), "BODY_TYPE" => "text")); } $dbStatus = CSaleStatus::GetList(array($by => $order), array(), false, false, array("ID")); while ($arStatus = $dbStatus->Fetch()) { $ID = $arStatus["ID"]; $eventType = new CEventType(); $eventMessage = new CEventMessage(); IncludeModuleLangFile($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/sale/general/status.php", $lid); $arStatusLang = CSaleStatus::GetLangByID($ID, $lid); $template = str_replace("#SITE_CHARSET#", $lang["CHARSET"], $templateGeneral); $dbEventType = $eventType->GetList(array("EVENT_NAME" => "SALE_STATUS_CHANGED_" . $ID, "LID" => $lid)); if (!($arEventType = $dbEventType->Fetch())) { $str = ""; $str .= "#ORDER_ID# - " . GetMessage("SKGS_ORDER_ID") . "\n"; $str .= "#ORDER_DATE# - " . GetMessage("SKGS_ORDER_DATE") . "\n"; $str .= "#ORDER_STATUS# - " . GetMessage("SKGS_ORDER_STATUS") . "\n"; $str .= "#EMAIL# - " . GetMessage("SKGS_ORDER_EMAIL") . "\n"; $str .= "#ORDER_DESCRIPTION# - " . GetMessage("SKGS_STATUS_DESCR") . "\n"; $str .= "#TEXT# - " . GetMessage("SKGS_STATUS_TEXT") . "\n"; $str .= "#SALE_EMAIL# - " . GetMessage("SKGS_SALE_EMAIL") . "\n"; $eventTypeID = $eventType->Add(array("LID" => $lid, "EVENT_NAME" => "SALE_STATUS_CHANGED_" . $ID, "NAME" => GetMessage("SKGS_CHANGING_STATUS_TO") . " \"" . $arStatusLang["NAME"] . "\"", "DESCRIPTION" => $str));
function SetMailTemplate($WEB_FORM_ID, $ADD_NEW_TEMPLATE = "Y", $old_SID = "", $bReturnFullInfo = false) { global $DB, $MESS, $strError; $err_mess = CAllForm::err_mess() . "<br>Function: SetMailTemplates<br>Line: "; $arrReturn = array(); $WEB_FORM_ID = intval($WEB_FORM_ID); $q = CForm::GetByID($WEB_FORM_ID); if ($arrForm = $q->Fetch()) { $MAIL_EVENT_TYPE = "FORM_FILLING_" . $arrForm["SID"]; if (strlen($old_SID) > 0) { $old_MAIL_EVENT_TYPE = "FORM_FILLING_" . $old_SID; } $et = new CEventType(); $em = new CEventMessage(); if (strlen($MAIL_EVENT_TYPE) > 0) { $et->Delete($MAIL_EVENT_TYPE); } $z = CLanguage::GetList($v1, $v2); $OLD_MESS = $MESS; while ($arLang = $z->Fetch()) { IncludeModuleLangFile($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/form/admin/form_mail.php", $arLang["LID"]); $str = ""; $str .= "#RS_FORM_ID# - " . GetMessage("FORM_L_FORM_ID") . "\n"; $str .= "#RS_FORM_NAME# - " . GetMessage("FORM_L_NAME") . "\n"; $str .= "#RS_FORM_SID# - " . GetMessage("FORM_L_SID") . "\n"; $str .= "#RS_RESULT_ID# - " . GetMessage("FORM_L_RESULT_ID") . "\n"; $str .= "#RS_DATE_CREATE# - " . GetMessage("FORM_L_DATE_CREATE") . "\n"; $str .= "#RS_USER_ID# - " . GetMessage("FORM_L_USER_ID") . "\n"; $str .= "#RS_USER_EMAIL# - " . GetMessage("FORM_L_USER_EMAIL") . "\n"; $str .= "#RS_USER_NAME# - " . GetMessage("FORM_L_USER_NAME") . "\n"; $str .= "#RS_USER_AUTH# - " . GetMessage("FORM_L_USER_AUTH") . "\n"; $str .= "#RS_STAT_GUEST_ID# - " . GetMessage("FORM_L_STAT_GUEST_ID") . "\n"; $str .= "#RS_STAT_SESSION_ID# - " . GetMessage("FORM_L_STAT_SESSION_ID") . "\n"; $strFIELDS = ""; $w = CFormField::GetList($WEB_FORM_ID, "ALL", $by, $order, array(), $is_filtered); while ($wr = $w->Fetch()) { if (strlen($wr["RESULTS_TABLE_TITLE"]) > 0) { $FIELD_TITLE = $wr["RESULTS_TABLE_TITLE"]; } elseif (strlen($wr["TITLE"]) > 0) { $FIELD_TITLE = $wr["TITLE_TYPE"] == "html" ? htmlspecialcharsback(strip_tags($wr["TITLE"])) : $wr["TITLE"]; } else { $FIELD_TITLE = TrimEx($wr["FILTER_TITLE"], ":"); } $str .= "#" . $wr["SID"] . "# - " . $FIELD_TITLE . "\n"; $str .= "#" . $wr["SID"] . "_RAW# - " . $FIELD_TITLE . " (" . GetMessage('FORM_L_RAW') . ")\n"; $strFIELDS .= $FIELD_TITLE . "\n*******************************\n#" . $wr["SID"] . "#\n\n"; } $et->Add(array("LID" => $arLang["LID"], "EVENT_NAME" => $MAIL_EVENT_TYPE, "NAME" => GetMessage("FORM_FILLING") . " \"" . $arrForm["SID"] . "\"", "DESCRIPTION" => $str)); } // задаем новый тип событи¤ дл¤ старых шаблонов if (strlen($old_MAIL_EVENT_TYPE) > 0 && $old_MAIL_EVENT_TYPE != $MAIL_EVENT_TYPE) { $e = $em->GetList($by = "id", $order = "desc", array("EVENT_NAME" => $old_MAIL_EVENT_TYPE)); while ($er = $e->Fetch()) { $em->Update($er["ID"], array("EVENT_NAME" => $MAIL_EVENT_TYPE)); } if (strlen($old_MAIL_EVENT_TYPE) > 0) { $et->Delete($old_MAIL_EVENT_TYPE); } } if ($ADD_NEW_TEMPLATE == "Y") { $z = CSite::GetList($v1, $v2); while ($arSite = $z->Fetch()) { $arrSiteLang[$arSite["ID"]] = $arSite["LANGUAGE_ID"]; } $arrFormSite = CForm::GetSiteArray($WEB_FORM_ID); if (is_array($arrFormSite) && count($arrFormSite) > 0) { foreach ($arrFormSite as $sid) { IncludeModuleLangFile($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/form/admin/form_mail.php", $arrSiteLang[$sid]); $SUBJECT = "#SERVER_NAME#: " . GetMessage("FORM_FILLING_S") . " [#RS_FORM_ID#] #RS_FORM_NAME#"; $MESSAGE = "#SERVER_NAME#\n\n" . GetMessage("FORM_FILLING") . ": [#RS_FORM_ID#] #RS_FORM_NAME#\n-------------------------------------------------------\n\n" . GetMessage("FORM_DATE_CREATE") . "#RS_DATE_CREATE#\n" . GetMessage("FORM_RESULT_ID") . "#RS_RESULT_ID#\n" . GetMessage("FORM_USER") . "[#RS_USER_ID#] #RS_USER_NAME# #RS_USER_AUTH#\n" . GetMessage("FORM_STAT_GUEST_ID") . "#RS_STAT_GUEST_ID#\n" . GetMessage("FORM_STAT_SESSION_ID") . "#RS_STAT_SESSION_ID#\n\n\n{$strFIELDS}\n" . GetMessage("FORM_VIEW") . "\nhttp://#SERVER_NAME#/bitrix/admin/form_result_view.php?lang=" . $arrSiteLang[$sid] . "&WEB_FORM_ID=#RS_FORM_ID#&RESULT_ID=#RS_RESULT_ID#\n\n-------------------------------------------------------\n" . GetMessage("FORM_GENERATED_AUTOMATICALLY") . "\n\t\t\t\t\t\t"; // добавл¤ем новый шаблон $arFields = array("ACTIVE" => "Y", "EVENT_NAME" => $MAIL_EVENT_TYPE, "LID" => $sid, "EMAIL_FROM" => "#DEFAULT_EMAIL_FROM#", "EMAIL_TO" => "#DEFAULT_EMAIL_FROM#", "SUBJECT" => $SUBJECT, "MESSAGE" => $MESSAGE, "BODY_TYPE" => "text"); $TEMPLATE_ID = $em->Add($arFields); if ($bReturnFullInfo) { $arrReturn[] = array('ID' => $TEMPLATE_ID, 'FIELDS' => $arFields); } else { $arrReturn[] = $TEMPLATE_ID; } } } } $MESS = $OLD_MESS; } return $arrReturn; }
<?php $langs = CLanguage::GetList($b = "", $o = ""); while ($lang = $langs->Fetch()) { $lid = $lang["LID"]; IncludeModuleLangFile($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/tasks/install/events.php", $lid); $et = new CEventType(); $et->Add(array("LID" => $lid, "EVENT_NAME" => "TASK_REMINDER", "NAME" => GetMessage("TASK_REMINDER_NAME"), "DESCRIPTION" => GetMessage("TASK_REMINDER_DESC"))); $arSites = array(); $sites = CSite::GetList($b = "", $o = "", array("LANGUAGE_ID" => $lid)); while ($site = $sites->Fetch()) { $arSites[] = $site["LID"]; } if (count($arSites) > 0) { $emess = new CEventMessage(); $emess->Add(array("ACTIVE" => "Y", "EVENT_NAME" => "TASK_REMINDER", "LID" => $arSites, "EMAIL_FROM" => "#DEFAULT_EMAIL_FROM#", "EMAIL_TO" => "#EMAIL_TO#", "SUBJECT" => GetMessage("TASK_REMINDER_SUBJECT"), "MESSAGE" => GetMessage("TASK_REMINDER_MESSAGE"), "BODY_TYPE" => "text")); } }
<?php $langs = CLanguage::GetList($b = "", $o = ""); while ($lang = $langs->Fetch()) { $lid = $lang["LID"]; IncludeModuleLangFile($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/im/install/events/set_events.php", $lid); $et = new CEventType(); $et->Add(array("LID" => $lid, "EVENT_NAME" => "IM_NEW_NOTIFY", "NAME" => GetMessage("IM_NEW_NOTIFY_NAME"), "DESCRIPTION" => GetMessage("IM_NEW_NOTIFY_DESC"))); $et = new CEventType(); $et->Add(array("LID" => $lid, "EVENT_NAME" => "IM_NEW_NOTIFY_GROUP", "NAME" => GetMessage("IM_NEW_NOTIFY_GROUP_NAME"), "DESCRIPTION" => GetMessage("IM_NEW_NOTIFY_GROUP_DESC"))); $et = new CEventType(); $et->Add(array("LID" => $lid, "EVENT_NAME" => "IM_NEW_MESSAGE", "NAME" => GetMessage("IM_NEW_MESSAGE_NAME"), "DESCRIPTION" => GetMessage("IM_NEW_MESSAGE_DESC"))); $et = new CEventType(); $et->Add(array("LID" => $lid, "EVENT_NAME" => "IM_NEW_MESSAGE_GROUP", "NAME" => GetMessage("IM_NEW_MESSAGE_GROUP_NAME"), "DESCRIPTION" => GetMessage("IM_NEW_MESSAGE_GROUP_DESC"))); $arSites = array(); $sites = CSite::GetList($b = "", $o = "", array("LANGUAGE_ID" => $lid)); while ($site = $sites->Fetch()) { $arSites[] = $site["LID"]; } if (count($arSites) > 0) { $emess = new CEventMessage(); $emess->Add(array("ACTIVE" => "Y", "EVENT_NAME" => "IM_NEW_NOTIFY", "LID" => $arSites, "EMAIL_FROM" => "#DEFAULT_EMAIL_FROM#", "EMAIL_TO" => "#EMAIL_TO#", "SUBJECT" => GetMessage("IM_NEW_NOTIFY_SUBJECT"), "MESSAGE" => GetMessage("IM_NEW_NOTIFY_MESSAGE"), "BODY_TYPE" => "text")); $emess = new CEventMessage(); $emess->Add(array("ACTIVE" => "Y", "EVENT_NAME" => "IM_NEW_NOTIFY_GROUP", "LID" => $arSites, "EMAIL_FROM" => "#DEFAULT_EMAIL_FROM#", "EMAIL_TO" => "#EMAIL_TO#", "SUBJECT" => GetMessage("IM_NEW_NOTIFY_GROUP_SUBJECT"), "MESSAGE" => GetMessage("IM_NEW_NOTIFY_GROUP_MESSAGE"), "BODY_TYPE" => "text")); $emess = new CEventMessage(); $emess->Add(array("ACTIVE" => "Y", "EVENT_NAME" => "IM_NEW_MESSAGE", "LID" => $arSites, "EMAIL_FROM" => "#DEFAULT_EMAIL_FROM#", "EMAIL_TO" => "#EMAIL_TO#", "SUBJECT" => GetMessage("IM_NEW_MESSAGE_SUBJECT"), "MESSAGE" => GetMessage("IM_NEW_MESSAGE_MESSAGE"), "BODY_TYPE" => "text")); $emess = new CEventMessage(); $emess->Add(array("ACTIVE" => "Y", "EVENT_NAME" => "IM_NEW_MESSAGE_GROUP", "LID" => $arSites, "EMAIL_FROM" => "#DEFAULT_EMAIL_FROM#", "EMAIL_TO" => "#EMAIL_TO#", "SUBJECT" => GetMessage("IM_NEW_MESSAGE_GROUP_SUBJECT"), "MESSAGE" => GetMessage("IM_NEW_MESSAGE_GROUP_MESSAGE"), "BODY_TYPE" => "text")); } }
<?php $langs = CLanguage::GetList($b = "", $o = ""); while ($lang = $langs->Fetch()) { $lid = $lang["LID"]; IncludeModuleLangFile(__FILE__, $lid); $et = new CEventType(); $et->Add(array("LID" => $lid, "EVENT_NAME" => "STATISTIC_ACTIVITY_EXCEEDING", "NAME" => GetMessage("STATISTIC_ACTIVITY_EXCEEDING_NAME"), "DESCRIPTION" => GetMessage("STATISTIC_ACTIVITY_EXCEEDING_DESC"))); $et = new CEventType(); $et->Add(array("LID" => $lid, "EVENT_NAME" => "STATISTIC_DAILY_REPORT", "NAME" => GetMessage("STATISTIC_DAILY_REPORT_NAME"), "DESCRIPTION" => GetMessage("STATISTIC_DAILY_REPORT_DESC"))); $arSites = array(); $sites = CSite::GetList($b = "", $o = "", array("LANGUAGE_ID" => $lid)); while ($site = $sites->Fetch()) { $arSites[] = $site["LID"]; } if (count($arSites) > 0) { $emess = new CEventMessage(); $emess->Add(array("ACTIVE" => "Y", "EVENT_NAME" => "STATISTIC_DAILY_REPORT", "LID" => $arSites, "EMAIL_FROM" => "#DEFAULT_EMAIL_FROM#", "EMAIL_TO" => "#EMAIL_TO#", "BCC" => "", "SUBJECT" => GetMessage("STATISTIC_DAILY_REPORT_SUBJECT"), "MESSAGE" => GetMessage("STATISTIC_DAILY_REPORT_MESSAGE", array("#LANGUAGE_ID#" => $lid)), "BODY_TYPE" => "html")); $emess = new CEventMessage(); $emess->Add(array("ACTIVE" => "Y", "EVENT_NAME" => "STATISTIC_ACTIVITY_EXCEEDING", "LID" => $arSites, "EMAIL_FROM" => "#DEFAULT_EMAIL_FROM#", "EMAIL_TO" => "#EMAIL_TO#", "BCC" => "", "SUBJECT" => GetMessage("STATISTIC_ACTIVITY_EXCEEDING_SUBJECT"), "MESSAGE" => GetMessage("STATISTIC_ACTIVITY_EXCEEDING_MESSAGE"), "BODY_TYPE" => "text")); } }
function UnInstallEvents() { global $DB; $statusMes = array(); $dbStatus = $DB->Query("SELECT * FROM b_sale_status", true); if ($dbStatus) { while ($arStatus = $dbStatus->Fetch()) { $statusMes[] = "SALE_STATUS_CHANGED_" . $arStatus["ID"]; } } $statusMes[] = "SALE_NEW_ORDER"; $statusMes[] = "SALE_ORDER_CANCEL"; $statusMes[] = "SALE_ORDER_PAID"; $statusMes[] = "SALE_ORDER_DELIVERY"; $statusMes[] = "SALE_RECURRING_CANCEL"; $statusMes[] = "SALE_STATUS_CHANGED"; $statusMes[] = "SALE_ORDER_REMIND_PAYMENT"; $statusMes[] = "SALE_NEW_ORDER_RECURRING"; $statusMes[] = "SALE_ORDER_TRACKING_NUMBER"; $statusMes[] = "SALE_SUBSCRIBE_PRODUCT"; $eventType = new CEventType(); $eventM = new CEventMessage(); foreach ($statusMes as $v) { $eventType->Delete($v); $dbEvent = CEventMessage::GetList($b = "ID", $order = "ASC", array("EVENT_NAME" => $v)); while ($arEvent = $dbEvent->Fetch()) { $eventM->Delete($arEvent["ID"]); } } return true; }
function insertType($message) { $et = new CEventType(); return $et->Add(array("LID" => $message['LID'], "EVENT_NAME" => $message['EVENT_NAME'], "NAME" => $message['NAME'], "DESCRIPTION" => $message['DESCRIPTION'])); }
public static function CreateMailTemplate($ID) { $ID = trim($ID); if ('' == $ID) { return false; } if (!($arStatus = CSaleStatus::GetByID($ID, LANGUAGE_ID))) { return false; } $eventType = new CEventType(); $eventMessage = new CEventMessage(); $eventType->Delete("SALE_STATUS_CHANGED_" . $ID); $b = 'sort'; $o = 'asc'; $dbSiteList = CSite::GetList($b, $o); while ($arSiteList = $dbSiteList->Fetch()) { IncludeModuleLangFile($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/sale/general/status.php", $arSiteList["LANGUAGE_ID"]); $arStatusLang = CSaleStatus::GetLangByID($ID, $arSiteList["LANGUAGE_ID"]); $dbEventType = $eventType->GetList(array("EVENT_NAME" => "SALE_STATUS_CHANGED_" . $ID, "LID" => $arSiteList["LANGUAGE_ID"])); if (!($arEventType = $dbEventType->Fetch())) { $str = ""; $str .= "#ORDER_ID# - " . GetMessage("SKGS_ORDER_ID") . "\n"; $str .= "#ORDER_DATE# - " . GetMessage("SKGS_ORDER_DATE") . "\n"; $str .= "#ORDER_STATUS# - " . GetMessage("SKGS_ORDER_STATUS") . "\n"; $str .= "#EMAIL# - " . GetMessage("SKGS_ORDER_EMAIL") . "\n"; $str .= "#ORDER_DESCRIPTION# - " . GetMessage("SKGS_STATUS_DESCR") . "\n"; $str .= "#TEXT# - " . GetMessage("SKGS_STATUS_TEXT") . "\n"; $str .= "#SALE_EMAIL# - " . GetMessage("SKGS_SALE_EMAIL") . "\n"; $eventTypeID = $eventType->Add(array("LID" => $arSiteList["LANGUAGE_ID"], "EVENT_NAME" => "SALE_STATUS_CHANGED_" . $ID, "NAME" => GetMessage("SKGS_CHANGING_STATUS_TO") . " \"" . $arStatusLang["NAME"] . "\"", "DESCRIPTION" => $str)); } $dbEventMessage = $eventMessage->GetList($b = "", $o = "", array("EVENT_NAME" => "SALE_STATUS_CHANGED_" . $ID, "SITE_ID" => $arSiteList["LID"])); if (!($arEventMessage = $dbEventMessage->Fetch())) { $subject = GetMessage("SKGS_STATUS_MAIL_SUBJ"); $message = GetMessage("SKGS_STATUS_MAIL_BODY1"); $message .= "------------------------------------------\n\n"; $message .= GetMessage("SKGS_STATUS_MAIL_BODY2"); $message .= GetMessage("SKGS_STATUS_MAIL_BODY3"); $message .= "#ORDER_STATUS#\n"; $message .= "#ORDER_DESCRIPTION#\n"; $message .= "#TEXT#\n\n"; $message .= "#SITE_NAME#\n"; $arFields = array("ACTIVE" => "Y", "EVENT_NAME" => "SALE_STATUS_CHANGED_" . $ID, "LID" => $arSiteList["LID"], "EMAIL_FROM" => "#SALE_EMAIL#", "EMAIL_TO" => "#EMAIL#", "SUBJECT" => $subject, "MESSAGE" => $message, "BODY_TYPE" => "text"); $eventMessageID = $eventMessage->Add($arFields); } } return true; }
} switch ($_REQUEST['action']) { case "delete": case "clean": $DB->StartTransaction(); $ID = array("EVENT_NAME" => $ID); $db_res = CEventMessage::GetList($by, $order, $ID); if ($db_res && ($res = $db_res->Fetch())) { do { if (!CEventMessage::Delete($res["ID"])) { $error = true; break; } } while ($res = $db_res->Fetch()); } if ($error || !CEventType::Delete($ID)) { $DB->Rollback(); $lAdmin->AddGroupError(Loc::getMessage("DELETE_ERROR"), $ID); } else { $DB->Commit(); } break; } } } $arLID = array(); $db_res = CLanguage::GetList($by_ = "sort", $order_ = "asc"); if ($db_res && ($res = $db_res->GetNext())) { do { $arLID[$res["LID"]] = $res["LID"]; } while ($res = $db_res->GetNext());