From 6d5d1a7703d350d2dde766f5c93eb8c148b42e80 Mon Sep 17 00:00:00 2001 From: Uwe Steinmann Date: Mon, 30 May 2022 13:07:30 +0200 Subject: [PATCH] check if IndexedDocument() set error msg, call right hook after indexing document --- inc/inc.Tasks.php | 34 ++++++++++++++++++++++------------ 1 file changed, 22 insertions(+), 12 deletions(-) diff --git a/inc/inc.Tasks.php b/inc/inc.Tasks.php index c3cf13ca0..9d8868465 100644 --- a/inc/inc.Tasks.php +++ b/inc/inc.Tasks.php @@ -139,15 +139,20 @@ class SeedDMS_Task_Indexer_Process_Folder { /* {{{ */ if(($this->numdocs == 0) || !($hit = $lucenesearch->getFolder($folder->getId()))) { try { $idoc = $this->fulltextservice->IndexedDocument($folder, true); - if(isset($GLOBALS['SEEDDMS_HOOKS']['indexFolder'])) { - foreach($GLOBALS['SEEDDMS_HOOKS']['indexFolder'] as $hookObj) { - if (method_exists($hookObj, 'preIndexFolder')) { - $hookObj->preIndexDocument(null, $folder, $idoc); + $error = $idoc->getErrorMsg(); + if(!$error) { + if(isset($GLOBALS['SEEDDMS_HOOKS']['indexFolder'])) { + foreach($GLOBALS['SEEDDMS_HOOKS']['indexFolder'] as $hookObj) { + if (method_exists($hookObj, 'preIndexFolder')) { + $hookObj->preIndexDocument(null, $folder, $idoc); + } } } + $this->fulltextservice->Indexer()->addDocument($idoc); + echo "(".getMLText('index_folder_added').")".PHP_EOL; + } else { + echo "(".$error.")".PHP_EOL; } - $this->fulltextservice->Indexer()->addDocument($idoc); - echo "(".getMLText('index_folder_added').")".PHP_EOL; } catch(Exception $e) { echo "(Timeout)".PHP_EOL; } @@ -168,15 +173,20 @@ class SeedDMS_Task_Indexer_Process_Folder { /* {{{ */ $this->fulltextservice->Indexer()->delete($hit->id); try { $idoc = $this->fulltextservice->IndexedDocument($folder, true); - if(isset($GLOBALS['SEEDDMS_HOOKS']['indexFolder'])) { - foreach($GLOBALS['SEEDDMS_HOOKS']['indexFolder'] as $hookObj) { - if (method_exists($hookObj, 'preIndexFolder')) { - $hookObj->preIndexDocument(null, $folder, $idoc); + $error = $idoc->getErrorMsg(); + if(!$error) { + if(isset($GLOBALS['SEEDDMS_HOOKS']['indexDocument'])) { + foreach($GLOBALS['SEEDDMS_HOOKS']['indexDocument'] as $hookObj) { + if (method_exists($hookObj, 'preIndexDocument')) { + $hookObj->preIndexDocument(null, $folder, $idoc); + } } } + $this->fulltextservice->Indexer()->addDocument($idoc); + echo "(".getMLText('index_folder_updated').")".PHP_EOL; + } else { + echo "(".$error.")".PHP_EOL; } - $this->fulltextservice->Indexer()->addDocument($idoc); - echo "(".getMLText('index_folder_updated').")".PHP_EOL; } catch(Exception $e) { echo "(Timeout)".PHP_EOL; }