Chris@0: 'core/', Chris@0: 'extension' => 'extensions/{$name}/', Chris@0: 'skin' => 'skins/{$name}/', Chris@0: ); Chris@0: Chris@0: /** Chris@0: * Format package name. Chris@0: * Chris@0: * For package type mediawiki-extension, cut off a trailing '-extension' if present and transform Chris@0: * to CamelCase keeping existing uppercase chars. Chris@0: * Chris@0: * For package type mediawiki-skin, cut off a trailing '-skin' if present. Chris@0: * Chris@0: */ Chris@0: public function inflectPackageVars($vars) Chris@0: { Chris@0: Chris@0: if ($vars['type'] === 'mediawiki-extension') { Chris@0: return $this->inflectExtensionVars($vars); Chris@0: } Chris@0: Chris@0: if ($vars['type'] === 'mediawiki-skin') { Chris@0: return $this->inflectSkinVars($vars); Chris@0: } Chris@0: Chris@0: return $vars; Chris@0: } Chris@0: Chris@0: protected function inflectExtensionVars($vars) Chris@0: { Chris@0: $vars['name'] = preg_replace('/-extension$/', '', $vars['name']); Chris@0: $vars['name'] = str_replace('-', ' ', $vars['name']); Chris@0: $vars['name'] = str_replace(' ', '', ucwords($vars['name'])); Chris@0: Chris@0: return $vars; Chris@0: } Chris@0: Chris@0: protected function inflectSkinVars($vars) Chris@0: { Chris@0: $vars['name'] = preg_replace('/-skin$/', '', $vars['name']); Chris@0: Chris@0: return $vars; Chris@0: } Chris@0: Chris@0: }