function replace_var($vars) { $var = $vars[1]; if (substr($var, 0, 9) == '?sitemgr:') { $params = explode(',', substr($var, 9)); switch (count($params)) { case 0: $val = ''; break; case 1: $val = sitemgr_link2('', $params[0]); break; case 2: $val = sitemgr_link2($params[0], $params[1]); break; default: $val = $var; } } elseif (substr($var, 0, 7) == '?phpgw:') { $params = explode(',', substr($var, 7)); switch (count($params)) { case 0: $val = ''; break; case 1: $val = phpgw_link('', $params[0]); break; case 2: $val = phpgw_link($params[0], $params[1]); break; default: $val = $var; } } elseif (substr($var, 0, 1) == '?') { $val = sitemgr_link2('/index.php', substr($var, 1)); } elseif ($var == 'news') { $ui = new ui(); $val = $ui->get_news(); unset($ui); } elseif (substr($var, 0, 6) == 'block-') { if (file_exists('blocks/' . $var . '.php')) { $title = ereg_replace('_', ' ', substr($var, 6)); include 'blocks/' . $var . '.php'; } else { $title = lang('Block not found.'); $content = lang('Contact the administrator.'); } add_theme_var('block_title', $title); add_theme_var('block_content', $content); if (function_exists('themecenterbox')) { $val = themecenterbox($title, $content); } else { $val = parse_theme_vars(implode("", file('templates/' . $GLOBALS['sitemgr_info']['themesel'] . '/centerblock.tpl'))); } } else { /* Check for reserved vars first, otherwise get from the global theme_vars */ switch (strtolower($var)) { case 'opentable': $val = OpenTable(); break; case 'opentable2': $val = OpenTable2(); break; case 'closetable': $val = CloseTable(); break; case 'closetable2': $val = CloseTable2(); break; default: $val = $GLOBALS['theme_vars'][$var]; } } return $val; }