From 7b909d5e68cfee08dd85a3f28a2bdc9d6f41aaff Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Wed, 10 Dec 2014 21:24:29 +0100 Subject: Extendable config cascade for userstyles and userscript Added user*.less files to config --- inc/config_cascade.php | 10 +++++----- lib/exe/css.php | 8 +++++--- lib/exe/js.php | 6 ++++-- 3 files changed, 14 insertions(+), 10 deletions(-) diff --git a/inc/config_cascade.php b/inc/config_cascade.php index 1d9f67edb..a6dfadc80 100644 --- a/inc/config_cascade.php +++ b/inc/config_cascade.php @@ -49,13 +49,13 @@ $config_cascade = array_merge( 'local' => array(DOKU_CONF . 'wordblock.local.conf'), ), 'userstyle' => array( - 'screen' => DOKU_CONF . 'userstyle.css', - 'print' => DOKU_CONF . 'userprint.css', - 'feed' => DOKU_CONF . 'userfeed.css', - 'all' => DOKU_CONF . 'userall.css', + 'screen' => array(DOKU_CONF . 'userstyle.css', DOKU_CONF . 'userstyle.less'), + 'print' => array(DOKU_CONF . 'userprint.css', DOKU_CONF . 'userprint.less'), + 'feed' => array(DOKU_CONF . 'userfeed.css', DOKU_CONF . 'userfeed.less'), + 'all' => array(DOKU_CONF . 'userall.css', DOKU_CONF . 'userall.less') ), 'userscript' => array( - 'default' => DOKU_CONF . 'userscript.js' + 'default' => array(DOKU_CONF . 'userscript.js') ), 'acl' => array( 'default' => DOKU_CONF . 'acl.auth.php', diff --git a/lib/exe/css.php b/lib/exe/css.php index 77674d251..b1065f518 100644 --- a/lib/exe/css.php +++ b/lib/exe/css.php @@ -52,7 +52,7 @@ function css_out(){ // if old 'default' userstyle setting exists, make it 'screen' userstyle for backwards compatibility if (isset($config_cascade['userstyle']['default'])) { - $config_cascade['userstyle']['screen'] = $config_cascade['userstyle']['default']; + $config_cascade['userstyle']['screen'] = array($config_cascade['userstyle']['default']); } // cache influencers @@ -82,8 +82,10 @@ function css_out(){ $files[$mediatype] = array_merge($files[$mediatype], $styleini['stylesheets'][$mediatype]); } // load user styles - if(isset($config_cascade['userstyle'][$mediatype])){ - $files[$mediatype][$config_cascade['userstyle'][$mediatype]] = DOKU_BASE; + if(!empty($config_cascade['userstyle'][$mediatype])) { + foreach($config_cascade['userstyle'][$mediatype] as $userstyle) { + $files[$mediatype][$userstyle] = DOKU_BASE; + } } $cache_files = array_merge($cache_files, array_keys($files[$mediatype])); diff --git a/lib/exe/js.php b/lib/exe/js.php index ec236e98f..793104e81 100644 --- a/lib/exe/js.php +++ b/lib/exe/js.php @@ -72,8 +72,10 @@ function js_out(){ // add possible plugin scripts and userscript $files = array_merge($files,js_pluginscripts()); - if(isset($config_cascade['userscript']['default'])){ - $files[] = $config_cascade['userscript']['default']; + if(!empty($config_cascade['userscript']['default'])) { + foreach($config_cascade['userscript']['default'] as $userscript) { + $files[] = $userscript; + } } $cache_files = array_merge($files, getConfigFiles('main')); -- cgit v1.2.3