diff options
author | Joas Schilling <nickvergessen@gmx.de> | 2014-04-28 23:39:37 +0200 |
---|---|---|
committer | Joas Schilling <nickvergessen@gmx.de> | 2014-04-28 23:52:48 +0200 |
commit | 7f90ff70acd036a022db924bb8d0e0d3f64b8ff8 (patch) | |
tree | 55f057b5479f21dfa29b971939aa1cc04abf1952 | |
parent | 2d5bae555d40423c9b687d46e78bad2129b9e014 (diff) | |
download | forums-7f90ff70acd036a022db924bb8d0e0d3f64b8ff8.tar forums-7f90ff70acd036a022db924bb8d0e0d3f64b8ff8.tar.gz forums-7f90ff70acd036a022db924bb8d0e0d3f64b8ff8.tar.bz2 forums-7f90ff70acd036a022db924bb8d0e0d3f64b8ff8.tar.xz forums-7f90ff70acd036a022db924bb8d0e0d3f64b8ff8.zip |
[ticket/12273] Move $extension to constructor so the path is always set
PHPBB3-12273
-rw-r--r-- | phpBB/develop/export_events_for_wiki.php | 12 | ||||
-rw-r--r-- | phpBB/phpbb/event/md_exporter.php | 38 | ||||
-rw-r--r-- | phpBB/phpbb/event/php_exporter.php | 18 |
3 files changed, 30 insertions, 38 deletions
diff --git a/phpBB/develop/export_events_for_wiki.php b/phpBB/develop/export_events_for_wiki.php index 61d02059fd..f4ebb42cf4 100644 --- a/phpBB/develop/export_events_for_wiki.php +++ b/phpBB/develop/export_events_for_wiki.php @@ -61,8 +61,8 @@ switch ($action) echo '__FORCETOC__' . "\n"; case 'php': - $exporter = new \phpbb\event\php_exporter($phpbb_root_path); - $exporter->crawl_phpbb_directory_php($extension); + $exporter = new \phpbb\event\php_exporter($phpbb_root_path, $extension); + $exporter->crawl_phpbb_directory_php(); echo $exporter->export_events_for_wiki(); if ($action === 'php') @@ -73,8 +73,8 @@ switch ($action) // no break; case 'styles': - $exporter = new \phpbb\event\md_exporter($phpbb_root_path); - $exporter->crawl_phpbb_directory_styles('docs/events.md', $extension); + $exporter = new \phpbb\event\md_exporter($phpbb_root_path, $extension); + $exporter->crawl_phpbb_directory_styles('docs/events.md'); echo $exporter->export_events_for_wiki(); if ($action === 'styles') @@ -85,8 +85,8 @@ switch ($action) // no break; case 'adm': - $exporter = new \phpbb\event\md_exporter($phpbb_root_path); - $exporter->crawl_phpbb_directory_adm('docs/events.md', $extension); + $exporter = new \phpbb\event\md_exporter($phpbb_root_path, $extension); + $exporter->crawl_phpbb_directory_adm('docs/events.md'); echo $exporter->export_events_for_wiki(); if ($action === 'all') diff --git a/phpBB/phpbb/event/md_exporter.php b/phpBB/phpbb/event/md_exporter.php index 8fea393c10..af86882885 100644 --- a/phpBB/phpbb/event/md_exporter.php +++ b/phpBB/phpbb/event/md_exporter.php @@ -34,10 +34,17 @@ class md_exporter /** * @param string $phpbb_root_path + * @param mixed $extension String 'vendor/ext' to filter, null for phpBB core */ - public function __construct($phpbb_root_path) + public function __construct($phpbb_root_path, $extension = null) { $this->root_path = $phpbb_root_path; + $this->path = $this->root_path; + if ($extension) + { + $this->path .= 'ext/' . $extension . '/'; + } + $this->events = array(); $this->events_by_file = array(); $this->filter = $this->current_event = ''; @@ -55,19 +62,12 @@ class md_exporter /** * @param string $md_file Relative from phpBB root - * @param mixed $extension String 'vendor/ext' to filter, null for phpBB core * @return int Number of events found * @throws \LogicException */ - public function crawl_phpbb_directory_adm($md_file, $extension = null) + public function crawl_phpbb_directory_adm($md_file) { - $this->path = $this->root_path; - if ($extension) - { - $this->path .= 'ext/' . $extension . '/'; - } - - $this->crawl_eventsmd($this->path . $md_file, 'adm', $extension); + $this->crawl_eventsmd($md_file, 'adm'); $file_list = $this->get_recursive_file_list($this->path . 'adm/style/'); foreach ($file_list as $file) @@ -81,19 +81,12 @@ class md_exporter /** * @param string $md_file Relative from phpBB root - * @param mixed $extension String 'vendor/ext' to filter, null for phpBB core * @return int Number of events found * @throws \LogicException */ - public function crawl_phpbb_directory_styles($md_file, $extension = null) + public function crawl_phpbb_directory_styles($md_file) { - $this->path = $this->root_path; - if ($extension) - { - $this->path .= 'ext/' . $extension . '/'; - } - - $this->crawl_eventsmd($this->path . $md_file, 'styles', $extension); + $this->crawl_eventsmd($md_file, 'styles'); $styles = array('prosilver', 'subsilver2'); foreach ($styles as $style) @@ -115,18 +108,17 @@ class md_exporter /** * @param string $md_file Relative from phpBB root * @param string $filter Should be 'styles' or 'adm' - * @param mixed $extension String 'vendor/ext' to filter, null for phpBB core * @return int Number of events found * @throws \LogicException */ - public function crawl_eventsmd($md_file, $filter, $extension = null) + public function crawl_eventsmd($md_file, $filter) { - if (!file_exists($md_file)) + if (!file_exists($this->path . $md_file)) { throw new \LogicException("The event docs file '{$md_file}' could not be found"); } - $file_content = file_get_contents($md_file); + $file_content = file_get_contents($this->path . $md_file); $this->filter = $filter; $events = explode("\n\n", $file_content); diff --git a/phpBB/phpbb/event/php_exporter.php b/phpBB/phpbb/event/php_exporter.php index 879a7eb5ab..d86ee3c045 100644 --- a/phpBB/phpbb/event/php_exporter.php +++ b/phpBB/phpbb/event/php_exporter.php @@ -40,14 +40,21 @@ class php_exporter /** * @param string $phpbb_root_path + * @param mixed $extension String 'vendor/ext' to filter, null for phpBB core */ - public function __construct($phpbb_root_path) + public function __construct($phpbb_root_path, $extension = null) { $this->root_path = $phpbb_root_path; $this->path = $phpbb_root_path; $this->events = $this->file_lines = array(); $this->current_file = $this->current_event = ''; $this->current_event_line = 0; + + $this->path = $this->root_path; + if ($extension) + { + $this->path .= 'ext/' . $extension . '/'; + } } /** @@ -86,17 +93,10 @@ class php_exporter /** * Crawl the phpBB/ directory for php events - * @param mixed $extension String 'vendor/ext' to filter, null for phpBB core * @return int The number of events found */ - public function crawl_phpbb_directory_php($extension = null) + public function crawl_phpbb_directory_php() { - $this->path = $this->root_path; - if ($extension) - { - $this->path .= 'ext/' . $extension . '/'; - } - $files = $this->get_recursive_file_list(); $this->events = array(); foreach ($files as $file) |