return $array;
}
+ /**
+ * Get a redirect's destination from a title
+ * @param Title $title A title to redirect. It may not redirect or even exist
+ * @return null|string If title exists and redirects, get the destination's prefixed name
+ */
private function getRedirectTarget( $title ) {
$page = WikiPage::factory( $title );
if ( !$page->exists() ) {
return null;
}
- return $page->getRedirectTarget()->getPrefixedText();
+ $redir = $page->getRedirectTarget();
+ return $redir ? $redir->getPrefixedText() : null;
}
/**
$ns = NS_MAIN; // if searching on many always default to main
}
- $t = Title::newFromText( $search, $ns );
+ $t = null;
+ if ( is_string( $search ) ) {
+ $t = Title::newFromText( $search, $ns );
+ }
+
$prefix = $t ? $t->getDBkey() : '';
$dbr = wfGetDB( DB_SLAVE );
$res = $dbr->select( 'page',