Page MenuHomePhabricator

Build new LandingCheck Extension (replaces GeoLite)
Closed, ResolvedPublic

Description

Now that we have geolookup on pageview, we don't actually need GeoLite anymore. All we really need is an extension that checks to see if a page exists or not. Here's how it should work ideally:

The target for a banner would be set by Javascript to http://www.wikimediafoundation.org/wiki/Special:LandingCheck?target=<pagename>&language=<languagecode>&country=<countrycode> (where the languagecode and countrycode are pulled from global vars). So for example:
http://www.wikimediafoundation.org/wiki/Special:LandingCheck?target=Appeal2&language=fr&country=DE

The new LandingCheck extension would then check to make sure that http://www.wikimediafoundation.org/wiki/Appeal2/fr/DE exists.

If it does, it redirects the user there. If it doesn't, it falls back to http://www.wikimediafoundation.org/wiki/Appeal2/fr

We could also use an optional fallback parameter to override the default fallback. It would also need to be able to pass along other query string params for tracking, etc.

Psuedocode:
if pagename includes "Special:" {

test with SpecialPage::exists()

} else {

test with Title::exists()

}


Version: unspecified
Severity: enhancement

Details

Reference
bz25700