mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-08 04:18:52 +00:00
[feature/merging-style-components] Initializing locator and provider separately
Moving locator and path provider initialization out of style class PHPBB3-10632
This commit is contained in:
parent
9611997552
commit
360312f599
7 changed files with 27 additions and 17 deletions
|
@ -124,7 +124,9 @@ set_config_count(null, null, null, $config);
|
||||||
$phpbb_extension_manager = new phpbb_extension_manager($db, EXT_TABLE, $phpbb_root_path, ".$phpEx", $cache->get_driver());
|
$phpbb_extension_manager = new phpbb_extension_manager($db, EXT_TABLE, $phpbb_root_path, ".$phpEx", $cache->get_driver());
|
||||||
|
|
||||||
// Initialize style
|
// Initialize style
|
||||||
$style = new phpbb_style($phpbb_root_path, $phpEx, $config, $user, $phpbb_extension_manager);
|
$phpbb_style_resource_locator = new phpbb_style_resource_locator();
|
||||||
|
$phpbb_style_path_provider = new phpbb_style_extension_path_provider($phpbb_extension_manager, new phpbb_style_path_provider());
|
||||||
|
$style = new phpbb_style($phpbb_root_path, $phpEx, $config, $user, $phpbb_style_resource_locator, $phpbb_style_path_provider);
|
||||||
$template = $style->template;
|
$template = $style->template;
|
||||||
|
|
||||||
$phpbb_subscriber_loader = new phpbb_event_extension_subscriber_loader($phpbb_dispatcher, $phpbb_extension_manager);
|
$phpbb_subscriber_loader = new phpbb_event_extension_subscriber_loader($phpbb_dispatcher, $phpbb_extension_manager);
|
||||||
|
|
|
@ -132,11 +132,13 @@ class bbcode
|
||||||
{
|
{
|
||||||
$this->template_bitfield = new bitfield($user->theme['bbcode_bitfield']);
|
$this->template_bitfield = new bitfield($user->theme['bbcode_bitfield']);
|
||||||
|
|
||||||
$style = new phpbb_style($phpbb_root_path, $phpEx, $config, $user, $phpbb_extension_manager);
|
$style_resource_locator = new phpbb_style_resource_locator();
|
||||||
|
$style_path_provider = new phpbb_style_extension_path_provider($phpbb_extension_manager, new phpbb_style_path_provider());
|
||||||
|
$style = new phpbb_style($phpbb_root_path, $phpEx, $config, $user, $style_resource_locator, $style_path_provider);
|
||||||
$style->set_style();
|
$style->set_style();
|
||||||
$template = $style->template;
|
$template = $style->template;
|
||||||
$template->set_filenames(array('bbcode.html' => 'bbcode.html'));
|
$template->set_filenames(array('bbcode.html' => 'bbcode.html'));
|
||||||
$this->template_filename = $style->locator->get_source_file_for_handle('bbcode.html');
|
$this->template_filename = $style_resource_locator->get_source_file_for_handle('bbcode.html');
|
||||||
}
|
}
|
||||||
|
|
||||||
$bbcode_ids = $rowset = $sql = array();
|
$bbcode_ids = $rowset = $sql = array();
|
||||||
|
|
|
@ -208,7 +208,9 @@ class messenger
|
||||||
// tpl_msg now holds a template object we can use to parse the template file
|
// tpl_msg now holds a template object we can use to parse the template file
|
||||||
if (!isset($this->tpl_msg[$template_lang . $template_file]))
|
if (!isset($this->tpl_msg[$template_lang . $template_file]))
|
||||||
{
|
{
|
||||||
$this->tpl_msg[$template_lang . $template_file] = new phpbb_style($phpbb_root_path, $phpEx, $config, $user, $phpbb_extension_manager);
|
$style_resource_locator = new phpbb_style_resource_locator();
|
||||||
|
$style_path_provider = new phpbb_style_extension_path_provider($phpbb_extension_manager, new phpbb_style_path_provider());
|
||||||
|
$this->tpl_msg[$template_lang . $template_file] = new phpbb_style($phpbb_root_path, $phpEx, $config, $user, $style_resource_locator, $style_path_provider);
|
||||||
$stl = &$this->tpl_msg[$template_lang . $template_file];
|
$stl = &$this->tpl_msg[$template_lang . $template_file];
|
||||||
$tpl = $stl->template;
|
$tpl = $stl->template;
|
||||||
|
|
||||||
|
|
|
@ -50,9 +50,8 @@ class phpbb_style
|
||||||
/**
|
/**
|
||||||
* Style resource locator
|
* Style resource locator
|
||||||
* @var phpbb_style_resource_locator
|
* @var phpbb_style_resource_locator
|
||||||
* This item is temporary public, until locate() function is implemented
|
|
||||||
*/
|
*/
|
||||||
public $locator;
|
private $locator;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Style path provider
|
* Style path provider
|
||||||
|
@ -65,20 +64,17 @@ class phpbb_style
|
||||||
*
|
*
|
||||||
* @param string $phpbb_root_path phpBB root path
|
* @param string $phpbb_root_path phpBB root path
|
||||||
* @param user $user current user
|
* @param user $user current user
|
||||||
* @param phpbb_extension_manager $phpbb_extension_manager extension manager. Set it to false if extension manager should not be used.
|
* @param phpbb_style_resource_locator $locator style resource locator
|
||||||
|
* @param phpbb_style_path_provider $provider style path provider
|
||||||
*/
|
*/
|
||||||
public function __construct($phpbb_root_path, $phpEx, $config, $user, $phpbb_extension_manager = false)
|
public function __construct($phpbb_root_path, $phpEx, $config, $user, phpbb_style_resource_locator $locator, phpbb_style_path_provider_interface $provider)
|
||||||
{
|
{
|
||||||
$this->phpbb_root_path = $phpbb_root_path;
|
$this->phpbb_root_path = $phpbb_root_path;
|
||||||
$this->phpEx = $phpEx;
|
$this->phpEx = $phpEx;
|
||||||
$this->config = $config;
|
$this->config = $config;
|
||||||
$this->user = $user;
|
$this->user = $user;
|
||||||
$this->locator = new phpbb_style_resource_locator();
|
$this->locator = $locator;
|
||||||
$this->provider = new phpbb_style_path_provider();
|
$this->provider = $provider;
|
||||||
if ($phpbb_extension_manager !== false)
|
|
||||||
{
|
|
||||||
$this->provider = new phpbb_style_extension_path_provider($phpbb_extension_manager, $this->provider);
|
|
||||||
}
|
|
||||||
$this->template = new phpbb_style_template($this->phpbb_root_path, $this->phpEx, $this->config, $this->user, $this->locator, $this->provider);
|
$this->template = new phpbb_style_template($this->phpbb_root_path, $this->phpEx, $this->config, $this->user, $this->locator, $this->provider);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -202,7 +202,9 @@ $config = new phpbb_config(array(
|
||||||
'load_tplcompile' => '1'
|
'load_tplcompile' => '1'
|
||||||
));
|
));
|
||||||
|
|
||||||
$style = new phpbb_style($phpbb_root_path, $phpEx, $config, $user, false);
|
$phpbb_style_resource_locator = new phpbb_style_resource_locator();
|
||||||
|
$phpbb_style_path_provider = new phpbb_style_path_provider();
|
||||||
|
$style = new phpbb_style($phpbb_root_path, $phpEx, $config, $user, $phpbb_style_resource_locator, $phpbb_style_path_provider);
|
||||||
$style->set_ext_dir_prefix('adm/');
|
$style->set_ext_dir_prefix('adm/');
|
||||||
$style->set_custom_style('admin', '../adm/style', '');
|
$style->set_custom_style('admin', '../adm/style', '');
|
||||||
$template = $style->template;
|
$template = $style->template;
|
||||||
|
|
|
@ -71,7 +71,9 @@ class phpbb_template_template_inheritance_test extends phpbb_template_template_t
|
||||||
|
|
||||||
$this->template_path = dirname(__FILE__) . '/templates';
|
$this->template_path = dirname(__FILE__) . '/templates';
|
||||||
$this->parent_template_path = dirname(__FILE__) . '/parent_templates';
|
$this->parent_template_path = dirname(__FILE__) . '/parent_templates';
|
||||||
$this->style = new phpbb_style($phpbb_root_path, $phpEx, $config, $user, false);
|
$this->style_resource_locator = new phpbb_style_path_provider();
|
||||||
|
$this->style_provider = new phpbb_style_path_provider();
|
||||||
|
$this->style = new phpbb_style($phpbb_root_path, $phpEx, $config, $user, $this->style_resource_locator, $this->style_provider);
|
||||||
$this->style->set_custom_style('tests', array($this->template_path, $this->parent_template_path), '');
|
$this->style->set_custom_style('tests', array($this->template_path, $this->parent_template_path), '');
|
||||||
$this->template = $this->style->template;
|
$this->template = $this->style->template;
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,6 +15,8 @@ class phpbb_template_template_test_case extends phpbb_test_case
|
||||||
protected $style;
|
protected $style;
|
||||||
protected $template;
|
protected $template;
|
||||||
protected $template_path;
|
protected $template_path;
|
||||||
|
protected $style_resource_locator;
|
||||||
|
protected $style_provider;
|
||||||
|
|
||||||
// Keep the contents of the cache for debugging?
|
// Keep the contents of the cache for debugging?
|
||||||
const PRESERVE_CACHE = true;
|
const PRESERVE_CACHE = true;
|
||||||
|
@ -62,7 +64,9 @@ class phpbb_template_template_test_case extends phpbb_test_case
|
||||||
$config = new phpbb_config(array_merge($defaults, $new_config));
|
$config = new phpbb_config(array_merge($defaults, $new_config));
|
||||||
|
|
||||||
$this->template_path = dirname(__FILE__) . '/templates';
|
$this->template_path = dirname(__FILE__) . '/templates';
|
||||||
$this->style = new phpbb_style($phpbb_root_path, $phpEx, $config, $user, false);
|
$this->style_resource_locator = new phpbb_style_path_provider();
|
||||||
|
$this->style_provider = new phpbb_style_path_provider();
|
||||||
|
$this->style = new phpbb_style($phpbb_root_path, $phpEx, $config, $user, $this->style_resource_locator, $this->style_provider);
|
||||||
$this->style->set_custom_style('tests', $this->template_path, '');
|
$this->style->set_custom_style('tests', $this->template_path, '');
|
||||||
$this->template = $this->style->template;
|
$this->template = $this->style->template;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue