Свойства заказа в шаблон письма.

Рейтинг: 3.6043  
На голосовании
Предложил Шишкин Алексей 21.10.2014 14:05:39

Свойства заказа в шаблон письма.

Есть мнение, что поля заказов должны быть доступны в шаблоне писем для события "Новый заказ" (Да и для всех наверное тоже). Так как, чтобы, например, послать уведомление администрации сайта с информацией о заказчике, приходится танцевать с AddEventHandler.

// Upd
Кому интересно, патч для sale.order.ajax

/bitrix/components/ваше_пространство_имен/sale.order.ajax/component.php
Строка 2034:
               $arFields = Array(
                  "ORDER_ID" => $arOrder["ACCOUNT_NUMBER"],
                  "ORDER_DATE" => Date($DB->DateFormatToPHP(CLang::GetDateFormat("SHORT", SITE_ID))),
                  "ORDER_USER" => ( (strlen($arUserResult["PAYER_NAME"]) > 0) ? $arUserResult["PAYER_NAME"] : $USER->GetFormattedName(false)),
                  "PRICE" => SaleFormatCurrency($orderTotalSum, $arResult["BASE_LANG_CURRENCY"]),
                  "BCC" => COption::GetOptionString("sale", "order_email", "order@".$SERVER_NAME),
                  "EMAIL" => (strlen($arUserResult["USER_EMAIL"])>0 ? $arUserResult["USER_EMAIL"] : $USER->GetEmail()),
                  "ORDER_LIST" => $strOrderList,
                  "SALE_EMAIL" => COption::GetOptionString("sale", "order_email", "order@".$SERVER_NAME),
                  "DELIVERY_PRICE" => $arResult["DELIVERY_PRICE"],
               );
 
Добавляем все что ниже:
               // Getting all props
               $order_prop_to_mail = CSaleOrderPropsValue::GetOrderProps($arOrder["ACCOUNT_NUMBER"]);
               while ($one_order_prop = $order_prop_to_mail->Fetch()) {
                  $arFields[$one_order_prop['CODE']] = htmlspecialchars($one_order_prop["VALUE"]);
               }
 
Конец
               $eventName = "SALE_NEW_ORDER";