} //Anyone can build own pages list $rsHandlers = GetModuleEvents("wiki", "OnCategoryPagesListCreate"); while ($arHandler = $rsHandlers->Fetch()) { if ($handlRes = ExecuteModuleEventEx($arHandler, array($arParams['ELEMENT_NAME'], $arParams['IBLOCK_ID']))) { $rsPagesElement = $handlRes; break; } } if (isset($rsPagesElement) && $rsPagesElement) { $arResult['PAGES'] = array(); $arPageNameExists = array(); $rsPagesElement->NavStart($arParams['PAGES_COUNT'], false); $arResult['DB_LIST'] =& $rsPagesElement; while ($arPage = $rsPagesElement->GetNext()) { $sname = $arPage['NAME']; if (CWikiUtils::CheckServicePage($arPage['NAME'], $sname)) { continue; } $arResult['PAGES'][$arPage['NAME']] = array('TITLE' => $arPage['NAME'], 'NAME' => $sname, 'IS_RED' => $arPage['ACTIVE'] == 'Y' ? 'N' : 'Y', 'LINK' => CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_POST'], array('wiki_name' => urlencode($arPage['NAME']), 'group_id' => CWikiSocnet::$iSocNetId))); } $arResult['COLUMNS_COUNT'] = empty($arParams['COLUMNS_COUNT']) ? 1 : $arParams['COLUMNS_COUNT']; $arResult['PAGES_COUNT'] = empty($arParams['PAGES_COUNT']) ? 1 : $arParams['PAGES_COUNT']; } else { $arResult['COLUMNS_COUNT'] = 1; $arResult['PAGES_COUNT'] = 1; } } $this->IncludeComponentTemplate(); } unset($GLOBALS['arParams']);
$arResult['VERSION']['CANCEL_LINK'] = CHTTP::urlAddParams(CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_HISTORY'], array('wiki_name' => urlencode($arParams['ELEMENT_NAME']), 'group_id' => CWikiSocnet::$iSocNetId)), $arHp); } } $CACHE_MANAGER->StartTagCache($this->GetCachePath()); $CACHE_MANAGER->RegisterTag('wiki_' . $arParams['ELEMENT_ID']); $CACHE_MANAGER->EndTagCache(); /*$arPages = array('article'); if (isset($arResult['WIKI_oper']) && $arResult['WIKI_oper'] == 'add') $arPages[] = 'add'; $arResult['TOPLINKS'] = CWikiUtils::getRightsLinks($arPages, $arParams);*/ $arCat = array(); $CWikiParser = new CWikiParser(); if ($arResult['REDIRECTED_FROM'] && CWikiUtils::IsWriteable()) { $redirUrl = CHTTP::urlAddParams(CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_POST_EDIT'], array('wiki_name' => urlencode($arResult['REDIRECTED_FROM']), 'group_id' => CWikiSocnet::$iSocNetId)), $arParams['IN_COMPLEX'] == 'Y' && $arParams['SEF_MODE'] == 'N' ? array($arParams['OPER_VAR'] => $arResult['WIKI_oper']) : array()); $redirUrl = (CMain::IsHTTPS() ? "https://" : "http://") . $_SERVER["HTTP_HOST"] . $redirUrl; $arResult['ELEMENT']['~DETAIL_TEXT'] = GetMessage("WIKI_REDIRECT_FROM") . "[" . $redirUrl . " " . $arResult['REDIRECTED_FROM'] . "]<br><br>" . $arResult['ELEMENT']['~DETAIL_TEXT']; } $arResult['ELEMENT']['DETAIL_TEXT'] = $CWikiParser->parseBeforeSave($arResult['ELEMENT']['~DETAIL_TEXT'], $arCat, $arParams["NAME_TEMPLATE"]); $arResult['ELEMENT']['DETAIL_TEXT'] = $CWikiParser->Parse($arResult['ELEMENT']['DETAIL_TEXT'], $arResult['ELEMENT']['DETAIL_TEXT_TYPE'], $arResult['ELEMENT']['IMAGES']); $arResult['ELEMENT']['DETAIL_TEXT'] = $CWikiParser->Clear($arResult['ELEMENT']['DETAIL_TEXT']); $SERVICE_PAGE_NAME = ''; $arResult['SERVICE_PAGE'] = CWikiUtils::CheckServicePage($arParams['ELEMENT_NAME'], $SERVICE_PAGE_NAME); if ($arResult['SERVICE_PAGE'] == 'category') { $this->AbortResultCache(); } $this->IncludeComponentTemplate(); } $arParams = $_arParams; include_once $_SERVER['DOCUMENT_ROOT'] . '/bitrix/components/bitrix/wiki/include/nav.php'; unset($GLOBALS['arParams']); return $arResult['ELEMENT']['ID'];