mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-09 21:08:53 +00:00
[ticket/15187] Add paths of newly enabled extensions to template
When enabling an extension its paths aren't added immediately to the template which results in ACP events not being registered in the compiled template files. PHPBB3-15187
This commit is contained in:
parent
7254980753
commit
e6b7defd38
1 changed files with 36 additions and 0 deletions
|
@ -227,6 +227,8 @@ class manager
|
|||
if ($active)
|
||||
{
|
||||
$this->config->increment('assets_version', 1);
|
||||
|
||||
$this->update_template_paths($name, $this->container->get('template'));
|
||||
}
|
||||
|
||||
return !$active;
|
||||
|
@ -589,4 +591,38 @@ class manager
|
|||
}
|
||||
return $finder;
|
||||
}
|
||||
|
||||
/**
|
||||
* Make the template aware of ACP template events of a newly enabled extension
|
||||
*
|
||||
* @param string $name The extension's name
|
||||
* @param \phpbb\template\base|null $template The template service
|
||||
* @return null
|
||||
*/
|
||||
protected function update_template_paths($name, \phpbb\template\base $template = null)
|
||||
{
|
||||
if ($template instanceof \phpbb\template\base)
|
||||
{
|
||||
$possible_paths = array(
|
||||
$this->phpbb_root_path . 'ext/' . $name . '/adm/style',
|
||||
$this->phpbb_root_path . 'ext/' . $name . '/styles',
|
||||
);
|
||||
|
||||
$paths = array_filter($possible_paths, 'is_dir');
|
||||
|
||||
if ($paths)
|
||||
{
|
||||
$names = array(
|
||||
array(
|
||||
'name' => 'adm',
|
||||
'ext_path' => 'adm/style/',
|
||||
),
|
||||
);
|
||||
|
||||
$paths[] = $this->phpbb_root_path . 'adm/style';
|
||||
|
||||
$template->set_custom_style($names, $paths);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue