X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=maintenance%2FrefreshFileHeaders.php;h=db8a19a115401232e66d53e74383a4603caad8d0;hb=c2fbbc80e6811a44c337c72b382ec77fa04fa38a;hp=e123de7fdb3117f445e4ad83c5ffa4ee7bf2ad22;hpb=07078ae70ac1f341e2494685f99de60766545650;p=lhc%2Fweb%2Fwiklou.git diff --git a/maintenance/refreshFileHeaders.php b/maintenance/refreshFileHeaders.php index e123de7fdb..db8a19a115 100644 --- a/maintenance/refreshFileHeaders.php +++ b/maintenance/refreshFileHeaders.php @@ -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 ); } @@ -78,8 +84,15 @@ class RefreshFileHeaders extends Maintenance { $conds[] = "img_minor_mime = {$dbr->addQuotes( $minor_mime )}"; } - $res = $dbr->select( $fileQuery['tables'], $fileQuery['fields'], $conds, - __METHOD__, [ 'LIMIT' => $this->mBatchSize, 'ORDER BY' => 'img_name ASC' ], $fileQuery['joins'] + $res = $dbr->select( $fileQuery['tables'], + $fileQuery['fields'], + $conds, + __METHOD__, + [ + 'LIMIT' => $this->getBatchSize(), + 'ORDER BY' => 'img_name ASC' + ], + $fileQuery['joins'] ); if ( $res->numRows() > 0 ) { @@ -93,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[] = [ @@ -122,7 +138,7 @@ class RefreshFileHeaders extends Maintenance { $this->output( "Updating headers for {$backendOperationsCount} file(s).\n" ); $this->updateFileHeaders( $repo, $backendOperations ); - } while ( $res->numRows() === $this->mBatchSize ); + } while ( $res->numRows() === $this->getBatchSize() ); $this->output( "Done. Updated headers for $count file(s).\n" ); } @@ -136,5 +152,5 @@ class RefreshFileHeaders extends Maintenance { } } -$maintClass = 'RefreshFileHeaders'; +$maintClass = RefreshFileHeaders::class; require_once RUN_MAINTENANCE_IF_MAIN;