summaryrefslogtreecommitdiff
path: root/inc/indexer.php
diff options
context:
space:
mode:
authorlisps <stummp@loewen.de>2014-03-19 08:07:16 +0100
committerlisps <stummp@loewen.de>2014-03-19 08:07:16 +0100
commite310313d794a3336d279ee09973508e794dbf08e (patch)
tree7f90b51d344f7163c6fbb109f04ff22dea5ae129 /inc/indexer.php
parentcdb5e9613f7c4b1be4515715652aca451493d5d5 (diff)
parent177ef92c4ddd38cb906dd7d5f0208c698048cd57 (diff)
downloadrpg-e310313d794a3336d279ee09973508e794dbf08e.tar.gz
rpg-e310313d794a3336d279ee09973508e794dbf08e.tar.bz2
Merge remote-tracking branch 'remotes/origin/master' into revisions_local
Diffstat (limited to 'inc/indexer.php')
-rw-r--r--inc/indexer.php21
1 files changed, 14 insertions, 7 deletions
diff --git a/inc/indexer.php b/inc/indexer.php
index 07f29b542..a167db47f 100644
--- a/inc/indexer.php
+++ b/inc/indexer.php
@@ -270,8 +270,9 @@ class Doku_Indexer {
// Special handling for titles so the index file is simpler
if (array_key_exists('title', $key)) {
$value = $key['title'];
- if (is_array($value))
+ if (is_array($value)) {
$value = $value[0];
+ }
$this->saveIndexKey('title', '', $pid, $value);
unset($key['title']);
}
@@ -299,20 +300,24 @@ class Doku_Indexer {
if ($val !== "") {
$id = array_search($val, $metawords, true);
if ($id === false) {
+ // didn't find $val, so we'll add it to the end of metawords and create a placeholder in metaidx
$id = count($metawords);
$metawords[$id] = $val;
+ $metaidx[$id] = '';
$addwords = true;
}
// test if value is already in the index
- if (isset($val_idx[$id]) && $val_idx[$id] <= 0)
+ if (isset($val_idx[$id]) && $val_idx[$id] <= 0){
$val_idx[$id] = 0;
- else // else add it
+ } else { // else add it
$val_idx[$id] = 1;
+ }
}
}
- if ($addwords)
+ if ($addwords) {
$this->saveIndex($metaname.'_w', '', $metawords);
+ }
$vals_changed = false;
foreach ($val_idx as $id => $action) {
if ($action == -1) {
@@ -1214,14 +1219,16 @@ class Doku_Indexer {
*/
protected function updateTuple($line, $id, $count) {
$newLine = $line;
- if ($newLine !== '')
+ if ($newLine !== ''){
$newLine = preg_replace('/(^|:)'.preg_quote($id,'/').'\*\d*/', '', $newLine);
+ }
$newLine = trim($newLine, ':');
if ($count) {
- if (strlen($newLine) > 0)
+ if (strlen($newLine) > 0) {
return "$id*$count:".$newLine;
- else
+ } else {
return "$id*$count".$newLine;
+ }
}
return $newLine;
}