diff -r dc08c70ca550 -r e2cb5f1432c8 includes/paths.php --- a/includes/paths.php Sun Dec 02 15:27:21 2007 -0500 +++ b/includes/paths.php Sun Dec 02 16:00:10 2007 -0500 @@ -118,7 +118,8 @@ eval($cmd); } - $e = $db->sql_query('SELECT name,urlname,namespace,special,visible,comments_on,protected,delvotes,delvote_ips,wiki_mode,password FROM '.table_prefix.'pages ORDER BY name;'); + $e = $db->sql_query('SELECT name,urlname,namespace,special,visible,comments_on,protected,delvotes,' . "\n" + . ' delvote_ips,wiki_mode,password FROM '.table_prefix.'pages ORDER BY name;'); if( !$e ) { $db->_die('The error seems to have occured while selecting the page information. File: includes/paths.php; line: '.__LINE__); @@ -681,17 +682,30 @@ /** * Rebuilds the search index + * @param bool If true, prints out status messages */ - function rebuild_search_index() + function rebuild_search_index($verbose = false) { global $db, $session, $paths, $template, $plugins; // Common objects $search = new Searcher(); + if ( $verbose ) + { + echo '

'; + } $texts = Array(); $textq = $db->sql_unbuffered_query($this->fetch_page_search_resource()); if(!$textq) $db->_die(''); while($row = $db->fetchrow()) { + if ( $verbose ) + { + ob_start(); + echo "Indexing page " . $this->nslist[$row['namespace']] . sanitize_page_id($row['page_id']) . "
"; + ob_flush(); + while (@ob_end_flush()); + flush(); + } if ( isset($this->nslist[$row['namespace']]) ) { $idstring = $this->nslist[$row['namespace']] . sanitize_page_id($row['page_id']); @@ -710,7 +724,19 @@ } $texts[(string)$row['page_idstring']] = $row['page_text'] . ' ' . $page['name']; } + if ( $verbose ) + { + ob_start(); + echo "Calculating word list..."; + ob_flush(); + while (@ob_end_flush()); + flush(); + } $search->buildIndex($texts); + if ( $verbose ) + { + echo '

'; + } // echo '
'.print_r($search->index, true).'
'; // return; $q = $db->sql_query('DELETE FROM '.table_prefix.'search_index');