* limit: maximum number of rows to return
* dir: "asc" or "desc" timestamp order
* @param $buffer Int: one of WikiExporter::BUFFER or WikiExporter::STREAM
+ * @param $text Int: one of WikiExporter::TEXT or WikiExporter::STUB
*/
function __construct( &$db, $history = WikiExporter::CURRENT,
$buffer = WikiExporter::BUFFER, $text = WikiExporter::TEXT ) {
# Not called by default (depends on $this->list_authors)
# Can be set by Special:Export when not exporting whole history
protected function do_list_authors( $page , $revision , $cond ) {
- $fname = "do_list_authors" ;
- wfProfileIn( $fname );
+ wfProfileIn( __METHOD__ );
$this->author_list = "<contributors>";
//rev_deleted
$nothidden = '('.$this->db->bitAnd('rev_deleted', Revision::DELETED_USER) . ') = 0';
$sql = "SELECT DISTINCT rev_user_text,rev_user FROM {$page},{$revision}
WHERE page_id=rev_page AND $nothidden AND " . $cond ;
- $result = $this->db->query( $sql, $fname );
+ $result = $this->db->query( $sql, __METHOD__ );
$resultset = $this->db->resultObject( $result );
while( $row = $resultset->fetchObject() ) {
$this->author_list .= "<contributor>" .
"</id>" .
"</contributor>";
}
- wfProfileOut( $fname );
+ wfProfileOut( __METHOD__ );
$this->author_list .= "</contributors>";
}
global $wgContLang;
$spaces = "<namespaces>\n";
foreach( $wgContLang->getFormattedNamespaces() as $ns => $title ) {
- $spaces .= ' ' . Xml::element( 'namespace', array( 'key' => $ns ), $title ) . "\n";
+ $spaces .= ' ' .
+ Xml::element( 'namespace',
+ array( 'key' => $ns,
+ 'case' => MWNamespace::isCapitalized( $ns ) ? 'first-letter' : 'case-sensitive',
+ ), $title ) . "\n";
}
$spaces .= " </namespaces>";
return $spaces;
if( $row->page_is_redirect ) {
$out .= ' ' . Xml::element( 'redirect', array() ) . "\n";
}
- if( '' != $row->page_restrictions ) {
+ if( $row->page_restrictions != '' ) {
$out .= ' ' . Xml::element( 'restrictions', array(),
strval( $row->page_restrictions ) ) . "\n";
}
* @access private
*/
function writeRevision( $row ) {
- $fname = 'WikiExporter::dumpRev';
- wfProfileIn( $fname );
+ wfProfileIn( __METHOD__ );
$out = " <revision>\n";
$out .= " " . Xml::element( 'id', null, strval( $row->rev_id ) ) . "\n";
$out .= " " . Xml::elementClean( 'comment', null, strval( $row->rev_comment ) ) . "\n";
}
+ $text = '';
if( $row->rev_deleted & Revision::DELETED_TEXT ) {
$out .= " " . Xml::element( 'text', array( 'deleted' => 'deleted' ) ) . "\n";
} elseif( isset( $row->old_text ) ) {
array( 'id' => $row->rev_text_id ),
"" ) . "\n";
}
-
+
wfRunHooks( 'XmlDumpWriterWriteRevision', array( &$this, &$out, $row, $text ) );
$out .= " </revision>\n";
- wfProfileOut( $fname );
+ wfProfileOut( __METHOD__ );
return $out;
}
* @access private
*/
function writeLogItem( $row ) {
- $fname = 'WikiExporter::writeLogItem';
- wfProfileIn( $fname );
+ wfProfileIn( __METHOD__ );
$out = " <logitem>\n";
$out .= " " . Xml::element( 'id', null, strval( $row->log_id ) ) . "\n";
$out .= " </logitem>\n";
- wfProfileOut( $fname );
+ wfProfileOut( __METHOD__ );
return $out;
}
}
function xmlsafe( $string ) {
- $fname = 'xmlsafe';
- wfProfileIn( $fname );
+ wfProfileIn( __FUNCTION__ );
/**
* The page may contain old data which has not been properly normalized.
$string = UtfNormal::cleanUp( $string );
$string = htmlspecialchars( $string );
- wfProfileOut( $fname );
+ wfProfileOut( __FUNCTION__ );
return $string;
}