aboutsummaryrefslogtreecommitdiffstats
path: root/includes/PageHistory.php
diff options
context:
space:
mode:
authornobody <nobody@localhost>2004-06-27 00:05:32 +0000
committernobody <nobody@localhost>2004-06-27 00:05:32 +0000
commit0c1d741ff4792d486258b390cf50cf3f9e229511 (patch)
tree55961c46b433ade0739763bee2ba3c4843d13751 /includes/PageHistory.php
parentd5c8171a3157337557bc54ecb730d7dd35778ca3 (diff)
parent1aaed5fd7c7f4d7ea7abbfc7915bab5954d60a30 (diff)
downloadmediawikicore-1.3.0beta4a.tar.gz
mediawikicore-1.3.0beta4a.zip
This commit was manufactured by cvs2svn to create tag1.3.0beta4a
'REL1_3_0beta4a'.
Diffstat (limited to 'includes/PageHistory.php')
-rw-r--r--includes/PageHistory.php32
1 files changed, 19 insertions, 13 deletions
diff --git a/includes/PageHistory.php b/includes/PageHistory.php
index 49b42f3f2a7e..3eeaa9d419fa 100644
--- a/includes/PageHistory.php
+++ b/includes/PageHistory.php
@@ -17,7 +17,7 @@ class PageHistory {
function history()
{
- global $wgUser, $wgOut, $wgLang;
+ global $wgUser, $wgOut, $wgLang, $wgIsMySQL, $wgIsPg;
# If page hasn't changed, client can cache this
@@ -54,12 +54,14 @@ class PageHistory {
$namespace = $this->mTitle->getNamespace();
$title = $this->mTitle->getText();
+ $use_index=$wgIsMySQL?"USE INDEX (name_title_timestamp)":"";
+ $oldtable=$wgIsPg?'"old"':'old';
$sql = "SELECT old_id,old_user," .
"old_comment,old_user_text,old_timestamp,old_minor_edit ".
- "FROM old USE INDEX (name_title_timestamp) " .
+ "FROM $oldtable $use_index " .
"WHERE old_namespace={$namespace} AND " .
"old_title='" . wfStrencode( $this->mTitle->getDBkey() ) . "' " .
- "ORDER BY inverse_timestamp LIMIT $rawoffset, $limitplus";
+ "ORDER BY inverse_timestamp".wfLimitResult($limitplus,$rawoffset);
$res = wfQuery( $sql, DB_READ, $fname );
$revs = wfNumRows( $res );
@@ -77,6 +79,12 @@ class PageHistory {
$this->mTitle->getPrefixedText(),
"action=history", $atend );
$s = $numbar;
+ if($this->linesonpage > 0) {
+ $submitpart1 = '<input class="historysubmit" type="submit" accesskey="'.wfMsg('accesskey-compareselectedversions').
+ '" title="'.wfMsg('tooltip-compareselectedversions').'" value="'.wfMsg('compareselectedversions').'"';
+ $this->submitbuttonhtml1 = $submitpart1 . ' />';
+ $this->submitbuttonhtml2 = $submitpart1 . ' id="historysubmit" />';
+ }
$s .= $this->beginHistoryList();
$counter = 1;
if( $offset == 0 ){
@@ -110,9 +118,10 @@ class PageHistory {
global $wgTitle;
$this->lastdate = $this->lastline = "";
$s = "\n<p>" . wfMsg( "histlegend" ).'</p>';
- $s .="\n<form id=\"pagehistory\" name=\"pagehistory\" action=\"" . $wgTitle->getFullURL("-") . "\" method=\"get\">";
- $s .= "<input type=\"hidden\" name=\"title\" value=\"".htmlspecialchars($wgTitle->getPrefixedDbKey())."\"/>\n";
- $s .= "" . "\n<ul>";
+ $s .="\n<form action=\"" . $wgTitle->escapeLocalURL( '-' ) . "\" method=\"get\">";
+ $s .= "<input type=\"hidden\" name=\"title\" value=\"".wfEscapeHTML($wgTitle->getPrefixedDbKey())."\"/>\n";
+ $s .= !empty($this->submitbuttonhtml1) ? $this->submitbuttonhtml1."\n":'';
+ $s .= "" . "\n<ul id=\"pagehistory\" >";
return $s;
}
@@ -121,11 +130,8 @@ class PageHistory {
$last = wfMsg( "last" );
$s = $skip ? "" : preg_replace( "/!OLDID![0-9]+!/", $last, $this->lastline );
- $s .= "</ul>\n";
- if( $this->linesonpage > 1) {
- $s .= '<button type="submit" accesskey="'.wfMsg('accesskey-compareselectedversions').
- '" title="'.wfMsg('tooltip-compareselectedversions').'">'.wfMsg('compareselectedversions')."</button><br/><br/>\n";
- }
+ $s .= "</ul>";
+ $s .= !empty($this->submitbuttonhtml2) ? $this->submitbuttonhtml2."\n":'';
$s .= "</form>\n";
return $s;
}
@@ -156,10 +162,10 @@ class PageHistory {
if ( 0 == $u ) {
$ul = $this->mSkin->makeKnownLink( $wgLang->specialPage( "Contributions" ),
- $ut, "target=" . $ut );
+ htmlspecialchars( $ut ), "target=" . urlencode( $ut ) );
} else {
$ul = $this->mSkin->makeLink( $wgLang->getNsText(
- Namespace::getUser() ) . ":{$ut}", $ut );
+ Namespace::getUser() ) . ":{$ut}", htmlspecialchars( $ut ) );
}
$s = "<li>";