Open Journal Systems  3.3.0
rebuildSearchIndex.php
1 <?php
2 
16 require(dirname(__FILE__) . '/bootstrap.inc.php');
17 
22  public function usage() {
23  echo "Script to rebuild article search index\n"
24  . "Usage: {$this->scriptName} [options] [journal_path]\n\n"
25  . "options: The standard index implementation does\n"
26  . " not support any options. For other\n"
27  . " implementations please see the corresponding\n"
28  . " plugin documentation (e.g. 'plugins/generic/\n"
29  . " lucene/README').\n";
30  }
31 
35  public function execute() {
36  // Check whether we have (optional) switches.
37  $switches = array();
38  while (count($this->argv) && substr($this->argv[0], 0, 1) == '-') {
39  $switches[] = array_shift($this->argv);
40  }
41 
42  // If we have another argument that this must be a journal path.
43  $journal = null;
44  if (count($this->argv)) {
45  $journalPath = array_shift($this->argv);
46  $journalDao = DAORegistry::getDAO('JournalDAO');
47  $journal = $journalDao->getByPath($journalPath);
48  if (!$journal) {
49  die (__('search.cli.rebuildIndex.unknownJournal', array('journalPath' => $journalPath)). "\n");
50  }
51  }
52 
53  // Register a router hook so that we can construct
54  // useful URLs to journal content.
55  HookRegistry::register('Request::getBaseUrl', array($this, 'callbackBaseUrl'));
56 
57  // Let the search implementation re-build the index.
58  $articleSearchIndex = Application::getSubmissionSearchIndex();
59  $articleSearchIndex->rebuildIndex(true, $journal, $switches);
60  }
61 
67  public function callbackBaseUrl($hookName, $params) {
68  $baseUrl =& $params[0];
69  $baseUrl = Config::getVar('general', 'base_url');
70  return true;
71  }
72 }
73 
74 $tool = new rebuildSearchIndex(isset($argv) ? $argv : array());
75 $tool->execute();
76 
CommandLineTool
Initialization code for command-line scripts.
Definition: CliTool.inc.php:44
DAORegistry\getDAO
static & getDAO($name, $dbconn=null)
Definition: DAORegistry.inc.php:57
rebuildSearchIndex
CLI tool to rebuild the article keyword search database.
Definition: rebuildSearchIndex.php:18
$tool
$tool
Definition: mergeCoverageReportTool.php:120
rebuildSearchIndex\usage
usage()
Definition: rebuildSearchIndex.php:22
rebuildSearchIndex\execute
execute()
Definition: rebuildSearchIndex.php:35
Config\getVar
static getVar($section, $key, $default=null)
Definition: Config.inc.php:35
rebuildSearchIndex\callbackBaseUrl
callbackBaseUrl($hookName, $params)
Definition: rebuildSearchIndex.php:67
HookRegistry\register
static register($hookName, $callback, $hookSequence=HOOK_SEQUENCE_NORMAL)
Definition: HookRegistry.inc.php:70
Application\getSubmissionSearchIndex
static getSubmissionSearchIndex()
Definition: Application.inc.php:169