} } else { foreach ($res->getErrorMessages() as $error_message) { $message = new CAdminMessage($error_message); break; } $bVarsFromForm = true; } } // ******************************************************************** // // ВЫБОРКА И ПОДГОТОВКА ДАННЫХ ФОРМЫ // // ******************************************************************** // $allProperties = []; // выборка данных if ($ID > 0) { $seoProperty = \Xpage\SeoFilter\PropertyTable::getById($ID)->fetch(); $APPLICATION->SetTitle("Edit {$seoProperty['ID']}"); } $obProperties = \Bitrix\Iblock\PropertyTable::getList(['select' => ['ID', 'NAME'], 'filter' => ['IBLOCK_ID' => \Bitrix\Main\Config\Option::get('xpage.seofilter', 'IBLOCK', 1), 'SECTION_PROPERTY.SMART_FILTER' => 'Y', 'PROPERTY_TYPE' => \Bitrix\Iblock\PropertyTable::TYPE_LIST], 'runtime' => [new Bitrix\Main\Entity\ReferenceField('SECTION_PROPERTY', 'Bitrix\\Iblock\\SectionProperty', ['this.ID' => 'ref.PROPERTY_ID'], ['join_type' => 'LEFT'])]]); while ($arProperty = $obProperties->fetch()) { $allProperties[] = $arProperty; } // ******************************************************************** // // ВЫВОД ФОРМЫ // // ******************************************************************** // // не забудем разделить подготовку данных и вывод require $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_admin_after.php"; // конфигурация административного меню $aMenu = [["TEXT" => "Список", "TITLE" => "Список", "LINK" => "seofilter_property.php", "ICON" => "btn_list"], ["TEXT" => "Удалить", "TITLE" => "Удалить", "LINK" => "javascript:if(confirm('" . "Да, прошу вас" . "')) window.location='/bitrix/admin/seofilter_property.php?ID=" . $ID . "&action=delete&lang=" . LANGUAGE_ID . "&" . bitrix_sessid_get() . "';", "ICON" => "btn_delete"]]; // создание экземпляра класса административного меню $context = new CAdminContextMenu($aMenu);