UI = {
	factory : function(Type) {
		Hnd = UI.findHandler(Type);
		if ( typeof Hnd == 'object' ){
			
			return Hnd;
		}
	},
	findHandler : function(UIType){
		EvalCode = 'Hnd = new UI.'+UIType+'();';
		try
		{	
			eval(EvalCode);
			return Hnd;
		}
		catch(e)
		{
			Util.error('No Available UI Class To Load For Type '+UIType, AppConf.Debug);
			throw(e.description);
		}
	}
}


UI.Menu = Class.create();
UI.Menu.prototype = {
	initialize : function() {
		this.oMenu = $("menu");
	},
	DrawMenu : function(MenuConf){		
		UI.Menu.ReDrawMenu(MenuConf);
		this.MenuConf = MenuConf;
	}
}

var loaded =0;
var preid = "";
var prelevel = "";
var prestr = "";
var shcont = true;
UI.Menu.CallMenu = function(aid,parentid,end,page){
	if (end==1)
	{	
		loaded=0;		
		url = '/act_photo.php?classid='+parentid+'&page='+page;
		url += "&aid="+aid+"&r="+Math.round((Math.random()) * 100000);		
		S.AjSrv.Call(url, '', UI.Cont.ReDrawPhoto.bind(this),UI.Cont.StartLoading.bind(this) ,true);
	}
	else
	{
		loaded=0;								
		pdiv = "sub_"+parentid;	
		if ($(pdiv)==null)
		{				
				url = '/act_class.php?aid='+aid+'&parentid='+parentid+"&r="+Math.round((Math.random()) * 100000);	
				S.AjSrv.Call(url, '', UI.Menu.ReDrawMenu.bind(this) ,UI.Cont.StartLoading.bind(this) ,true);
				return;
		}		
		html = $(pdiv).innerHTML;		
		if (html!="")
		{			
			tmp = 'img_'+parentid;
			if ($(pdiv).style.display=="block")
			{
				$(pdiv).style.display="none";
				$(tmp).src="http://image2.sina.com.cn/qc/0608photo/images/zyx_006.gif";
			}
			else
			{
				$(pdiv).style.display="block";
				$(tmp).src="http://image2.sina.com.cn/qc/0608photo/images/zyx_005.gif";
			}
			
			url = '/act_class.php?aid='+aid+'&parentid='+parentid+"&r="+Math.round((Math.random()) * 100000);
			if ($(pdiv).style.display=="block")
			{						
				S.AjSrv.Call(url, '', UI.Cont.ReDrawCont.bind(this) ,UI.Cont.StartLoading.bind(this) ,true);
			}
			return;
		}
		else
		{
			tmp = 'img_'+parentid;
			$(tmp).src="http://image2.sina.com.cn/qc/0608photo/images/zyx_005.gif";
			url = '/act_class.php?aid='+aid+'&parentid='+parentid+"&r="+Math.round((Math.random()) * 100000);	
			S.AjSrv.Call(url, '', UI.Menu.ReDrawMenu.bind(this) ,UI.Cont.StartLoading.bind(this) ,true);
		}
	}
}


UI.Menu.ReDrawMenu = function(MenuConf){
	
	len = MenuConf.carclass.length;
	for (i=0; i<len;i++ )
	{		
		str = "";
		level = MenuConf.carclass[i].level;
		for (j=0;j<level ;j++ )
		{
			str += "&nbsp;&nbsp;";
		}
		
		if (MenuConf.carclass[i].end==1)
		{
			str += '<a href="#" onclick="UI.Menu.CallMenu('+MenuConf.aid+','+MenuConf.carclass[i].classid+','+MenuConf.carclass[i].end+',1)">';
			str +='<img id=img_'+MenuConf.carclass[i].classid+' src="http://image2.sina.com.cn/qc/0608photo/images/zyx_007.gif"></a><a href="#" title="'+MenuConf.carclass[i].name+'('+MenuConf.carclass[i].classid+')" onclick="UI.Menu.CallMenu('+MenuConf.aid+','+MenuConf.carclass[i].classid+','+MenuConf.carclass[i].end+',1)" class="a02">'+MenuConf.carclass[i].name+'('+MenuConf.carclass[i].datanum+')</a>';
		}
		else
		{
			str += '<a href="#"  onclick="UI.Menu.CallMenu('+MenuConf.aid+','+MenuConf.carclass[i].classid+','+MenuConf.carclass[i].end+',1)">';
			str +='<img id=img_'+MenuConf.carclass[i].classid+' src="http://image2.sina.com.cn/qc/0608photo/images/zyx_006.gif"></a><a href="#" title="'+MenuConf.carclass[i].name+'('+MenuConf.carclass[i].classid+')" onclick="UI.Menu.CallMenu('+MenuConf.aid+','+MenuConf.carclass[i].classid+','+MenuConf.carclass[i].end+',1)" class="a02">'+MenuConf.carclass[i].name+'('+MenuConf.carclass[i].datanum+')</a>';
		}
		subMenu = document.createElement("div");
		subMenu.setAttribute("id",""+MenuConf.carclass[i].classid);
		subMenu.innerHTML=str;				

		subMenu2 = document.createElement("div");
		subMenu2.setAttribute("id","sub_"+MenuConf.carclass[i].classid);
		
		subMenu.appendChild(subMenu2);
		//
		if (MenuConf.carclass[i].classid==663 || MenuConf.carclass[i].classid==664 || MenuConf.carclass[i].classid==665 || MenuConf.carclass[i].classid==666 )
		{
			pdiv = "cartype";
		}		
		else
		{
			pdiv = "sub_"+MenuConf.carclass[i].parentid;	
		}
		//pdiv = "sub_"+MenuConf.carclass[i].parentid;	
		if (MenuConf.carclass[i].classid!=738)
		{	
			$(pdiv).appendChild(subMenu);
			$(pdiv).style.display="block";
			$("page").innerHTML = "";	
		}	
	}
	if (bn1>0)
	{		
		if (bn2>0)
		{
			shcont=false;
		}
		else
		{
			shcont=true;
		}
		if (cn1==1)
		{
			UI.Menu.CallMenu(aid,bn1,1,0);
		}
		else
		{
			UI.Menu.CallMenu(aid,bn1,0,0);
		}
		bn1 = -1;				
	}
	else
	{
		if (bn2>0)
		{
			if (bn3>0)
			{
				shcont=false;
			}
			else
			{
				shcont=true;
			}
			if (cn2==1)
			{
				UI.Menu.CallMenu(aid,bn2,1,0);
				cn2 =-1;
			}
			else
			{
				UI.Menu.CallMenu(aid,bn2,0,0);
			}				
			bn2 = -1;
		}
		else
		{
			if (bn3>0)
			{
				shcont=true;
				UI.Menu.CallMenu(aid,bn3,1,0);
				bn3 =-1;					
			}
		}	
	
	}
	if (shcont)
	{
		UI.Cont.ReDrawCont(MenuConf);
	}
}

UI.Menu.search = function()
{
	keyword = $("search").value;
	if (keyword=="")
	{
		alert("请输入关键字");
		return;
	}
	loaded=0;
	url = '/search.php?aid='+aid+'&key='+keyword+"&r="+Math.round((Math.random()) * 100000);	
	S.AjSrv.Call(url, '', UI.Cont.ReDrawCont.bind(this) ,UI.Cont.StartLoading.bind(this) ,true);
	$("page").innerHTML = "";
}


UI.Cont = Class.create();
UI.Cont.prototype = {
	initialize : function() {
	},
	DrawCont : function(ContConf){
		UI.Cont.ReDrawCont(ContConf);
	}
}

UI.Cont.ReDrawCont = function(ContConf){
	$("nav").innerHTML = "";
	$("page").innerHTML = "";
	len = ContConf.carclass.length;
	str = '<TABLE width="548" height="1">';
	k=0;
	for (i=0; i<len;i++ )
	{			
		if (ContConf.carclass[i].classid==738) continue;
		if (k%3==0)
		{
			str += "<tr>";
		}		
		str += '<TD width="183">';
		str +='<TABLE height="100%" width="100%" style="border: #BCDFED 1px solid">\
                        <tr><td height=10></td><TR><TD align="center">\
                        <a href="#" onclick="UI.Menu.CallMenu('+ContConf.aid+','+ContConf.carclass[i].classid+','+ContConf.carclass[i].end+',1)"><img class="img01" src="'+ContConf.carclass[i].img+'" width=90></a></td>\
                        </tr><TR><TD align="center" height="20">\
                        <a href="#" onclick="UI.Menu.CallMenu('+ContConf.aid+','+ContConf.carclass[i].classid+','+ContConf.carclass[i].end+',1)" class="a02">'+ContConf.carclass[i].name+'</a></td>\
                        </tr></TR><tr><td height=10></td></TABLE></TD>';	
		if (k%3==2)
		{
			str += "</tr>";
		}	
		k++;
	}
	
	if (i%3!=0)
	{
		for (j=k%3;j<=2;j++)
		{
			str += '<TD width="183">';
			str += '<TABLE height="100%" width="100%" style="border: #BCDFED 1px solid">\
						 <tr><td height=10></td><TR><TD align="center"></TD></TR>\
						 <TR><TD align="center" height="20">\
						   </TD></TR><tr><td height=10></td></TABLE></TD>';
	    if (j==2)
	    {
	    	str += "</tr>";
	    }                        
		}		
	}
	str += "</table>";
	$("cont").innerHTML=str;
	$("loading").style.display="none";
	$("msgBox").style.display="none";
	loaded=1;
	$("nav_title").innerHTML =ContConf.classinfo.name;	
}

UI.Cont.ReDrawPhoto = function(ContConf){
	len = ContConf.photo.length;	
	str = '<TABLE width="548" height="1">';
	for (i=0; i<len;i++ )
	{			
		if (i%3==0)
		{
			str += "<tr>";
		}
		str += '<TD width="183">';
		str +='<TABLE height="100%" width="100%" style="border: #BCDFED 1px solid">\
             <tr><td height=10></td><TR><TD align="center">\
             <a href=photo.html?pid='+ContConf.classinfo.parentid+'&classid='+ContConf.classid+'&page='+ContConf.page+'&photoid='+ContConf.photo[i].photoid+'&aid='+ContConf.aid+'&r=1 target="_blank"><img class="img01" src="'+ContConf.photo[i].img_small+'" width=90></a>\
             </TD></TR>\
						 <TR><TD align="center" height="20">\
						 <a href=photo.html?pid='+ContConf.classinfo.parentid+'&classid='+ContConf.classid+'&page='+ContConf.page+'&photoid='+ContConf.photo[i].photoid+'&aid='+ContConf.aid+'&r=1 target="_blank" class="a02">'+CutStr(ContConf.photo[i].title)+'</a>\
						 </TD></TR><tr><td height=10></td></TABLE></TD>';		
		if (i%3==2)
		{
			str += "</tr>";
		}		
	}
	
	if (i%3!=0)
	{
		for (j=i%3;j<=2;j++)
		{
			str += '<TD width="183">';
			str += '<TABLE height="100%" width="100%" style="border: #BCDFED 1px solid">\
						 <tr><td height=10></td><TR><TD align="center"></TD></TR>\
						 <TR><TD align="center" height="20">\
						   </TD></TR><tr><td height=10></td></TABLE></TD>';
	    if (j==2)
	    {
	    	str += "</tr>";
	    }                        
		}
	}
	str += "</table>";
	$("cont").innerHTML=str;
	str = "";
	
	if (parseInt(ContConf.page)>1)
	{
		prepage = parseInt(ContConf.page)-1;
		str = '<a href="#" onclick="UI.Menu.CallMenu('+ContConf.aid+','+ContConf.classid+',1,1)">第一页</a>&nbsp;';
		str += '<a href="#" onclick="UI.Menu.CallMenu('+ContConf.aid+','+ContConf.classid+',1,'+prepage+')">上一页</a>&nbsp;';
	}
	
	if (parseInt(ContConf.page)!=parseInt(ContConf.totalpage))
	{		
		nextpage = parseInt(ContConf.page)+1;
		str += '<a href="#" onclick="UI.Menu.CallMenu('+ContConf.aid+','+ContConf.classid+',1,'+nextpage+')">下一页</a>&nbsp;';
	}	

	str += '当前第'+ContConf.page+'页&nbsp;共<a href="#" onclick="UI.Menu.CallMenu('+ContConf.aid+','+ContConf.classid+',1,'+ContConf.totalpage+')">'+ContConf.totalpage+'</a>页';
	str += '&nbsp;跳转到 <input id="cuspage" name=page size=5>页&nbsp;<input type=button onclick="UI.Cont.gotopage('+ContConf.aid+','+ContConf.totalpage+','+ContConf.classid+')" value="go">';

	$("page").innerHTML = str;
	loaded=1;
	$("loading").style.display="none";
	$("msgBox").style.display="none";			  
  $("nav_title").innerHTML =ContConf.classinfo.name+'('+ ContConf.totalcount+'张图片)';
}

UI.Cont.StartLoading = function()
{		
	if (loaded==0)
	{		
		$("loading").style.display="block";	
		$("msgBox").style.display="block";
		aA();		
	}
	
}

UI.Cont.gotopage= function(aid,totalpage,classid)
{
	curpage = $F('cuspage');
	if (curpage<=0 || curpage>totalpage)
	{
		alert("输入错误，请检查！");
		return ;
	}
	UI.Menu.CallMenu(aid,classid,1,curpage);
	
}