From be2f51ae42a39f9ff19e5410c39803fd5427ba89 Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Wed, 22 Dec 2004 07:28:11 +0000 Subject: [PATCH] Merge capitallinks message fixes from REL1_4 --- includes/MessageCache.php | 6 ++-- maintenance/InitialiseMessages.inc | 4 +-- maintenance/archives/moveCustomMessages.inc | 4 +-- maintenance/cleanupDupes.php | 36 ++++++++++++++------- 4 files changed, 30 insertions(+), 20 deletions(-) diff --git a/includes/MessageCache.php b/includes/MessageCache.php index 04766226d3..b464ae049a 100755 --- a/includes/MessageCache.php +++ b/includes/MessageCache.php @@ -165,8 +165,7 @@ class MessageCache if ( !$this->mKeys ) { $this->mKeys = array(); foreach ( $wgAllMessagesEn as $key => $value ) { - global $wgCapitalLinks; - $title = $wgCapitalLinks ? $wgContLang->ucfirst( $key ) : $key; + $title = $wgContLang->ucfirst( $key ); array_push( $this->mKeys, $title ); } } @@ -238,8 +237,7 @@ class MessageCache $message = false; if( !$this->mDisable && $useDB ) { - global $wgCapitalLinks; - $title = $wgCapitalLinks ? $lang->ucfirst( $key ) : $key; + $title = $lang->ucfirst( $key ); if( $langcode != $wgContLanguageCode ) { $title .= '/' . $langcode; } diff --git a/maintenance/InitialiseMessages.inc b/maintenance/InitialiseMessages.inc index 02eb9326b2..98157705bf 100755 --- a/maintenance/InitialiseMessages.inc +++ b/maintenance/InitialiseMessages.inc @@ -140,7 +140,7 @@ function initialiseMessagesReal( $overwrite = false, $messageArray = false ) { } else { $sql .= ','; } - $titleObj = Title::newFromText( $key ); + $titleObj = Title::newFromText( $wgContLang->ucfirst( $key ) ); $enctitle = $dbr->strencode($titleObj->getDBkey()); $sql .= "'$enctitle'"; } @@ -178,7 +178,7 @@ function initialiseMessagesReal( $overwrite = false, $messageArray = false ) { } else { $message = wfMsgNoDBForContent( $key ); } - $titleObj = Title::newFromText( $key ); + $titleObj = Title::newFromText( $wgContLang->ucfirst( $key ) ); $title = $titleObj->getDBkey(); # Update messages which already exist diff --git a/maintenance/archives/moveCustomMessages.inc b/maintenance/archives/moveCustomMessages.inc index 2aa6dd2f84..5fb0d7ccbd 100644 --- a/maintenance/archives/moveCustomMessages.inc +++ b/maintenance/archives/moveCustomMessages.inc @@ -16,7 +16,7 @@ function isTemplateInitialised() { } function moveCustomMessages( $phase ) { - global $wgUser, $wgAllMessagesEn, $wgDeferredUpdateList, $wgLang; + global $wgUser, $wgAllMessagesEn, $wgDeferredUpdateList, $wgLang, $wgContLang; global $targets, $template, $replaceCount; $wgUser = new User; @@ -32,7 +32,7 @@ function moveCustomMessages( $phase ) { $dbkeys = array(); foreach ( $wgAllMessagesEn as $key => $enValue ) { - $title = Title::newFromText( $key ); + $title = Title::newFromText( $wgContLang->ucfirst( $key ) ); $dbkeys[$title->getDBkey()] = 1; } diff --git a/maintenance/cleanupDupes.php b/maintenance/cleanupDupes.php index af85e7b4aa..c4e41fa5a4 100644 --- a/maintenance/cleanupDupes.php +++ b/maintenance/cleanupDupes.php @@ -25,19 +25,20 @@ * @subpackage Maintenance */ +$options = array( 'fix' ); + require_once( "commandLine.inc" ); -require_once( "rebuildtextindex.inc" ); -$wgTitle = Title::newFromText( "Rebuild text index script" ); +$wgTitle = Title::newFromText( "Dupe cur entry cleanup script" ); -checkDupes(); +checkDupes( isset( $options['fix'] ) ); -function fixDupes() { +function fixDupes( $fixthem = false) { $dbw =& wfGetDB( DB_MASTER ); $cur = $dbw->tableName( 'cur' ); $dbw->query( "LOCK TABLES $cur WRITE" ); echo "Checking for duplicate cur table entries... (this may take a while on a large wiki)\n"; $res = $dbw->query( << 1 @@ -46,33 +47,44 @@ END $n = $dbw->numRows( $res ); echo "Found $n titles with duplicate entries.\n"; if( $n > 0 ) { - echo "Correcting...\n"; + if( $fixthem ) { + echo "Correcting...\n"; + } else { + echo "Just a demo...\n"; + } while( $row = $dbw->fetchObject( $res ) ) { $ns = IntVal( $row->cur_namespace ); $title = $dbw->addQuotes( $row->cur_title ); $id = IntVal( $row->id ); - $dbw->query( <<cur_title (canonical ID $id)\n"; + if( $fixthem ) { + $dbw->query( <<$id END - ); + ); + } } } $dbw->query( 'UNLOCK TABLES' ); - echo "Done.\n"; + if( $fixthem ) { + echo "Done.\n"; + } else { + echo "Run again with --fix option to delete the duplicates.\n"; + } } -function checkDupes() { +function checkDupes( $fixthem = false ) { $dbw =& wfGetDB( DB_MASTER ); if( $dbw->indexExists( 'cur', 'name_title' ) && $dbw->indexUnique( 'cur', 'name_title' ) ) { echo "Your cur table has the current unique index; no duplicate entries.\n"; } else { echo "Your cur table has the old non-unique index and may have duplicate entries.\n"; - fixDupes(); + fixDupes( $fixthem ); } } -- 2.20.1