本文整理匯總了PHP中Indexer::reindexDocument方法的典型用法代碼示例。如果您正苦於以下問題:PHP Indexer::reindexDocument方法的具體用法?PHP Indexer::reindexDocument怎麽用?PHP Indexer::reindexDocument使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Indexer
的用法示例。
在下文中一共展示了Indexer::reindexDocument方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: do_main
function do_main()
{
//Number of items on a page
$itemsPerPage = 50;
$pageNum = 1;
if (isset($_REQUEST['itemsPerPage'])) {
$itemsPerPage = $_REQUEST['itemsPerPage'];
}
//registerTypes registers the mime types and populates the needed tables.
$indexer = Indexer::get();
$indexer->registerTypes();
switch ($_REQUEST['rescheduleValue']) {
case 'reschedule':
foreach (KTUtil::arrayGet($_REQUEST, 'index_error', array()) as $sDocId => $v) {
Indexer::reindexDocument($sDocId);
}
break;
case 'remove':
foreach (KTUtil::arrayGet($_REQUEST, 'index_error', array()) as $sDocId => $v) {
Indexer::unqueueDocument($sDocId, 'Document removed from queue via admin interface. Normally this is because an indexer is not able to process the document.');
}
break;
case 'rescheduleall':
$aIndexerValues = Indexer::getIndexingQueue();
foreach ($aIndexerValues as $sDocValues) {
Indexer::reindexDocument($sDocValues['document_id']);
}
break;
case 'removeall':
$aIndexerValues = Indexer::getIndexingQueue();
foreach ($aIndexerValues as $sDocValues) {
Indexer::unqueueDocument($sDocValues['document_id'], 'Document removed from queue via admin interface. Normally this is because an indexer is not able to process the document.');
}
break;
}
$oTemplating =& KTTemplating::getSingleton();
$oTemplate =& $oTemplating->loadTemplate('ktcore/search2/reporting/indexerrors');
$aIndexerValues = Indexer::getIndexingQueue();
foreach ($aIndexerValues as $key => $doc) {
$extractor = $indexer->getExtractor($doc['extractor']);
if (is_null($extractor)) {
$doc['extractor'] = 'n/a';
continue;
}
$doc['extractor'] = $extractor->getDisplayName();
$aIndexerValues[$key] = $doc;
}
$aIndexList = array();
//creating page variables and loading the items for the current page
if (!empty($aIndexerValues)) {
$items = count($aIndexerValues);
if (fmod($items, $itemsPerPage) > 0) {
$pages = floor($items / $itemsPerPage) + 1;
} else {
$pages = $items / $itemsPerPage;
}
for ($i = 1; $i <= $pages; $i++) {
$aPages[] = $i;
}
if ($items < $itemsPerPage) {
$limit = $items - 1;
} else {
$limit = $itemsPerPage - 1;
}
if (isset($_REQUEST['pageValue'])) {
$pageNum = (int) $_REQUEST['pageValue'];
if ($pageNum > $pages) {
$pageNum = $pages;
}
$start = ($pageNum - 1) * $itemsPerPage - 1;
$limit = $start + $itemsPerPage;
for ($i = $start; $i <= $limit; $i++) {
if (isset($aIndexerValues[$i])) {
$aIndexList[] = $aIndexerValues[$i];
}
}
} else {
for ($i = 0; $i <= $limit; $i++) {
$aIndexList[] = $aIndexerValues[$i];
}
}
}
$config = KTConfig::getSingleton();
$rootUrl = $config->get('KnowledgeTree/rootUrl');
$oTemplate->setData(array('context' => $this, 'pageList' => $aPages, 'pageCount' => $pages, 'pageNum' => $pageNum, 'itemCount' => $items, 'itemsPerPage' => $itemsPerPage, 'indexErrors' => $aIndexList, 'root_url' => $rootUrl));
return $oTemplate;
}