function at_config_display() { if (!atIsAdminUser()) { return; } $runningconfig = atGetRunningConfig(); extract($runningconfig); if (isset($_GET['at_admin'])) { ob_end_clean(); OpenTable(); eval($command['print-link']); echo "<h1>AutoTheme</h1><br />"; switch ($_GET['at_admin']) { case "cmds": echo "<h2>" . _AT_LOADEDCOMMANDS . "</h2>"; $commands = atRunningGetVar("command"); foreach ($runningconfig as $cmd => $action) { $vars = " echo \${$cmd};"; } $commands = array_merge((array) $commands, (array) $vars); echo "<table border=\"1\" width=\"100%\"><tr><td><b>" . _AT_COMMAND . "</b></td><td width=\"50%\"><b>" . _AT_ACTION . "</b></td><td width=\"50%\"><b>" . _AT_RESULT . "</b></td></tr>"; foreach ($commands as $cmd => $action) { ob_start(); eval($action); $result = ob_get_contents(); ob_end_clean(); echo "<tr><td valign=\"top\">{$cmd}</td><td valign=\"top\">" . htmlentities($action) . "</td><td valign=\"top\"> {$result}</td></tr>"; } echo "</table>"; break; case "at": // echo "<h2>" . _AT_CONFIG . "</h2>"; echo "<table border=\"1\" width=\"100%\"><tr><td><b>" . _AT_NAME . "</b></td><td><b>" . _AT_VALUE . "</b></td></tr>"; $atconfig = atGetAutoConfig(); foreach ($atconfig as $name => $val) { if (is_array($val)) { ob_start(); at_array_display($val); $result = ob_get_contents(); ob_end_clean(); } else { $result = $val; } echo "<tr><td valign=\"top\">{$name}</td><td valign=\"top\">{$result}</td></tr>"; } echo "</table>"; break; case "theme": echo "<h2>" . _AT_THEMECONFIG . "</h2>"; echo "<table border=\"1\" width=\"100%\"><tr><td><b>" . _AT_NAME . "</b></td><td><b>" . _AT_VALUE . "</b></td></tr>"; $themeconfig = atGetThemeConfig(); foreach ($themeconfig as $name => $val) { if (is_array($val)) { ob_start(); at_array_display($val); $result = ob_get_contents(); ob_end_clean(); } else { $result = $val; } echo "<tr><td valign=\"top\">{$name}</td><td valign=\"top\">{$result}</td></tr>"; } echo "</table>"; break; case "running": echo "<h2>" . _AT_RUNNINGCONFIG . "</h2>"; echo "<table border=\"1\" width=\"100%\"><tr><td><b>" . _AT_NAME . "</b></td><td><b>" . _AT_VALUE . "</b></td></tr>"; $runningconfig = atGetRunningConfig(); foreach ($runningconfig as $name => $val) { if (is_array($val)) { ob_start(); at_array_display($val); $result = ob_get_contents(); ob_end_clean(); } else { $result = $val; } echo "<tr><td valign=\"top\">{$name}</td><td valign=\"top\">{$result}</td></tr>"; } echo "</table>"; break; } CloseTable(); die; } }
function atFixupThemeConfig($themedir) { $autocmd = array(); $autoblock = array(); $autoconfig = atGetAutoConfig(); extract($autoconfig); $tempab = $autoblock; $tempcmd = $autocmd; $themepath = at_gettheme_path($themedir); $themeconfig = atLoadThemeConfig($themepath); extract($themeconfig); if (empty($autoblock)) { $autoblock = $tempab; } if (empty($themecmd)) { $themecmd = $tempcmd; } /* fix old custom module names */ if (array_key_exists("pnHome", $template)) { $template['*HomePage'] = $template['pnHome']; $blockdisplay['*HomePage'] = $blockdisplay['pnHome']; $style['*HomePage'] = $style['pnHome']; unset($template['pnHome'], $blockdisplay['pnHome'], $style['pnHome']); } if (array_key_exists("pnAdmin", $template)) { $template['*AdminPages'] = $template['pnAdmin']; $blockdisplay['*AdminPages'] = $blockdisplay['pnAdmin']; $style['*AdminPages'] = $style['pnAdmin']; unset($template['pnAdmin'], $blockdisplay['pnAdmin'], $style['pnAdmin']); } if (array_key_exists("pnUser", $template)) { $template['*UserPages'] = $template['pnUser']; $blockdisplay['*UserPages'] = $blockdisplay['pnUser']; $style['*UserPages'] = $style['pnUser']; unset($template['pnUser'], $blockdisplay['pnUser'], $style['pnUser']); } if (array_key_exists("nukeHome", $template)) { $template['*HomePage'] = $template['nukeHome']; $blockdisplay['*HomePage'] = $blockdisplay['nukeHome']; $style['*HomePage'] = $style['nukeHome']; unset($template['nukeHome'], $blockdisplay['nukeHome'], $style['nukeHome']); } if (array_key_exists("nukeAdmin", $template)) { $template['*AdminPages'] = $template['nukeAdmin']; $blockdisplay['*AdminPages'] = $blockdisplay['nukeAdmin']; $style['*AdminPages'] = $style['nukeAdmin']; unset($template['nukeAdmin'], $blockdisplay['nukeAdmin'], $style['nukeAdmin']); } if (array_key_exists("nukeUser", $template)) { $template['*UserPages'] = $template['nukeUser']; $blockdisplay['*UserPages'] = $blockdisplay['nukeUser']; $style['*UserPages'] = $style['nukeUser']; unset($template['nukeUser'], $blockdisplay['nukeUser'], $style['nukeUser']); } /* fix block templates for custom modules */ if (!is_array($blocktemplate['default'])) { $temp = $blocktemplate; unset($blocktemplate); $blocktemplate['default'] = $temp; foreach ($template as $thememod => $a) { if ($thememod != 'default') { foreach ($a as $modops => $v) { $blocktemplate[$thememod][$modops] = $temp; } } } } /* fix autoblock templates and blockdisplay keys */ foreach ($template as $mod => $arr1) { foreach ($arr1 as $modop => $arr2) { if ($mod == "default") { foreach ($autoblock as $num => $name) { if (!$template['default']['autoblock' . $num]) { $template['default']['autoblock' . $num] = $template['default'][$name . 'block']; $blockdisplay['default']['autoblock' . $num] = $blockdisplay['default'][$name]; unset($template['default'][$name . 'block']); unset($blockdisplay['default'][$name]); } } } else { foreach ($arr2 as $k => $v) { foreach ($autoblock as $num => $name) { if (!$template[$mod][$modop]['autoblock' . $num]) { $template[$mod][$modop]['autoblock' . $num] = $template[$mod][$modop][$name . 'block']; $blockdisplay[$mod][$modop]['autoblock' . $num] = $blockdisplay[$mod][$modop][$name]; unset($template[$mod][$modop][$name . 'block']); unset($blockdisplay[$mod][$modop][$name]); } } } } } } $var = compact("template", "blockdisplay", "style", "autoblock", "themecmd", "blocktemplate"); atSaveThemeConfig($themedir, $var); }