<?php
/**
- * Dump a the list of files uploaded, for feeding to tar or similar
+ * Dump a the list of files uploaded, for feeding to tar or similar.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
* http://www.gnu.org/copyleft/gpl.html
*
+ * @file
* @ingroup Maintenance
*/
-require_once( dirname( __FILE__ ) . '/Maintenance.php' );
+require_once( __DIR__ . '/Maintenance.php' );
+/**
+ * Maintenance script to dump a the list of files uploaded,
+ * for feeding to tar or similar.
+ *
+ * @ingroup Maintenance
+ */
class UploadDumper extends Maintenance {
public function __construct() {
parent::__construct();
if ( $this->hasOption( 'local' ) ) {
$this->mAction = 'fetchLocal';
}
-
+
if ( $this->hasOption( 'used' ) ) {
$this->mAction = 'fetchUsed';
}
-
+
if ( $this->hasOption( 'shared' ) ) {
if ( $this->hasOption( 'used' ) ) {
// Include shared-repo files in the used check
$dbr = wfGetDB( DB_SLAVE );
$image = $dbr->tableName( 'image' );
$imagelinks = $dbr->tableName( 'imagelinks' );
-
+
$sql = "SELECT DISTINCT il_to, img_name
FROM $imagelinks
LEFT OUTER JOIN $image
ON il_to=img_name";
$result = $dbr->query( $sql );
-
+
foreach ( $result as $row ) {
$this->outputItem( $row->il_to, $shared );
}
- $dbr->freeResult( $result );
}
/**
array( 'img_name' ),
'',
__METHOD__ );
-
+
foreach ( $result as $row ) {
$this->outputItem( $row->img_name, $shared );
}
- $dbr->freeResult( $result );
}
-
+
function outputItem( $name, $shared ) {
$file = wfFindFile( $name );
if ( $file && $this->filterItem( $file, $shared ) ) {
- $filename = $file->getFullPath();
+ $filename = $file->getPath();
$rel = wfRelativePath( $filename, $this->mBasePath );
$this->output( "$rel\n" );
} else {
}
$maintClass = "UploadDumper";
-require_once( DO_MAINTENANCE );
+require_once( RUN_MAINTENANCE_IF_MAIN );