Класс CAdminFilter
Описание и методы
CAdminFilter - класс для работы с фильтром списка результатов на странице панели управления.
Методы для работы с фильтром
Метод | Описание | С версии |
---|---|---|
CAdminFilter | Конструктор класса. | |
Begin | Вывод шапки фильтра. | |
Buttons | Вывод кнопок фильтра. | |
End | Завершение вывода фильтра. |
Пример работы с фильтром
Предварительная работа с фильтром осуществляется следующим образом:
// опишем элементы фильтра $FilterArr = Array( "find_id", "find_lid", "find_active", "find_visible", "find_auto", ); // инициализируем фильтр $lAdmin->InitFilter($FilterArr); // если все значения фильтра корректны, обработаем его { // создадим массив фильтрации для выборки CRubric::GetList() на основе значений фильтра $arFilter = Array( "ID" => $find_id, "LID" => $find_lid, "ACTIVE" => $find_active, "VISIBLE" => $find_visible, "AUTO" => $find_auto, ); } // далее, полученный массив передаем в CRubric::GetList()
Для вывода фильтра требуется сперва создать экземпляр класса CAdminFilter, передав ему список полей, а затем сформировать форму фильтра "вручную".
// создадим объект фильтра $oFilter = new CAdminFilter( $sTableID."_filter", array( 'find_id' => 'ID', 'find_lid' => Loc::getMessage("rub_f_site"), 'find_active' => Loc::getMessage("rub_f_active"), 'find_visible' => Loc::getMessage("rub_f_public"), 'find_auto' => Loc::getMessage("rub_f_auto"), ) ); <form name="find_form" method="get" action="<?echo $APPLICATION->GetCurPage();?>"> <?php $oFilter->Begin(); <tr> <td><?="ID"?>:</td> <td> <input type="text" name="find_id" size="47" value="<?echo htmlspecialchars($find_id)?>"> </td> </tr> <tr> <td><?=Loc::getMessage("rub_f_site").":"?></td> <td><input type="text" name="find_lid" size="47" value="<?echo htmlspecialchars($find_lid)?>"></td> </tr> <tr> <td><?=Loc::getMessage("rub_f_active")?>:</td> <td> <?php $arr = array( "reference" => array( Loc::getMessage("POST_YES"), Loc::getMessage("POST_NO"), ), "reference_id" => array( "Y", "N", ) ); echo SelectBoxFromArray("find_active", $arr, $find_active, Loc::getMessage("POST_ALL"), ""); </td> </tr> <tr> <td><?=Loc::getMessage("rub_f_public")?>:</td> <td><?echo SelectBoxFromArray("find_visible", $arr, $find_visible, Loc::getMessage("POST_ALL"), "");?></td> </tr> <tr> <td><?=Loc::getMessage("rub_f_auto")?>:</td> <td><?echo SelectBoxFromArray("find_auto", $arr, $find_auto, Loc::getMessage("POST_ALL"), "");?></td> </tr> <?php $oFilter->Buttons(array("table_id"=>$sTableID,"url"=>$APPLICATION->GetCurPage(),"form"=>"find_form")); $oFilter->End(); </form>
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Пользовательские комментарии
Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.Для этого нужно всего лишь авторизоваться на сайте
Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.
Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.