annotate vendor/composer/installers/src/Composer/Installers/MediaWikiInstaller.php @ 0:4c8ae668cc8c

Initial import (non-working)
author Chris Cannam
date Wed, 29 Nov 2017 16:09:58 +0000
parents
children 129ea1e6d783
rev   line source
Chris@0 1 <?php
Chris@0 2 namespace Composer\Installers;
Chris@0 3
Chris@0 4 class MediaWikiInstaller extends BaseInstaller
Chris@0 5 {
Chris@0 6 protected $locations = array(
Chris@0 7 'extension' => 'extensions/{$name}/',
Chris@0 8 'skin' => 'skins/{$name}/',
Chris@0 9 );
Chris@0 10
Chris@0 11 /**
Chris@0 12 * Format package name.
Chris@0 13 *
Chris@0 14 * For package type mediawiki-extension, cut off a trailing '-extension' if present and transform
Chris@0 15 * to CamelCase keeping existing uppercase chars.
Chris@0 16 *
Chris@0 17 * For package type mediawiki-skin, cut off a trailing '-skin' if present.
Chris@0 18 *
Chris@0 19 */
Chris@0 20 public function inflectPackageVars($vars)
Chris@0 21 {
Chris@0 22
Chris@0 23 if ($vars['type'] === 'mediawiki-extension') {
Chris@0 24 return $this->inflectExtensionVars($vars);
Chris@0 25 }
Chris@0 26
Chris@0 27 if ($vars['type'] === 'mediawiki-skin') {
Chris@0 28 return $this->inflectSkinVars($vars);
Chris@0 29 }
Chris@0 30
Chris@0 31 return $vars;
Chris@0 32 }
Chris@0 33
Chris@0 34 protected function inflectExtensionVars($vars)
Chris@0 35 {
Chris@0 36 $vars['name'] = preg_replace('/-extension$/', '', $vars['name']);
Chris@0 37 $vars['name'] = str_replace('-', ' ', $vars['name']);
Chris@0 38 $vars['name'] = str_replace(' ', '', ucwords($vars['name']));
Chris@0 39
Chris@0 40 return $vars;
Chris@0 41 }
Chris@0 42
Chris@0 43 protected function inflectSkinVars($vars)
Chris@0 44 {
Chris@0 45 $vars['name'] = preg_replace('/-skin$/', '', $vars['name']);
Chris@0 46
Chris@0 47 return $vars;
Chris@0 48 }
Chris@0 49
Chris@0 50 }