#!/bin/sh
#This script is created by ssparser automatically. The parser first created by MaoShouyan
printf "Content-type: text/html
Cache-Control: no-cache

"
echo -n "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">
<html xmlns=\"http://www.w3.org/1999/xhtml\">
<head>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=gb2312\">
<META HTTP-EQUIV=\"Pragma\" CONTENT=\"no-cache\">
<META HTTP-EQUIV=\"Cache-Control\" content=\"no-cache\">
<link rel=\"stylesheet\" type=\"text/css\" href=\"/img/dtree.css\" />
<script type=\"text/javascript\" src=\"/img/dtree.js\"></script>
<script type=\"text/javascript\">
function openurl(url)
{
        window.parent.document.getElementById(\"content\").src = url;
}
function appinfo(appid, appname)
{
	var url;
	url = \"/cgi-bin/Monitor/appview_topip?bridge=0&appid=\" + appid +
	      \"&appname=\" + appname;
        window.parent.document.getElementById(\"content\").src = url;
}
function groupinfo(grpid, grpname)
{
	var url;
	url = \"/cgi-bin/Monitor/grpview?title=ӦЭ->\" + grpname + \"&group=\" + grpid;
        window.parent.document.getElementById(\"content\").src = url;
}
</script>
</head>
";
. /etc/PG.conf
FLOWEYE=${PGPATH}/bin/floweye

echo -n "
<body>
<div style=\"position:absolute;top:6px\">
<script type=\"text/javascript\">
	d = new dTree('d');
	d.add(0, -1, 'ͳ');
	d.add(20000, 0, 'ſ', '','','','','', true);
	d.add(200001, 20000, '', \"javascript:openurl('/cgi-bin/Monitor/group_stat?bridge=0')\");
	d.add(10000, 20000, '');
";
	bridgeidx=10001
	${FLOWEYE} bridge list format=long | while read bdg ifin ifout bwin bwout tmp1 tmp2 brname
	do
		nextidx=`expr ${bridgeidx} + ${bdg}`
            	echo "d.add(${nextidx}, 10000,'${brname}',\"javascript:openurl('/cgi-bin/Monitor/group_stat?bridge=${bdg}')\");"
	done

echo -n "
        d.add(20001, 20000, '·', \"javascript:openurl('/cgi-bin/Monitor/vlink_list')\");
        d.add(20002, 20000, '', \"javascript:openurl('/cgi-bin/Monitor/proxy_stat')\");
";
	vlinkidx=20003
	${FLOWEYE} vlink list | while read vlinkid vlinkname from intype inip to outtype outip upbps downbps theothers
	do
		nextidx=`expr ${vlinkidx} + ${vlinkid}`
		url="javascript:openurl('/cgi-bin/Monitor/vlink_stat?vlinkid=${vlinkid}&vlinkname=${vlinkname}&intype=${intype}&inip=${inip}&outtype=${outtype}&outip=${outip}')"
            	echo "d.add(${nextidx}, 20001,'${vlinkname}',\"${url}\");"
	done

echo -n "
	d.add(30000, 0, 'ϵͳſ', '','','','','', true);
        d.add(300001,30000, 'ϵͳϢ', \"javascript:openurl('/cgi-bin/Monitor/info_system?title=ϵͳſ->ϵͳϢ')\");
	d.add(300002,30000, 'TopӦ', \"javascript:openurl('/cgi-bin/Monitor/app_topn?title=ϵͳſ->TopӦ')\");
	d.add(300003,30000, 'Topû', \"javascript:openurl('/cgi-bin/Monitor/ip_topn?title=ϵͳſ->Topû')\");
	d.add(300004,30000, 'û',\"javascript:openurl('/cgi-bin/Monitor/ip_trend')\");
	d.add(300005,30000, '½', \"javascript:openurl('/cgi-bin/Monitor/flow_rate')\");
	d.add(40000, 0, 'ǰ', '','','','','', true);
	d.add(400001,40000, '', \"javascript:openurl('/cgi-bin/Monitor/policy_stat?title=ǰ->Ʋ')\");
	d.add(400002,40000, 'ӿ', \"javascript:openurl('/cgi-bin/Monitor/conlimit_stat?title=ǰ->Ʋ')\");
	d.add(400003,40000, 'HTTPܿ', \"javascript:openurl('/cgi-bin/Monitor/urlfilter_stat?title=ǰ->HTTPܿز')\");
	d.add(400004,40000, 'DNSܿ', \"javascript:openurl('/cgi-bin/Monitor/dns_stat?title=ǰ->DNSܿ')\");
	d.add(50000, 0, 'ӿ', '','','','','', true);
";
	nextidx=500001
	${FLOWEYE} if list | while read ifname ifmode ifzone theothers
	do
		if [ "${ifzone}" = "inside" ]; then
			ifzone=""
		else
			ifzone=""
		fi
		echo "d.add($nextidx,50000,'${ifname}(${ifzone})',\"javascript:openurl('/cgi-bin/Monitor/ifview?ifname=${ifname}&title=ӿ->${ifname}')\");"
		nextidx=`expr ${nextidx} + 1`
	done 

echo -n "
	d.add(1044, 0, 'ӦЭ', '','','','','', true);
";
	${FLOWEYE} app showtree all | while read parentid myid appid appname type
	do
		[ "${appid}" = "default" -o "${appid}" = "unknown" ] && continue
		if [ "${type}" = "sysgrp" -o "${type}" = "usrgrp" ]; then
			url="javascript:groupinfo('${appid}', '${appname}')"
			echo "d.add(${myid}, ${parentid}, '${appname}', \"${url}\");"
		elif [ "${type}" = "sysapp" -o "${type}" = "usrapp" ]; then
			url="javascript:appinfo('${appid}', '${appname}')"
			echo "d.add(${myid}, ${parentid}, '${appname}', \"${url}\");"
		fi
	done

echo -n "
	document.write(d);
</script>
</div>
</body>
</html>
";