aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/phpbb/template/twig
diff options
context:
space:
mode:
authorJoas Schilling <nickvergessen@gmx.de>2014-05-28 00:23:52 +0200
committerJoas Schilling <nickvergessen@gmx.de>2014-05-28 00:23:52 +0200
commitcf12e179441f0ae247be3fd448a4d7fb16e089ec (patch)
treedf9f4c540aa4013002720079d9952d08021d8131 /phpBB/phpbb/template/twig
parent317ce7b0c7d929fe4b51dce0441ff2752adc0976 (diff)
parent08c01b7cee629701dc62b32b03eb5543e8c9d196 (diff)
downloadforums-cf12e179441f0ae247be3fd448a4d7fb16e089ec.tar
forums-cf12e179441f0ae247be3fd448a4d7fb16e089ec.tar.gz
forums-cf12e179441f0ae247be3fd448a4d7fb16e089ec.tar.bz2
forums-cf12e179441f0ae247be3fd448a4d7fb16e089ec.tar.xz
forums-cf12e179441f0ae247be3fd448a4d7fb16e089ec.zip
Merge branch 'develop-ascraeus' into develop
* develop-ascraeus: [ticket/12509] Add example in doc block [ticket/12509] Add missing ',' in arrays [ticket/12509] Update calls to set_custom_style in forgotten places [ticket/12509] Fix path in adm/index.php [ticket/12509] Fix typo in adm/index.php [ticket/12509] Fix doc block [ticket/12509] Fix the call to set_custom_file in adm/index and messenger [ticket/12509] Update acp custom_style setter [ticket/12509] Add an option to set the path of custom file for extensions
Diffstat (limited to 'phpBB/phpbb/template/twig')
-rw-r--r--phpBB/phpbb/template/twig/twig.php32
1 files changed, 26 insertions, 6 deletions
diff --git a/phpBB/phpbb/template/twig/twig.php b/phpBB/phpbb/template/twig/twig.php
index 83630f5992..9ea5121553 100644
--- a/phpBB/phpbb/template/twig/twig.php
+++ b/phpBB/phpbb/template/twig/twig.php
@@ -211,9 +211,13 @@ class twig extends \phpbb\template\base
*
* Note: Templates are still compiled to phpBB's cache directory.
*
- * @param string|array $names Array of names or string of name of template(s) in inheritance tree order, used by extensions.
- * @param string|array or string $paths Array of style paths, relative to current root directory
- * @return phpbb_template $this
+ * @param string|array $names Array of names (or detailed names) or string of name of template(s) in inheritance tree order, used by extensions.
+ * E.g. array(
+ * 'name' => 'adm',
+ * 'ext_path' => 'adm/style/',
+ * )
+ * @param string|array of string $paths Array of style paths, relative to current root directory
+ * @return \phpbb\template\template $this
*/
public function set_custom_style($names, $paths)
{
@@ -234,10 +238,26 @@ class twig extends \phpbb\template\base
$namespace = str_replace('/', '_', $ext_namespace);
$paths = array();
- foreach ($names as $style_name)
+ foreach ($names as $template_dir)
{
- $ext_style_path = $ext_path . 'styles/' . $style_name . '/';
- $ext_style_template_path = $ext_style_path . 'template/';
+ if (is_array($template_dir))
+ {
+ if (isset($template_dir['ext_path']))
+ {
+ $ext_style_template_path = $ext_path . $template_dir['ext_path'];
+ $ext_style_path = dirname($ext_style_template_path);
+ }
+ else
+ {
+ $ext_style_path = $ext_path . 'styles/' . $template_dir['name'] . '/';
+ $ext_style_template_path = $ext_style_path . 'template/';
+ }
+ }
+ else
+ {
+ $ext_style_path = $ext_path . 'styles/' . $template_dir . '/';
+ $ext_style_template_path = $ext_style_path . 'template/';
+ }
if (is_dir($ext_style_template_path))
{