PluginProbe
Code Snippets / 3.0.0
Code Snippets v3.0.0
4.0.0-beta.2 3.10.2 3.10.1 3.10.0 3.10.0-beta.2 3.10.0-beta.1 4.0.0-beta.1 3.9.6 trunk 2.10.0 2.10.1 2.12.0 2.12.1 2.13.0 2.13.1 2.13.2 2.13.3 2.14.0 2.14.1 2.14.2 2.14.3 2.14.4 2.14.5 2.14.6 3.0.0 All 65 releases
code-snippets / vendor / composer / installers / src / Composer / Installers / SilverStripeInstaller.php

SilverStripeInstaller.php in Code Snippets 3.0.0, at vendor/composer/installers/src/Composer/Installers/SilverStripeInstaller.php

36 lines 1.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 namespace Composer\Installers;
3
4 use Composer\Package\PackageInterface;
5
6 class SilverStripeInstaller extends BaseInstaller
7 {
8 protected $locations = array(
9 'module' => '{$name}/',
10 'theme' => 'themes/{$name}/',
11 );
12
13 /**
14 * Return the install path based on package type.
15 *
16 * Relies on built-in BaseInstaller behaviour with one exception: silverstripe/framework
17 * must be installed to 'sapphire' and not 'framework' if the version is <3.0.0
18 *
19 * @param PackageInterface $package
20 * @param string $frameworkType
21 * @return string
22 */
23 public function getInstallPath(PackageInterface $package, $frameworkType = '')
24 {
25 if (
26 $package->getName() == 'silverstripe/framework'
27 && preg_match('/^\d+\.\d+\.\d+/', $package->getVersion())
28 && version_compare($package->getVersion(), '2.999.999') < 0
29 ) {
30 return $this->templatePath($this->locations['module'], array('name' => 'sapphire'));
31 }
32
33 return parent::getInstallPath($package, $frameworkType);
34 }
35 }
36