Eranroz has uploaded a new change for review.
https://gerrit.wikimedia.org/r/268703
Change subject: setting redirect to disambig as disambig
......................................................................
setting redirect to disambig as disambig
Change-Id: I6ddd0471d1d0041eb73dd63e1a3fa0eeb2da3b2f
---
M Disambiguator.hooks.php
1 file changed, 31 insertions(+), 3 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Disambiguator
refs/changes/03/268703/1
diff --git a/Disambiguator.hooks.php b/Disambiguator.hooks.php
index 7f0e75f..76489fe 100644
--- a/Disambiguator.hooks.php
+++ b/Disambiguator.hooks.php
@@ -99,15 +99,39 @@
$output = array();
if ( $pageIds ) {
$dbr = wfGetDB( DB_SLAVE );
+
+ // resolve redirects
+ $res = $dbr->select(
+ array ('page', 'redirect'),
+ array( 'page_id', 'rd_from' ),
+ array( 'rd_from' => $pageIds ),
+ __METHOD__,
+ array(),
+ array( 'page' => array( 'INNER JOIN', array(
+ 'rd_namespace=page_namespace',
+ 'rd_title=page_title'
+ ) ) )
+ );
+ $redirects = array();
+ foreach ( $res as $row ) {
+ $redirects[$row->page_id] = $row->rd_from;
+ }
+
+ $pageIdsWithRedirects = array_keys( $redirects ) +
array_diff( $pageIds, array_values( $redirects ) );
$res = $dbr->select(
'page_props',
'pp_page',
- array( 'pp_page' => $pageIds, 'pp_propname' =>
'disambiguation' ),
+ array( 'pp_page' => $pageIdsWithRedirects,
'pp_propname' => 'disambiguation' ),
__METHOD__
);
foreach ( $res as $row ) {
- $output[] = $row->pp_page;
+ if ( array_key_exists( $row->pp_page,
$redirects ) ) {
+ $output[] = $redirects[$row->pp_page];
+ }
+ if ( in_array( $row->pp_page, $pageIds ) ){
+ $output[] = $row->pp_page;
+ }
}
}
@@ -128,7 +152,11 @@
$pageIds = static::filterDisambiguationPageIds( array_keys(
$pageIdToDbKey ) );
foreach ( $pageIds as $pageId ) {
- $colours[ $pageIdToDbKey[$pageId] ] = 'mw-disambig';
+ if ( $colours[ $pageIdToDbKey[$pageId] ] ) {
+ $colours[ $pageIdToDbKey[$pageId] ] .= "
mw-disambig";
+ } else {
+ $colours[ $pageIdToDbKey[$pageId] ] =
'mw-disambig';
+ }
}
return true;
}
--
To view, visit https://gerrit.wikimedia.org/r/268703
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I6ddd0471d1d0041eb73dd63e1a3fa0eeb2da3b2f
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Disambiguator
Gerrit-Branch: master
Gerrit-Owner: Eranroz <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits