2 namespace Composer\Installers;
4 class PxcmsInstaller extends BaseInstaller
6 protected $locations = array(
7 'module' => 'app/Modules/{$name}/',
8 'theme' => 'themes/{$name}/',
12 * Format package name.
18 public function inflectPackageVars($vars)
20 if ($vars['type'] === 'pxcms-module') {
21 return $this->inflectModuleVars($vars);
24 if ($vars['type'] === 'pxcms-theme') {
25 return $this->inflectThemeVars($vars);
32 * For package type pxcms-module, cut off a trailing '-plugin' if present.
36 protected function inflectModuleVars($vars)
38 $vars['name'] = str_replace('pxcms-', '', $vars['name']); // strip out pxcms- just incase (legacy)
39 $vars['name'] = str_replace('module-', '', $vars['name']); // strip out module-
40 $vars['name'] = preg_replace('/-module$/', '', $vars['name']); // strip out -module
41 $vars['name'] = str_replace('-', '_', $vars['name']); // make -'s be _'s
42 $vars['name'] = ucwords($vars['name']); // make module name camelcased
49 * For package type pxcms-module, cut off a trailing '-plugin' if present.
53 protected function inflectThemeVars($vars)
55 $vars['name'] = str_replace('pxcms-', '', $vars['name']); // strip out pxcms- just incase (legacy)
56 $vars['name'] = str_replace('theme-', '', $vars['name']); // strip out theme-
57 $vars['name'] = preg_replace('/-theme$/', '', $vars['name']); // strip out -theme
58 $vars['name'] = str_replace('-', '_', $vars['name']); // make -'s be _'s
59 $vars['name'] = ucwords($vars['name']); // make module name camelcased