if (!isset($arParams['ALBUM_ID'])) { ShowError('Album id is not defined'); return; } if (!isset($arParams['PHOTO_ID'])) { ShowError('Photo id is not defined'); return; } $arParams["ALBUM_ID"] = intval($arParams["ALBUM_ID"]); $arParams["PHOTO_ID"] = intval($arParams["PHOTO_ID"]); try { $obAuthor = new BeonoYandexFotki($arParams["AUTHOR"], $arParams['CACHE_TIME']); $arResult = $obAuthor->getAlbumPhotos($arParams["ALBUM_ID"]); $arResult['URL'] = str_replace(array('#album_id#'), array($arParams["ALBUM_ID"]), $arParams['ALBUM_URL']); if(is_array($arResult['ITEMS'])) { foreach ($arResult['ITEMS'] as $key=>$arPhoto) { $arPhoto['URL'] = str_replace(array('#album_id#', '#photo_id#'), array($arParams["ALBUM_ID"], $arPhoto['ID']), $arParams['PHOTO_URL']); $arResult['ITEMS'][$key]['URL'] = $arPhoto['URL']; if ($arResult['ITEMS'][($key+1)]['ID'] == $arParams['PHOTO_ID']) { $arResult['PREV'] = $arPhoto; } elseif ($arResult['ITEMS'][($key-1)]['ID'] == $arParams['PHOTO_ID']) { $arResult['NEXT'] = $arPhoto; } elseif ($arPhoto['ID'] == $arParams['PHOTO_ID']) { $arResult['PHOTO'] = $arPhoto; } } }
$arParams['SIZE'] = "M"; } if(!isset($arParams['ITEMS_LIMIT'])) { $arParams['ITEMS_LIMIT'] = 9; } $arNavParams = array( "nPageSize" => $arParams['ITEMS_LIMIT'], "bShowAll" => $arParams["PAGER_SHOW_ALL"], ); $arNavigation = CDBResult::GetNavParams($arNavParams); try { $obAuthor = new BeonoYandexFotki($arParams["AUTHOR"], $arParams['CACHE_TIME']); $arRawResult = $obAuthor->getAlbumPhotos($arParams["ALBUM_ID"], array('sort' => $arParams['PHOTOS_SORT'])); $arResult = $arRawResult; $arResult['ITEMS'] = array(); if (is_array($arRawResult['ITEMS'])) { $dbresult = new CDBResult; $dbresult->InitFromArray($arRawResult['ITEMS']); $dbresult->NavStart($arParams['ITEMS_LIMIT'], false); while ($arItem = $dbresult->GetNext()) { $arItem['URL'] = str_replace(array('#album_id#', '#photo_id#'), array($arParams["ALBUM_ID"], $arItem["ID"]), $arParams['PHOTO_URL']); $arResult['ITEMS'][] = $arItem; } $arResult['PAGE_NUMBER'] = $dbresult->NavPageNomer; $arResult["NAV_STRING"] = $dbresult->GetPageNavStringEx($navComponentObject, false, $arParams["PAGER_TEMPLATE"], $arParams["PAGER_SHOW_ALWAYS"]);