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

NavPrint

Описание и параметры

CDBResult::NavPrint(
	string title,
	bool show_always=false,
	string StyleText="text",
	string template_path=false
)

Метод выводит ссылки для постраничной навигации. Перед использованием данного метода необходимо вызвать метод NavStart.

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

CPageOption::SetOptionString("main", "nav_page_in_session", "N");

Нестатический метод.

Параметры

ПараметрОписание С версии
titleНазвания выводимых элементов.
show_always Если "false", то метод не будет выводить навигационные ссылки если все записи умещаются на одну страницу. Если "true", то ссылки для постраничной навигации будут выводиться всегда.
Необязательный. По умолчанию - "false".
StyleText CSS класс шрифта для вывода навигационных ссылок.
Необязательный. По умолчанию "text".
3.0.19
template_path Путь к шаблону показа навигационных ссылок. Если "false", то используется шаблон по умолчанию.3.3.0

Примеры использования

<?
$rsEvents = CAdv::GetEventList($f_ID,($by="s_def"),($order="desc"), $arF, $is_filtered);
$rsEvents->NavPrint("События", false, "tablebodytext", 
"/bitrix/modules/statistic/admin/adv_navprint.php");
?>

Примеры шаблонов для навигационных ссылок

<?
echo('<font class="'.$StyleText.'">('.$title.' ');
echo(($this->NavPageNomer-1)*$this->NavPageSize+1);
echo(' - ');
if($this->NavPageNomer != $this->NavPageCount)
	echo($this->NavPageNomer * $this->NavPageSize);
else
	echo($this->NavRecordCount); 
echo(' '.GetMessage("nav_of").' ');
echo($this->NavRecordCount);
echo(")\n \n</font>");

echo('<font class="'.$StyleText.'">');

if($this->NavPageNomer > 1)
	echo('<a class="tablebodylink" href="'.$sUrlPath.'?PAGEN_'.$this->NavNum.'=1'.
	$strNavQueryString.'#nav_start'.$add_anchor.'">'.
	$sBegin.'</a> | <a class="tablebodylink" href="'.$sUrlPath.'?PAGEN_'.
	$this->NavNum.'='.($this->NavPageNomer-1).$strNavQueryString.'#nav_start'.
	$add_anchor.'">'.$sPrev.'</a>');
else
	echo($sBegin.' | '.$sPrev);

echo(' | '); 

$NavRecordGroup = $nStartPage;
while($NavRecordGroup <= $nEndPage)
{
	if($NavRecordGroup == $this->NavPageNomer) 
		echo('<b>'.$NavRecordGroup.'</b> '); 
	else
		echo('<a class="tablebodylink" href="'.$sUrlPath.'?PAGEN_'.$this->NavNum.'='.
			$NavRecordGroup.$strNavQueryString.'#nav_start'.$add_anchor.'">'.
			$NavRecordGroup.'</a> ');

	$NavRecordGroup++;
}

echo('| ');
if($this->NavPageNomer < $this->NavPageCount)
	echo ('<a class="tablebodylink" href="'.$sUrlPath.'?PAGEN_'.$this->NavNum.'='.
	($this->NavPageNomer+1).$strNavQueryString.'#nav_start'.$add_anchor.'">'.
	$sNext.'</a> | <a class="tablebodylink" href="'.$sUrlPath.'?PAGEN_'.
	$this->NavNum.'='.$this->NavPageCount.$strNavQueryString.
	'#nav_start'.$add_anchor.'">'.$sEnd.'</a> ');
else
	echo ($sNext.' | '.$sEnd.' ');

if($this->bShowAll)
	echo ($this->NavShowAll? '| <a class="tablebodylink" 
	href="'.$sUrlPath.'?SHOWALL_'.$this->NavNum.'=0'.$strNavQueryString.
	'#nav_start'.$add_anchor.'">'.$sPaged.
	'</a> ' : '| <a class="tablebodylink" href="'.$sUrlPath.'?SHOWALL_'.
	$this->NavNum.'=1'.$strNavQueryString.
	'#nav_start'.$add_anchor.'">'.$sAll.'</a> ');

echo('</font>');
?>


Пользовательские комментарии

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

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

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Наверх