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

Revision: 89673
Author:   krinkle
Date:     2011-06-07 18:47:45 +0000 (Tue, 07 Jun 2011)
Log Message:
-----------
Adding 'articlefeedback-disable-preference' to preferences panel under 
'Appearance / options'
* (bug 29173) Create a preference to turn the Article feedback widget off

Modified Paths:
--------------
    trunk/extensions/ArticleFeedback/ArticleFeedback.hooks.php
    trunk/extensions/ArticleFeedback/ArticleFeedback.i18n.php
    trunk/extensions/ArticleFeedback/ArticleFeedback.php
    
trunk/extensions/ArticleFeedback/modules/ext.articleFeedback/ext.articleFeedback.startup.js

Modified: trunk/extensions/ArticleFeedback/ArticleFeedback.hooks.php
===================================================================
--- trunk/extensions/ArticleFeedback/ArticleFeedback.hooks.php  2011-06-07 
18:45:20 UTC (rev 89672)
+++ trunk/extensions/ArticleFeedback/ArticleFeedback.hooks.php  2011-06-07 
18:47:45 UTC (rev 89673)
@@ -287,4 +287,18 @@
                $vars['wgArticleFeedbackNamespaces'] = 
$wgArticleFeedbackNamespaces;
                return true;
        }
+       
+       /**
+        * Add the preference in the user preferences with the GetPreferences 
hook.
+        * @param $user User
+        * @param $preferences
+        */
+       public static function getPreferences( $user, &$preferences ) {
+               $preferences['articlefeedback-disable'] = array(
+                       'type' => 'check',
+                       'section' => 'rendering/advancedrendering',
+                       'label-message' => 'articlefeedback-disable-preference',
+               );
+               return true;
+       }
 }

Modified: trunk/extensions/ArticleFeedback/ArticleFeedback.i18n.php
===================================================================
--- trunk/extensions/ArticleFeedback/ArticleFeedback.i18n.php   2011-06-07 
18:45:20 UTC (rev 89672)
+++ trunk/extensions/ArticleFeedback/ArticleFeedback.i18n.php   2011-06-07 
18:47:45 UTC (rev 89673)
@@ -87,6 +87,8 @@
        'articleFeedback-table-heading-average' => 'Average',
        'articleFeedback-copy-above-highlow-tables' => 'This is an experimental 
feature.  Please provide feedback on the [$1 discussion page].',
        'articleFeedback-copy-below-highlow-tables' => 'These tables contain 
pages that have received at least 10 ratings within the last 24 hours.  
Averages are calculated by taking the mean of all ratings submitted within the 
last 24 hours.',
+       /* Special:Preferences */
+       'articlefeedback-disable-preference' => "Don't show the Article 
feedback widget on pages",
        /* EmailCapture */
        'articlefeedback-emailcapture-response-body' => 'Hello!
 

Modified: trunk/extensions/ArticleFeedback/ArticleFeedback.php
===================================================================
--- trunk/extensions/ArticleFeedback/ArticleFeedback.php        2011-06-07 
18:45:20 UTC (rev 89672)
+++ trunk/extensions/ArticleFeedback/ArticleFeedback.php        2011-06-07 
18:47:45 UTC (rev 89673)
@@ -144,6 +144,7 @@
        'descriptionmsg' => 'articlefeedback-desc',
        'url' => 'http://www.mediawiki.org/wiki/Extension:ArticleFeedback'
 );
+
 // Autoloading
 $dir = dirname( __FILE__ ) . '/';
 $wgAutoloadClasses['ApiQueryArticleFeedback'] = $dir . 
'api/ApiQueryArticleFeedback.php';
@@ -152,12 +153,15 @@
 $wgAutoloadClasses['SpecialArticleFeedback'] = $dir . 
'SpecialArticleFeedback.php';
 $wgExtensionMessagesFiles['ArticleFeedback'] = $dir . 
'ArticleFeedback.i18n.php';
 $wgExtensionAliasesFiles['ArticleFeedback'] = $dir . 
'ArticleFeedback.alias.php';
+
 // Hooks
 $wgHooks['LoadExtensionSchemaUpdates'][] = 
'ArticleFeedbackHooks::loadExtensionSchemaUpdates';
 $wgHooks['ParserTestTables'][] = 'ArticleFeedbackHooks::parserTestTables';
 $wgHooks['BeforePageDisplay'][] = 'ArticleFeedbackHooks::beforePageDisplay';
 $wgHooks['ResourceLoaderRegisterModules'][] = 
'ArticleFeedbackHooks::resourceLoaderRegisterModules';
 $wgHooks['ResourceLoaderGetConfigVars'][] = 
'ArticleFeedbackHooks::resourceLoaderGetConfigVars';
+$wgHooks['GetPreferences'][] = 'ArticleFeedbackHooks::getPreferences';
+
 // API Registration
 $wgAPIListModules['articlefeedback'] = 'ApiQueryArticleFeedback';
 $wgAPIModules['articlefeedback'] = 'ApiArticleFeedback';

Modified: 
trunk/extensions/ArticleFeedback/modules/ext.articleFeedback/ext.articleFeedback.startup.js
===================================================================
--- 
trunk/extensions/ArticleFeedback/modules/ext.articleFeedback/ext.articleFeedback.startup.js
 2011-06-07 18:45:20 UTC (rev 89672)
+++ 
trunk/extensions/ArticleFeedback/modules/ext.articleFeedback/ext.articleFeedback.startup.js
 2011-06-07 18:47:45 UTC (rev 89673)
@@ -13,6 +13,8 @@
                // Current revision
                && mw.util.getParamValue( 'diff' ) == null
                && mw.util.getParamValue( 'oldid' ) == null
+               // Not disabled via preferences
+               && !mw.user.options.get( 'articlefeedback-disable' )
                // Not viewing a redirect
                && mw.util.getParamValue( 'redirect' ) != 'no'
                // Not viewing the printable version


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

Reply via email to