http://www.mediawiki.org/wiki/Special:Code/MediaWiki/90034

Revision: 90034
Author:   aaron
Date:     2011-06-14 04:14:17 +0000 (Tue, 14 Jun 2011)
Log Message:
-----------
Generalized flaggedrevsstable to a radio option with the added option of 
"always show draft". This was the one step getting in the way of deprecating 
$wgFlaggedRevsExceptions (see 
http://www.mediawiki.org/wiki/Pending_Changes_enwiki_trial/NovemberReleaseDesignChanges#The_Problem).

Modified Paths:
--------------
    trunk/extensions/FlaggedRevs/FlaggedRevs.php
    trunk/extensions/FlaggedRevs/FlaggedRevsDefines.php
    trunk/extensions/FlaggedRevs/presentation/FlaggedPageView.php
    trunk/extensions/FlaggedRevs/presentation/FlaggedRevsUI.hooks.php
    trunk/extensions/FlaggedRevs/presentation/language/FlaggedRevs.i18n.php

Modified: trunk/extensions/FlaggedRevs/FlaggedRevs.php
===================================================================
--- trunk/extensions/FlaggedRevs/FlaggedRevs.php        2011-06-14 03:41:36 UTC 
(rev 90033)
+++ trunk/extensions/FlaggedRevs/FlaggedRevs.php        2011-06-14 04:14:17 UTC 
(rev 90034)
@@ -359,7 +359,7 @@
 
 # New user preferences
 $wgDefaultUserOptions['flaggedrevssimpleui'] = (int)$wgSimpleFlaggedRevsUI;
-$wgDefaultUserOptions['flaggedrevsstable'] = false;
+$wgDefaultUserOptions['flaggedrevsstable'] = FR_SHOW_STABLE_DEFAULT;
 $wgDefaultUserOptions['flaggedrevseditdiffs'] = true;
 $wgDefaultUserOptions['flaggedrevsviewdiffs'] = false;
 

Modified: trunk/extensions/FlaggedRevs/FlaggedRevsDefines.php
===================================================================
--- trunk/extensions/FlaggedRevs/FlaggedRevsDefines.php 2011-06-14 03:41:36 UTC 
(rev 90033)
+++ trunk/extensions/FlaggedRevs/FlaggedRevsDefines.php 2011-06-14 04:14:17 UTC 
(rev 90034)
@@ -23,6 +23,11 @@
 define( 'FR_AUTOREVIEW_CREATION', 2 );
 define( 'FR_AUTOREVIEW_CREATION_AND_CHANGES', FR_AUTOREVIEW_CHANGES | 
FR_AUTOREVIEW_CREATION );
 
+# User preference for showing stable versions
+define( 'FR_SHOW_STABLE_DEFAULT', 0 ); // b/c with "false"
+define( 'FR_SHOW_STABLE_ALWAYS', 1 ); // b/c with "true"
+define( 'FR_SHOW_STABLE_NEVER', 2 );
+
 # Autopromote conds (F=70,R=82)
 # @TODO: move these 5 to core
 define( 'APCOND_FR_EDITSUMMARYCOUNT', 70821 );

Modified: trunk/extensions/FlaggedRevs/presentation/FlaggedPageView.php
===================================================================
--- trunk/extensions/FlaggedRevs/presentation/FlaggedPageView.php       
2011-06-14 03:41:36 UTC (rev 90033)
+++ trunk/extensions/FlaggedRevs/presentation/FlaggedPageView.php       
2011-06-14 04:14:17 UTC (rev 90034)
@@ -85,8 +85,11 @@
                        return false;
                }
                # Check user preferences ("show stable by default?")
-               if ( $wgUser->getOption( 'flaggedrevsstable' ) ) {
+               $pref = (int)$wgUser->getOption( 'flaggedrevsstable' );
+               if ( $pref == FR_SHOW_STABLE_ALWAYS ) {
                        return true;
+               } elseif ( $pref == FR_SHOW_STABLE_NEVER ) {
+                       return false;
                }
                # Viewer may be in a group that sees the draft by default
                if ( $this->userViewsDraftByDefault( $wgUser ) ) {

Modified: trunk/extensions/FlaggedRevs/presentation/FlaggedRevsUI.hooks.php
===================================================================
--- trunk/extensions/FlaggedRevs/presentation/FlaggedRevsUI.hooks.php   
2011-06-14 03:41:36 UTC (rev 90033)
+++ trunk/extensions/FlaggedRevs/presentation/FlaggedRevsUI.hooks.php   
2011-06-14 04:14:17 UTC (rev 90034)
@@ -151,9 +151,14 @@
                // Default versions...
                $preferences['flaggedrevsstable'] =
                        array(
-                               'type' => 'toggle',
+                               'type' => 'radio',
                                'section' => 'flaggedrevs/flaggedrevs-ui',
                                'label-message' => 'flaggedrevs-prefs-stable',
+                               'options' => array(
+                                       wfMsg( 'flaggedrevs-pref-stable-0' ) => 
FR_SHOW_STABLE_DEFAULT,
+                                       wfMsg( 'flaggedrevs-pref-stable-1' ) => 
FR_SHOW_STABLE_ALWAYS,
+                                       wfMsg( 'flaggedrevs-pref-stable-2' ) => 
FR_SHOW_STABLE_NEVER,
+                               ),
                        );
                // Review-related rights...
                if ( $user->isAllowed( 'review' ) ) {

Modified: 
trunk/extensions/FlaggedRevs/presentation/language/FlaggedRevs.i18n.php
===================================================================
--- trunk/extensions/FlaggedRevs/presentation/language/FlaggedRevs.i18n.php     
2011-06-14 03:41:36 UTC (rev 90033)
+++ trunk/extensions/FlaggedRevs/presentation/language/FlaggedRevs.i18n.php     
2011-06-14 04:14:17 UTC (rev 90034)
@@ -28,7 +28,10 @@
        'flaggedrevs-stable-categories' => '', # A asterix separated list of 
categories that must be reviewed; do not translate or duplicate this message to 
other languages
        'prefs-flaggedrevs'            => 'Edit review',
        'prefs-flaggedrevs-ui'         => 'Edit review',
-       'flaggedrevs-prefs-stable'     => 'Always show the stable version of 
content pages by default (if there is one)',
+       'flaggedrevs-prefs-stable'     => 'When to show the stable version of 
content pages by default',
+       'flaggedrevs-pref-stable-0'    => 'Use the default settings for each 
pages',
+       'flaggedrevs-pref-stable-1'    => 'Always show the stable version (if 
there is one)',
+       'flaggedrevs-pref-stable-2'    => 'Always show the latest version',
        'flaggedrevs-prefs-watch'      => 'Add pages I review to my watchlist',
        'flaggedrevs-prefs-editdiffs'  => 'Show the pending changes diff when 
editing pages',
        'flaggedrevs-prefs-viewdiffs'  => 'Show the pending changes diff when 
viewing the latest pending revision',


_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Reply via email to