Changeset 2046347
- Timestamp:
- 03/08/2019 01:36:27 AM (7 years ago)
- Location:
- featured-image-caption/trunk
- Files:
-
- 29 edited
-
featured-image-caption.php (modified) (4 diffs)
-
readme.txt (modified) (3 diffs)
-
vendor/autoload.php (modified) (1 diff)
-
vendor/composer/ClassLoader.php (modified) (6 diffs)
-
vendor/composer/LICENSE (modified) (1 diff)
-
vendor/composer/autoload_classmap.php (modified) (3 diffs)
-
vendor/composer/autoload_namespaces.php (modified) (1 diff)
-
vendor/composer/autoload_psr4.php (modified) (1 diff)
-
vendor/composer/autoload_real.php (modified) (3 diffs)
-
vendor/composer/autoload_static.php (modified) (7 diffs)
-
vendor/composer/installed.json (modified) (6 diffs)
-
vendor/composer/installers/composer.json (modified) (6 diffs)
-
vendor/composer/installers/src/Composer/Installers/AsgardInstaller.php (modified) (2 diffs)
-
vendor/composer/installers/src/Composer/Installers/BaseInstaller.php (modified) (5 diffs)
-
vendor/composer/installers/src/Composer/Installers/BitrixInstaller.php (modified) (1 diff)
-
vendor/composer/installers/src/Composer/Installers/CakePHPInstaller.php (modified) (4 diffs)
-
vendor/composer/installers/src/Composer/Installers/Concrete5Installer.php (modified) (1 diff)
-
vendor/composer/installers/src/Composer/Installers/CraftInstaller.php (modified) (1 diff)
-
vendor/composer/installers/src/Composer/Installers/DrupalInstaller.php (modified) (1 diff)
-
vendor/composer/installers/src/Composer/Installers/Installer.php (modified) (8 diffs)
-
vendor/composer/installers/src/Composer/Installers/KirbyInstaller.php (modified) (1 diff)
-
vendor/composer/installers/src/Composer/Installers/MediaWikiInstaller.php (modified) (1 diff)
-
vendor/composer/installers/src/Composer/Installers/MoodleInstaller.php (modified) (4 diffs)
-
vendor/composer/installers/src/Composer/Installers/OctoberInstaller.php (modified) (2 diffs)
-
vendor/composer/installers/src/Composer/Installers/OxidInstaller.php (modified) (2 diffs)
-
vendor/composer/installers/src/Composer/Installers/ShopwareInstaller.php (modified) (2 diffs)
-
vendor/composer/installers/src/Composer/Installers/SilverStripeInstaller.php (modified) (1 diff)
-
vendor/composer/installers/src/Composer/Installers/TYPO3CmsInstaller.php (modified) (1 diff)
-
vendor/composer/installers/src/Composer/Installers/WordPressInstaller.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
featured-image-caption/trunk/featured-image-caption.php
r1555793 r2046347 4 4 Plugin URI: https://christiaanconover.com/code/wp-featured-image-caption?utm_source=wp-featured-image-caption 5 5 Description: Set a caption for the featured image of a post that can be displayed on your site. 6 Version: 0.8. 66 Version: 0.8.7 7 7 Author: Christiaan Conover 8 8 Author URI: https://christiaanconover.com?utm_source=wp-featured-image-caption-author … … 19 19 define( 'CCFIC_ID', 'ccfic' ); // Plugin ID 20 20 define( 'CCFIC_NAME', 'Featured Image Caption' ); // Plugin name 21 define( 'CCFIC_VERSION', '0.8. 6' ); // Plugin version21 define( 'CCFIC_VERSION', '0.8.7' ); // Plugin version 22 22 define( 'CCFIC_WPVER', '3.5' ); // Minimum required version of WordPress 23 23 define( 'CCFIC_KEY', 'cc_featured_image_caption' ); // Database key (legacy support, ID now used) … … 25 25 26 26 // Check that the version of PHP is sufficient 27 if ( version_compare( phpversion(), '5. 3', '<' ) ) {27 if ( version_compare( phpversion(), '5.6.0', '<' ) ) { 28 28 deactivate_plugins( plugin_basename( CCFIC_PATH ) ); 29 29 wp_die( 'PHP version '.phpversion().' is unsupported by ' . CCFIC_NAME . ', must be version 5.3 or newer.' ); … … 41 41 { 42 42 // Composer autoloader 43 require_once 'vendor/autoload.php';43 require_once __DIR__ . '/vendor/autoload.php'; 44 44 45 45 // Instantiate the plugin -
featured-image-caption/trunk/readme.txt
r1555793 r2046347 4 4 Tags: image, caption, featured image, shortcode 5 5 Requires at least: 3.5 6 Tested up to: 4.77 Stable tag: 0.8. 66 Tested up to: 5.1 7 Stable tag: 0.8.7 8 8 License: GPLv2 9 9 License URI: https://www.gnu.org/licenses/gpl-2.0.html … … 33 33 34 34 == Upgrade Notice == 35 36 = 0.8.7 = 37 Fix an error caused by a relative include path. 35 38 36 39 = 0.8.6 = … … 104 107 105 108 == Changelog == 109 110 = 0.8.7 = 111 Fix an error caused by a relative include path. 106 112 107 113 = 0.8.6 = -
featured-image-caption/trunk/vendor/autoload.php
r1555793 r2046347 5 5 require_once __DIR__ . '/composer/autoload_real.php'; 6 6 7 return ComposerAutoloaderInit aab6709e267fa9869f9fc1168a2442da::getLoader();7 return ComposerAutoloaderInit935c65344b2a1324d9bf8271989976b2::getLoader(); -
featured-image-caption/trunk/vendor/composer/ClassLoader.php
r1555793 r2046347 56 56 private $classMapAuthoritative = false; 57 57 private $missingClasses = array(); 58 private $apcuPrefix; 58 59 59 60 public function getPrefixes() … … 273 274 274 275 /** 276 * APCu prefix to use to cache found/not-found classes, if the extension is enabled. 277 * 278 * @param string|null $apcuPrefix 279 */ 280 public function setApcuPrefix($apcuPrefix) 281 { 282 $this->apcuPrefix = function_exists('apcu_fetch') && filter_var(ini_get('apc.enabled'), FILTER_VALIDATE_BOOLEAN) ? $apcuPrefix : null; 283 } 284 285 /** 286 * The APCu prefix in use, or null if APCu caching is not enabled. 287 * 288 * @return string|null 289 */ 290 public function getApcuPrefix() 291 { 292 return $this->apcuPrefix; 293 } 294 295 /** 275 296 * Registers this instance as an autoloader. 276 297 * … … 314 335 public function findFile($class) 315 336 { 316 // work around for PHP 5.3.0 - 5.3.2 https://bugs.php.net/50731317 if ('\\' == $class[0]) {318 $class = substr($class, 1);319 }320 321 337 // class map lookup 322 338 if (isset($this->classMap[$class])) { … … 326 342 return false; 327 343 } 344 if (null !== $this->apcuPrefix) { 345 $file = apcu_fetch($this->apcuPrefix.$class, $hit); 346 if ($hit) { 347 return $file; 348 } 349 } 328 350 329 351 $file = $this->findFileWithExtension($class, '.php'); … … 334 356 } 335 357 358 if (null !== $this->apcuPrefix) { 359 apcu_add($this->apcuPrefix.$class, $file); 360 } 361 336 362 if (false === $file) { 337 363 // Remember that this class does not exist. … … 349 375 $first = $class[0]; 350 376 if (isset($this->prefixLengthsPsr4[$first])) { 351 foreach ($this->prefixLengthsPsr4[$first] as $prefix => $length) { 352 if (0 === strpos($class, $prefix)) { 353 foreach ($this->prefixDirsPsr4[$prefix] as $dir) { 354 if (file_exists($file = $dir . DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $length))) { 377 $subPath = $class; 378 while (false !== $lastPos = strrpos($subPath, '\\')) { 379 $subPath = substr($subPath, 0, $lastPos); 380 $search = $subPath . '\\'; 381 if (isset($this->prefixDirsPsr4[$search])) { 382 $pathEnd = DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $lastPos + 1); 383 foreach ($this->prefixDirsPsr4[$search] as $dir) { 384 if (file_exists($file = $dir . $pathEnd)) { 355 385 return $file; 356 386 } -
featured-image-caption/trunk/vendor/composer/LICENSE
r1392442 r2046347 1 1 2 Copyright (c) 2016Nils Adermann, Jordi Boggiano2 Copyright (c) Nils Adermann, Jordi Boggiano 3 3 4 4 Permission is hereby granted, free of charge, to any person obtaining a copy -
featured-image-caption/trunk/vendor/composer/autoload_classmap.php
r1392442 r2046347 11 11 'Composer\\Installers\\AnnotateCmsInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/AnnotateCmsInstaller.php', 12 12 'Composer\\Installers\\AsgardInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/AsgardInstaller.php', 13 'Composer\\Installers\\AttogramInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/AttogramInstaller.php', 13 14 'Composer\\Installers\\BaseInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/BaseInstaller.php', 14 15 'Composer\\Installers\\BitrixInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/BitrixInstaller.php', 16 'Composer\\Installers\\BonefishInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/BonefishInstaller.php', 15 17 'Composer\\Installers\\CakePHPInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/CakePHPInstaller.php', 16 18 'Composer\\Installers\\ChefInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/ChefInstaller.php', 19 'Composer\\Installers\\CiviCrmInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/CiviCrmInstaller.php', 17 20 'Composer\\Installers\\ClanCatsFrameworkInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/ClanCatsFrameworkInstaller.php', 21 'Composer\\Installers\\CockpitInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/CockpitInstaller.php', 18 22 'Composer\\Installers\\CodeIgniterInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/CodeIgniterInstaller.php', 19 23 'Composer\\Installers\\Concrete5Installer' => $vendorDir . '/composer/installers/src/Composer/Installers/Concrete5Installer.php', 20 24 'Composer\\Installers\\CraftInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/CraftInstaller.php', 21 25 'Composer\\Installers\\CroogoInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/CroogoInstaller.php', 26 'Composer\\Installers\\DecibelInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/DecibelInstaller.php', 22 27 'Composer\\Installers\\DokuWikiInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/DokuWikiInstaller.php', 23 28 'Composer\\Installers\\DolibarrInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/DolibarrInstaller.php', 24 29 'Composer\\Installers\\DrupalInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/DrupalInstaller.php', 25 30 'Composer\\Installers\\ElggInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/ElggInstaller.php', 31 'Composer\\Installers\\EliasisInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/EliasisInstaller.php', 32 'Composer\\Installers\\ExpressionEngineInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/ExpressionEngineInstaller.php', 33 'Composer\\Installers\\EzPlatformInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/EzPlatformInstaller.php', 26 34 'Composer\\Installers\\FuelInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/FuelInstaller.php', 27 35 'Composer\\Installers\\FuelphpInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/FuelphpInstaller.php', 28 36 'Composer\\Installers\\GravInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/GravInstaller.php', 29 37 'Composer\\Installers\\HuradInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/HuradInstaller.php', 38 'Composer\\Installers\\ImageCMSInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/ImageCMSInstaller.php', 30 39 'Composer\\Installers\\Installer' => $vendorDir . '/composer/installers/src/Composer/Installers/Installer.php', 40 'Composer\\Installers\\ItopInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/ItopInstaller.php', 31 41 'Composer\\Installers\\JoomlaInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/JoomlaInstaller.php', 42 'Composer\\Installers\\KanboardInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/KanboardInstaller.php', 32 43 'Composer\\Installers\\KirbyInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/KirbyInstaller.php', 44 'Composer\\Installers\\KodiCMSInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/KodiCMSInstaller.php', 33 45 'Composer\\Installers\\KohanaInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/KohanaInstaller.php', 46 'Composer\\Installers\\LanManagementSystemInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/LanManagementSystemInstaller.php', 34 47 'Composer\\Installers\\LaravelInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/LaravelInstaller.php', 48 'Composer\\Installers\\LavaLiteInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/LavaLiteInstaller.php', 35 49 'Composer\\Installers\\LithiumInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/LithiumInstaller.php', 36 50 'Composer\\Installers\\MODULEWorkInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/MODULEWorkInstaller.php', 37 51 'Composer\\Installers\\MODXEvoInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/MODXEvoInstaller.php', 38 52 'Composer\\Installers\\MagentoInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/MagentoInstaller.php', 53 'Composer\\Installers\\MajimaInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/MajimaInstaller.php', 39 54 'Composer\\Installers\\MakoInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/MakoInstaller.php', 55 'Composer\\Installers\\MauticInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/MauticInstaller.php', 56 'Composer\\Installers\\MayaInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/MayaInstaller.php', 40 57 'Composer\\Installers\\MediaWikiInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/MediaWikiInstaller.php', 41 58 'Composer\\Installers\\MicroweberInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/MicroweberInstaller.php', 59 'Composer\\Installers\\ModxInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/ModxInstaller.php', 42 60 'Composer\\Installers\\MoodleInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/MoodleInstaller.php', 43 61 'Composer\\Installers\\OctoberInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/OctoberInstaller.php', 62 'Composer\\Installers\\OntoWikiInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/OntoWikiInstaller.php', 63 'Composer\\Installers\\OsclassInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/OsclassInstaller.php', 44 64 'Composer\\Installers\\OxidInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/OxidInstaller.php', 45 65 'Composer\\Installers\\PPIInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/PPIInstaller.php', 66 'Composer\\Installers\\PhiftyInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/PhiftyInstaller.php', 46 67 'Composer\\Installers\\PhpBBInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/PhpBBInstaller.php', 47 68 'Composer\\Installers\\PimcoreInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/PimcoreInstaller.php', 48 69 'Composer\\Installers\\PiwikInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/PiwikInstaller.php', 70 'Composer\\Installers\\PlentymarketsInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/PlentymarketsInstaller.php', 71 'Composer\\Installers\\Plugin' => $vendorDir . '/composer/installers/src/Composer/Installers/Plugin.php', 72 'Composer\\Installers\\PortoInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/PortoInstaller.php', 49 73 'Composer\\Installers\\PrestashopInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/PrestashopInstaller.php', 50 74 'Composer\\Installers\\PuppetInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/PuppetInstaller.php', 75 'Composer\\Installers\\PxcmsInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/PxcmsInstaller.php', 76 'Composer\\Installers\\RadPHPInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/RadPHPInstaller.php', 77 'Composer\\Installers\\ReIndexInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/ReIndexInstaller.php', 51 78 'Composer\\Installers\\RedaxoInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/RedaxoInstaller.php', 52 79 'Composer\\Installers\\RoundcubeInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/RoundcubeInstaller.php', … … 54 81 'Composer\\Installers\\ShopwareInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/ShopwareInstaller.php', 55 82 'Composer\\Installers\\SilverStripeInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/SilverStripeInstaller.php', 83 'Composer\\Installers\\SiteDirectInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/SiteDirectInstaller.php', 84 'Composer\\Installers\\SyDESInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/SyDESInstaller.php', 56 85 'Composer\\Installers\\Symfony1Installer' => $vendorDir . '/composer/installers/src/Composer/Installers/Symfony1Installer.php', 57 86 'Composer\\Installers\\TYPO3CmsInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/TYPO3CmsInstaller.php', … … 59 88 'Composer\\Installers\\TheliaInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/TheliaInstaller.php', 60 89 'Composer\\Installers\\TuskInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/TuskInstaller.php', 90 'Composer\\Installers\\UserFrostingInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/UserFrostingInstaller.php', 91 'Composer\\Installers\\VanillaInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/VanillaInstaller.php', 92 'Composer\\Installers\\VgmcpInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/VgmcpInstaller.php', 61 93 'Composer\\Installers\\WHMCSInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/WHMCSInstaller.php', 62 94 'Composer\\Installers\\WolfCMSInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/WolfCMSInstaller.php', 63 95 'Composer\\Installers\\WordPressInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/WordPressInstaller.php', 96 'Composer\\Installers\\YawikInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/YawikInstaller.php', 64 97 'Composer\\Installers\\ZendInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/ZendInstaller.php', 65 98 'Composer\\Installers\\ZikulaInstaller' => $vendorDir . '/composer/installers/src/Composer/Installers/ZikulaInstaller.php', -
featured-image-caption/trunk/vendor/composer/autoload_namespaces.php
r1183383 r2046347 7 7 8 8 return array( 9 'Composer\\Installers\\' => array($vendorDir . '/composer/installers/src'),10 9 ); -
featured-image-caption/trunk/vendor/composer/autoload_psr4.php
r1183383 r2046347 8 8 return array( 9 9 'cconover\\FeaturedImageCaption\\' => array($baseDir . '/classes'), 10 'Composer\\Installers\\' => array($vendorDir . '/composer/installers/src/Composer/Installers'), 10 11 ); -
featured-image-caption/trunk/vendor/composer/autoload_real.php
r1555793 r2046347 3 3 // autoload_real.php @generated by Composer 4 4 5 class ComposerAutoloaderInit aab6709e267fa9869f9fc1168a2442da5 class ComposerAutoloaderInit935c65344b2a1324d9bf8271989976b2 6 6 { 7 7 private static $loader; … … 20 20 } 21 21 22 spl_autoload_register(array('ComposerAutoloaderInit aab6709e267fa9869f9fc1168a2442da', 'loadClassLoader'), true, true);22 spl_autoload_register(array('ComposerAutoloaderInit935c65344b2a1324d9bf8271989976b2', 'loadClassLoader'), true, true); 23 23 self::$loader = $loader = new \Composer\Autoload\ClassLoader(); 24 spl_autoload_unregister(array('ComposerAutoloaderInit aab6709e267fa9869f9fc1168a2442da', 'loadClassLoader'));24 spl_autoload_unregister(array('ComposerAutoloaderInit935c65344b2a1324d9bf8271989976b2', 'loadClassLoader')); 25 25 26 26 $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded()); … … 28 28 require_once __DIR__ . '/autoload_static.php'; 29 29 30 call_user_func(\Composer\Autoload\ComposerStaticInit aab6709e267fa9869f9fc1168a2442da::getInitializer($loader));30 call_user_func(\Composer\Autoload\ComposerStaticInit935c65344b2a1324d9bf8271989976b2::getInitializer($loader)); 31 31 } else { 32 32 $map = require __DIR__ . '/autoload_namespaces.php'; -
featured-image-caption/trunk/vendor/composer/autoload_static.php
r1555793 r2046347 5 5 namespace Composer\Autoload; 6 6 7 class ComposerStaticInit aab6709e267fa9869f9fc1168a2442da7 class ComposerStaticInit935c65344b2a1324d9bf8271989976b2 8 8 { 9 9 public static $prefixLengthsPsr4 = array ( … … 11 11 array ( 12 12 'cconover\\FeaturedImageCaption\\' => 30, 13 ), 14 'C' => 15 array ( 16 'Composer\\Installers\\' => 20, 13 17 ), 14 18 ); … … 19 23 0 => __DIR__ . '/../..' . '/classes', 20 24 ), 21 ); 22 23 public static $prefixesPsr0 = array ( 24 'C' => 25 'Composer\\Installers\\' => 25 26 array ( 26 'Composer\\Installers\\' => 27 array ( 28 0 => __DIR__ . '/..' . '/composer/installers/src', 29 ), 27 0 => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers', 30 28 ), 31 29 ); … … 36 34 'Composer\\Installers\\AnnotateCmsInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/AnnotateCmsInstaller.php', 37 35 'Composer\\Installers\\AsgardInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/AsgardInstaller.php', 36 'Composer\\Installers\\AttogramInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/AttogramInstaller.php', 38 37 'Composer\\Installers\\BaseInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/BaseInstaller.php', 39 38 'Composer\\Installers\\BitrixInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/BitrixInstaller.php', 39 'Composer\\Installers\\BonefishInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/BonefishInstaller.php', 40 40 'Composer\\Installers\\CakePHPInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/CakePHPInstaller.php', 41 41 'Composer\\Installers\\ChefInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/ChefInstaller.php', 42 'Composer\\Installers\\CiviCrmInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/CiviCrmInstaller.php', 42 43 'Composer\\Installers\\ClanCatsFrameworkInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/ClanCatsFrameworkInstaller.php', 44 'Composer\\Installers\\CockpitInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/CockpitInstaller.php', 43 45 'Composer\\Installers\\CodeIgniterInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/CodeIgniterInstaller.php', 44 46 'Composer\\Installers\\Concrete5Installer' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/Concrete5Installer.php', 45 47 'Composer\\Installers\\CraftInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/CraftInstaller.php', 46 48 'Composer\\Installers\\CroogoInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/CroogoInstaller.php', 49 'Composer\\Installers\\DecibelInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/DecibelInstaller.php', 47 50 'Composer\\Installers\\DokuWikiInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/DokuWikiInstaller.php', 48 51 'Composer\\Installers\\DolibarrInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/DolibarrInstaller.php', 49 52 'Composer\\Installers\\DrupalInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/DrupalInstaller.php', 50 53 'Composer\\Installers\\ElggInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/ElggInstaller.php', 54 'Composer\\Installers\\EliasisInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/EliasisInstaller.php', 55 'Composer\\Installers\\ExpressionEngineInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/ExpressionEngineInstaller.php', 56 'Composer\\Installers\\EzPlatformInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/EzPlatformInstaller.php', 51 57 'Composer\\Installers\\FuelInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/FuelInstaller.php', 52 58 'Composer\\Installers\\FuelphpInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/FuelphpInstaller.php', 53 59 'Composer\\Installers\\GravInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/GravInstaller.php', 54 60 'Composer\\Installers\\HuradInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/HuradInstaller.php', 61 'Composer\\Installers\\ImageCMSInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/ImageCMSInstaller.php', 55 62 'Composer\\Installers\\Installer' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/Installer.php', 63 'Composer\\Installers\\ItopInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/ItopInstaller.php', 56 64 'Composer\\Installers\\JoomlaInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/JoomlaInstaller.php', 65 'Composer\\Installers\\KanboardInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/KanboardInstaller.php', 57 66 'Composer\\Installers\\KirbyInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/KirbyInstaller.php', 67 'Composer\\Installers\\KodiCMSInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/KodiCMSInstaller.php', 58 68 'Composer\\Installers\\KohanaInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/KohanaInstaller.php', 69 'Composer\\Installers\\LanManagementSystemInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/LanManagementSystemInstaller.php', 59 70 'Composer\\Installers\\LaravelInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/LaravelInstaller.php', 71 'Composer\\Installers\\LavaLiteInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/LavaLiteInstaller.php', 60 72 'Composer\\Installers\\LithiumInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/LithiumInstaller.php', 61 73 'Composer\\Installers\\MODULEWorkInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/MODULEWorkInstaller.php', 62 74 'Composer\\Installers\\MODXEvoInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/MODXEvoInstaller.php', 63 75 'Composer\\Installers\\MagentoInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/MagentoInstaller.php', 76 'Composer\\Installers\\MajimaInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/MajimaInstaller.php', 64 77 'Composer\\Installers\\MakoInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/MakoInstaller.php', 78 'Composer\\Installers\\MauticInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/MauticInstaller.php', 79 'Composer\\Installers\\MayaInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/MayaInstaller.php', 65 80 'Composer\\Installers\\MediaWikiInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/MediaWikiInstaller.php', 66 81 'Composer\\Installers\\MicroweberInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/MicroweberInstaller.php', 82 'Composer\\Installers\\ModxInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/ModxInstaller.php', 67 83 'Composer\\Installers\\MoodleInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/MoodleInstaller.php', 68 84 'Composer\\Installers\\OctoberInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/OctoberInstaller.php', 85 'Composer\\Installers\\OntoWikiInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/OntoWikiInstaller.php', 86 'Composer\\Installers\\OsclassInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/OsclassInstaller.php', 69 87 'Composer\\Installers\\OxidInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/OxidInstaller.php', 70 88 'Composer\\Installers\\PPIInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/PPIInstaller.php', 89 'Composer\\Installers\\PhiftyInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/PhiftyInstaller.php', 71 90 'Composer\\Installers\\PhpBBInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/PhpBBInstaller.php', 72 91 'Composer\\Installers\\PimcoreInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/PimcoreInstaller.php', 73 92 'Composer\\Installers\\PiwikInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/PiwikInstaller.php', 93 'Composer\\Installers\\PlentymarketsInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/PlentymarketsInstaller.php', 94 'Composer\\Installers\\Plugin' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/Plugin.php', 95 'Composer\\Installers\\PortoInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/PortoInstaller.php', 74 96 'Composer\\Installers\\PrestashopInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/PrestashopInstaller.php', 75 97 'Composer\\Installers\\PuppetInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/PuppetInstaller.php', 98 'Composer\\Installers\\PxcmsInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/PxcmsInstaller.php', 99 'Composer\\Installers\\RadPHPInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/RadPHPInstaller.php', 100 'Composer\\Installers\\ReIndexInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/ReIndexInstaller.php', 76 101 'Composer\\Installers\\RedaxoInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/RedaxoInstaller.php', 77 102 'Composer\\Installers\\RoundcubeInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/RoundcubeInstaller.php', … … 79 104 'Composer\\Installers\\ShopwareInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/ShopwareInstaller.php', 80 105 'Composer\\Installers\\SilverStripeInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/SilverStripeInstaller.php', 106 'Composer\\Installers\\SiteDirectInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/SiteDirectInstaller.php', 107 'Composer\\Installers\\SyDESInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/SyDESInstaller.php', 81 108 'Composer\\Installers\\Symfony1Installer' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/Symfony1Installer.php', 82 109 'Composer\\Installers\\TYPO3CmsInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/TYPO3CmsInstaller.php', … … 84 111 'Composer\\Installers\\TheliaInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/TheliaInstaller.php', 85 112 'Composer\\Installers\\TuskInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/TuskInstaller.php', 113 'Composer\\Installers\\UserFrostingInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/UserFrostingInstaller.php', 114 'Composer\\Installers\\VanillaInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/VanillaInstaller.php', 115 'Composer\\Installers\\VgmcpInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/VgmcpInstaller.php', 86 116 'Composer\\Installers\\WHMCSInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/WHMCSInstaller.php', 87 117 'Composer\\Installers\\WolfCMSInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/WolfCMSInstaller.php', 88 118 'Composer\\Installers\\WordPressInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/WordPressInstaller.php', 119 'Composer\\Installers\\YawikInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/YawikInstaller.php', 89 120 'Composer\\Installers\\ZendInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/ZendInstaller.php', 90 121 'Composer\\Installers\\ZikulaInstaller' => __DIR__ . '/..' . '/composer/installers/src/Composer/Installers/ZikulaInstaller.php', … … 102 133 { 103 134 return \Closure::bind(function () use ($loader) { 104 $loader->prefixLengthsPsr4 = ComposerStaticInitaab6709e267fa9869f9fc1168a2442da::$prefixLengthsPsr4; 105 $loader->prefixDirsPsr4 = ComposerStaticInitaab6709e267fa9869f9fc1168a2442da::$prefixDirsPsr4; 106 $loader->prefixesPsr0 = ComposerStaticInitaab6709e267fa9869f9fc1168a2442da::$prefixesPsr0; 107 $loader->classMap = ComposerStaticInitaab6709e267fa9869f9fc1168a2442da::$classMap; 135 $loader->prefixLengthsPsr4 = ComposerStaticInit935c65344b2a1324d9bf8271989976b2::$prefixLengthsPsr4; 136 $loader->prefixDirsPsr4 = ComposerStaticInit935c65344b2a1324d9bf8271989976b2::$prefixDirsPsr4; 137 $loader->classMap = ComposerStaticInit935c65344b2a1324d9bf8271989976b2::$classMap; 108 138 109 139 }, null, ClassLoader::class); -
featured-image-caption/trunk/vendor/composer/installed.json
r1183383 r2046347 2 2 { 3 3 "name": "composer/installers", 4 "version": "v1. 0.21",5 "version_normalized": "1. 0.21.0",4 "version": "v1.6.0", 5 "version_normalized": "1.6.0.0", 6 6 "source": { 7 7 "type": "git", 8 8 "url": "https://github.com/composer/installers.git", 9 "reference": " d64e23fce42a4063d63262b19b8e7c0f3b5e4c45"9 "reference": "cfcca6b1b60bc4974324efb5783c13dca6932b5b" 10 10 }, 11 11 "dist": { 12 12 "type": "zip", 13 "url": "https://api.github.com/repos/composer/installers/zipball/ d64e23fce42a4063d63262b19b8e7c0f3b5e4c45",14 "reference": " d64e23fce42a4063d63262b19b8e7c0f3b5e4c45",13 "url": "https://api.github.com/repos/composer/installers/zipball/cfcca6b1b60bc4974324efb5783c13dca6932b5b", 14 "reference": "cfcca6b1b60bc4974324efb5783c13dca6932b5b", 15 15 "shasum": "" 16 }, 17 "require": { 18 "composer-plugin-api": "^1.0" 16 19 }, 17 20 "replace": { … … 21 24 "require-dev": { 22 25 "composer/composer": "1.0.*@dev", 23 "phpunit/phpunit": " 4.1.*"26 "phpunit/phpunit": "^4.8.36" 24 27 }, 25 "time": "201 5-02-18 17:17:01",26 "type": "composer- installer",28 "time": "2018-08-27T06:10:37+00:00", 29 "type": "composer-plugin", 27 30 "extra": { 28 "class": "Composer\\Installers\\ Installer",31 "class": "Composer\\Installers\\Plugin", 29 32 "branch-alias": { 30 33 "dev-master": "1.0-dev" … … 33 36 "installation-source": "dist", 34 37 "autoload": { 35 "psr- 0": {36 "Composer\\Installers\\": "src/ "38 "psr-4": { 39 "Composer\\Installers\\": "src/Composer/Installers" 37 40 } 38 41 }, … … 49 52 ], 50 53 "description": "A multi-framework Composer library installer", 51 "homepage": "http ://composer.github.com/installers/",54 "homepage": "https://composer.github.io/installers/", 52 55 "keywords": [ 53 56 "Craft", 54 57 "Dolibarr", 58 "Eliasis", 55 59 "Hurad", 60 "ImageCMS", 61 "Kanboard", 62 "Lan Management System", 56 63 "MODX Evo", 64 "Mautic", 65 "Maya", 57 66 "OXID", 67 "Plentymarkets", 68 "Porto", 69 "RadPHP", 58 70 "SMF", 59 71 "Thelia", … … 62 74 "aimeos", 63 75 "annotatecms", 76 "attogram", 64 77 "bitrix", 65 78 "cakephp", 66 79 "chef", 80 "cockpit", 67 81 "codeigniter", 68 82 "concrete5", … … 70 84 "dokuwiki", 71 85 "drupal", 86 "eZ Platform", 72 87 "elgg", 88 "expressionengine", 73 89 "fuelphp", 74 90 "grav", 75 91 "installer", 92 "itop", 76 93 "joomla", 77 94 "kohana", 78 95 "laravel", 96 "lavalite", 79 97 "lithium", 80 98 "magento", 99 "majima", 81 100 "mako", 82 101 "mediawiki", 83 102 "modulework", 103 "modx", 84 104 "moodle", 105 "osclass", 85 106 "phpbb", 86 107 "piwik", 87 108 "ppi", 88 109 "puppet", 110 "pxcms", 111 "reindex", 89 112 "roundcube", 90 113 "shopware", 91 114 "silverstripe", 115 "sydes", 92 116 "symfony", 93 117 "typo3", 94 118 "wordpress", 119 "yawik", 95 120 "zend", 96 121 "zikula" -
featured-image-caption/trunk/vendor/composer/installers/composer.json
r1183383 r2046347 1 1 { 2 2 "name": "composer/installers", 3 "type": "composer- installer",3 "type": "composer-plugin", 4 4 "license": "MIT", 5 5 "description": "A multi-framework Composer library installer", … … 9 9 "AGL", 10 10 "AnnotateCms", 11 "Attogram", 11 12 "Bitrix", 12 13 "CakePHP", 13 14 "Chef", 15 "Cockpit", 14 16 "CodeIgniter", 15 17 "concrete5", … … 20 22 "Drupal", 21 23 "Elgg", 24 "Eliasis", 25 "ExpressionEngine", 26 "eZ Platform", 22 27 "FuelPHP", 23 28 "Grav", 24 29 "Hurad", 30 "ImageCMS", 31 "iTop", 25 32 "Joomla", 33 "Kanboard", 26 34 "Kohana", 35 "Lan Management System", 27 36 "Laravel", 37 "Lavalite", 28 38 "Lithium", 29 39 "Magento", 40 "majima", 30 41 "Mako", 42 "Mautic", 43 "Maya", 44 "MODX", 31 45 "MODX Evo", 32 46 "MediaWiki", 33 47 "OXID", 48 "osclass", 34 49 "MODULEWork", 35 50 "Moodle", 36 51 "Piwik", 52 "pxcms", 37 53 "phpBB", 54 "Plentymarkets", 38 55 "PPI", 39 56 "Puppet", 57 "Porto", 58 "RadPHP", 59 "ReIndex", 40 60 "Roundcube", 41 61 "shopware", 42 62 "SilverStripe", 43 63 "SMF", 64 "SyDES", 44 65 "symfony", 45 66 "Thelia", … … 47 68 "WolfCMS", 48 69 "WordPress", 70 "YAWIK", 49 71 "Zend", 50 72 "Zikula" 51 73 ], 52 "homepage": "http ://composer.github.com/installers/",74 "homepage": "https://composer.github.io/installers/", 53 75 "authors": [ 54 76 { … … 59 81 ], 60 82 "autoload": { 61 "psr- 0": { "Composer\\Installers\\": "src/" }83 "psr-4": { "Composer\\Installers\\": "src/Composer/Installers" } 62 84 }, 63 85 "extra": { 64 "class": "Composer\\Installers\\ Installer",86 "class": "Composer\\Installers\\Plugin", 65 87 "branch-alias": { 66 88 "dev-master": "1.0-dev" … … 71 93 "roundcube/plugin-installer": "*" 72 94 }, 95 "require": { 96 "composer-plugin-api": "^1.0" 97 }, 73 98 "require-dev": { 74 99 "composer/composer": "1.0.*@dev", 75 "phpunit/phpunit": "4.1.*" 100 "phpunit/phpunit": "^4.8.36" 101 }, 102 "scripts": { 103 "test": "phpunit" 76 104 } 77 105 } -
featured-image-caption/trunk/vendor/composer/installers/src/Composer/Installers/AsgardInstaller.php
r1183383 r2046347 32 32 protected function inflectPluginVars($vars) 33 33 { 34 $vars['name'] = ucfirst(preg_replace('/-module/', '', $vars['name'])); 34 $vars['name'] = preg_replace('/-module$/', '', $vars['name']); 35 $vars['name'] = str_replace(array('-', '_'), ' ', $vars['name']); 36 $vars['name'] = str_replace(' ', '', ucwords($vars['name'])); 35 37 36 38 return $vars; … … 39 41 protected function inflectThemeVars($vars) 40 42 { 41 $vars['name'] = ucfirst(preg_replace('/-theme$/', '', $vars['name'])); 43 $vars['name'] = preg_replace('/-theme$/', '', $vars['name']); 44 $vars['name'] = str_replace(array('-', '_'), ' ', $vars['name']); 45 $vars['name'] = str_replace(' ', '', ucwords($vars['name'])); 42 46 43 47 return $vars; -
featured-image-caption/trunk/vendor/composer/installers/src/Composer/Installers/BaseInstaller.php
r1183383 r2046347 2 2 namespace Composer\Installers; 3 3 4 use Composer\IO\IOInterface; 4 5 use Composer\Composer; 5 6 use Composer\Package\PackageInterface; … … 10 11 protected $composer; 11 12 protected $package; 13 protected $io; 12 14 13 15 /** … … 16 18 * @param PackageInterface $package 17 19 * @param Composer $composer 20 * @param IOInterface $io 18 21 */ 19 public function __construct(PackageInterface $package = null, Composer $composer = null )22 public function __construct(PackageInterface $package = null, Composer $composer = null, IOInterface $io = null) 20 23 { 21 24 $this->composer = $composer; 22 25 $this->package = $package; 26 $this->io = $io; 23 27 } 24 28 … … 52 56 $extra = $this->composer->getPackage()->getExtra(); 53 57 if (!empty($extra['installer-paths'])) { 54 $customPath = $this->mapCustomInstallPaths($extra['installer-paths'], $prettyName, $type );58 $customPath = $this->mapCustomInstallPaths($extra['installer-paths'], $prettyName, $type, $vendor); 55 59 if ($customPath !== false) { 56 60 return $this->templatePath($customPath, $availableVars); … … 117 121 * @param string $name 118 122 * @param string $type 123 * @param string $vendor = NULL 119 124 * @return string 120 125 */ 121 protected function mapCustomInstallPaths(array $paths, $name, $type )126 protected function mapCustomInstallPaths(array $paths, $name, $type, $vendor = NULL) 122 127 { 123 128 foreach ($paths as $path => $names) { 124 if (in_array($name, $names) || in_array('type:' . $type, $names) ) {129 if (in_array($name, $names) || in_array('type:' . $type, $names) || in_array('vendor:' . $vendor, $names)) { 125 130 return $path; 126 131 } -
featured-image-caption/trunk/vendor/composer/installers/src/Composer/Installers/BitrixInstaller.php
r1183383 r2046347 1 1 <?php 2 2 3 namespace Composer\Installers; 3 4 5 use Composer\Util\Filesystem; 6 7 /** 8 * Installer for Bitrix Framework. Supported types of extensions: 9 * - `bitrix-d7-module` — copy the module to directory `bitrix/modules/<vendor>.<name>`. 10 * - `bitrix-d7-component` — copy the component to directory `bitrix/components/<vendor>/<name>`. 11 * - `bitrix-d7-template` — copy the template to directory `bitrix/templates/<vendor>_<name>`. 12 * 13 * You can set custom path to directory with Bitrix kernel in `composer.json`: 14 * 15 * ```json 16 * { 17 * "extra": { 18 * "bitrix-dir": "s1/bitrix" 19 * } 20 * } 21 * ``` 22 * 23 * @author Nik Samokhvalov <nik@samokhvalov.info> 24 * @author Denis Kulichkin <onexhovia@gmail.com> 25 */ 4 26 class BitrixInstaller extends BaseInstaller 5 27 { 6 28 protected $locations = array( 7 'module' => 'local/modules/{$name}/', 8 'component' => 'local/components/{$name}/', 9 'theme' => 'local/templates/{$name}/' 29 'module' => '{$bitrix_dir}/modules/{$name}/', // deprecated, remove on the major release (Backward compatibility will be broken) 30 'component' => '{$bitrix_dir}/components/{$name}/', // deprecated, remove on the major release (Backward compatibility will be broken) 31 'theme' => '{$bitrix_dir}/templates/{$name}/', // deprecated, remove on the major release (Backward compatibility will be broken) 32 'd7-module' => '{$bitrix_dir}/modules/{$vendor}.{$name}/', 33 'd7-component' => '{$bitrix_dir}/components/{$vendor}/{$name}/', 34 'd7-template' => '{$bitrix_dir}/templates/{$vendor}_{$name}/', 10 35 ); 36 37 /** 38 * @var array Storage for informations about duplicates at all the time of installation packages. 39 */ 40 private static $checkedDuplicates = array(); 41 42 /** 43 * {@inheritdoc} 44 */ 45 public function inflectPackageVars($vars) 46 { 47 if ($this->composer->getPackage()) { 48 $extra = $this->composer->getPackage()->getExtra(); 49 50 if (isset($extra['bitrix-dir'])) { 51 $vars['bitrix_dir'] = $extra['bitrix-dir']; 52 } 53 } 54 55 if (!isset($vars['bitrix_dir'])) { 56 $vars['bitrix_dir'] = 'bitrix'; 57 } 58 59 return parent::inflectPackageVars($vars); 60 } 61 62 /** 63 * {@inheritdoc} 64 */ 65 protected function templatePath($path, array $vars = array()) 66 { 67 $templatePath = parent::templatePath($path, $vars); 68 $this->checkDuplicates($templatePath, $vars); 69 70 return $templatePath; 71 } 72 73 /** 74 * Duplicates search packages. 75 * 76 * @param string $path 77 * @param array $vars 78 */ 79 protected function checkDuplicates($path, array $vars = array()) 80 { 81 $packageType = substr($vars['type'], strlen('bitrix') + 1); 82 $localDir = explode('/', $vars['bitrix_dir']); 83 array_pop($localDir); 84 $localDir[] = 'local'; 85 $localDir = implode('/', $localDir); 86 87 $oldPath = str_replace( 88 array('{$bitrix_dir}', '{$name}'), 89 array($localDir, $vars['name']), 90 $this->locations[$packageType] 91 ); 92 93 if (in_array($oldPath, static::$checkedDuplicates)) { 94 return; 95 } 96 97 if ($oldPath !== $path && file_exists($oldPath) && $this->io && $this->io->isInteractive()) { 98 99 $this->io->writeError(' <error>Duplication of packages:</error>'); 100 $this->io->writeError(' <info>Package ' . $oldPath . ' will be called instead package ' . $path . '</info>'); 101 102 while (true) { 103 switch ($this->io->ask(' <info>Delete ' . $oldPath . ' [y,n,?]?</info> ', '?')) { 104 case 'y': 105 $fs = new Filesystem(); 106 $fs->removeDirectory($oldPath); 107 break 2; 108 109 case 'n': 110 break 2; 111 112 case '?': 113 default: 114 $this->io->writeError(array( 115 ' y - delete package ' . $oldPath . ' and to continue with the installation', 116 ' n - don\'t delete and to continue with the installation', 117 )); 118 $this->io->writeError(' ? - print help'); 119 break; 120 } 121 } 122 } 123 124 static::$checkedDuplicates[] = $oldPath; 125 } 11 126 } -
featured-image-caption/trunk/vendor/composer/installers/src/Composer/Installers/CakePHPInstaller.php
r1183383 r2046347 3 3 4 4 use Composer\DependencyResolver\Pool; 5 use Composer\Package\PackageInterface;6 use Composer\Package\LinkConstraint\MultiConstraint;7 use Composer\Package\LinkConstraint\VersionConstraint;8 5 9 6 class CakePHPInstaller extends BaseInstaller … … 53 50 protected function matchesCakeVersion($matcher, $version) 54 51 { 52 if (class_exists('Composer\Semver\Constraint\MultiConstraint')) { 53 $multiClass = 'Composer\Semver\Constraint\MultiConstraint'; 54 $constraintClass = 'Composer\Semver\Constraint\Constraint'; 55 } else { 56 $multiClass = 'Composer\Package\LinkConstraint\MultiConstraint'; 57 $constraintClass = 'Composer\Package\LinkConstraint\VersionConstraint'; 58 } 59 55 60 $repositoryManager = $this->composer->getRepositoryManager(); 56 61 if ($repositoryManager) { … … 59 64 return false; 60 65 } 61 $cake3 = new MultiConstraint(array(62 new VersionConstraint($matcher, $version),63 new VersionConstraint('!=', '9999999-dev'),66 $cake3 = new $multiClass(array( 67 new $constraintClass($matcher, $version), 68 new $constraintClass('!=', '9999999-dev'), 64 69 )); 65 70 $pool = new Pool('dev'); … … 67 72 $packages = $pool->whatProvides('cakephp/cakephp'); 68 73 foreach ($packages as $package) { 69 $installed = new VersionConstraint('=', $package->getVersion());74 $installed = new $constraintClass('=', $package->getVersion()); 70 75 if ($cake3->matches($installed)) { 71 76 return true; 72 break;73 77 } 74 78 } -
featured-image-caption/trunk/vendor/composer/installers/src/Composer/Installers/Concrete5Installer.php
r1183383 r2046347 5 5 { 6 6 protected $locations = array( 7 'block' => 'blocks/{$name}/', 7 'core' => 'concrete/', 8 'block' => 'application/blocks/{$name}/', 8 9 'package' => 'packages/{$name}/', 9 'theme' => ' themes/{$name}/',10 'theme' => 'application/themes/{$name}/', 10 11 'update' => 'updates/{$name}/', 11 12 ); -
featured-image-caption/trunk/vendor/composer/installers/src/Composer/Installers/CraftInstaller.php
r1183383 r2046347 2 2 namespace Composer\Installers; 3 3 4 /** 5 * Installer for Craft Plugins 6 */ 4 7 class CraftInstaller extends BaseInstaller 5 8 { 9 const NAME_PREFIX = 'craft'; 10 const NAME_SUFFIX = 'plugin'; 11 6 12 protected $locations = array( 7 13 'plugin' => 'craft/plugins/{$name}/', 8 14 ); 15 16 /** 17 * Strip `craft-` prefix and/or `-plugin` suffix from package names 18 * 19 * @param array $vars 20 * 21 * @return array 22 */ 23 final public function inflectPackageVars($vars) 24 { 25 return $this->inflectPluginVars($vars); 26 } 27 28 private function inflectPluginVars($vars) 29 { 30 $vars['name'] = preg_replace('/-' . self::NAME_SUFFIX . '$/i', '', $vars['name']); 31 $vars['name'] = preg_replace('/^' . self::NAME_PREFIX . '-/i', '', $vars['name']); 32 33 return $vars; 34 } 9 35 } -
featured-image-caption/trunk/vendor/composer/installers/src/Composer/Installers/DrupalInstaller.php
r1183383 r2046347 11 11 'profile' => 'profiles/{$name}/', 12 12 'drush' => 'drush/{$name}/', 13 'custom-theme' => 'themes/custom/{$name}/', 14 'custom-module' => 'modules/custom/{$name}/', 13 15 ); 14 16 } -
featured-image-caption/trunk/vendor/composer/installers/src/Composer/Installers/Installer.php
r1183383 r2046347 1 1 <?php 2 2 3 namespace Composer\Installers; 3 4 5 use Composer\Composer; 6 use Composer\Installer\BinaryInstaller; 4 7 use Composer\Installer\LibraryInstaller; 8 use Composer\IO\IOInterface; 5 9 use Composer\Package\PackageInterface; 6 10 use Composer\Repository\InstalledRepositoryInterface; 11 use Composer\Util\Filesystem; 7 12 8 13 class Installer extends LibraryInstaller 9 14 { 15 10 16 /** 11 17 * Package types to installer class map … … 16 22 'aimeos' => 'AimeosInstaller', 17 23 'asgard' => 'AsgardInstaller', 24 'attogram' => 'AttogramInstaller', 18 25 'agl' => 'AglInstaller', 19 26 'annotatecms' => 'AnnotateCmsInstaller', 20 27 'bitrix' => 'BitrixInstaller', 28 'bonefish' => 'BonefishInstaller', 21 29 'cakephp' => 'CakePHPInstaller', 22 30 'chef' => 'ChefInstaller', 31 'civicrm' => 'CiviCrmInstaller', 23 32 'ccframework' => 'ClanCatsFrameworkInstaller', 33 'cockpit' => 'CockpitInstaller', 24 34 'codeigniter' => 'CodeIgniterInstaller', 25 35 'concrete5' => 'Concrete5Installer', … … 28 38 'dokuwiki' => 'DokuWikiInstaller', 29 39 'dolibarr' => 'DolibarrInstaller', 40 'decibel' => 'DecibelInstaller', 30 41 'drupal' => 'DrupalInstaller', 31 42 'elgg' => 'ElggInstaller', 43 'eliasis' => 'EliasisInstaller', 44 'ee3' => 'ExpressionEngineInstaller', 45 'ee2' => 'ExpressionEngineInstaller', 46 'ezplatform' => 'EzPlatformInstaller', 32 47 'fuel' => 'FuelInstaller', 33 48 'fuelphp' => 'FuelphpInstaller', 34 49 'grav' => 'GravInstaller', 35 50 'hurad' => 'HuradInstaller', 51 'imagecms' => 'ImageCMSInstaller', 52 'itop' => 'ItopInstaller', 36 53 'joomla' => 'JoomlaInstaller', 54 'kanboard' => 'KanboardInstaller', 37 55 'kirby' => 'KirbyInstaller', 56 'kodicms' => 'KodiCMSInstaller', 38 57 'kohana' => 'KohanaInstaller', 58 'lms' => 'LanManagementSystemInstaller', 39 59 'laravel' => 'LaravelInstaller', 60 'lavalite' => 'LavaLiteInstaller', 40 61 'lithium' => 'LithiumInstaller', 41 62 'magento' => 'MagentoInstaller', 63 'majima' => 'MajimaInstaller', 42 64 'mako' => 'MakoInstaller', 65 'maya' => 'MayaInstaller', 66 'mautic' => 'MauticInstaller', 43 67 'mediawiki' => 'MediaWikiInstaller', 44 'microweber' => 'MicroweberInstaller',68 'microweber' => 'MicroweberInstaller', 45 69 'modulework' => 'MODULEWorkInstaller', 70 'modx' => 'ModxInstaller', 46 71 'modxevo' => 'MODXEvoInstaller', 47 72 'moodle' => 'MoodleInstaller', 48 73 'october' => 'OctoberInstaller', 74 'ontowiki' => 'OntoWikiInstaller', 49 75 'oxid' => 'OxidInstaller', 76 'osclass' => 'OsclassInstaller', 77 'pxcms' => 'PxcmsInstaller', 50 78 'phpbb' => 'PhpBBInstaller', 51 79 'pimcore' => 'PimcoreInstaller', 52 80 'piwik' => 'PiwikInstaller', 81 'plentymarkets'=> 'PlentymarketsInstaller', 53 82 'ppi' => 'PPIInstaller', 54 83 'puppet' => 'PuppetInstaller', 84 'radphp' => 'RadPHPInstaller', 85 'phifty' => 'PhiftyInstaller', 86 'porto' => 'PortoInstaller', 55 87 'redaxo' => 'RedaxoInstaller', 88 'reindex' => 'ReIndexInstaller', 56 89 'roundcube' => 'RoundcubeInstaller', 57 90 'shopware' => 'ShopwareInstaller', 91 'sitedirect' => 'SiteDirectInstaller', 58 92 'silverstripe' => 'SilverStripeInstaller', 59 93 'smf' => 'SMFInstaller', 94 'sydes' => 'SyDESInstaller', 60 95 'symfony1' => 'Symfony1Installer', 61 96 'thelia' => 'TheliaInstaller', … … 63 98 'typo3-cms' => 'TYPO3CmsInstaller', 64 99 'typo3-flow' => 'TYPO3FlowInstaller', 100 'userfrosting' => 'UserFrostingInstaller', 101 'vanilla' => 'VanillaInstaller', 65 102 'whmcs' => 'WHMCSInstaller', 66 103 'wolfcms' => 'WolfCMSInstaller', 67 104 'wordpress' => 'WordPressInstaller', 105 'yawik' => 'YawikInstaller', 68 106 'zend' => 'ZendInstaller', 69 107 'zikula' => 'ZikulaInstaller', 70 'prestashop' => 'PrestashopInstaller' ,108 'prestashop' => 'PrestashopInstaller' 71 109 ); 110 111 /** 112 * Installer constructor. 113 * 114 * Disables installers specified in main composer extra installer-disable 115 * list 116 * 117 * @param IOInterface $io 118 * @param Composer $composer 119 * @param string $type 120 * @param Filesystem|null $filesystem 121 * @param BinaryInstaller|null $binaryInstaller 122 */ 123 public function __construct( 124 IOInterface $io, 125 Composer $composer, 126 $type = 'library', 127 Filesystem $filesystem = null, 128 BinaryInstaller $binaryInstaller = null 129 ) { 130 parent::__construct($io, $composer, $type, $filesystem, 131 $binaryInstaller); 132 $this->removeDisabledInstallers(); 133 } 72 134 73 135 /** … … 86 148 87 149 $class = 'Composer\\Installers\\' . $this->supportedTypes[$frameworkType]; 88 $installer = new $class($package, $this->composer );150 $installer = new $class($package, $this->composer, $this->getIO()); 89 151 90 152 return $installer->getInstallPath($package, $frameworkType); … … 93 155 public function uninstall(InstalledRepositoryInterface $repo, PackageInterface $package) 94 156 { 95 if (!$repo->hasPackage($package)) { 96 throw new \InvalidArgumentException('Package is not installed: '.$package); 97 } 98 99 $repo->removePackage($package); 100 101 $installPath = $this->getInstallPath($package); 102 $this->io->write(sprintf('Deleting %s - %s', $installPath, $this->filesystem->removeDirectory($installPath) ? '<comment>deleted</comment>' : '<error>not deleted</error>')); 157 parent::uninstall($repo, $package); 158 $installPath = $this->getPackageBasePath($package); 159 $this->io->write(sprintf('Deleting %s - %s', $installPath, !file_exists($installPath) ? '<comment>deleted</comment>' : '<error>not deleted</error>')); 103 160 } 104 161 … … 154 211 $frameworkClass = 'Composer\\Installers\\' . $this->supportedTypes[$frameworkType]; 155 212 /** @var BaseInstaller $framework */ 156 $framework = new $frameworkClass(null, $this->composer );213 $framework = new $frameworkClass(null, $this->composer, $this->getIO()); 157 214 $locations = array_keys($framework->getLocations()); 158 215 $pattern = $locations ? '(' . implode('|', $locations) . ')' : false; … … 161 218 return $pattern ? : '(\w+)'; 162 219 } 220 221 /** 222 * Get I/O object 223 * 224 * @return IOInterface 225 */ 226 private function getIO() 227 { 228 return $this->io; 229 } 230 231 /** 232 * Look for installers set to be disabled in composer's extra config and 233 * remove them from the list of supported installers. 234 * 235 * Globals: 236 * - true, "all", and "*" - disable all installers. 237 * - false - enable all installers (useful with 238 * wikimedia/composer-merge-plugin or similar) 239 * 240 * @return void 241 */ 242 protected function removeDisabledInstallers() 243 { 244 $extra = $this->composer->getPackage()->getExtra(); 245 246 if (!isset($extra['installer-disable']) || $extra['installer-disable'] === false) { 247 // No installers are disabled 248 return; 249 } 250 251 // Get installers to disable 252 $disable = $extra['installer-disable']; 253 254 // Ensure $disabled is an array 255 if (!is_array($disable)) { 256 $disable = array($disable); 257 } 258 259 // Check which installers should be disabled 260 $all = array(true, "all", "*"); 261 $intersect = array_intersect($all, $disable); 262 if (!empty($intersect)) { 263 // Disable all installers 264 $this->supportedTypes = array(); 265 } else { 266 // Disable specified installers 267 foreach ($disable as $key => $installer) { 268 if (is_string($installer) && key_exists($installer, $this->supportedTypes)) { 269 unset($this->supportedTypes[$installer]); 270 } 271 } 272 } 273 } 163 274 } -
featured-image-caption/trunk/vendor/composer/installers/src/Composer/Installers/KirbyInstaller.php
r1183383 r2046347 6 6 protected $locations = array( 7 7 'plugin' => 'site/plugins/{$name}/', 8 'field' => 'site/fields/{$name}/', 9 'tag' => 'site/tags/{$name}/' 8 10 ); 9 11 } -
featured-image-caption/trunk/vendor/composer/installers/src/Composer/Installers/MediaWikiInstaller.php
r1183383 r2046347 5 5 { 6 6 protected $locations = array( 7 'core' => 'core/', 7 8 'extension' => 'extensions/{$name}/', 8 9 'skin' => 'skins/{$name}/', -
featured-image-caption/trunk/vendor/composer/installers/src/Composer/Installers/MoodleInstaller.php
r1183383 r2046347 7 7 'mod' => 'mod/{$name}/', 8 8 'admin_report' => 'admin/report/{$name}/', 9 'atto' => 'lib/editor/atto/plugins/{$name}/', 9 10 'tool' => 'admin/tool/{$name}/', 10 11 'assignment' => 'mod/assignment/type/{$name}/', … … 14 15 'availability' => 'availability/condition/{$name}/', 15 16 'block' => 'blocks/{$name}/', 17 'booktool' => 'mod/book/tool/{$name}/', 18 'cachestore' => 'cache/stores/{$name}/', 19 'cachelock' => 'cache/locks/{$name}/', 16 20 'calendartype' => 'calendar/type/{$name}/', 17 21 'format' => 'course/format/{$name}/', … … 27 31 'gradingform' => 'grade/grading/form/{$name}/', 28 32 'local' => 'local/{$name}/', 33 'logstore' => 'admin/tool/log/store/{$name}/', 34 'ltisource' => 'mod/lti/source/{$name}/', 35 'ltiservice' => 'mod/lti/service/{$name}/', 29 36 'message' => 'message/output/{$name}/', 37 'mnetservice' => 'mnet/service/{$name}/', 30 38 'plagiarism' => 'plagiarism/{$name}/', 31 39 'portfolio' => 'portfolio/{$name}/', … … 38 46 'repository' => 'repository/{$name}/', 39 47 'scormreport' => 'mod/scorm/report/{$name}/', 48 'search' => 'search/engine/{$name}/', 40 49 'theme' => 'theme/{$name}/', 50 'tinymce' => 'lib/editor/tinymce/plugins/{$name}/', 41 51 'profilefield' => 'user/profile/field/{$name}/', 42 52 'webservice' => 'webservice/{$name}/', -
featured-image-caption/trunk/vendor/composer/installers/src/Composer/Installers/OctoberInstaller.php
r1183383 r2046347 33 33 protected function inflectPluginVars($vars) 34 34 { 35 $vars['name'] = preg_replace('/-plugin$/', '', $vars['name']); 35 $vars['name'] = preg_replace('/^oc-|-plugin$/', '', $vars['name']); 36 $vars['vendor'] = preg_replace('/[^a-z0-9_]/i', '', $vars['vendor']); 36 37 37 38 return $vars; … … 40 41 protected function inflectThemeVars($vars) 41 42 { 42 $vars['name'] = preg_replace('/ -theme$/', '', $vars['name']);43 $vars['name'] = preg_replace('/^oc-|-theme$/', '', $vars['name']); 43 44 44 45 return $vars; -
featured-image-caption/trunk/vendor/composer/installers/src/Composer/Installers/OxidInstaller.php
r1183383 r2046347 2 2 namespace Composer\Installers; 3 3 4 use Composer\Package\PackageInterface; 5 4 6 class OxidInstaller extends BaseInstaller 5 7 { 8 const VENDOR_PATTERN = '/^modules\/(?P<vendor>.+)\/.+/'; 9 6 10 protected $locations = array( 7 11 'module' => 'modules/{$name}/', … … 9 13 'out' => 'out/{$name}/', 10 14 ); 15 16 /** 17 * getInstallPath 18 * 19 * @param PackageInterface $package 20 * @param string $frameworkType 21 * @return void 22 */ 23 public function getInstallPath(PackageInterface $package, $frameworkType = '') 24 { 25 $installPath = parent::getInstallPath($package, $frameworkType); 26 $type = $this->package->getType(); 27 if ($type === 'oxid-module') { 28 $this->prepareVendorDirectory($installPath); 29 } 30 return $installPath; 31 } 32 33 /** 34 * prepareVendorDirectory 35 * 36 * Makes sure there is a vendormetadata.php file inside 37 * the vendor folder if there is a vendor folder. 38 * 39 * @param string $installPath 40 * @return void 41 */ 42 protected function prepareVendorDirectory($installPath) 43 { 44 $matches = ''; 45 $hasVendorDirectory = preg_match(self::VENDOR_PATTERN, $installPath, $matches); 46 if (!$hasVendorDirectory) { 47 return; 48 } 49 50 $vendorDirectory = $matches['vendor']; 51 $vendorPath = getcwd() . '/modules/' . $vendorDirectory; 52 if (!file_exists($vendorPath)) { 53 mkdir($vendorPath, 0755, true); 54 } 55 56 $vendorMetaDataPath = $vendorPath . '/vendormetadata.php'; 57 touch($vendorMetaDataPath); 58 } 11 59 } -
featured-image-caption/trunk/vendor/composer/installers/src/Composer/Installers/ShopwareInstaller.php
r1183383 r2046347 12 12 'core-plugin' => 'engine/Shopware/Plugins/Local/Core/{$name}/', 13 13 'frontend-plugin' => 'engine/Shopware/Plugins/Local/Frontend/{$name}/', 14 'theme' => 'templates/{$name}/' 14 'theme' => 'templates/{$name}/', 15 'plugin' => 'custom/plugins/{$name}/', 16 'frontend-theme' => 'themes/Frontend/{$name}/', 15 17 ); 16 18 … … 24 26 if ($vars['type'] === 'shopware-theme') { 25 27 return $this->correctThemeName($vars); 26 } else {27 return $this->correctPluginName($vars);28 28 } 29 30 return $this->correctPluginName($vars); 29 31 } 30 32 -
featured-image-caption/trunk/vendor/composer/installers/src/Composer/Installers/SilverStripeInstaller.php
r1183383 r2046347 29 29 ) { 30 30 return $this->templatePath($this->locations['module'], array('name' => 'sapphire')); 31 } else {32 return parent::getInstallPath($package, $frameworkType);33 31 } 34 32 33 return parent::getInstallPath($package, $frameworkType); 35 34 } 36 35 } -
featured-image-caption/trunk/vendor/composer/installers/src/Composer/Installers/TYPO3CmsInstaller.php
r1183383 r2046347 4 4 /** 5 5 * Extension installer for TYPO3 CMS 6 * 7 * @deprecated since 1.0.25, use https://packagist.org/packages/typo3/cms-composer-installers instead 6 8 * 7 9 * @author Sascha Egerer <sascha.egerer@dkd.de> -
featured-image-caption/trunk/vendor/composer/installers/src/Composer/Installers/WordPressInstaller.php
r1183383 r2046347 8 8 'theme' => 'wp-content/themes/{$name}/', 9 9 'muplugin' => 'wp-content/mu-plugins/{$name}/', 10 'dropin' => 'wp-content/{$name}/', 10 11 ); 11 12 }
Note: See TracChangeset
for help on using the changeset viewer.