Index: trunk/htdocs/cacher/index.php
===================================================================
--- trunk/htdocs/cacher/cacher.php	(revision 1069)
+++ trunk/htdocs/cacher/index.php	(revision 1074)
@@ -114,4 +114,21 @@
 	}
 	return implode('', $html);
+}
+
+function getModuleInfo()
+{
+	ob_start();
+	phpinfo(INFO_MODULES);
+	$moduleInfo = ob_get_clean();
+	if (!preg_match_all('!(XCache[^<>]*)</a></h2>(.*?)<h2>!is', $moduleInfo, $m)) {
+		return;
+	}
+
+	$moduleInfo = array();
+	foreach ($m[1] as $i => $dummy) {
+		$moduleInfo[] = '<h3>' . trim($m[1][$i]) . '</h3>';
+		$moduleInfo[] = str_replace('<br />', '', trim($m[2][$i]));
+	}
+	return implode('', $moduleInfo);
 }
 
@@ -156,10 +173,9 @@
 }
 
-$moduleinfo = null;
-$type_none = -1;
-if (!isset($_GET['type'])) {
-	$_GET['type'] = $type_none;
-}
-$_GET['type'] = $type = (int) $_GET['type'];
+$listTypes = array('' => _('Summary'), 'listphp' => _('List PHP'), 'listvar' => _('List Var Data'));
+
+if (!isset($_GET['do'])) {
+	$_GET['do'] = '';
+}
 
 // {{{ process clear, enable, disable
@@ -194,5 +210,5 @@
 for ($i = 0; $i < $pcnt; $i ++) {
 	$data = xcache_info(XC_TYPE_PHP, $i);
-	if ($type === XC_TYPE_PHP) {
+	if ($_GET['do'] === 'listphp') {
 		$data += xcache_list(XC_TYPE_PHP, $i);
 	}
@@ -220,5 +236,5 @@
 for ($i = 0; $i < $vcnt; $i ++) {
 	$data = xcache_info(XC_TYPE_VAR, $i);
-	if ($type === XC_TYPE_VAR) {
+	if ($_GET['do'] === 'listvar') {
 		$data += xcache_list(XC_TYPE_VAR, $i);
 	}
@@ -243,13 +259,15 @@
 // }}}
 // {{{ merge the list
-switch ($type) {
-case XC_TYPE_PHP:
-case XC_TYPE_VAR:
-	$cachelist = array('type' => $type, 'cache_list' => array(), 'deleted_list' => array());
-	if ($type == XC_TYPE_VAR) {
+switch ($_GET['do']) {
+case 'listphp':
+case 'listvar':
+	$cachelist = array('cache_list' => array(), 'deleted_list' => array());
+	if ($_GET['do'] == 'listphp') {
+		$cachelist['type_name'] = 'php';
+		$cachelist['type'] = XC_TYPE_PHP;
+	}
+	else {
 		$cachelist['type_name'] = 'var';
-	}
-	else {
-		$cachelist['type_name'] = 'php';
+		$cachelist['type'] = XC_TYPE_VAR;
 	}
 	foreach ($cacheinfos as $i => $c) {
@@ -257,5 +275,5 @@
 			continue;
 		}
-		if ($c['type'] == $type && isset($c['cache_list'])) {
+		if ($c['type'] == $cachelist['type'] && isset($c['cache_list'])) {
 			foreach ($c['cache_list'] as $e) {
 				$e['cache_name'] = $c['cache_name'];
@@ -268,5 +286,5 @@
 		}
 	}
-	if ($type == XC_TYPE_PHP) {
+	if ($cachelist['type'] == XC_TYPE_PHP) {
 		$inodes = array();
 		$haveinode = false;
@@ -287,32 +305,11 @@
 	}
 	unset($data);
+	include("./listentries.tpl.php");
 	break;
 
 default:
-	$_GET['type'] = $type_none;
-	$cachelist = array();
-	ob_start();
-	phpinfo(INFO_MODULES);
-	$moduleinfo = ob_get_clean();
-	if (preg_match_all('!(XCache[^<>]*)</a></h2>(.*?)<h2>!is', $moduleinfo, $m)) {
-		$moduleinfo = array();
-		foreach ($m[1] as $i => $dummy) {
-			$moduleinfo[] = '<h3>' . trim($m[1][$i]) . '</h3>';
-			$moduleinfo[] = str_replace('<br />', '', trim($m[2][$i]));
-		}
-		$moduleinfo = implode('', $moduleinfo);
-	}
-	else {
-		$moduleinfo = null;
-	}
-	break;
+	include("./summary.tpl.php");
 }
 // }}}
 
-$type_php = XC_TYPE_PHP;
-$type_var = XC_TYPE_VAR;
-$listTypes = array($type_none => _('Statistics'), $type_php => _('List PHP'), $type_var => _('List Var Data'));
-
-include("cacher.tpl.php");
-
 ?>
