/** * Parse configuration * @param config * @param design * @return $pConf **/ function parseConfigDesign($config, $design = false) { $col1_config = ''; $col2_config = ''; $col3_config = ''; $col1_clearing = ''; $col2_clearing = ''; $col3_clearing = ''; $pConf['addhead'] = ''; $pConf['addscript'] = array(); $pConf['addstylesheet'] = array(); $pConf['layout_1col'] = ''; $pConf['layout_2col_1'] = ''; $pConf['layout_2col_2'] = ''; $pConf['layout_3col'] = ''; $pConf['custom_xml'] = ''; $pConf['debug'] = ''; $pConf['design'] = ''; $pConf['html_file'] = ''; $plugins = array(); $ownVars = array(); foreach ($config as $conf) { if (isset($conf['layout_1col'])) { $pConf['layout_1col'] = $conf['layout_1col'] ? $conf['layout_1col'] : '1col_3'; continue; } if (isset($conf['layout_2col_1'])) { $pConf['layout_2col_1'] = $conf['layout_2col_1'] ? $conf['layout_2col_1'] : '2col_13'; continue; } if (isset($conf['layout_2col_2'])) { $pConf['layout_2col_2'] = $conf['layout_2col_2'] ? $conf['layout_2col_2'] : '2col_23'; continue; } if (isset($conf['layout_3col'])) { $pConf['layout_3col'] = $conf['layout_3col'] ? $conf['layout_3col'] : '3col_123'; continue; } if (isset($conf['debug'])) { $pConf['debug'] = $conf['debug']; continue; } if (isset($conf['design'])) { $pConf['design'] = $conf['design']; continue; } if (isset($conf['html_file'])) { $pConf['html_file'] = $conf['html_file']; continue; } if (isset($conf['addhead'])) { $pConf['addhead'] = $conf['addhead']; continue; } if (isset($conf['custom']['xmlconfig'])) { $pConf['custom_xml'] = $conf['custom']['xmlconfig']; continue; } if (isset($conf['addstylesheet'])) { foreach ($conf['addstylesheet'] as $file => $attribs) { $pConf['addstylesheet'][$file]['type'] = isset($attribs['type']) ? $attribs['type'] : ''; $pConf['addstylesheet'][$file]['media'] = isset($attribs['media']) ? $attribs['media'] : ''; $pConf['addstylesheet'][$file]['browser'] = isset($attribs['browser']) ? $attribs['browser'] : ''; $pConf['addstylesheet'][$file]['source'] = isset($attribs['source']) ? $attribs['source'] : ''; } continue; } if (isset($conf['addscript'])) { foreach ($conf['addscript'] as $file => $attribs) { $pConf['addscript'][$file]['type'] = isset($attribs['type']) ? $attribs['type'] : ''; $pConf['addscript'][$file]['browser'] = isset($attribs['browser']) ? $attribs['browser'] : ''; $pConf['addscript'][$file]['source'] = isset($attribs['source']) ? $attribs['source'] : ''; } continue; } if (isset($conf['col1_content'])) { foreach ($conf['col1_content'] as $pos => $col1) { if ($pos == '__clear') { $col1_clearing[] = $col1[0]; } else { $col1_config .= JYAML::getContentConfig('col1', $pos, $this->positions, $col1); } } continue; } if (isset($conf['col2_content'])) { foreach ($conf['col2_content'] as $pos => $col2) { if ($pos == '__clear') { $col2_clearing[] = $col2[0]; } else { $col2_config .= JYAML::getContentConfig('col2', $pos, $this->positions, $col2); } } continue; } if (isset($conf['col3_content'])) { foreach ($conf['col3_content'] as $pos => $col3) { if ($pos == '__clear') { $col3_clearing[] = $col3[0]; } else { $col3_config .= JYAML::getContentConfig('col3', $pos, $this->positions, $col3); } } continue; } if (isset($conf['plugins'])) { foreach ($conf['plugins'] as $plugin => $params) { $plugins[$plugin]['paramString'] = ''; foreach ($params as $name => $data) { $plugins[$plugin]['params'][$name] = $data; $plugins[$plugin]['paramString'] .= $name . "=" . $data . "\n"; } } continue; } /* save own vars */ $ownKey = key($conf); $ownVars[$ownKey] = $conf[$ownKey]; } // Entities for viewing $pConf['addhead'] = htmlentities($pConf['addhead']); $pConf['col1_config'] = $col1_config ? $col1_config : ''; $pConf['col2_config'] = $col2_config ? $col2_config : ''; $pConf['col3_config'] = $col3_config ? $col3_config : ''; $pConf['col1_clearing'] = JYAML::getPosClear('col1', $col1_clearing); $pConf['col2_clearing'] = JYAML::getPosClear('col2', $col2_clearing); $pConf['col3_clearing'] = JYAML::getPosClear('col3', $col3_clearing); $pConf['plugins'] = $plugins; $pConf['ownVars'] = $ownVars; return $pConf; }