(Bug 19725) Do not include suppressed edits in the "View X deleted edits" message...
[lhc/web/wiklou.git] / includes / ExternalStore.php
index 6a77907..3bee6ed 100644 (file)
@@ -32,10 +32,17 @@ class ExternalStore {
                if( !$wgExternalStores )
                        return false;
 
-               @list( $proto, $path ) = explode( '://', $url, 2 );
-               /* Bad URL */
-               if( $path == '' )
+               $parts = explode( '://', $url, 2 );
+
+               if ( count( $parts ) != 2 ) {
                        return false;
+               }
+
+               list( $proto, $path ) = $parts;
+
+               if ( $path == '' ) { // Bad URL
+                       return false;
+               }
 
                $store = self::getStoreObject( $proto, $params );
                if ( $store === false )
@@ -60,7 +67,7 @@ class ExternalStore {
 
                $class = 'ExternalStore' . ucfirst( $proto );
                /* Any custom modules should be added to $wgAutoLoadClasses for on-demand loading */
-               if( !class_exists( $class ) ) {
+               if( !MWInit::classExists( $class ) ) {
                        return false;
                }
 
@@ -71,7 +78,10 @@ class ExternalStore {
         * Store a data item to an external store, identified by a partial URL
         * The protocol part is used to identify the class, the rest is passed to the
         * class itself as a parameter.
-        * @return The URL of the stored data item, or false on error
+        * @param $url
+        * @param $data
+        * @param $params array
+        * @return string|false The URL of the stored data item, or false on error
         */
        static function insert( $url, $data, $params = array() ) {
                list( $proto, $params ) = explode( '://', $url, 2 );
@@ -90,7 +100,7 @@ class ExternalStore {
         *
         * @param $data String
         * @param $storageParams Array: associative array of parameters for the ExternalStore object.
-        * @return The URL of the stored data item, or false on error
+        * @return string The URL of the stored data item, or false on error
         */
        public static function insertToDefault( $data, $storageParams = array() ) {
                global $wgDefaultExternalStore;
@@ -129,7 +139,12 @@ class ExternalStore {
                }
        }
        
-       /** Like insertToDefault, but inserts on another wiki */
+       /**
+        * @param $data
+        * @param $wiki
+        *
+        * @return string
+        */
        public static function insertToForeignDefault( $data, $wiki ) {
                return self::insertToDefault( $data, array( 'wiki' => $wiki ) );
        }