* Use getDbkey(), not getTitle(), when constructing new titles
* Don't bother checking for existence of a user page on go; with the
namespace prefix it's pretty clear what's meant, and the inconsistent
behavior would be more confusing than illuminating.
'Go' button, if an IP address is entered the search engine first checks if an
article by that name exists, otherwise it goes to the user contributions list
of that search engine ( this would catch en.wp.org/wiki/127.0.0.1 ), also,
entering a valid username with the current namespace-3 + : prefix will go to
the users page, regardless of whether it contains any text or not.
* It hard-codes the English string "user", and doesn't allow localized user namespaces.
* Title::makeTitle doesn't perform validity checks as it's meant mainly for data pulled from the database which has been
previously screened. Use Title::makeTitleSafe().
* The ereg_replace is a bit odd. Trimming of stray whitespace from the search term should be done at the top end in
SpecialSearch.php, not down there.
* Removed 'fuzzy title search', it's not been maintained and generally produces unexpected and unwanted results
* Separated search guts (in SearchEngine) from display/control (in SpecialSearch)
* Extracted MySQL3 and MySQL4 variants to subclasses
* Added PHPUnit tests for MySQL3 and MySQL4 search engines, which try to use temporary tables to fiddle in (if configured)
* comments n stuff
Renamed member vars to fooBar style, use $this->rawText more consistently.
Separated matching parts of goResult() out.
More redundant bits purged.
Switching some messages to wikitext.
Death to <font> tags!
[ 961069 ] BUG and FIX: search doesn't work with some UTF-8 chars
Moves the strtolower() on the input search terms into Language::stripForSearch()
where the correct version already exists for LanguageUtf8.
length. UTF-8 version ensures that only whole characters are included.
Fix for: [ 1001502 ] Search preview splits up multi-byte UTF-8 characters
Todo: [ 855680 ] Broken UTF-8 cutoff breaks display in some browsers
* DB_WRITE now called DB_MASTER, DB_READ now called DB_SLAVE
* Converted to use SQL wrapper functions instead of direct SQL in various places
* Experimental method for preserving the chronological order of events when slave servers are used. Untested.
* Fixes to the new post-parse existence test feature
* Some.. other stuff
the bug that searches get displayed with properties of the main page
(particularly bad in MonoBook). Also cleared up notices in Power Search
from improper use of $_REQUEST.
practical, clear methods:
Title::getLocalURL() - "/wiki/index.php/Foobar" or "/wiki/index.php?title=Foobar&action=edit"
Title::getFullUrl() - ditto with $wgServer on the front
Title::getInternalUrl() - ditto with $wgInternalServer on the front (for some squid-related functions)
Title::escapeLocalUrl() - local URL escaped for HTML output
Title::escapeFullUrl() - full URL escaped for HTML output
All take an optional query parameter.
Title::getURL(), wfFullUrl() and wfFullUrlE() are now officially
deprecated and will result in instant death. wfLocalUrl() and wfLocalUrlE()
will be killed shortly; they are still used in the language files.
* Converted many instances of globals from the query to $_REQUEST
* Renamed near-useless Title::getURL() to Title::getPartialURL()
* Created new Title::getURL(), to replace wfLocalUrl, wfLocalUrlE, wfFullUrl and wfFullUrlE. Replaced most instances throughout the code
* In Parser.php, generalised stripping of <nowiki>, <pre> and <math> to allow more general use such as nesting
* Moved body of Article::preSaveTransform to Parser.php
* Put lots of comments in Title.php