diff options
Diffstat (limited to 'phpBB/phpbb/extension')
| -rw-r--r-- | phpBB/phpbb/extension/base.php | 18 | ||||
| -rw-r--r-- | phpBB/phpbb/extension/exception.php | 12 | ||||
| -rw-r--r-- | phpBB/phpbb/extension/extension_interface.php (renamed from phpBB/phpbb/extension/interface.php) | 10 | ||||
| -rw-r--r-- | phpBB/phpbb/extension/finder.php | 67 | ||||
| -rw-r--r-- | phpBB/phpbb/extension/manager.php | 72 | ||||
| -rw-r--r-- | phpBB/phpbb/extension/metadata_manager.php | 118 | ||||
| -rw-r--r-- | phpBB/phpbb/extension/provider.php | 18 |
7 files changed, 161 insertions, 154 deletions
diff --git a/phpBB/phpbb/extension/base.php b/phpBB/phpbb/extension/base.php index c4462b64d8..1f871750e0 100644 --- a/phpBB/phpbb/extension/base.php +++ b/phpBB/phpbb/extension/base.php @@ -7,13 +7,7 @@ * */ -/** -* @ignore -*/ -if (!defined('IN_PHPBB')) -{ - exit; -} +namespace phpbb\extension; use Symfony\Component\DependencyInjection\ContainerInterface; @@ -22,15 +16,15 @@ use Symfony\Component\DependencyInjection\ContainerInterface; * * @package extension */ -class phpbb_extension_base implements phpbb_extension_interface +class base implements \phpbb\extension\extension_interface { /** @var ContainerInterface */ protected $container; - /** @var phpbb_extension_finder */ + /** @var \phpbb\extension\finder */ protected $finder; - /** @var phpbb_db_migrator */ + /** @var \phpbb\db\migrator */ protected $migrator; /** @var string */ @@ -43,11 +37,11 @@ class phpbb_extension_base implements phpbb_extension_interface * Constructor * * @param ContainerInterface $container Container object - * @param phpbb_extension_finder $extension_finder + * @param \phpbb\extension\finder $extension_finder * @param string $extension_name Name of this extension (from ext.manager) * @param string $extension_path Relative path to this extension */ - public function __construct(ContainerInterface $container, phpbb_extension_finder $extension_finder, phpbb_db_migrator $migrator, $extension_name, $extension_path) + public function __construct(ContainerInterface $container, \phpbb\extension\finder $extension_finder, \phpbb\db\migrator $migrator, $extension_name, $extension_path) { $this->container = $container; $this->extension_finder = $extension_finder; diff --git a/phpBB/phpbb/extension/exception.php b/phpBB/phpbb/extension/exception.php index e08a8912ea..82327c9d5e 100644 --- a/phpBB/phpbb/extension/exception.php +++ b/phpBB/phpbb/extension/exception.php @@ -7,21 +7,15 @@ * */ -/** -* @ignore -*/ -if (!defined('IN_PHPBB')) -{ - exit; -} +namespace phpbb\extension; /** * Exception class for metadata */ -class phpbb_extension_exception extends UnexpectedValueException +class exception extends \UnexpectedValueException { public function __toString() { return $this->getMessage(); } -}
\ No newline at end of file +} diff --git a/phpBB/phpbb/extension/interface.php b/phpBB/phpbb/extension/extension_interface.php index 7b36a12bf6..bddff51b5a 100644 --- a/phpBB/phpbb/extension/interface.php +++ b/phpBB/phpbb/extension/extension_interface.php @@ -7,13 +7,7 @@ * */ -/** -* @ignore -*/ -if (!defined('IN_PHPBB')) -{ - exit; -} +namespace phpbb\extension; /** * The interface extension meta classes have to implement to run custom code @@ -21,7 +15,7 @@ if (!defined('IN_PHPBB')) * * @package extension */ -interface phpbb_extension_interface +interface extension_interface { /** * enable_step is executed on enabling an extension until it returns false. diff --git a/phpBB/phpbb/extension/finder.php b/phpBB/phpbb/extension/finder.php index 155a41cda5..6cc6e1808a 100644 --- a/phpBB/phpbb/extension/finder.php +++ b/phpBB/phpbb/extension/finder.php @@ -7,20 +7,14 @@ * */ -/** -* @ignore -*/ -if (!defined('IN_PHPBB')) -{ - exit; -} +namespace phpbb\extension; /** * The extension finder provides a simple way to locate files in active extensions * * @package extension */ -class phpbb_extension_finder +class finder { protected $extension_manager; protected $filesystem; @@ -52,17 +46,17 @@ class phpbb_extension_finder /** * Creates a new finder instance with its dependencies * - * @param phpbb_extension_manager $extension_manager An extension manager + * @param \phpbb\extension\manager $extension_manager An extension manager * instance that provides the finder with a list of active * extensions and their locations - * @param phpbb_filesystem $filesystem Filesystem instance + * @param \phpbb\filesystem $filesystem Filesystem instance * @param string $phpbb_root_path Path to the phpbb root directory - * @param phpbb_cache_driver_interface $cache A cache instance or null + * @param \phpbb\cache\driver\driver_interface $cache A cache instance or null * @param string $php_ext php file extension * @param string $cache_name The name of the cache variable, defaults to * _ext_finder */ - public function __construct(phpbb_extension_manager $extension_manager, phpbb_filesystem $filesystem, $phpbb_root_path = '', phpbb_cache_driver_interface $cache = null, $php_ext = 'php', $cache_name = '_ext_finder') + public function __construct(\phpbb\extension\manager $extension_manager, \phpbb\filesystem $filesystem, $phpbb_root_path = '', \phpbb\cache\driver\driver_interface $cache = null, $php_ext = 'php', $cache_name = '_ext_finder') { $this->extension_manager = $extension_manager; $this->filesystem = $filesystem; @@ -88,7 +82,7 @@ class phpbb_extension_finder * Sets a core path to be searched in addition to extensions * * @param string $core_path The path relative to phpbb_root_path - * @return phpbb_extension_finder This object for chaining calls + * @return \phpbb\extension\finder This object for chaining calls */ public function core_path($core_path) { @@ -104,7 +98,7 @@ class phpbb_extension_finder * file extension is automatically added to suffixes. * * @param string $suffix A filename suffix - * @return phpbb_extension_finder This object for chaining calls + * @return \phpbb\extension\finder This object for chaining calls */ public function suffix($suffix) { @@ -121,7 +115,7 @@ class phpbb_extension_finder * file extension is automatically added to suffixes. * * @param string $extension_suffix A filename suffix - * @return phpbb_extension_finder This object for chaining calls + * @return \phpbb\extension\finder This object for chaining calls */ public function extension_suffix($extension_suffix) { @@ -137,7 +131,7 @@ class phpbb_extension_finder * file extension is automatically added to suffixes. * * @param string $core_suffix A filename suffix - * @return phpbb_extension_finder This object for chaining calls + * @return \phpbb\extension\finder This object for chaining calls */ public function core_suffix($core_suffix) { @@ -149,7 +143,7 @@ class phpbb_extension_finder * Sets the prefix all files found in extensions and core must match * * @param string $prefix A filename prefix - * @return phpbb_extension_finder This object for chaining calls + * @return \phpbb\extension\finder This object for chaining calls */ public function prefix($prefix) { @@ -162,7 +156,7 @@ class phpbb_extension_finder * Sets a prefix all files found in extensions must match * * @param string $extension_prefix A filename prefix - * @return phpbb_extension_finder This object for chaining calls + * @return \phpbb\extension\finder This object for chaining calls */ public function extension_prefix($extension_prefix) { @@ -174,7 +168,7 @@ class phpbb_extension_finder * Sets a prefix all files found in the core path must match * * @param string $core_prefix A filename prefix - * @return phpbb_extension_finder This object for chaining calls + * @return \phpbb\extension\finder This object for chaining calls */ public function core_prefix($core_prefix) { @@ -189,7 +183,7 @@ class phpbb_extension_finder * the current directory. * * @param string $directory - * @return phpbb_extension_finder This object for chaining calls + * @return \phpbb\extension\finder This object for chaining calls */ public function directory($directory) { @@ -202,7 +196,7 @@ class phpbb_extension_finder * Sets a directory all files found in extensions must be contained in * * @param string $extension_directory - * @return phpbb_extension_finder This object for chaining calls + * @return \phpbb\extension\finder This object for chaining calls */ public function extension_directory($extension_directory) { @@ -214,7 +208,7 @@ class phpbb_extension_finder * Sets a directory all files found in the core path must be contained in * * @param string $core_directory - * @return phpbb_extension_finder This object for chaining calls + * @return \phpbb\extension\finder This object for chaining calls */ public function core_directory($core_directory) { @@ -275,9 +269,17 @@ class phpbb_extension_finder $classes = array(); foreach ($files as $file => $ext_name) { - $file = preg_replace('#^(phpbb|includes)/#', '', $file); - - $classes[] = 'phpbb_' . str_replace('/', '_', substr($file, 0, -strlen('.' . $this->php_ext))); + $class = substr($file, 0, -strlen('.' . $this->php_ext)); + if ($ext_name === '/' && preg_match('#^includes/#', $file)) + { + $class = preg_replace('#^includes/#', '', $class); + $classes[] = 'phpbb_' . str_replace('/', '_', $class); + } + else + { + $class = preg_replace('#^ext/#', '', $class); + $classes[] = '\\' . str_replace('/', '\\', $class); + } } return $classes; } @@ -473,14 +475,19 @@ class phpbb_extension_finder } $directory_pattern = '#' . $directory_pattern . '#'; - $iterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path), RecursiveIteratorIterator::SELF_FIRST); + $iterator = new \RecursiveIteratorIterator( + new \phpbb\recursive_dot_prefix_filter_iterator( + new \RecursiveDirectoryIterator( + $path, + \FilesystemIterator::SKIP_DOTS + ) + ), + \RecursiveIteratorIterator::SELF_FIRST + ); + foreach ($iterator as $file_info) { $filename = $file_info->getFilename(); - if ($filename == '.' || $filename == '..') - { - continue; - } if ($file_info->isDir() == $is_dir) { diff --git a/phpBB/phpbb/extension/manager.php b/phpBB/phpbb/extension/manager.php index 4451049d04..b22fbf07a6 100644 --- a/phpBB/phpbb/extension/manager.php +++ b/phpBB/phpbb/extension/manager.php @@ -7,13 +7,7 @@ * */ -/** -* @ignore -*/ -if (!defined('IN_PHPBB')) -{ - exit; -} +namespace phpbb\extension; use Symfony\Component\DependencyInjection\ContainerInterface; @@ -22,7 +16,7 @@ use Symfony\Component\DependencyInjection\ContainerInterface; * * @package extension */ -class phpbb_extension_manager +class manager { /** @var ContainerInterface */ protected $container; @@ -40,16 +34,16 @@ class phpbb_extension_manager * Creates a manager and loads information from database * * @param ContainerInterface $container A container - * @param phpbb_db_driver $db A database connection - * @param phpbb_config $config phpbb_config - * @param phpbb_filesystem $filesystem + * @param \phpbb\db\driver\driver_interface $db A database connection + * @param \phpbb\config\config $config \phpbb\config\config + * @param \phpbb\filesystem $filesystem * @param string $extension_table The name of the table holding extensions * @param string $phpbb_root_path Path to the phpbb includes directory. * @param string $php_ext php file extension - * @param phpbb_cache_driver_interface $cache A cache instance or null + * @param \phpbb\cache\driver\driver_interface $cache A cache instance or null * @param string $cache_name The name of the cache variable, defaults to _ext */ - public function __construct(ContainerInterface $container, phpbb_db_driver $db, phpbb_config $config, phpbb_filesystem $filesystem, $extension_table, $phpbb_root_path, $php_ext = 'php', phpbb_cache_driver_interface $cache = null, $cache_name = '_ext') + public function __construct(ContainerInterface $container, \phpbb\db\driver\driver_interface $db, \phpbb\config\config $config, \phpbb\filesystem $filesystem, $extension_table, $phpbb_root_path, $php_ext = 'php', \phpbb\cache\driver\driver_interface $cache = null, $cache_name = '_ext') { $this->container = $container; $this->phpbb_root_path = $phpbb_root_path; @@ -126,12 +120,12 @@ class phpbb_extension_manager * Instantiates the extension meta class for the extension with the given name * * @param string $name The extension name - * @return phpbb_extension_interface Instance of the extension meta class or - * phpbb_extension_base if the class does not exist + * @return \phpbb\extension\extension_interface Instance of the extension meta class or + * \phpbb\extension\base if the class does not exist */ public function get_extension($name) { - $extension_class_name = 'phpbb_ext_' . str_replace('/', '_', $name) . '_ext'; + $extension_class_name = str_replace('/', '\\', $name) . '\\ext'; $migrator = $this->container->get('migrator'); @@ -141,7 +135,7 @@ class phpbb_extension_manager } else { - return new phpbb_extension_base($this->container, $this->get_finder(), $migrator, $name, $this->get_extension_path($name, true)); + return new \phpbb\extension\base($this->container, $this->get_finder(), $migrator, $name, $this->get_extension_path($name, true)); } } @@ -150,11 +144,11 @@ class phpbb_extension_manager * * @param string $name The extension name * @param string $template The template manager - * @return phpbb_extension_metadata_manager Instance of the metadata manager + * @return \phpbb\extension\metadata_manager Instance of the metadata manager */ - public function create_extension_metadata_manager($name, phpbb_template $template) + public function create_extension_metadata_manager($name, \phpbb\template\template $template) { - return new phpbb_extension_metadata_manager($name, $this->config, $this, $template, $this->phpbb_root_path); + return new \phpbb\extension\metadata_manager($name, $this->config, $this, $template, $this->phpbb_root_path); } /** @@ -218,6 +212,11 @@ class phpbb_extension_manager $this->cache->purge(); } + if ($active) + { + $this->config->increment('assets_version', 1); + } + return !$active; } @@ -232,7 +231,9 @@ class phpbb_extension_manager */ public function enable($name) { + // @codingStandardsIgnoreStart while ($this->enable_step($name)); + // @codingStandardsIgnoreEnd } /** @@ -309,7 +310,9 @@ class phpbb_extension_manager */ public function disable($name) { + // @codingStandardsIgnoreStart while ($this->disable_step($name)); + // @codingStandardsIgnoreEnd } /** @@ -386,7 +389,9 @@ class phpbb_extension_manager */ public function purge($name) { + // @codingStandardsIgnoreStart while ($this->purge_step($name)); + // @codingStandardsIgnoreEnd } /** @@ -403,17 +408,32 @@ class phpbb_extension_manager return $available; } - $iterator = new RecursiveIteratorIterator( - new RecursiveDirectoryIterator($this->phpbb_root_path . 'ext/', FilesystemIterator::NEW_CURRENT_AND_KEY | FilesystemIterator::FOLLOW_SYMLINKS), - RecursiveIteratorIterator::SELF_FIRST); + $iterator = new \RecursiveIteratorIterator( + new \RecursiveDirectoryIterator($this->phpbb_root_path . 'ext/', \FilesystemIterator::NEW_CURRENT_AND_KEY | \FilesystemIterator::FOLLOW_SYMLINKS), + \RecursiveIteratorIterator::SELF_FIRST); foreach ($iterator as $file_info) { if ($file_info->isFile() && $file_info->getFilename() == 'ext.' . $this->php_ext) { $ext_name = $iterator->getInnerIterator()->getSubPath(); + $composer_file = $iterator->getPath() . '/composer.json'; + // Ignore the extension if there is no composer.json. + if (!is_readable($composer_file) || !($ext_info = file_get_contents($composer_file))) + { + continue; + } + + $ext_info = json_decode($ext_info, true); $ext_name = str_replace(DIRECTORY_SEPARATOR, '/', $ext_name); + // Ignore the extension if directory depth is not correct or if the directory structure + // does not match the name value specified in composer.json. + if (substr_count($ext_name, '/') !== 1 || !isset($ext_info['name']) || $ext_name != $ext_info['name']) + { + continue; + } + $available[$ext_name] = $this->phpbb_root_path . 'ext/' . $ext_name . '/'; } } @@ -502,12 +522,12 @@ class phpbb_extension_manager } /** - * Instantiates a phpbb_extension_finder. + * Instantiates a \phpbb\extension\finder. * - * @return phpbb_extension_finder An extension finder instance + * @return \phpbb\extension\finder An extension finder instance */ public function get_finder() { - return new phpbb_extension_finder($this, $this->filesystem, $this->phpbb_root_path, $this->cache, $this->php_ext, $this->cache_name . '_finder'); + return new \phpbb\extension\finder($this, $this->filesystem, $this->phpbb_root_path, $this->cache, $this->php_ext, $this->cache_name . '_finder'); } } diff --git a/phpBB/phpbb/extension/metadata_manager.php b/phpBB/phpbb/extension/metadata_manager.php index 14b77c085b..c90445ee09 100644 --- a/phpBB/phpbb/extension/metadata_manager.php +++ b/phpBB/phpbb/extension/metadata_manager.php @@ -7,36 +7,30 @@ * */ -/** -* @ignore -*/ -if (!defined('IN_PHPBB')) -{ - exit; -} +namespace phpbb\extension; /** * The extension metadata manager validates and gets meta-data for extensions * * @package extension */ -class phpbb_extension_metadata_manager +class metadata_manager { /** * phpBB Config instance - * @var phpbb_config + * @var \phpbb\config\config */ protected $config; /** * phpBB Extension Manager - * @var phpbb_extension_manager + * @var \phpbb\extension\manager */ protected $extension_manager; /** * phpBB Template instance - * @var phpbb_template + * @var \phpbb\template\template */ protected $template; @@ -68,12 +62,12 @@ class phpbb_extension_metadata_manager * Creates the metadata manager * * @param string $ext_name Name (including vendor) of the extension - * @param phpbb_config $config phpBB Config instance - * @param phpbb_extension_manager $extension_manager An instance of the phpBBb extension manager - * @param phpbb_template $template phpBB Template instance + * @param \phpbb\config\config $config phpBB Config instance + * @param \phpbb\extension\manager $extension_manager An instance of the phpBBb extension manager + * @param \phpbb\template\template $template phpBB Template instance * @param string $phpbb_root_path Path to the phpbb includes directory. */ - public function __construct($ext_name, phpbb_config $config, phpbb_extension_manager $extension_manager, phpbb_template $template, $phpbb_root_path) + public function __construct($ext_name, \phpbb\config\config $config, \phpbb\extension\manager $extension_manager, \phpbb\template\template $template, $phpbb_root_path) { $this->config = $config; $this->extension_manager = $extension_manager; @@ -145,7 +139,7 @@ class phpbb_extension_metadata_manager if (!file_exists($this->metadata_file)) { - throw new phpbb_extension_exception('The required file does not exist: ' . $this->metadata_file); + throw new \phpbb\extension\exception('The required file does not exist: ' . $this->metadata_file); } } @@ -158,18 +152,18 @@ class phpbb_extension_metadata_manager { if (!file_exists($this->metadata_file)) { - throw new phpbb_extension_exception('The required file does not exist: ' . $this->metadata_file); + throw new \phpbb\extension\exception('The required file does not exist: ' . $this->metadata_file); } else { if (!($file_contents = file_get_contents($this->metadata_file))) { - throw new phpbb_extension_exception('file_get_contents failed on ' . $this->metadata_file); + throw new \phpbb\extension\exception('file_get_contents failed on ' . $this->metadata_file); } - if (($metadata = json_decode($file_contents, true)) === NULL) + if (($metadata = json_decode($file_contents, true)) === null) { - throw new phpbb_extension_exception('json_decode failed on ' . $this->metadata_file); + throw new \phpbb\extension\exception('json_decode failed on ' . $this->metadata_file); } $this->metadata = $metadata; @@ -197,50 +191,50 @@ class phpbb_extension_metadata_manager * @return Bool True if valid, throws an exception if invalid */ public function validate($name = 'display') - { - // Basic fields - $fields = array( - 'name' => '#^[a-zA-Z0-9_\x7f-\xff]{2,}/[a-zA-Z0-9_\x7f-\xff]{2,}$#', - 'type' => '#^phpbb3-extension$#', - 'licence' => '#.+#', - 'version' => '#.+#', - ); - - switch ($name) - { - case 'all': - $this->validate('display'); + { + // Basic fields + $fields = array( + 'name' => '#^[a-zA-Z0-9_\x7f-\xff]{2,}/[a-zA-Z0-9_\x7f-\xff]{2,}$#', + 'type' => '#^phpbb-extension$#', + 'license' => '#.+#', + 'version' => '#.+#', + ); + + switch ($name) + { + case 'all': + $this->validate('display'); $this->validate_enable(); - break; + break; - case 'display': - foreach ($fields as $field => $data) + case 'display': + foreach ($fields as $field => $data) { $this->validate($field); } $this->validate_authors(); - break; - - default: - if (isset($fields[$name])) - { - if (!isset($this->metadata[$name])) - { - throw new phpbb_extension_exception("Required meta field '$name' has not been set."); + break; + + default: + if (isset($fields[$name])) + { + if (!isset($this->metadata[$name])) + { + throw new \phpbb\extension\exception("Required meta field '$name' has not been set."); } if (!preg_match($fields[$name], $this->metadata[$name])) { - throw new phpbb_extension_exception("Meta field '$name' is invalid."); + throw new \phpbb\extension\exception("Meta field '$name' is invalid."); } } break; } return true; - } + } /** * Validates the contents of the authors field @@ -251,14 +245,14 @@ class phpbb_extension_metadata_manager { if (empty($this->metadata['authors'])) { - throw new phpbb_extension_exception("Required meta field 'authors' has not been set."); + throw new \phpbb\extension\exception("Required meta field 'authors' has not been set."); } foreach ($this->metadata['authors'] as $author) { if (!isset($author['name'])) { - throw new phpbb_extension_exception("Required meta field 'author name' has not been set."); + throw new \phpbb\extension\exception("Required meta field 'author name' has not been set."); } } @@ -272,8 +266,8 @@ class phpbb_extension_metadata_manager */ public function validate_enable() { - // Check for phpBB, PHP versions - if (!$this->validate_require_phpbb() || !$this->validate_require_php()) + // Check for valid directory & phpBB, PHP versions + if (!$this->validate_dir() || !$this->validate_require_phpbb() || !$this->validate_require_php()) { return false; } @@ -281,6 +275,16 @@ class phpbb_extension_metadata_manager return true; } + /** + * Validates the most basic directory structure to ensure it follows <vendor>/<ext> convention. + * + * @return boolean True when passes validation + */ + public function validate_dir() + { + return (substr_count($this->ext_name, '/') === 1 && $this->ext_name == $this->get_metadata('name')); + } + /** * Validates the contents of the phpbb requirement field @@ -289,12 +293,12 @@ class phpbb_extension_metadata_manager */ public function validate_require_phpbb() { - if (!isset($this->metadata['require']['phpbb'])) + if (!isset($this->metadata['require']['phpbb/phpbb'])) { - return true; + return false; } - return $this->_validate_version($this->metadata['require']['phpbb'], $this->config['version']); + return true; } /** @@ -306,10 +310,10 @@ class phpbb_extension_metadata_manager { if (!isset($this->metadata['require']['php'])) { - return true; + return false; } - return $this->_validate_version($this->metadata['require']['php'], phpversion()); + return true; } /** @@ -347,12 +351,12 @@ class phpbb_extension_metadata_manager 'META_HOMEPAGE' => (isset($this->metadata['homepage'])) ? $this->metadata['homepage'] : '', 'META_VERSION' => (isset($this->metadata['version'])) ? htmlspecialchars($this->metadata['version']) : '', 'META_TIME' => (isset($this->metadata['time'])) ? htmlspecialchars($this->metadata['time']) : '', - 'META_LICENCE' => htmlspecialchars($this->metadata['licence']), + 'META_LICENSE' => htmlspecialchars($this->metadata['license']), 'META_REQUIRE_PHP' => (isset($this->metadata['require']['php'])) ? htmlspecialchars($this->metadata['require']['php']) : '', 'META_REQUIRE_PHP_FAIL' => !$this->validate_require_php(), - 'META_REQUIRE_PHPBB' => (isset($this->metadata['require']['phpbb'])) ? htmlspecialchars($this->metadata['require']['phpbb']) : '', + 'META_REQUIRE_PHPBB' => (isset($this->metadata['require']['phpbb/phpbb'])) ? htmlspecialchars($this->metadata['require']['phpbb/phpbb']) : '', 'META_REQUIRE_PHPBB_FAIL' => !$this->validate_require_phpbb(), 'META_DISPLAY_NAME' => (isset($this->metadata['extra']['display-name'])) ? htmlspecialchars($this->metadata['extra']['display-name']) : '', diff --git a/phpBB/phpbb/extension/provider.php b/phpBB/phpbb/extension/provider.php index 45b55e5cab..bfdc2b66b9 100644 --- a/phpBB/phpbb/extension/provider.php +++ b/phpBB/phpbb/extension/provider.php @@ -7,13 +7,7 @@ * */ -/** -* @ignore -*/ -if (!defined('IN_PHPBB')) -{ - exit; -} +namespace phpbb\extension; /** * Provides a set of items found in extensions. @@ -28,7 +22,7 @@ if (!defined('IN_PHPBB')) * * @package extension */ -abstract class phpbb_extension_provider implements IteratorAggregate +abstract class provider implements \IteratorAggregate { /** * Array holding all found items @@ -38,16 +32,16 @@ abstract class phpbb_extension_provider implements IteratorAggregate /** * An extension manager to search for items in extensions - * @var phpbb_extension_manager + * @var \phpbb\extension\manager */ protected $extension_manager; /** * Constructor. Loads all available items. * - * @param phpbb_extension_manager $extension_manager phpBB extension manager + * @param \phpbb\extension\manager $extension_manager phpBB extension manager */ - public function __construct(phpbb_extension_manager $extension_manager) + public function __construct(\phpbb\extension\manager $extension_manager) { $this->extension_manager = $extension_manager; } @@ -71,6 +65,6 @@ abstract class phpbb_extension_provider implements IteratorAggregate $this->items = $this->find(); } - return new ArrayIterator($this->items); + return new \ArrayIterator($this->items); } } |
