aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoas Schilling <nickvergessen@gmx.de>2014-04-28 23:39:37 +0200
committerJoas Schilling <nickvergessen@gmx.de>2014-04-28 23:52:48 +0200
commit7f90ff70acd036a022db924bb8d0e0d3f64b8ff8 (patch)
tree55f057b5479f21dfa29b971939aa1cc04abf1952
parent2d5bae555d40423c9b687d46e78bad2129b9e014 (diff)
downloadforums-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.php12
-rw-r--r--phpBB/phpbb/event/md_exporter.php38
-rw-r--r--phpBB/phpbb/event/php_exporter.php18
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)