https://www.mediawiki.org/wiki/Special:Code/MediaWiki/115471
Revision: 115471 Author: robin Date: 2012-06-03 10:54:24 +0000 (Sun, 03 Jun 2012) Log Message: ----------- (bug 36033) Interwiki language links to non-existent wikisources should redirect to the multilingual wikisource Modified Paths: -------------- trunk/tools/web-scripts/missing.php Modified: trunk/tools/web-scripts/missing.php =================================================================== --- trunk/tools/web-scripts/missing.php 2012-06-03 08:33:20 UTC (rev 115470) +++ trunk/tools/web-scripts/missing.php 2012-06-03 10:54:24 UTC (rev 115471) @@ -94,36 +94,23 @@ $location .= $page && $page !== '/' ? '/' . $page : '?goto=mainpage' . ( isset( $_GET['uselang'] ) ? '&uselang=' . urlencode( $_GET['uselang'] ) : '' ); -# Not recognised (probably a wikimedia.org domain) -> redirect to a Meta page -if( !$projectcode ) { +$redir = true; + +if( $projectcode === 's' ) { + # Wikisource should redirect to the multilingual wikisource + $location = $url['scheme'] . '://wikisource.org/wiki/' . $page; +} elseif( $projectcode === 'v' ) { + # Wikiversity gives an error page + $logo = '//upload.wikimedia.org/wikipedia/commons/thumb/9/91/Wikiversity-logo.svg/300px-Wikiversity-logo.svg.png'; + $home = '//beta.wikiversity.org'; + $name = 'Beta Wikiversity'; + $redir = false; +} elseif( !$projectcode ) { + # Not recognised (probably a wikimedia.org domain) -> redirect to a Meta page $location = $url['scheme'] . '://meta.wikimedia.org/wiki/Missing_wiki'; } -$redir = false; - -switch( $projectcode ) { - - # Wikisource - case 's': - $logo = '//upload.wikimedia.org/wikipedia/commons/thumb/4/4c/Wikisource-logo.svg/280px-Wikisource-logo.svg.png'; - $home = '//wikisource.org'; - $name = 'Multilingual Wikisource'; - break; - - # Wikiversity - case 'v': - $logo = '//upload.wikimedia.org/wikipedia/commons/thumb/9/91/Wikiversity-logo.svg/300px-Wikiversity-logo.svg.png'; - $home = '//beta.wikiversity.org'; - $name = 'Beta Wikiversity'; - break; - - # Wikipedia, Wiktionary, Wikiquote, Wikibooks and Wikinews - default: - $redir = true; - -} - -# If not Wikisource/Wikiversity and the URL seems valid, redirect to Incubator +# If we should redirect and the URL seems valid, redirect to the given URL if( $redir && parse_url( $location ) !== false ) { header( 'Location: ' . $location ); _______________________________________________ MediaWiki-CVS mailing list MediaWiki-CVS@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs