Yaffs site version 1.1
[yaffs-website] / vendor / composer / installers / src / Composer / Installers / AsgardInstaller.php
1 <?php
2 namespace Composer\Installers;
3
4 class AsgardInstaller extends BaseInstaller
5 {
6     protected $locations = array(
7         'module' => 'Modules/{$name}/',
8         'theme' => 'Themes/{$name}/'
9     );
10
11     /**
12      * Format package name.
13      *
14      * For package type asgard-module, cut off a trailing '-plugin' if present.
15      *
16      * For package type asgard-theme, cut off a trailing '-theme' if present.
17      *
18      */
19     public function inflectPackageVars($vars)
20     {
21         if ($vars['type'] === 'asgard-module') {
22             return $this->inflectPluginVars($vars);
23         }
24
25         if ($vars['type'] === 'asgard-theme') {
26             return $this->inflectThemeVars($vars);
27         }
28
29         return $vars;
30     }
31
32     protected function inflectPluginVars($vars)
33     {
34         $vars['name'] = preg_replace('/-module$/', '', $vars['name']);
35         $vars['name'] = str_replace(array('-', '_'), ' ', $vars['name']);
36         $vars['name'] = str_replace(' ', '', ucwords($vars['name']));
37
38         return $vars;
39     }
40
41     protected function inflectThemeVars($vars)
42     {
43         $vars['name'] = preg_replace('/-theme$/', '', $vars['name']);
44         $vars['name'] = str_replace(array('-', '_'), ' ', $vars['name']);
45         $vars['name'] = str_replace(' ', '', ucwords($vars['name']));
46
47         return $vars;
48     }
49 }