Allow file headers to be refreshed from database
authorCormac Parle <cparle@wikimedia.org>
Mon, 27 Nov 2017 15:01:37 +0000 (15:01 +0000)
committerCormac Parle <cparle@wikimedia.org>
Mon, 27 Nov 2017 15:01:37 +0000 (15:01 +0000)
Bug: T178849
Change-Id: I100458cdb55db10d49c586c83876b7d1645ec486

maintenance/refreshFileHeaders.php

index bd625ba..3bae4b8 100644 (file)
@@ -40,6 +40,12 @@ class RefreshFileHeaders extends Maintenance {
                $this->addOption( 'media_type', 'Media type to filter for', false, true );
                $this->addOption( 'major_mime', 'Major mime type to filter for', false, true );
                $this->addOption( 'minor_mime', 'Minor mime type to filter for', false, true );
+               $this->addOption(
+                       'refreshContentType',
+                       'Set true to refresh file content type from mime data in db',
+                       false,
+                       false
+               );
                $this->setBatchSize( 200 );
        }
 
@@ -100,6 +106,9 @@ class RefreshFileHeaders extends Maintenance {
                        foreach ( $res as $row ) {
                                $file = $repo->newFileFromRow( $row );
                                $headers = $file->getContentHeaders();
+                               if ( $this->getOption( 'refreshContentType', false ) ) {
+                                       $headers['Content-Type'] = $row->img_major_mime . '/' . $row->img_minor_mime;
+                               }
 
                                if ( count( $headers ) ) {
                                        $backendOperations[] = [