* @return string Page title with underscores
*/
public function titleToKey($title) {
- global $wgContLang, $wgCapitalLinks;
- if($wgCaptialLinks)
- $title = $wgContLang->ucfirst($title);
- return str_replace(' ', '_', $title);
+ $t = Title::newFromText($title);
+ if(!$t)
+ {
+ # Don't throw an error if we got an empty string
+ if($title == '')
+ return '';
+ $this->dieUsageMsg(array('invalidtitle', $title));
+ }
+ return $t->getDbKey();
}
/**
* @return string Page title with spaces
*/
public function keyToTitle($key) {
- return str_replace('_', ' ', $key);
+ $t = Title::newFromDbKey($key);
+ # This really shouldn't happen but we gotta check anyway
+ if(!$t)
+ {
+ # Don't throw an error if we got an empty string
+ if($key == '')
+ return '';
+ $this->dieUsageMsg(array('invalidtitle', $key));
+ }
+ return $t->getPrefixedText();
}
/**