initial support for setting verbosity

This commit is contained in:
Uwe Steinmann 2022-07-28 21:11:29 +02:00
parent b3cb5de21f
commit 507d47869f

View File

@ -12,7 +12,7 @@ function usage() { /* {{{ */
echo " seeddms-indexer [-h] [-v] [-c] [--config <file>]".PHP_EOL;
echo PHP_EOL;
echo "Description:".PHP_EOL;
echo " This program recreates the full text index of SeedDMS.".PHP_EOL;
echo " This program recreates or updates the full text index of SeedDMS.".PHP_EOL;
echo PHP_EOL;
echo "Options:".PHP_EOL;
echo " -h, --help: print usage information and exit.".PHP_EOL;
@ -42,6 +42,10 @@ if(isset($options['v']) || isset($options['verѕion'])) {
exit(0);
}
$config['log'] = true;
$config['verbosity'] = 3;
$config['stats'] = true;
/* Set alternative config file */
if(isset($options['config'])) {
define('SEEDDMS_CONFIG_FILE', $options['config']);
@ -56,20 +60,21 @@ if(isset($options['c'])) {
}
include($myincpath."/inc/inc.Settings.php");
if(empty($options['no-log']))
if(empty($options['no-log'])) {
$config['log'] = false;
include($myincpath."/inc/inc.LogInit.php");
}
include($myincpath."/inc/inc.Init.php");
include($myincpath."/inc/inc.Extension.php");
include($myincpath."/inc/inc.DBInit.php");
function tree($dms, $fulltextservice, $folder, $indent='', $numdocs) { /* {{{ */
global $settings, $themes, $stats;
global $settings, $themes, $config, $stats;
$index = $fulltextservice->Indexer();
$lucenesearch = $fulltextservice->Search();
// echo $themes->black($indent."D ".$folder->getName()).PHP_EOL;
echo $themes->black($indent."D ".$folder->getId().":".$folder->getName()." ");
$prefix = $themes->black(($config['verbosity'] >= 3 ? $indent : '')."D ".$folder->getId().":".$folder->getName()." ");
if(($numdocs == 0) || !($hit = $lucenesearch->getFolder($folder->getId()))) {
try {
$idoc = $fulltextservice->IndexedDocument($folder, true);
@ -81,10 +86,10 @@ function tree($dms, $fulltextservice, $folder, $indent='', $numdocs) { /* {{{ */
}
}
$index->addDocument($idoc);
echo $themes->green(" (Folder added)").PHP_EOL;
echo $prefix.$themes->green(" (Folder added)").PHP_EOL;
$stats['folder']['add']++;
} catch(Exception $e) {
echo $themes->error(" (Timeout)").PHP_EOL;
echo $prefix.$themes->error(" (Timeout)").PHP_EOL;
}
} else {
try {
@ -93,7 +98,8 @@ function tree($dms, $fulltextservice, $folder, $indent='', $numdocs) { /* {{{ */
$created = 0;
}
if($created >= $folder->getDate()) {
echo $themes->italic(" (Folder unchanged)").PHP_EOL;
if($config['verbosity'] >= 3)
echo $prefix.$themes->italic(" (Folder unchanged)").PHP_EOL;
$stats['folder']['unchanged']++;
} else {
$index->delete($hit->id);
@ -107,10 +113,10 @@ function tree($dms, $fulltextservice, $folder, $indent='', $numdocs) { /* {{{ */
}
}
$index->addDocument($idoc);
echo $themes->green(" (Folder updated)").PHP_EOL;
echo $prefix.$themes->green(" (Folder updated)").PHP_EOL;
$stats['folder']['update']++;
} catch(Exception $e) {
echo $themes->error(" (Timeout)").PHP_EOL;
echo $prefix.$themes->error(" (Timeout)").PHP_EOL;
}
}
}
@ -122,7 +128,7 @@ function tree($dms, $fulltextservice, $folder, $indent='', $numdocs) { /* {{{ */
$documents = $folder->getDocuments();
foreach($documents as $document) {
echo $themes->black($indent." ".$document->getId().":".$document->getName()." ");
$prefix = $themes->black(($config['verbosity'] >= 3 ? $indent : '')." ".$document->getId().":".$document->getName()." ");
if(($numdocs == 0) || !($hit = $lucenesearch->getDocument($document->getId()))) {
try {
$idoc = $fulltextservice->IndexedDocument($document, true);
@ -134,10 +140,10 @@ function tree($dms, $fulltextservice, $folder, $indent='', $numdocs) { /* {{{ */
}
}
$index->addDocument($idoc);
echo $themes->green(" (Document added)").PHP_EOL;
echo $prefix.$themes->green(" (Document added)").PHP_EOL;
$stats['document']['add']++;
} catch(Exception $e) {
echo $themes->error(" (Timeout)").PHP_EOL;
echo $prefix.$themes->error(" (Timeout)").PHP_EOL;
}
} else {
try {
@ -147,7 +153,8 @@ function tree($dms, $fulltextservice, $folder, $indent='', $numdocs) { /* {{{ */
}
$content = $document->getLatestContent();
if($created >= $content->getDate()) {
echo $themes->italic(" (Document unchanged)").PHP_EOL;
if($config['verbosity'] >= 3)
echo $prefix.$themes->italic(" (Document unchanged)").PHP_EOL;
$stats['document']['unchanged']++;
} else {
$index->delete($hit->id);
@ -161,10 +168,10 @@ function tree($dms, $fulltextservice, $folder, $indent='', $numdocs) { /* {{{ */
}
}
$index->addDocument($idoc);
echo $themes->green(" (Document updated)").PHP_EOL;
echo $prefix.$themes->green(" (Document updated)").PHP_EOL;
$stats['document']['update']++;
} catch(Exception $e) {
echo $themes->error(" (Timeout)").PHP_EOL;
echo $prefix.$themes->error(" (Timeout)").PHP_EOL;
}
}
}