1c-bitrix / development / php · 18.10.2010

Вывод в заголовок диапазона элементов [c 10 по 20]

Задача, вывести в пагинацию и в заголовок диапазон в котором находится пользователь в текущий момент т.е.  в конец добавлять текущую позицию в списке,  список [c 10 по 20]

Вот наброски кода который решает эту задачу $rs_Element объект типа arResult

if(is_array($ar_Navigatonparams))
{
    $ar_NavParams = array(
        'NavPageNomer'    => $rs_Element->NavPageNomer,
        'NavPageSize'     => $rs_Element->NavPageSize,
        'NavRecordCount'  => $rs_Element->NavRecordCount,
        'nEndPage'        => $rs_Element->nEndPage
    );

    function navigationIntervalList($ar_NavParams)
    {
        if(isset($_REQUEST['PAGEN_1']) && intval($_REQUEST['PAGEN_1']) > 0)
        {
            if(intval($ar_NavParams['NavPageNomer'])  > 1)
            {
                $_s = ($ar_NavParams['NavPageNomer'] * $ar_NavParams['NavPageSize']) - $ar_NavParams['NavPageSize'] + 1;
                $_p = $ar_NavParams['NavPageNomer'] * $ar_NavParams['NavPageSize'];

                if($ar_NavParams['nEndPage'] == $ar_NavParams['NavPageNomer'])
                    $_p = $ar_NavParams['NavRecordCount'];

                return 'список с '.$_s.' по '.$_p;
            }
        }
    }

    $s_nav = navigationIntervalList($ar_NavParams);
    $s_Nav = (!empty($s_nav)) ? ' / '.$s_nav : '';
    $s_Tit = (!empty($s_nav)) ? ', '.$s_nav : '';

    $APPLICATION->AddChainItem($s_TitleNavchain.$s_Nav);
    $APPLICATION->SetTitle($s_TitleNavchain.$s_Tit);
}