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

Revision: 73621
Author:   tomasz
Date:     2010-09-23 18:34:07 +0000 (Thu, 23 Sep 2010)

Log Message:
-----------
Syncing to head at r73620

Modified Paths:
--------------
    branches/wmf/1.16wmf4/extensions/VariablePage/VariablePage.body.php
    branches/wmf/1.16wmf4/extensions/VariablePage/VariablePage.i18n.php
    branches/wmf/1.16wmf4/extensions/VariablePage/VariablePage.php

Property Changed:
----------------
    branches/wmf/1.16wmf4/extensions/VariablePage/


Property changes on: branches/wmf/1.16wmf4/extensions/VariablePage
___________________________________________________________________
Modified: svn:mergeinfo
   - /branches/wmf-deployment/extensions/VariablePage:60970
/trunk/extensions/VariablePage:72938-73122,73134-73142,73145-73148
/trunk/extensions/VariablePage/VariablePage:72939-72940
/trunk/phase3/extensions/VariablePage:63545-63546,63549,63643,63764,63897-63901,64113,64509,65387,65391,65555,65590,65650,65816
   + /branches/wmf-deployment/extensions/VariablePage:60970
/trunk/extensions/VariablePage:72938-73122,73134-73142,73145-73148,73150-73620
/trunk/extensions/VariablePage/VariablePage:72939-72940
/trunk/phase3/extensions/VariablePage:63545-63546,63549,63643,63764,63897-63901,64113,64509,65387,65391,65555,65590,65650,65816

Modified: branches/wmf/1.16wmf4/extensions/VariablePage/VariablePage.body.php
===================================================================
--- branches/wmf/1.16wmf4/extensions/VariablePage/VariablePage.body.php 
2010-09-23 18:27:06 UTC (rev 73620)
+++ branches/wmf/1.16wmf4/extensions/VariablePage/VariablePage.body.php 
2010-09-23 18:34:07 UTC (rev 73621)
@@ -13,24 +13,24 @@
 
        public function execute() {
                global $wgOut, $wgRequest;
-               global $wgVariablePagePossibilities, $wgVariablePageUtmMedium;
+               global $wgVariablePagePossibilities;
 
                $lang = ( preg_match( '/^[A-Za-z-]+$/', $wgRequest->getVal( 
'lang' ) ) ) ? $wgRequest->getVal( 'lang' ) : 'en' ;
                $utm_source = $wgRequest->getVal( 'utm_source' );
-               $utm_medium = ( strlen($wgVariablePageUtmMedium )) ? 
$wgVariablePageUtmMedium : $wgRequest->getVal( 'utm_medium' );
+               $utm_medium = $wgRequest->getVal( 'utm_medium' );
                $utm_campaign = $wgRequest->getVal( 'utm_campaign' );
-               $referrer = $wgRequest->getHeader( 'referrer' );
+               $referrer = ( $wgRequest->getVal( 'referrer' )) ? 
$wgRequest->getVal( 'referrer' ) : $wgRequest->getHeader( 'referer' );
        
                $query = array();
                if ( strlen( $lang ) ) $query[ 'language' ] = $lang;
-               if ( strlen( $utm_source )) $query[ 'utm_source' ] = 
$utm_source;
-               if ( strlen( $utm_medium )) $query[ 'utm_medium' ] = 
$utm_medium;
-               if ( strlen( $utm_campaign )) $query[ 'utm_campaign' ] = 
$utm_campaign;
-               if ( strlen( $referrer )) $query[ 'referrer' ] = $referrer;
+               if ( strlen( $utm_source ) ) $query[ 'utm_source' ] = 
$utm_source;
+               if ( strlen( $utm_medium ) ) $query[ 'utm_medium' ] = 
$utm_medium;
+               if ( strlen( $utm_campaign ) ) $query[ 'utm_campaign' ] = 
$utm_campaign;
+               if ( strlen( $referrer ) ) $query[ 'referrer' ] = $referrer;
 
                // determine the URL to which we will redirect the user
                $url = $this->determinePage( $wgVariablePagePossibilities );
-               $wgOut->redirect( wfAppendQuery( $url, $query ));
+               $wgOut->redirect( wfAppendQuery( $url, $query ) );
        }
 
        /**
@@ -80,10 +80,10 @@
                        $total_probability += $probability;
                }
 
-               if ( $total_probability != 100 && !strlen( 
$wgVariablePageDefault )) {
-                       return FALSE;
+               if ( $total_probability != 100 && !strlen( 
$wgVariablePageDefault ) ) {
+                       return false;
                } else {
-                       return TRUE;
+                       return true;
                }
        }
 }

Modified: branches/wmf/1.16wmf4/extensions/VariablePage/VariablePage.i18n.php
===================================================================
--- branches/wmf/1.16wmf4/extensions/VariablePage/VariablePage.i18n.php 
2010-09-23 18:27:06 UTC (rev 73620)
+++ branches/wmf/1.16wmf4/extensions/VariablePage/VariablePage.i18n.php 
2010-09-23 18:34:07 UTC (rev 73621)
@@ -13,8 +13,9 @@
  * @author Arthur Richards
  */
 $messages['en'] = array(
+       'variablepage' => 'VariablePage',
+       'variablepage-navlink_text' => 'Donate',
        'variablepage-desc' => 'Lightweight variable page redirection',
-       'variablepage-randomurl' => 'Special:VariablePage',
 );
 
 /** Bosnian (Bosanski)
@@ -31,6 +32,13 @@
        'variablepage-desc' => 'Ermöglicht ressourcenschonende variable 
Weiterleitungen von Wikiseiten',
 );
 
+/** French (Français)
+ * @author Peter17
+ */
+$messages['fr'] = array(
+       'variablepage-desc' => 'Redirection de page légère et variable',
+);
+
 /** Galician (Galego)
  * @author Toliño
  */
@@ -38,6 +46,13 @@
        'variablepage-desc' => 'Redirección lixeira de páxina variable',
 );
 
+/** Swiss German (Alemannisch)
+ * @author Als-Holder
+ */
+$messages['gsw'] = array(
+       'variablepage-desc' => 'Lychti variabli Wyterleitige',
+);
+
 /** Interlingua (Interlingua)
  * @author McDutchie
  */
@@ -45,6 +60,20 @@
        'variablepage-desc' => 'Redirection variabile de paginas sin 
consumption excessive de ressources',
 );
 
+/** Japanese (日本語)
+ * @author 青子守歌
+ */
+$messages['ja'] = array(
+       'variablepage-desc' => '軽い可変ページのリダイレクト',
+);
+
+/** Colognian (Ripoarisch)
+ * @author Purodha
+ */
+$messages['ksh'] = array(
+       'variablepage-desc' => 'Ein eijfache Ömleidung op ongerscheidlijje 
Sigge.',
+);
+
 /** Luxembourgish (Lëtzebuergesch)
  * @author Robby
  */
@@ -66,6 +95,13 @@
        'variablepage-desc' => "Lichtgewicht variabele doorverwijzing voor 
pagina's",
 );
 
+/** Polish (Polski)
+ * @author Sp5uhe
+ */
+$messages['pl'] = array(
+       'variablepage-desc' => 'Prosta strona przekierowująca losowo',
+);
+
 /** Piedmontese (Piemontèis)
  * @author Dragonòt
  */
@@ -94,3 +130,10 @@
        'variablepage-desc' => 'Простое перенаправление на различные страницы',
 );
 
+/** Tagalog (Tagalog)
+ * @author AnakngAraw
+ */
+$messages['tl'] = array(
+       'variablepage-desc' => 'Magaang na pabagubaong muling pagiiba ng 
pupuntahan ng pahina',
+);
+

Modified: branches/wmf/1.16wmf4/extensions/VariablePage/VariablePage.php
===================================================================
--- branches/wmf/1.16wmf4/extensions/VariablePage/VariablePage.php      
2010-09-23 18:27:06 UTC (rev 73620)
+++ branches/wmf/1.16wmf4/extensions/VariablePage/VariablePage.php      
2010-09-23 18:34:07 UTC (rev 73621)
@@ -34,29 +34,58 @@
  *                     'http://foo.com/bar' => 90,
  *             );
  */
-$wgVariablePagePossibilities = array(
-       'http://wikimediafoundation.org/wiki/Support_Wikipedia' => 100
-);
+$wgVariablePagePossibilities = array();
 
 /**
- * You may set a custom utm_medium to be used for pages reached via 
VariablePage
- *
- * This can be set to whatever string you wish to use for utm_medium
- */
-$wgVariablePageUtmMedium = '';
-
-/**
  * The default URL to send a user to in the event that one of the URLs in 
  * $wgVariablePagePossibilities not selected.
  *
  * Either this must be set or the probabilities in $wgVariablePagePossibiliites
  * must add up to 100.
  */
-$wgVariablePageDefault = '';
+$wgVariablePageDefault = 
'http://wikimediafoundation.org/wiki/Support_Wikipedia';
 
+/** 
+ * If this is set to TRUE, a sidebar nav link to Special:VariablePage will be 
displayed
+ */
+$wgVariablePageShowSidebarLink = false;
+
+/**
+ * If you need to add a query to the sidebar nav link, set them with this.
+ *
+ * array( $key => $value ) will become ?key=value
+ */
+$wgVariablePageSidebarLinkQuery = array();
+
+/**
+ * Edit the sidebar navigation
+ */
+$wgHooks['SkinBuildSidebar'][] = 'efVariablePageSidebarLink';
+
 $dir = dirname( __FILE__ ) . '/';
 
 $wgAutoloadClasses[ 'SpecialVariablePage' ] = $dir . 'VariablePage.body.php';
 $wgExtensionMessagesFiles[ 'VariablePage' ] = $dir . 'VariablePage.i18n.php';
 $wgSpecialPages[ 'VariablePage' ] = 'SpecialVariablePage';
 $wgSpecialPageGroups[ 'VariablePage' ] = 'contribution';
+
+/**
+ * Place a link to Special:VariablePage in the navigation sidebar
+ * @return bool
+ */
+function efVariablePageSidebarLink( $skin, &$bar ) {
+       global $wgVariablePageShowSidebarLink, $wgVariablePageSidebarLinkQuery;
+
+       // make sure that we should be showing a sidebar link
+       if ( $wgVariablePageShowSidebarLink ) {
+               $url = Title::makeTitle( NS_SPECIAL, wfMsg( 'variablepage' ) 
)->getLocalUrl();
+               $bar['navigation'][] = array(
+                       'text' => wfMsg( 'variablepage-navlink_text' ),
+                       'href' => wfAppendQuery( $url, 
$wgVariablePageSidebarLinkQuery ),
+                       'id' => 'n-variablepage',
+                       'active' => true,
+               );
+       }
+
+       return true;
+}



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

Reply via email to