当前位置: 首页>>代码示例>>PHP>>正文


PHP Indexer::reindexDocument方法代码示例

本文整理汇总了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;
 }
开发者ID:5haman,项目名称:knowledgetree,代码行数:87,代码来源:IndexErrors.php


注:本文中的Indexer::reindexDocument方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。