Merged ImageFunctions.php into GlobalFunctions.php
authorAaron Schulz <aschulz@wikimedia.org>
Fri, 6 Apr 2012 23:42:39 +0000 (16:42 -0700)
committerAaron Schulz <aschulz@wikimedia.org>
Fri, 6 Apr 2012 23:43:27 +0000 (16:43 -0700)
Change-Id: I02d468f9c54a6a0448a6d99505d0201a7949855a

includes/GlobalFunctions.php
includes/ImageFunctions.php [deleted file]
includes/Setup.php

index 99570a7..517f70d 100644 (file)
@@ -3966,3 +3966,84 @@ function wfUnpack( $format, $data, $length=false ) {
        }
        return $result;
 }
+
+/**
+ * Determine if an image exists on the 'bad image list'.
+ *
+ * The format of MediaWiki:Bad_image_list is as follows:
+ *    * Only list items (lines starting with "*") are considered
+ *    * The first link on a line must be a link to a bad image
+ *    * Any subsequent links on the same line are considered to be exceptions,
+ *      i.e. articles where the image may occur inline.
+ *
+ * @param $name string the image name to check
+ * @param $contextTitle Title|bool the page on which the image occurs, if known
+ * @param $blacklist string wikitext of a file blacklist
+ * @return bool
+ */
+function wfIsBadImage( $name, $contextTitle = false, $blacklist = null ) {
+       static $badImageCache = null; // based on bad_image_list msg
+       wfProfileIn( __METHOD__ );
+
+       # Handle redirects
+       $redirectTitle = RepoGroup::singleton()->checkRedirect( Title::makeTitle( NS_FILE, $name ) );
+       if( $redirectTitle ) {
+               $name = $redirectTitle->getDbKey();
+       }
+
+       # Run the extension hook
+       $bad = false;
+       if( !wfRunHooks( 'BadImage', array( $name, &$bad ) ) ) {
+               wfProfileOut( __METHOD__ );
+               return $bad;
+       }
+
+       $cacheable = ( $blacklist === null );
+       if( $cacheable && $badImageCache !== null ) {
+               $badImages = $badImageCache;
+       } else { // cache miss
+               if ( $blacklist === null ) {
+                       $blacklist = wfMsgForContentNoTrans( 'bad_image_list' ); // site list
+               }
+               # Build the list now
+               $badImages = array();
+               $lines = explode( "\n", $blacklist );
+               foreach( $lines as $line ) {
+                       # List items only
+                       if ( substr( $line, 0, 1 ) !== '*' ) {
+                               continue;
+                       }
+
+                       # Find all links
+                       $m = array();
+                       if ( !preg_match_all( '/\[\[:?(.*?)\]\]/', $line, $m ) ) {
+                               continue;
+                       }
+
+                       $exceptions = array();
+                       $imageDBkey = false;
+                       foreach ( $m[1] as $i => $titleText ) {
+                               $title = Title::newFromText( $titleText );
+                               if ( !is_null( $title ) ) {
+                                       if ( $i == 0 ) {
+                                               $imageDBkey = $title->getDBkey();
+                                       } else {
+                                               $exceptions[$title->getPrefixedDBkey()] = true;
+                                       }
+                               }
+                       }
+
+                       if ( $imageDBkey !== false ) {
+                               $badImages[$imageDBkey] = $exceptions;
+                       }
+               }
+               if ( $cacheable ) {
+                       $badImageCache = $badImages;
+               }
+       }
+
+       $contextKey = $contextTitle ? $contextTitle->getPrefixedDBkey() : false;
+       $bad = isset( $badImages[$name] ) && !isset( $badImages[$name][$contextKey] );
+       wfProfileOut( __METHOD__ );
+       return $bad;
+}
diff --git a/includes/ImageFunctions.php b/includes/ImageFunctions.php
deleted file mode 100644 (file)
index 4b90e24..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-<?php
-/**
- * Global functions related to images
- *
- * @file
- */
-
-/**
- * Determine if an image exists on the 'bad image list'.
- *
- * The format of MediaWiki:Bad_image_list is as follows:
- *    * Only list items (lines starting with "*") are considered
- *    * The first link on a line must be a link to a bad image
- *    * Any subsequent links on the same line are considered to be exceptions,
- *      i.e. articles where the image may occur inline.
- *
- * @param $name string the image name to check
- * @param $contextTitle Title|bool the page on which the image occurs, if known
- * @param $blacklist string wikitext of a file blacklist
- * @return bool
- */
-function wfIsBadImage( $name, $contextTitle = false, $blacklist = null ) {
-       static $badImageCache = null; // based on bad_image_list msg
-       wfProfileIn( __METHOD__ );
-
-       # Handle redirects
-       $redirectTitle = RepoGroup::singleton()->checkRedirect( Title::makeTitle( NS_FILE, $name ) );
-       if( $redirectTitle ) {
-               $name = $redirectTitle->getDbKey();
-       }
-
-       # Run the extension hook
-       $bad = false;
-       if( !wfRunHooks( 'BadImage', array( $name, &$bad ) ) ) {
-               wfProfileOut( __METHOD__ );
-               return $bad;
-       }
-       $cacheable = ( $blacklist === null );
-       if( $cacheable && $badImageCache !== null ) {
-               $badImages = $badImageCache;
-       } else { // cache miss
-               if ( $blacklist === null ) {
-                       $blacklist = wfMsgForContentNoTrans( 'bad_image_list' ); // site list
-               }
-               # Build the list now
-               $badImages = array();
-               $lines = explode( "\n", $blacklist );
-               foreach( $lines as $line ) {
-                       # List items only
-                       if ( substr( $line, 0, 1 ) !== '*' ) {
-                               continue;
-                       }
-
-                       # Find all links
-                       $m = array();
-                       if ( !preg_match_all( '/\[\[:?(.*?)\]\]/', $line, $m ) ) {
-                               continue;
-                       }
-
-                       $exceptions = array();
-                       $imageDBkey = false;
-                       foreach ( $m[1] as $i => $titleText ) {
-                               $title = Title::newFromText( $titleText );
-                               if ( !is_null( $title ) ) {
-                                       if ( $i == 0 ) {
-                                               $imageDBkey = $title->getDBkey();
-                                       } else {
-                                               $exceptions[$title->getPrefixedDBkey()] = true;
-                                       }
-                               }
-                       }
-
-                       if ( $imageDBkey !== false ) {
-                               $badImages[$imageDBkey] = $exceptions;
-                       }
-               }
-               if ( $cacheable ) {
-                       $badImageCache = $badImages;
-               }
-       }
-
-       $contextKey = $contextTitle ? $contextTitle->getPrefixedDBkey() : false;
-       $bad = isset( $badImages[$name] ) && !isset( $badImages[$name][$contextKey] );
-       wfProfileOut( __METHOD__ );
-       return $bad;
-}
index 9333e40..fd35a60 100644 (file)
@@ -49,7 +49,7 @@ if ( !empty($wgActionPaths) && !isset($wgActionPaths['view']) ) {
 
 if ( !empty($wgActionPaths) && !isset($wgActionPaths['view']) ) {
        # 'view' is assumed the default action path everywhere in the code
-       # but is rarely filled in $wgActionPaths 
+       # but is rarely filled in $wgActionPaths
        $wgActionPaths['view'] = $wgArticlePath ;
 }
 
@@ -381,7 +381,6 @@ if ( !defined( 'MW_COMPILED' ) ) {
        require_once( "$IP/includes/normal/UtfNormalUtil.php" );
        require_once( "$IP/includes/GlobalFunctions.php" );
        require_once( "$IP/includes/ProxyTools.php" );
-       require_once( "$IP/includes/ImageFunctions.php" );
        require_once( "$IP/includes/normal/UtfNormalDefines.php" );
        wfProfileOut( $fname . '-includes' );
 }