Difference between revisions of "List-Cat.php"
(This was corrupting $title which is passed by ref) |
|||
Line 4: | Line 4: | ||
$db =& wfGetDB( DB_MASTER ); | $db =& wfGetDB( DB_MASTER ); | ||
$subdb =& wfGetDB( DB_SLAVE ); | $subdb =& wfGetDB( DB_SLAVE ); | ||
− | $cl = $db->tableName('categorylinks'); | + | $cl = $db->tableName( 'categorylinks' ); |
− | $cur = $db->tableName('cur'); | + | $cur = $db->tableName( 'cur' ); |
− | xwGetProperty($properties, 'list-cat', $cat); | + | xwGetProperty( $properties, 'list-cat', $cat ); |
− | $cat = str_replace(' ', '_', $cat); | + | $cat = str_replace( ' ', '_', $cat ); |
− | $article = trim($article)."\n"; | + | $article = trim( $article )."\n"; |
− | $result = $db->query("SELECT cl_from,cl_sortkey FROM $cl WHERE cl_to = '$cat' ORDER BY cl_sortkey"); | + | $result = $db->query( "SELECT cl_from,cl_sortkey FROM $cl WHERE cl_to = '$cat' ORDER BY cl_sortkey" ); |
− | while ($row = mysql_fetch_assoc($result)) { | + | while ( $row = mysql_fetch_assoc( $result ) ) { |
$id = $row['cl_from']; | $id = $row['cl_from']; | ||
− | $subresult = $subdb->query("SELECT cur_title,cur_namespace FROM $cur WHERE cur_id=$id"); | + | $subresult = $subdb->query( "SELECT cur_title,cur_namespace FROM $cur WHERE cur_id=$id" ); |
− | if ($subrow = mysql_fetch_assoc($subresult)) { | + | if ( $subrow = mysql_fetch_assoc( $subresult ) ) { |
− | $ | + | $t = str_replace( '_', ' ', $subrow['cur_title'] ); |
− | if ($ns = $wgContLang->getNsText( $subrow['cur_namespace'] )) $ | + | if ( $ns = $wgContLang->getNsText( $subrow['cur_namespace'] ) ) $t = "$ns:$t"; |
− | $ | + | $a = str_replace( '_', ' ', $row['cl_sortkey'] ); |
− | $ | + | $a = ( $t != $a ) ? "|$a" : ''; |
− | $ | + | $t = preg_replace( '/^(?=Category:)/', ':', $t ); |
− | $article .= "*[[$ | + | $article .= "*[[$t$a]]\n"; |
} | } | ||
} | } | ||
?> | ?> |
Revision as of 08:51, 6 March 2006
<?
- Append article content with a list of article-names from category specified in properties
global $wgContLang; $db =& wfGetDB( DB_MASTER ); $subdb =& wfGetDB( DB_SLAVE ); $cl = $db->tableName( 'categorylinks' ); $cur = $db->tableName( 'cur' ); xwGetProperty( $properties, 'list-cat', $cat ); $cat = str_replace( ' ', '_', $cat ); $article = trim( $article )."\n"; $result = $db->query( "SELECT cl_from,cl_sortkey FROM $cl WHERE cl_to = '$cat' ORDER BY cl_sortkey" ); while ( $row = mysql_fetch_assoc( $result ) ) { $id = $row['cl_from']; $subresult = $subdb->query( "SELECT cur_title,cur_namespace FROM $cur WHERE cur_id=$id" ); if ( $subrow = mysql_fetch_assoc( $subresult ) ) { $t = str_replace( '_', ' ', $subrow['cur_title'] ); if ( $ns = $wgContLang->getNsText( $subrow['cur_namespace'] ) ) $t = "$ns:$t"; $a = str_replace( '_', ' ', $row['cl_sortkey'] ); $a = ( $t != $a ) ? "|$a" : ; $t = preg_replace( '/^(?=Category:)/', ':', $t ); $article .= "*$t$a\n"; } } ?>