/** * Load style ini contents * * Loads and merges style.ini files from template and config and prepares * the stylesheet modes * * @author Andreas Gohr <*****@*****.**> * * @param string $tpl the used template * @param bool $preview load preview replacements * @return array with keys 'stylesheets' and 'replacements' */ function css_styleini($tpl, $preview = false) { global $conf; $stylesheets = array(); // mode, file => base $replacements = array(); // placeholder => value // load template's style.ini $incbase = tpl_incdir($tpl); $webbase = tpl_basedir($tpl); $ini = $incbase . 'style.ini'; if (file_exists($ini)) { $data = parse_ini_file($ini, true); // stylesheets if (is_array($data['stylesheets'])) { foreach ($data['stylesheets'] as $file => $mode) { $stylesheets[$mode][$incbase . $file] = $webbase; } } // replacements if (is_array($data['replacements'])) { $replacements = array_merge($replacements, css_fixreplacementurls($data['replacements'], $webbase)); } } // load configs's style.ini $webbase = DOKU_BASE; $ini = DOKU_CONF . "tpl/{$tpl}/style.ini"; $incbase = dirname($ini) . '/'; if (file_exists($ini)) { $data = parse_ini_file($ini, true); // stylesheets if (isset($data['stylesheets']) && is_array($data['stylesheets'])) { foreach ($data['stylesheets'] as $file => $mode) { $stylesheets[$mode][$incbase . $file] = $webbase; } } // replacements if (isset($data['replacements']) && is_array($data['replacements'])) { $replacements = array_merge($replacements, css_fixreplacementurls($data['replacements'], $webbase)); } } // allow replacement overwrites in preview mode if ($preview) { $webbase = DOKU_BASE; $ini = $conf['cachedir'] . '/preview.ini'; if (file_exists($ini)) { $data = parse_ini_file($ini, true); // replacements if (is_array($data['replacements'])) { $replacements = array_merge($replacements, css_fixreplacementurls($data['replacements'], $webbase)); } } } return array('stylesheets' => $stylesheets, 'replacements' => $replacements); }
/** * Load style ini contents * * Loads and merges style.ini files from template and config and prepares * the stylesheet modes * * @author Andreas Gohr <*****@*****.**> * @param string $tpl the used template * @return array with keys 'stylesheets' and 'replacements' */ function css_styleini($tpl) { $stylesheets = array(); // mode, file => base $replacements = array(); // placeholder => value // load template's style.ini $incbase = tpl_incdir($tpl); $webbase = tpl_basedir($tpl); $ini = $incbase . 'style.ini'; if (file_exists($ini)) { $data = parse_ini_file($ini, true); // stylesheets if (is_array($data['stylesheets'])) { foreach ($data['stylesheets'] as $file => $mode) { $stylesheets[$mode][$incbase . $file] = $webbase; } } // replacements if (is_array($data['replacements'])) { $replacements = array_merge($replacements, css_fixreplacementurls($data['replacements'], $webbase)); } } // load template's style.local.ini // @deprecated 2013-08-03 $ini = $incbase . 'style.local.ini'; if (file_exists($ini)) { $data = parse_ini_file($ini, true); // stylesheets if (is_array($data['stylesheets'])) { foreach ($data['stylesheets'] as $file => $mode) { $stylesheets[$mode][$incbase . $file] = $webbase; } } // replacements if (is_array($data['replacements'])) { $replacements = array_merge($replacements, css_fixreplacementurls($data['replacements'], $webbase)); } } // load configs's style.ini $webbase = DOKU_BASE; $ini = DOKU_CONF . "tpl/{$tpl}/style.ini"; $incbase = dirname($ini) . '/'; if (file_exists($ini)) { $data = parse_ini_file($ini, true); // stylesheets if (is_array($data['stylesheets'])) { foreach ($data['stylesheets'] as $file => $mode) { $stylesheets[$mode][$incbase . $file] = $webbase; } } // replacements if (is_array($data['replacements'])) { $replacements = array_merge($replacements, css_fixreplacementurls($data['replacements'], $webbase)); } } return array('stylesheets' => $stylesheets, 'replacements' => $replacements); }