check if IndexedDocument() set error msg, call right hook after indexing document

This commit is contained in:
Uwe Steinmann 2022-05-30 13:07:30 +02:00
parent c52abe7198
commit 6d5d1a7703

View File

@ -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;
}