Документация для разработчиков
Темная тема

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-2021, «1С-Битрикс», 2021
Наверх