id;
$position = $module->position;
$title = $module->title;
$showtitle = $module->showtitle;
$content = $module->content;
$split_color = '';
$subtitle = '';
$title_template = '';
// init params
foreach (array('suffix', 'style', 'color', 'header', 'badge', 'icon', 'dropdownwidth') as $var) {
$$var = isset($params[$var]) ? $params[$var] : null;
}
if (strpos($style,";")!==false) {
parse_str(str_replace(";","&",$style));
}
// set default module types
if ($style == '') {
if ($module->position == 'top-a') $style = 'plain';
if ($module->position == 'top-b') $style = 'box';
if ($module->position == 'bottom-a') $style = 'plain';
if ($module->position == 'bottom-b') $style = 'plain';
if ($module->position == 'innertop') $style = 'box';
if ($module->position == 'innerbottom') $style = 'box';
if ($module->position == 'sidebar-a') $style = 'box';
if ($module->position == 'sidebar-b') $style = 'box';
}
// test module styles here
//$style = '';
//$color = '';
//$badge = 'top';
//$header = 'line';
//$icon = '';
//$title = '';
//$content = '
Read Moreem Element
em with class box
code Element
';
// force module style
if (in_array($module->position, array('absolute', 'breadcrumbs', 'logo', 'banner', 'search', 'debug'))) {
$style = 'raw';
$showtitle = 0;
}
if (in_array($module->position, array( 'toolbar-r' ,'toolbar-l', 'footer'))) {
$style = '';
$showtitle = 0;
}
if ($module->position == 'menu') {
$style = $module->menu ? 'raw' : 'dropdown';
}
// set module template using the style
switch ($style) {
case 'postit':
$template = 'default-3';
$style = 'mod-'.$style;
$style .= ($color) ? ' mod-postit-'.$color : '';
$header = ($header) ? ' module-title-'.$header : '';
$subtitle = 1;
$title_template = '';
break;
case 'plain':
case 'box':
$template = 'default-1';
$style = 'mod-'.$style;
$style .= ($color) ? ' '.$style.'-'.$color : '';
$header = ($header) ? ' module-title-'.$header : '';
$subtitle = 1;
$title_template = '';
break;
case 'dropdown':
$template = 'dropdown';
$subtitle = 1;
break;
case 'raw':
$template = 'raw';
break;
default:
$template = 'default-1';
$style = $suffix;
$suffix = '';
$title_template = '%s
';
}
$style.=" ".$suffix;
// set badge if exists
if ($badge) {
$badge = '';
}
// split title in two colors
if ($split_color) {
$pos = mb_strpos($title, ' ');
if ($pos !== false) {
$title = ''.mb_substr($title, 0, $pos).''.mb_substr($title, $pos);
}
}
// create subtitle
if ($subtitle) {
$pos = mb_strpos($title, '||');
if ($pos !== false) {
$title = ''.mb_substr($title, 0, $pos).''.mb_substr($title, $pos + 2).'';
}
}
// create title icon if exists
if ($icon) {
$title = ''.$title.'';
}
// create title template
if ($title_template) {
$title = sprintf($title_template, $title);
}
// set dropdownwidth if exists
if ($dropdownwidth) {
$dropdownwidth = 'style="width: '.$dropdownwidth.'px;"';
}
// render menu
if ($module->menu) {
// set menu renderer
if (isset($params['menu'])) {
$renderer = $params['menu'];
} else if (in_array($module->position, array('menu'))) {
$renderer = 'dropdown';
} else if (in_array($module->position, array('toolbar-l', 'toolbar-r', 'footer'))) {
$renderer = 'default';
} else {
$renderer = 'accordion';
}
// set menu style
if ($renderer == 'dropdown') {
$module->menu_style = 'menu-dropdown';
} else if ($renderer == 'accordion') {
$module->menu_style = 'menu-sidebar';
} else if ($renderer == 'default') {
$module->menu_style = 'menu-line';
} else {
$module->menu_style = null;
}
$content = $this['menu']->process($module, array_unique(array('pre', 'default', $renderer, 'post')));
}
// render module
echo $this->render("modules/templates/{$template}", compact('style', 'badge', 'showtitle', 'title', 'content', 'dropdownwidth'));