RSS
Почтовое событие на создание нового элемента инфоблока, через API
 
Почтовое событие на создание нового элемента инфоблока, через API

Иногда при разработке сайта требуется реализовать функционал добавления элементов инфоблока простыми пользователям.Будет достаточно удобно если, после создания новости, модератор будет получать письмо о создании нового элемента. Сделать это можно через событие OnBeforeIBlockElementAdd
 
вопросик, как нам вытащить ссылку на созданный элемент инфоблока ?
допустим для отправки этой ссылки администратору сайта, который будет решать дальнейшую судьбу предложенной новости.  
 
Цитата
Nikita Androsov пишет:
вопросик, как нам вытащить ссылку на созданный элемент инфоблока ?
допустим для отправки этой ссылки администратору сайта, который будет решать дальнейшую судьбу предложенной новости.
Можно передать в шаблон письма
Код
"ADD_LINK" => $arFields['ID'], 
А в письмо
Код
https://АДРЕС_САЙТА/bitrix/admin/iblock_element_edit.php?IBLOCK_ID=82&type=news&ID=#ADD_LINK#&lang=ru&WF=Y
Что бы сразу попадал в админку, на редактирование этой новости
 
Еще раз здравствуйте!
Сейчас пытаюсь "соединить"
https://camouf.ru/blog-note/2449/?sphrase_id=28078
и эту заметку.

С помощью формы создаутся данные в инфоблоке, письмо уходить но приходить так (кусок кода):
...
Размер кухни: "ADD_SIZE"
Стиль: "ADD_STYLE"
...

В обработчике формы код такой:

Код
$PROP = array();

$PROP['ATT_TYPEKITCHEN_CALC'] = $_POST['kitchen_form']; //Вид кухни

// Размеры: Длина/Ширина/Остров
$data = $_POST['size1_form11'] . 'x' . $_POST['size1_form12'] . 'x' . $_POST['size2_form12'] . 'x' . $_POST['size1_form13'] . 'x' . $_POST['size3_form13'] . 'x' . $_POST['size2_form13'] . 'x' . $_POST['size1_form14'] . 'x' . $_POST['size3_form14'] . 'x' . $_POST['size2_form14'];
$data = trim($data, 'x');
$PROP['ATT_SIZE_CALC'] = $data;

$PROP['ATT_STYLE_CALC'] = $_POST['kitchen_style']; // Стиль
$PROP['ATT_COLOR_CALC'] = $_POST['kitchen_color']; // Цвет
$PROP['ATT_FASAD_CALC'] = $_POST['kitchen_fasady']; // Фасад
$PROP['ATT_STOL_CALC'] = $_POST['kitchen_stol']; // Столешница
$PROP['ATT_MOYKA_CALC'] = $_POST['kitchen_moyka']; // Тип мойки
$PROP['ATT_FARTUK_CALC'] = $_POST['kitchen_fartuk']; // Фартук
$PROP['ATT_FURN_CALC'] = $_POST['kitchen_furn']; // Фурнитура

$PROP['ATT_NAME_CALC'] = $_POST['name']; // ФИО
$PROP['ATT_PHONE_CALC'] = $_POST['phone']; // Телефон
$PROP['ATT_EMAIL_CALC'] = $_POST['email']; // Почта
$PROP['ATT_REGION_CALC'] = $_POST['region']; // Город и область
$PROP['ATT_CALLTIME_CALC'] = $_POST['calltime']; // Время звонка
$PROP['ATT_COMENTS_CALC'] = $_POST['comment']; // Любые комментарии...
$PROP['ATT_FILE_POL_CALC'] = $_FILES['file_pol']; //Свойство файл


//Основные поля элемента
$fields = array(
 "DATE_CREATE" => date("d.m.Y H:i:s"), //Передаем дата создания
 "CREATED_BY" => $GLOBALS['USER']->GetID(), //Передаем ID пользователя кто добавляет
 "IBLOCK_SECTION_ID" => false, // элемент лежит в корне раздела
 "IBLOCK_ID" => 14,
 "PROPERTY_VALUES" => $PROP, // Передаем массив значении для свойств
 "NAME" => strip_tags($_REQUEST['name']),
 "ACTIVE" => "Y", //поумолчанию делаем активным или ставим N для отключении поумолчанию
); 


в intuit.php


Код
AddEventHandler('iblock', 'OnBeforeIBlockElementAdd', 'IBFeedForm');
function IBFeedForm(&$arFields) {
 $SITE_ID = 's1';
 $IBLOCK_ID = 14;
 $EVEN_TYPE = 'NEW_ELEMET_ADDED';
 if ($arFields['IBLOCK_ID'] == $IBLOCK_ID) {
 $arFeedForm = array(
 "ADD_NAME" => $arFields['NAME'],
 "ADD_PHONE" => $_POST['phone'],
 "ADD_EMAIL" => $_POST['email'],
 "ADD_REGION" => $arFields['PROPERTY_VALUES']["152"],
 "ADD_CALLTIME" => $arFields['PROPERTY_VALUES']['151'],
 "ADD_COMENTS" => $arFields['PROPERTY_VALUES']['149'],
 "ADD_FILE_POL" => $arFields["PROPERTY_VALUES"]["150"],
 "ADD_TYPEKITCHEN" => $arFields['PROPERTY_VALUES']['137'],
 "ADD_SIZE" => $arFields['PROPERTY_VALUES']['138'],
 "ADD_STYLE" => $arFields['PROPERTY_VALUES']['139'],
 "ADD_COLOR" => $arFields['PROPERTY_VALUES']['140'],
 "ADD_FASAD" => $arFields['PROPERTY_VALUES']['141'],
 "ADD_STOL" => $arFields['PROPERTY_VALUES']['142'],
 "ADD_MOYKA" => $arFields['PROPERTY_VALUES']['143'],
 "ADD_FARTUK" => $arFields['PROPERTY_VALUES']['144'],
 "ADD_FURN" => $arFields['PROPERTY_VALUES']['145'],
 );
 CEvent::Send($EVEN_TYPE, $SITE_ID, $arFeedForm);
 }
} 
 
Если в шаблоне делаю так (и отправляю через форму):

Размер кухни: #ADD_SIZE#
Стиль: #ADD_STYLE#

То в письме приходит:

Размер кухни:
Стиль:

Если создаю через админку то приходит:
Размер кухни: 400х400x100  
Стиль: 15                      


У свойства Размер кухни тип поля Строка
У свойства Стиль - Список
Читают тему (гостей: 1)
Ваша реклама в этом месте: 5 000 руб. / мес, сквозная по всему форуму и подфорумам.
Просьба писать на mihail@bazarow.ru
Мой youtube канал.

На нем, уже много видеоуроков по 1С-Битрикс. Как одиночные видео так и серии видеоуроков Перейти на канал

Стоимость разработки сайта

Я не оцениваю работу в часах, так как в итоге, Вы все равно захотите узнать общую стоимость и срок выполнения.

При оценке проекта или работ я сразу называю стоимость и срок выполнения. Стоимость, срок и объем работы подлежат обсуждению только по взаимной договоренности сторон.
Ноутбук
Узнать точную стоимость разработки сайта или приложения: Для этого, достаточно, как можно подробнее, заполнить вот этот опросник: Скачать опросник и выслать на электронную почту mihail@bazarow.ru.
После ознакомления, смогу задать уточняющие вопросы и оценить проект по срокам и стоимости.
Решения на битрикс

Магазин, на базе готового решенияот 35 900 рублей / от 3 до 5 дней

В стоимость входит: Подбор решения из более 200-от готовых сайтов, под Вашу задачу. Полный запуск сайта на сервере или хостинге, со всеми настройками. Инструкции по работе с готовым решением. Базовая СЕО оптимизация. Запуск готового сайта за 3-4 дня. Небольшие доработки под задачу.

Авторизация

На сайте работает вход через социальные сети. Просто, выберите наиболее удобную сеть и авторизация произойдет автоматически:
Проходя авторизацию, Вы безоговорочно принимаете условия политики конфеденциальности