AddRow
Описание и параметры
object CAdminListRow CAdminList::&AddRow( string $ID[, array $arRes = Array(), mixed $link = false, mixed $title = false] )
Функция добавляет новую строку к таблице. Строка описывается экземпляром класса CAdminListRow. Метод инициализирует новый экземпляр класса и возвращает ссылку на него.
Параметры
| Параметр | Описание |
|---|---|
| ID | Уникальный идентификатор строки. |
| arRes | Список значений в виде массива "параметр"=>"значение". |
| link | Ссылка, принимаемая в качестве действия по умолчанию для строки. |
| title | Текст всплывающей подсказки строки. |
Пример
while($arRes = $rsData->NavNext(true, "f_")):
// создаем строку. результат - экземпляр класса CAdminListRow
$row =& $lAdmin->AddRow($f_ID, $arRes);
// далее настроим отображение значений при просмотре и редактировании списка
// параметр NAME будет редактироваться как текст, а отображаться ссылкой
$row->AddInputField("NAME", array("size"=>20));
$row->AddViewField("NAME", '<a href="rubric_edit.php?ID='.$f_ID.'&lang='.LANG.'">'.$f_NAME.'</a>');
// параметр LID будет редактироваться в виде выпадающего списка языков
$row->AddEditField("LID", CLang::SelectBox("LID", $f_LID));
// параметр SORT будет редактироваться текстом
$row->AddInputField("SORT", array("size"=>20));
// флаги ACTIVE и VISIBLE будут редактироваться чекбоксами
$row->AddCheckField("ACTIVE");
$row->AddCheckField("VISIBLE");
// параметр AUTO будет отображаться в виде "Да" или "Нет", полужирным при редактировании
$row->AddViewField("AUTO", $f_AUTO=="Y"?GetMessage("POST_U_YES"):GetMessage("POST_U_NO"));
$row->AddEditField("AUTO", "<b>".($f_AUTO=="Y"?GetMessage("POST_U_YES"):GetMessage("POST_U_NO"))."</b>");
// сформируем контекстное меню
$arActions = Array();
// редактирование элемента
$arActions[] = array(
"ICON"=>"edit",
"DEFAULT"=>true,
"TEXT"=>GetMessage("rub_edit"),
"ACTION"=>$lAdmin->ActionRedirect("rubric_edit.php?ID=".$f_ID)
);
// удаление элемента
if ($POST_RIGHT>="W")
$arActions[] = array(
"ICON"=>"delete",
"TEXT"=>GetMessage("rub_del"),
"ACTION"=>"if(confirm('".GetMessage('rub_del_conf')."')) ".$lAdmin->ActionDoGroup($f_ID, "delete")
);
// вставим разделитель
$arActions[] = array("SEPARATOR"=>true);
// проверка шаблона для автогенерируемых рассылок
if (strlen($f_TEMPLATE)>0 && $f_AUTO=="Y")
$arActions[] = array(
"ICON"=>"",
"TEXT"=>GetMessage("rub_check"),
"ACTION"=>$lAdmin->ActionRedirect("template_test.php?ID=".$f_ID)
);
// если последний элемент - разделитель, почистим мусор.
if(is_set($arActions[count($arActions)-1], "SEPARATOR"))
unset($arActions[count($arActions)-1]);
// применим контекстное меню к строке
$row->AddActions($arActions);
endwhile;
© «Битрикс», 2001-2025, «1С-Битрикс», 2025