diff options
Diffstat (limited to 'maintenance/dumpHTML.php')
-rw-r--r-- | maintenance/dumpHTML.php | 163 |
1 files changed, 5 insertions, 158 deletions
diff --git a/maintenance/dumpHTML.php b/maintenance/dumpHTML.php index 26e914ff..bd94958e 100644 --- a/maintenance/dumpHTML.php +++ b/maintenance/dumpHTML.php @@ -1,160 +1,7 @@ -<?php -/** - * @todo document - * @addtogroup Maintenance - */ - -function ShowUsage() { -echo <<<END -Usage: -php dumpHTML.php --help -php dumpHTML.php [options...] - - --help show this message - - -d <dest> destination directory - -s <start> start ID - -e <end> end ID - -k <skin> skin to use (defaults to htmldump) - --no-overwrite skip existing HTML files - --checkpoint <file> use a checkpoint file to allow restarting of interrupted dumps - --slice <n/m> split the job into m segments and do the n'th one - --images only do image description pages - --shared-desc only do shared (commons) image description pages - --no-shared-desc don't do shared image description pages - --categories only do category pages - --redirects only do redirects - --special only do miscellaneous stuff - --force-copy copy commons instead of symlink, needed for Wikimedia - --interlang allow interlanguage links - --image-snapshot copy all images used to the destination directory - --compress generate compressed version of the html pages - --udp-profile <N> profile 1/N rendering operations using ProfilerSimpleUDP - -END; -} - -$optionsWithArgs = array( 's', 'd', 'e', 'k', 'checkpoint', 'slice', 'udp-profile' ); -$options = array( 'help' ); -$profiling = false; - -if ( $profiling ) { - define( 'MW_CMDLINE_CALLBACK', 'wfSetupDump' ); - function wfSetupDump() { - global $wgProfiling, $wgProfileToDatabase, $wgProfileSampleRate; - $wgProfiling = true; - $wgProfileToDatabase = false; - $wgProfileSampleRate = 1; - } -} - -if ( in_array( '--udp-profile', $argv ) ) { - define( 'MW_FORCE_PROFILE', 1 ); -} - -require_once( "commandLine.inc" ); -require_once( "dumpHTML.inc" ); - -error_reporting( E_ALL & (~E_NOTICE) ); - -if( isset( $options['help'] ) ) { - ShowUsage(); - exit(); -} - -if ( !empty( $options['s'] ) ) { - $start = $options['s']; -} else { - $start = 1; -} - -if ( !empty( $options['e'] ) ) { - $end = $options['e']; -} else { - $dbr = wfGetDB( DB_SLAVE ); - $end = $dbr->selectField( 'page', 'max(page_id)', false ); -} - -if ( !empty( $options['d'] ) ) { - $dest = $options['d']; -} else { - $dest = "$IP/static"; -} - -$skin = isset( $options['k'] ) ? $options['k'] : 'htmldump'; - -if ( $options['slice'] ) { - $bits = explode( '/', $options['slice'] ); - if ( count( $bits ) != 2 || $bits[0] < 1 || $bits[0] > $bits[1] ) { - print "Invalid slice specification"; - exit; - } - $sliceNumerator = $bits[0]; - $sliceDenominator = $bits[1]; -} else { - $sliceNumerator = $sliceDenominator = 1; -} - -$wgHTMLDump = new DumpHTML( array( - 'dest' => $dest, - 'forceCopy' => $options['force-copy'], - 'alternateScriptPath' => $options['interlang'], - 'interwiki' => $options['interlang'], - 'skin' => $skin, - 'makeSnapshot' => $options['image-snapshot'], - 'checkpointFile' => $options['checkpoint'], - 'startID' => $start, - 'endID' => $end, - 'sliceNumerator' => $sliceNumerator, - 'sliceDenominator' => $sliceDenominator, - 'noOverwrite' => $options['no-overwrite'], - 'compress' => $options['compress'], - 'noSharedDesc' => $options['no-shared-desc'], - 'udpProfile' => $options['udp-profile'], -)); - - -if ( $options['special'] ) { - $wgHTMLDump->doSpecials(); -} elseif ( $options['images'] ) { - $wgHTMLDump->doImageDescriptions(); -} elseif ( $options['categories'] ) { - $wgHTMLDump->doCategories(); -} elseif ( $options['redirects'] ) { - $wgHTMLDump->doRedirects(); -} elseif ( $options['shared-desc'] ) { - $wgHTMLDump->doSharedImageDescriptions(); -} else { - print "Creating static HTML dump in directory $dest. \n"; - $dbr = wfGetDB( DB_SLAVE ); - $server = $dbr->getProperty( 'mServer' ); - print "Using database {$server}\n"; - - if ( !isset( $options['e'] ) ) { - $wgHTMLDump->doEverything(); - } else { - $wgHTMLDump->doArticles(); - } -} - -if ( isset( $options['debug'] ) ) { - #print_r($GLOBALS); - # Workaround for bug #36957 - $globals = array_keys( $GLOBALS ); - #sort( $globals ); - $sizes = array(); - foreach ( $globals as $name ) { - $sizes[$name] = strlen( serialize( $GLOBALS[$name] ) ); - } - arsort($sizes); - $sizes = array_slice( $sizes, 0, 20 ); - foreach ( $sizes as $name => $size ) { - printf( "%9d %s\n", $size, $name ); - } -} - -if ( $profiling ) { - echo $wgProfiler->getOutput(); -} +dumpHTML has moved to the DumpHTML extension. +WebDAV/SVN: +http://svn.wikimedia.org/svnroot/mediawiki/trunk/extensions/DumpHTML/ +Web: +http://svn.wikimedia.org/viewvc/mediawiki/trunk/extensions/DumpHTML/ |