'''Name''' '''Default text''' '''Current text''' "; print "Initialising \"MediaWiki\" namespace...\n"; $sql = "SELECT cur_title FROM cur WHERE cur_namespace=$ns AND cur_title IN("; $first = true; $sortedArray = $wgAllMessagesEn; ksort( $sortedArray ); foreach ( $sortedArray as $key => $enMsg ) { if ( $first ) { $first = false; } else { $sql .= ","; } $message = wfMsgNoDB( $key ); $titleObj = Title::newFromText( $key ); $enctitle = wfStrencode($titleObj->getDBkey()); $sql .= "'$enctitle'"; } $sql .= ")"; print "Reading..."; $res = wfQuery( $sql, DB_READ ); print "."; $row = wfFetchObject( $res ); print "done\n"; print "Setting up..."; $exists = array(); while ( $row ) { $exists[$row->cur_title] = 1; $row = wfFetchObject( $res ); } print "."; $sql = "INSERT INTO cur (cur_namespace, cur_title, cur_text, cur_user_text, cur_timestamp, cur_restrictions, cur_is_new, inverse_timestamp, cur_touched) VALUES "; $first = true; $mwObj =& MagicWord::get( MAG_MSGNW ); $msgnw = $mwObj->getSynonym( 0 ); print "Done\n"; print "Processing..."; foreach ( $sortedArray as $key => $enMsg ) { $message = wfMsgNoDB( $key ); $titleObj = Title::newFromText( $key ); $title = $titleObj->getDBkey(); $dbencMsg = wfStrencode( $message ); $doInsert = true; if ( $overwrite ) { wfQuery( "DELETE FROM cur WHERE cur_namespace=$ns AND cur_title='$title'", DB_WRITE, $fname ); } else { if (array_key_exists($title, $exists)) { $doInsert = false; } } if ( $doInsert ) { if ( $first ) { $first = false; } else { $sql .= ","; } $sql .= "($ns, '$title', '$dbencMsg', 'MediaWiki default', '$timestamp', 'sysop', 1, '$invTimestamp', '$timestamp')"; } $mw = str_replace( "$1", $key, $msgnw ); $message = wfEscapeWikiText( $message ); $navText .= " [$wgServer$wgScript?title=MediaWiki:$title&action=edit $key] $message $mw "; } print "Done\n"; print "Writing..."; if ( !$first ) { wfQuery( $sql, DB_WRITE, $fname ); } print "Done\n"; $navText .= ""; $title = wfMsgNoDB( "allmessages" ); $titleObj = Title::makeTitle( NS_MEDIAWIKI, $title ); $wgArticle = new Article( $titleObj ); $wgOut->disable(); $wgUser = User::newFromName( 'MediaWiki default' ); print "Writing to " . $titleObj->getPrefixedDBkey() . "\n"; if ( $titleObj->getArticleID() ) { $wgArticle->updateArticle( $navText, '', 0, 0 ); } else { $wgArticle->insertNewArticle( $navText, '', 0, 0 ); } print "Finished\n"; }