http://www.mediawiki.org/wiki/Special:Code/MediaWiki/89152
Revision: 89152
Author: aaron
Date: 2011-05-30 06:53:59 +0000 (Mon, 30 May 2011)
Log Message:
-----------
* Use arrays for CGI params more
* Added diffOnlyCGI() check to RC links
Modified Paths:
--------------
trunk/extensions/FlaggedRevs/dataclasses/FlaggedRevs.class.php
trunk/extensions/FlaggedRevs/presentation/FlaggedPageView.php
trunk/extensions/FlaggedRevs/presentation/FlaggedRevsLogView.php
trunk/extensions/FlaggedRevs/presentation/FlaggedRevsUI.hooks.php
trunk/extensions/FlaggedRevs/presentation/specialpages/reports/PendingChanges_body.php
trunk/extensions/FlaggedRevs/presentation/specialpages/reports/ProblemChanges_body.php
Modified: trunk/extensions/FlaggedRevs/dataclasses/FlaggedRevs.class.php
===================================================================
--- trunk/extensions/FlaggedRevs/dataclasses/FlaggedRevs.class.php
2011-05-30 06:17:27 UTC (rev 89151)
+++ trunk/extensions/FlaggedRevs/dataclasses/FlaggedRevs.class.php
2011-05-30 06:53:59 UTC (rev 89152)
@@ -393,14 +393,16 @@
/**
* Get the 'diffonly=' value for diff URLs. Either ('1','0','')
- * @return string
+ * @return array
*/
public static function diffOnlyCGI() {
$val = trim( wfMsgForContent( 'flaggedrevs-diffonly' ) );
- if ( $val === '&diffonly=1' || $val === '&diffonly=0' ) {
- return $val;
- }
- return '';
+ if ( strpos( $val, '&diffonly=1' ) !== false ) {
+ return array( 'diffonly' => 1 );
+ } elseif ( strpos( $val, '&diffonly=0' ) !== false ) {
+ return array( 'diffonly' => 0);
+ }
+ return array();
}
# ################ Permission functions #################
Modified: trunk/extensions/FlaggedRevs/presentation/FlaggedPageView.php
===================================================================
--- trunk/extensions/FlaggedRevs/presentation/FlaggedPageView.php
2011-05-30 06:17:27 UTC (rev 89151)
+++ trunk/extensions/FlaggedRevs/presentation/FlaggedPageView.php
2011-05-30 06:53:59 UTC (rev 89152)
@@ -1492,7 +1492,7 @@
$review = $wgUser->getSkin()->makeKnownLinkObj(
$article->getTitle(),
wfMsgHtml( 'review-diff2stable' ),
- 'oldid=' . $srev->getRevId() . '&diff=cur' .
FlaggedRevs::diffOnlyCGI()
+ array( 'oldid' => $srev->getRevId(), 'diff' =>
'cur' ) + FlaggedRevs::diffOnlyCGI()
);
$review = wfMsgHtml( 'parentheses', $review );
$review = "<div class='fr-diff-to-stable'
align='center'>$review</div>";
@@ -1648,21 +1648,19 @@
if ( !$frev || !$this->article->revsArePending() ) {
return true; // only for pages with pending edits
}
+ $params = array();
// If the edit was not autoreviewed, and the user can actually
make a
// new stable version, then go to the diff...
if ( $frev->userCanSetFlags( $wgUser ) ) {
- $extraQuery .= $extraQuery ? '&' : '';
- // Override diffonly setting to make sure the content
is shown
- $extraQuery .= 'oldid=' . $frev->getRevId() .
- '&diff=cur' . FlaggedRevs::diffOnlyCGI() .
'&shownotice=1';
+ $params += array( 'oldid' => $frev->getRevId(), 'diff'
=> 'cur', 'shownotice' => 1 );
+ $params += FlaggedRevs::diffOnlyCGI();
// ...otherwise, go to the draft revision after completing an
edit.
// This allows for users to immediately see their changes.
} else {
- $extraQuery .= $extraQuery ? '&' : '';
- $extraQuery .= 'stable=0';
+ $params += array( 'stable' => 0 );
// Show a notice at the top of the page for
non-reviewers...
if ( !$wgUser->isAllowed( 'review' ) &&
$this->article->isStableShownByDefault() ) {
- $extraQuery .= '&shownotice=1';
+ $params += array( 'shownotice' => 1 );
if ( $sectionAnchor ) {
// Pass a section parameter in the URL
as needed to add a link to
// the "your changes are pending" box
on the top of the page...
@@ -1670,11 +1668,12 @@
array( ':' , '.' ), array(
'%3A', '%' ), // hack: reverse encoding
substr( $sectionAnchor, 1 ) //
remove the '#'
);
- $extraQuery .= '&fromsection=' .
$section;
+ $params += array('fromsection' =>
$section );
$sectionAnchor = ''; // go to the top
of the page to see notice
}
}
}
+ $extraQuery = wfAppendQuery( $extraQuery, $params );
return true;
}
Modified: trunk/extensions/FlaggedRevs/presentation/FlaggedRevsLogView.php
===================================================================
--- trunk/extensions/FlaggedRevs/presentation/FlaggedRevsLogView.php
2011-05-30 06:17:27 UTC (rev 89151)
+++ trunk/extensions/FlaggedRevs/presentation/FlaggedRevsLogView.php
2011-05-30 06:53:59 UTC (rev 89152)
@@ -126,7 +126,7 @@
$links .= $wgUser->getSkin()->makeKnownLinkObj(
$title,
wfMsgHtml( 'review-logentry-id', $revId, $time
),
- "oldid={$revId}&diff=prev" .
FlaggedRevs::diffOnlyCGI()
+ array( 'oldid' => $revId, 'diff' => 'prev' ) +
FlaggedRevs::diffOnlyCGI()
);
$links .= ')';
}
Modified: trunk/extensions/FlaggedRevs/presentation/FlaggedRevsUI.hooks.php
===================================================================
--- trunk/extensions/FlaggedRevs/presentation/FlaggedRevsUI.hooks.php
2011-05-30 06:17:27 UTC (rev 89151)
+++ trunk/extensions/FlaggedRevs/presentation/FlaggedRevsUI.hooks.php
2011-05-30 06:53:59 UTC (rev 89152)
@@ -567,7 +567,8 @@
$title,
wfMsgHtml( 'revreview-reviewlink' ),
array( 'title' => wfMsg(
'revreview-reviewlink-title' ) ),
- array( 'oldid' => $rc->mAttribs['fp_stable'],
'diff' => 'cur' )
+ array( 'oldid' => $rc->mAttribs['fp_stable'],
'diff' => 'cur' ) +
+ FlaggedRevs::diffOnlyCGI()
);
$css = 'flaggedrevs-pending';
}
Modified:
trunk/extensions/FlaggedRevs/presentation/specialpages/reports/PendingChanges_body.php
===================================================================
---
trunk/extensions/FlaggedRevs/presentation/specialpages/reports/PendingChanges_body.php
2011-05-30 06:17:27 UTC (rev 89151)
+++
trunk/extensions/FlaggedRevs/presentation/specialpages/reports/PendingChanges_body.php
2011-05-30 06:53:59 UTC (rev 89152)
@@ -220,7 +220,8 @@
$review = $this->skin->linkKnown( $title,
wfMsg( 'pendingchanges-diff' ),
array(),
- 'diff=cur&oldid=' . (int)$row->stable .
FlaggedRevs::diffOnlyCGI() );
+ array( 'diff' => 'cur', 'oldid' => $row->stable ) +
FlaggedRevs::diffOnlyCGI()
+ );
# Show quality level if there are several
if ( FlaggedRevs::qualityVersions() ) {
$quality = $row->quality
Modified:
trunk/extensions/FlaggedRevs/presentation/specialpages/reports/ProblemChanges_body.php
===================================================================
---
trunk/extensions/FlaggedRevs/presentation/specialpages/reports/ProblemChanges_body.php
2011-05-30 06:17:27 UTC (rev 89151)
+++
trunk/extensions/FlaggedRevs/presentation/specialpages/reports/ProblemChanges_body.php
2011-05-30 06:53:59 UTC (rev 89152)
@@ -185,10 +185,11 @@
$title = Title::newFromRow( $row );
$link = $this->skin->link( $title );
- $review = $this->skin->knownLink( $title,
+ $review = $this->skin->linkKnown( $title,
wfMsg( 'pendingchanges-diff' ),
array(),
- 'diff=cur&oldid=' . (int)$row->stable .
FlaggedRevs::diffOnlyCGI() );
+ array( 'diff' => 'cur', 'oldid' => $row->stable ) +
FlaggedRevs::diffOnlyCGI()
+ );
# Show quality level if there are several
if ( FlaggedRevs::qualityVersions() ) {
$quality = $row->quality
_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs