exclude Rambot (or any other arbitrary SQL) from Special:Randompage
authorTim Starling <tstarling@users.mediawiki.org>
Sat, 10 Jul 2004 01:25:42 +0000 (01:25 +0000)
committerTim Starling <tstarling@users.mediawiki.org>
Sat, 10 Jul 2004 01:25:42 +0000 (01:25 +0000)
includes/DefaultSettings.php
includes/SpecialRandompage.php

index d4959a7..4471294 100644 (file)
@@ -432,7 +432,9 @@ $wgAllowUserJs = true;
 # Allow user Cascading Style Sheets (CSS)?
 $wgAllowUserCss = true;
 
+# Filter for Special:Randompage. Part of a WHERE clause
+$wgExtraRandompageSQL = false;
+
 # Allow the "info" action, very inefficient at the moment
 $wgAllowPageInfo = false;
-
 ?>
index bf6a7fa..c795670 100644 (file)
@@ -3,7 +3,7 @@
 
 function wfSpecialRandompage()
 {
-       global $wgOut, $wgTitle, $wgArticle, $wgIsMySQL;
+       global $wgOut, $wgTitle, $wgArticle, $wgIsMySQL, $wgExtraRandompageSQL;
        $fname = "wfSpecialRandompage";
 
        wfSeedRandom();
@@ -11,9 +11,14 @@ function wfSpecialRandompage()
        # interpolation and sprintf() can muck up with locale-specific decimal separator
        $randstr = number_format( $rand, 12, ".", "" );
        $use_index=$wgIsMySQL?"USE INDEX (cur_random)":"";
+       if ( $wgExtraRandompageSQL ) {
+               $extra = "AND ($wgExtraRandompageSQL)";
+       } else {
+               $extra = '';
+       }
        $sqlget = "SELECT cur_id,cur_title
                FROM cur $use_index
-               WHERE cur_namespace=0 AND cur_is_redirect=0
+               WHERE cur_namespace=0 AND cur_is_redirect=0 $extra
                AND cur_random>$randstr
                ORDER BY cur_random
                LIMIT 1";