// JavaScript Document

//全局变量

var xmlDoc;
var xmlFileName="xml/sh_websubject.xml";
var ie_browser;
var loaded;
var xpath;	
var currentpagenum; 
var totalframesnum;


// check for XPath implementation
if( document.implementation.hasFeature("XPath", "3.0") )
{
   // prototying the XMLDocument
   XMLDocument.prototype.selectNodes = function(cXPathString, xNode)
   {
      if( !xNode ) { xNode = this; } 
      var oNSResolver = this.createNSResolver(this.documentElement)
      var aItems = this.evaluate(cXPathString, xNode, oNSResolver, 
                   XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null)
      var aResult = [];
      for( var i = 0; i < aItems.snapshotLength; i++)
      {
         aResult[i] =  aItems.snapshotItem(i);
      }
      return aResult;
   }

   // prototying the Element
   Element.prototype.selectNodes = function(cXPathString)
   {
      if(this.ownerDocument.selectNodes)
      {
         return this.ownerDocument.selectNodes(cXPathString, this);
      }
      else{throw "For XML Elements Only";}
   }
}


// check for XPath implementation
if( document.implementation.hasFeature("XPath", "3.0") )
{
   // prototying the XMLDocument
   XMLDocument.prototype.selectSingleNode = function(cXPathString, xNode)
   {
	  if( !xNode ) { xNode = this; } 
      var xItems = this.selectNodes(cXPathString, xNode);
      if( xItems.length > 0 )
      {
         return xItems[0];
      }
      else
      {
         return null;
      }
   }
   
   // prototying the Element
   Element.prototype.selectSingleNode = function(cXPathString)
   {    
      if(this.ownerDocument.selectSingleNode)
      {
         return this.ownerDocument.selectSingleNode(cXPathString, this);
      }
      else{throw "For XML Elements Only";}
   }
}

//判断浏览器类型
// code for IE
if (window.ActiveXObject)  
{ 
	xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); 
	ie_browser=true;
	xmlDoc.async=false;
	xmlDoc.load(xmlFileName);
	loaded=(xmlDoc.parseError.errorCode == 0);
	//document.write(loaded);
		if(loaded==false)
		{
			alert('Can not read the xml file!');
		}
}
// code for Mozilla, Firefox, Opera, etc.
else if (document.implementation && document.implementation.createDocument) 
{
	xmlDoc=document.implementation.createDocument("", "doc", null);
	ie_browser=false;
	loaded = xmlDoc.load(xmlFileName);
	//document.write(ie_browser);
	//document.write(loaded);
		if(loaded==false)
		{
			alert('Can not read the xml file !');
		}
	}
else 
{ 
	alert('Your browser cannot handle this script');  
}

function Show()
{
	document.write("没有相关系统专题！");
}

function ShowTime()
{
	document.write(new Date().toLocaleDateString());
}


function ShowList(system,num,len)//system表示子系统，num表示需要的专题数目,len表示返回标题长度
{
	if(ie_browser)
	{	
				
		if(system=="all")
		{
			//document.write("system");
			xpath="/subject_info/subject";
		}
		else
		{
			xpath="/subject_info/subject[@websystem='"+system+"']";
		}
			
		var data=xmlDoc.documentElement.selectNodes(xpath);
		document.write(num);
		if(data == null)
		{
			document.write("没有相关系统专题！");
		}
		else
		{
			var title,content,power,date,imglink,subjectlink;
			if(num>=data.length)
			{
				num=data.length;
			}
		
			for(i=0;i<num;i++)
			{

				title=data[i].selectSingleNode("title").text;
				if(title.length>=len){
					title=title.substring(0,len)+"...";
				}
				power=data[i].selectSingleNode("power").text;
				date=data[i].selectSingleNode("date").text;
				imglink=data[i].selectSingleNode("imglink").text;
				subjectlink=data[i].selectSingleNode("subjectlink").text;
				content=data[i].selectSingleNode("content").text;
				document.write(title+"<br/>");	
				document.write(content+"<br/>");
				document.write(power+"<br/>"+date+"<br/>"+imglink+"<br/>"+subjectlink+"<br/>");			   					
			}		
		 }
	 }
	 
	 
}


function ShowListbyPower(system,num,power,len)//system表示子系统，num表示需要的专题数目，power表示权重,len表示返回标题长度
{
	if(ie_browser)
	{	
				
		if(system=="all")
		{
			//document.write(system);
			xpath="/subject_info/subject[power>="+power+"]";
			document.write(xpath);
		}
		else
		{
		xpath="subject[power>="+power+" and @websystem='"+system+"']";
		}
		
		var data=xmlDoc.documentElement.selectNodes(xpath);
		//document.write(data.length);
		if(data == null)
		{
			document.write("没有相关系统专题！");
		}
		else
		{
			
			var temp,time,dis;
			for(i=0;i<data.length;i++)
			{
				//document.write(data.length);	
				//document.write(data[i].selectSingleNode("power").text+"<br/>");
				for(j=data.length-1;j>i;j--)
				{   
					document.write(data[j].selectSingleNode("power").text+"<br/>");
					//time=data[j].selectSingleNode("date").text;
					//dis=(Date.parse(new Date())-(Date.parse(time)))/(1000*60*60*24);
					//document.write(dis+"<br/>");
					//document.write(data[j].selectSingleNode("power").text*10+"<br/>");
					if(data[j].selectSingleNode("power").text>data[j-1].selectSingleNode("power").text)
					{
						//document.write(data.length);
						
						temp=data[j-1].selectSingleNode("title").text;
						data[j-1].selectSingleNode("title").text=data[j].selectSingleNode("title").text;
						data[j].selectSingleNode("title").text=temp;
						
						temp=data[j-1].selectSingleNode("power").text;
						data[j-1].selectSingleNode("power").text=data[j].selectSingleNode("power").text;
						data[j].selectSingleNode("power").text=temp;
						
						temp=data[j-1].selectSingleNode("date").text;
						data[j-1].selectSingleNode("date").text=data[j].selectSingleNode("date").text;
						data[j].selectSingleNode("date").text=temp;						

						temp=data[j-1].selectSingleNode("imglink").text;
						data[j-1].selectSingleNode("imglink").text=data[j].selectSingleNode("imglink").text;
						data[j].selectSingleNode("imglink").text=temp;		

						temp=data[j-1].selectSingleNode("subjectlink").text;
						data[j-1].selectSingleNode("subjectlink").text=data[j].selectSingleNode("subjectlink").text;
						data[j].selectSingleNode("subjectlink").text=temp;	
					
					}						
				}
			}
				
				
		

				
		}
			
		
			
			var title,power,date,imglink,subjectlink,disdate;
			if(num>=data.length)
			{
				num=data.length;
			}
		
			for(i=0;i<num;i++)
			{

				title=data[i].selectSingleNode("title").text;
				if(title.length>=len){
					title=title.substring(0,len)+"...";
				}
				power=data[i].selectSingleNode("power").text;
				date=data[i].selectSingleNode("date").text;
				//disdate=(Date.parse(new Date())-Date.parse(date))/(1000*60*60*24);
				//document.write(Math.floor(disdate));
				//document.write("<br/>")
				//document.write(Date.parse(new Date()));
				imglink=data[i].selectSingleNode("imglink").text;
				subjectlink=data[i].selectSingleNode("subjectlink").text;
				document.write(title+"<br/>"+power+"<br/>"+date+"<br/>"+imglink+"<br/>"+subjectlink+"<br/>");		

				
			}	
				
		}

	 
	 
}
	
	
	
function showGroupList(system,len){
		//document.write(system);
			var liststyle;
			switch(system)
			{
				case "cs":
					xmlFileName="xml/cs_websubject.xml";
					liststyle="subjectlist1";
					break;
				
				case  "sh":
					xmlFileName="xml/sh_websubject.xml";
					liststyle="subjectlist2";
					break;
				
				case  "light":
					xmlFileName="xml/light_websubject.xml";
					liststyle="subjectlist3";
					break;
					
				case  "se":
					xmlFileName="xml/se_websubject.xml";
					liststyle="subjectlist4";
					break;
					
				case  "ba":
					xmlFileName="xml/ba_websubject.xml";
					liststyle="subjectlist5";
					break;			
					
				default:
					xmlFileName="xml/websubject.xml";
					liststyle="";
					break;			
			}
		xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); 
		xmlDoc.async=false;
		xmlDoc.load(xmlFileName);
		loaded=(xmlDoc.parseError.errorCode == 0);
		//document.write(loaded);
		if(loaded==false)
		{
			document.write("无法读取XML文件！");
		}
		else
		{
		xpath="/subject_info/subject[@websystem='"+system+"']";
		var data=xmlDoc.documentElement.selectNodes(xpath);
		if(data == null||data.length==0)
		{
			document.write("没有相关系统专题！");
		}

			var title;			
			document.write("<div class=\"subjectimgbox\"><div class=\"subjectimgtitlebg\"></div><div class=\"subjectimgtitlemsg\">");
			if(len>data[0].selectSingleNode("title").text.length)
				{
					title=data[0].selectSingleNode("title").text;
				}
			else
				{
					title=data[0].selectSingleNode("title").text.substring(0,len);
				}
			document.write(data[0].selectSingleNode("date").text.substring(0,7)+"  | "+title);
			document.write("</div><a href='"+data[0].selectSingleNode("subjectlink").text+"' target=\"_blank\"><img src='"+data[0].selectSingleNode("imglink").text+"' width=\"446\" height=\"145\" /></a></div>");
			document.write("<div class='"+liststyle+"'><UL>");
			var lennum;
			if(data.length==1)
				{
					document.write("<LI><A href='"+data[0].selectSingleNode("subjectlink").text+"' target=\"_blank\">"+title+"</A><SPAN class=\"date\">"+data[0].selectSingleNode("date").text+"</SPAN></LI>");
					document.write("</UL></div>");
					
				}
			else
				{
					if(data.length<8)
					{
						lennum=data.length;
					}
					else
					{
						lennum=8;
					}
					for(i=1;i<lennum;i++)
					{
						if(len>data[i].selectSingleNode("title").text.length)
							{
								title=data[i].selectSingleNode("title").text;
							}
						else
							{
								title=data[i].selectSingleNode("title").text.substring(0,len);
							}
						document.write("<LI><A href='"+data[i].selectSingleNode("subjectlink").text+"'target=\"_blank\">"+title+"</A><SPAN class=\"date\">"+data[i].selectSingleNode("date").text+"</SPAN></LI>");
					}
					document.write("</UL></div>");
				}
		}


}

function ShowGroupListPage(system,snum,len)
{
				var liststyle;
			switch(system)
			{
				case "cs":
					xmlFileName="xml/cs_websubject.xml";
					liststyle="subjectlist1";
					break;
				
				case  "sh":
					xmlFileName="xml/sh_websubject.xml";
					liststyle="subjectlist2";
					break;
				
				case  "light":
					xmlFileName="xml/light_websubject.xml";
					liststyle="subjectlist3";
					break;
					
				case  "se":
					xmlFileName="xml/se_websubject.xml";
					liststyle="subjectlist4";
					break;
					
				case  "ba":
					xmlFileName="xml/ba_websubject.xml";
					liststyle="subjectlist5";
					break;			
					
				default:
					xmlFileName="xml/websubject.xml";
					liststyle="";
					break;			
			}
		xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); 
		xmlDoc.async=false;
		xmlDoc.load(xmlFileName);
		loaded=(xmlDoc.parseError.errorCode == 0);
		//document.write(loaded);
		if(loaded==false)
		{
			document.write("无法读取XML文件！");
		}
		else
		{
		xpath="/subject_info/subject[@websystem='"+system+"']";
		var data=xmlDoc.documentElement.selectNodes(xpath);
		if(data == null||data.length==0)
		{
			document.write("没有相关系统专题！");
		}

			var title;			
			document.write("<div class=\"subjectimgbox\"><div class=\"subjectimgtitlebg\"></div><div class=\"subjectimgtitlemsg\">");

			if(data.length==1)
				{
					document.write(data[0].selectSingleNode("date").text.substring(0,7)+"  | "+title);
					document.write("</div><a href='"+data[0].selectSingleNode("subjectlink").text+"' target=\"_blank\"><img src='"+data[0].	selectSingleNode("imglink").text+"' width=\"446\" height=\"145\" /></a></div>");
					document.write("<div class='"+liststyle+"'><UL>");
					document.write("<LI><A href='"+data[0].selectSingleNode("subjectlink").text+"' target=\"_blank\">"+title+"</A><SPAN class=\"date\">"+data[0].selectSingleNode("date").text+"</SPAN></LI>");
					document.write("</UL></div>");
					
				}
			else
				{
					if(len>data[snum-1].selectSingleNode("title").text.length)
					{
						title=data[snum-1].selectSingleNode("title").text;
					}
					else
					{
						title=data[snum-1].selectSingleNode("title").text.substring(0,len);
					}
					document.write(data[snum-1].selectSingleNode("date").text.substring(0,7)+"  | "+title);
					document.write("</div><a href='"+data[snum-1].selectSingleNode("subjectlink").text+"' target=\"_blank\"><img src='"+data[snum-1].	selectSingleNode("imglink").text+"' width=\"446\" height=\"145\" /></a></div>");
					document.write("<div class='"+liststyle+"'><UL>");
					var lennum;
					
					if(data.length<8||snum>=data.length)
					{
						lennum=data.length;
					}
					else if(snum>=8 && snum<data.length)
					{
						lennum=snum+7;
					}
					else
					{
						lennum=8;
					}
					for(i=snum-1;i<lennum;i++)
					{
						if(len>data[i].selectSingleNode("title").text.length)
							{
								title=data[i].selectSingleNode("title").text;
							}
						else
							{
								title=data[i].selectSingleNode("title").text.substring(0,len);
							}
						document.write("<LI><A href='"+data[i].selectSingleNode("subjectlink").text+"'target=\"_blank\">"+title+"</A><SPAN class=\"date\">"+data[i].selectSingleNode("date").text+"</SPAN></LI>");
					}
					document.write("</UL></div>");
				}
		}
}
	
	
function ShowSystemList(system,num,len)//system表示子系统，num表示每页显示的专题数目,len表示返回标题长度
{	
		
		var totalrows=0;
		var framestr="";
		var groupstr="";
		//document.write(system);
			var liststyle;
			switch(system)
			{
				case "cs":
					xmlFileName="xml/cs_websubject.xml";
					liststyle="subjectlist1";
					break;
				
				case  "sh":
					xmlFileName="xml/sh_websubject.xml";
					liststyle="subjectlist2";
					break;
				
				case  "light":
					xmlFileName="xml/light_websubject.xml";
					liststyle="subjectlist3";
					break;
					
				case  "se":
					xmlFileName="xml/se_websubject.xml";
					liststyle="subjectlist4";
					break;
					
				case  "ba":
					xmlFileName="xml/ba_websubject.xml";
					liststyle="subjectlist5";
					break;

					
				default:
					xmlFileName="xml/websubject.xml";
					liststyle="";
					break;			
			}
		xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); 
		xmlDoc.async=false;
		xmlDoc.load(xmlFileName);
		loaded=(xmlDoc.parseError.errorCode == 0);
		//document.write(loaded);
		if(loaded==false)
		{
			document.write("无法读取XML文件！");
		}
		else
		{
			if(system=="all")
			{
				//document.write(system);
				xpath="/subject_info/subject";
			}
			else
			{
				xpath="/subject_info/subject[@websystem='"+system+"']";
			}
				
			var data=xmlDoc.documentElement.selectNodes(xpath);
			//document.write(data.length);
			if(data == null||data.length==0)
			{
				document.write("没有相关系统专题！");
			}
			else
			{
				totalrows=data.length;
				if(num>totalrows)
				{
					num=totalrows;
				}
				totalframesnum = Math.floor(((totalrows-1)/num) + 1);
				//document.write(totalframesnum);
				for(i=0;i<totalframesnum;i++)
				{
					var style = "style='display:none;'";
					framestr += "<div id='frame"+(i+1)+"' "+style+">";
					//alert("建立第"+i+"个frame");
					for(j=1;j<=num;j++)
					{
						var index = i*num+j-1;
						if(index>=totalrows)break;
						var title,content,power,date,imglink,subjectlink;
						var tempdata=data[index];
						title=tempdata.selectSingleNode("title").text;
						if(title.length>=len)
						{
							title=title.substring(0,len);
						}
						content=tempdata.selectSingleNode("content").text;
						if(content.length>=238)
						{
							content=content.substring(0,238);
						}
						power=tempdata.selectSingleNode("power").text;
						date=tempdata.selectSingleNode("date").text.substring(0,7);				
						imglink=tempdata.selectSingleNode("imglink").text;
						subjectlink=tempdata.selectSingleNode("subjectlink").text;
						framestr+="<div class=\"onesubjectbox\"><div class=\"listimg\"><div class=\"subjectimgtitlebg\"></div><div class=\"subjectimgtitlemsg\">"+date+"  | "+title+"</div><a href='"+subjectlink+"' target=\"_blank\"><img src='"+imglink+"' width=\"446\" height=\"145\" /></a></div><div class=\"listsummarybox\">";
						framestr+="【前言】："+content+"………………………<a href='"+subjectlink+"' target=\"_blank\">【详细信息】</a></div><div class=\"removefloat\"></div></div>";
					}
					framestr+="</div>";
				}
				
				groupstr+="<div class=\"datapage\">";
				groupstr+="<a title=\"上一页\" href=\"javascript:iShowPreviousFrame()\"> < </a>";
				if(totalframesnum>1)
				{
					for(i=1;i<=totalframesnum;i++)
					{
						groupstr+= "<a id='page"+i+"'title='第"+i+"页' href='javascript:iShowFrame("+i+")'>"+i+"</a>";
					}				
				}
				groupstr+="<a title=\"下一页\" href=\"javascript:iShowNextFrame()\"> > </a>";
				groupstr+="</div>"
				
				//document.write(system);
				document.write(framestr);
				document.write(groupstr);
				iShowFrame(1);
				
			}
		}
}

function iShowFrame(num)
{
	if(num<1)num=1;
	if(num>totalframesnum)num=totalframesnum;
	if(num==currentpagenum)return;
	var LastNum;
	LastNum = currentpagenum;
	currentpagenum = num;	
	
	//处理显示页
	var activeFrame = document.getElementById("frame"+currentpagenum);
	if(LastNum!=null)var lastFrame = document.getElementById("frame"+LastNum);

	activeFrame.style.display="";
	if(LastNum!=null)lastFrame.style.display="none";

	//处理分页按钮
	var activePage = document.getElementById("page"+ currentpagenum);
	if(LastNum!=null)var lastPage = document.getElementById("page"+ LastNum);

	var newActivePage = document.createElement("<span id=\"page"+currentpagenum+"\" title=第"+currentpagenum+"页 class=\"current\">"+currentpagenum+"</span>");
	if(LastNum!=null)var newLastPage = document.createElement('<A id="page'+LastNum+'" title=第'+LastNum+'页 href="javascript:iShowFrame('+LastNum+')"></A>');
	
	newActivePage.innerHTML = currentpagenum;
	if(LastNum!=null)newLastPage.innerHTML = LastNum;

	if(activePage!=null){
	var pageParent = activePage.parentElement;
	pageParent.replaceChild(newActivePage,activePage);
	}
	if(LastNum!=null)pageParent.replaceChild(newLastPage,lastPage);
	
	
}

function iShowNextFrame()
{
	iShowFrame(currentpagenum+1);
}

function iShowPreviousFrame()
{
	iShowFrame(currentpagenum-1);
}
