set various callbacks to reindex document when it has changed

This commit is contained in:
Uwe Steinmann 2023-03-19 09:17:08 +01:00
parent ae0c641865
commit 197a6e8824

View File

@ -6,6 +6,20 @@ function getAttributesCallback($dms) {
};
}
function reindexDocumentOrFolderCallback($fulltextservice, $object) {
if($fulltextservice && ($index = $fulltextservice->Indexer())) {
$lucenesearch = $fulltextservice->Search();
if($object->isType('document'))
$hit = $lucenesearch->getDocument($object->getId());
elseif($object->isType('folder'))
$hit = $lucenesearch->getFolder($object->getId());
if($hit) {
$index->reindexDocument($hit->id);
$index->commit();
}
}
}
$fulltextservice = null;
if($settings->_enableFullSearch) {
require_once("inc.ClassFulltextService.php");
@ -62,5 +76,13 @@ if($settings->_enableFullSearch) {
if($conversionmgr)
$txtpreviewer->setConversionMgr($conversionmgr);
$fulltextservice->setPreviewer($txtpreviewer);
$dms->addCallback('onPostSetFolder', 'reindexDocumentOrFolderCallback', $fulltextservice);
$dms->addCallback('onPostSetName', 'reindexDocumentOrFolderCallback', $fulltextservice);
$dms->addCallback('onPostSetComment', 'reindexDocumentOrFolderCallback', $fulltextservice);
$dms->addCallback('onPostSetKeywords', 'reindexDocumentOrFolderCallback', $fulltextservice);
$dms->addCallback('onPostSetKategories', 'reindexDocumentOrFolderCallback', $fulltextservice);
$dms->addCallback('onPostAddKategories', 'reindexDocumentOrFolderCallback', $fulltextservice);
$dms->addCallback('onPostRemoveKategories', 'reindexDocumentOrFolderCallback', $fulltextservice);
}