Add Message test for implicit formatting
[lhc/web/wiklou.git] / maintenance / importTextFiles.php
index 88ee9d7..2894653 100644 (file)
@@ -63,7 +63,16 @@ class ImportTextFiles extends Maintenance {
                        if ( file_exists( $arg ) ) {
                                $files[$arg] = file_get_contents( $arg );
                        } else {
-                               $this->error( "Fatal error: The file '$arg' does not exist!", 1 );
+                               // use glob to support the Windows shell, which doesn't automatically
+                               // expand wildcards
+                               $found = false;
+                               foreach ( glob( $arg ) as $filename ) {
+                                       $found = true;
+                                       $files[$filename] = file_get_contents( $filename );
+                               }
+                               if ( !$found ) {
+                                       $this->error( "Fatal error: The file '$arg' does not exist!", 1 );
+                               }
                        }
                };
 
@@ -94,16 +103,16 @@ class ImportTextFiles extends Maintenance {
                        $timestamp = $useTimestamp ? wfTimestamp( TS_UNIX, filemtime( $file ) ) : wfTimestampNow();
 
                        $title = Title::newFromText( $pageName );
-                       $exists = $title->exists();
-                       $oldRevID = $title->getLatestRevID();
-                       $oldRev = $oldRevID ? Revision::newFromId( $oldRevID ) : null;
-
-                       if ( !$title ) {
+                       // Have to check for # manually, since it gets interpreted as a fragment
+                       if ( !$title || $title->hasFragment() ) {
                                $this->error( "Invalid title $pageName. Skipping.\n" );
                                $skipCount++;
                                continue;
                        }
 
+                       $exists = $title->exists();
+                       $oldRevID = $title->getLatestRevID();
+                       $oldRev = $oldRevID ? Revision::newFromId( $oldRevID ) : null;
                        $actualTitle = $title->getPrefixedText();
 
                        if ( $exists ) {