﻿var maxIntervalMonth = 2;// 最大间隔期为2个月
function getdata()
{			

  
    var d = new Date(2006,12,0)
	alert("getFullYear=" + d.getFullYear() + "-" + d.getMonth() + "-" + d.getDate())
	//goNextPeriod();
}

	
//上一期的数据
function goPrePeriod()
{ 
   goPeriod(-1)
 } 
 
 //下一期的数据
function goNextPeriod()
{ 
   goPeriod(1)
 } 

	
//上一期 下一期 的数据 way 1 表示下一期 -1 表示上一期
function goPeriod(way)
{ 
 var NextData;
 var XmlUrl;
 var dataArr = new Array();
 var nowMonthData = getNowMonth();//获取当前报纸年月 yyyy-MM
 var nowData = getNowData();//获取当前报纸年月日 yyyy-MM-dd
 var period_dateStr = "";
 var front_pageStr = "";
 var nowxxtt = new Date();
 var t = 0;
 for(x=0; x<=maxIntervalMonth; x++)
 {
	 NextData = getNextMonth(nowMonthData,x*way);
	 //alert(NextData);
	 XmlUrl = findPageXmlUrl(NextData);//寻找新的一月对应的XML地址
	 XmlUrl = XmlUrl + "?time=" + nowxxtt.toString()
	 //alert(XmlUrl);
    $.ajax(
	  {
        url: XmlUrl,
        type: 'GET',
        dataType: 'xml',
        timeout: 1000,
	    async:false,
        error: function(xml){
          //alert('Error loading XML document'+xml);
      },
        success: function(xml)
	  {
		 
            $(xml).find("period").each(function(i){
			
            //var id=$(this).children("period_name");   //取对象
            var period_date=$(this).children("period_date").text();  //取文本 或者 $("id" , xml).text(); 
			var front_page=$(this).children("front_page").text();
			dataArr[t] = period_date;
			t++;
						
			if(period_dateStr == "")
			{
				period_dateStr = period_date;
				front_pageStr = front_page;
			}else{
			period_dateStr += "!" + period_date;
			front_pageStr += "!" + front_page;			
			}
			//alert("period_dateStr=" + period_dateStr);
			
           });
      }
    });
  } 
 BubbleSort(dataArr);//冒泡排序
 var firstBigData = "";
 if(way == 1)
   firstBigData = getBigData(dataArr,nowData)
 else
   firstBigData = getSmallData(dataArr,nowData)
   
 if(firstBigData == "")
 {
	 if(way == 1)
	   alert("已是最后一期");
	 else
	   alert("已是第一期");
	 return;
 }
 //alert("firstBigData=" + firstBigData);
 var localUrl = location.href;
 var re = /(http:\/\/[\s\S]+?)\/html/i;
 var r = localUrl.match(re);
 var firstBigDataArr = firstBigData.split("-");
 var sUrl = r[0] + "/" + firstBigDataArr[0] + "-" + firstBigDataArr[1] + "/" + firstBigDataArr[2] + "/";
 var period_dateArr = period_dateStr.split("!");
 var front_pageArr = front_pageStr.split("!");
 var nodeName = "";
 for(f=0;f<period_dateArr.length;f++)
 {
	 if(period_dateArr[f] == firstBigData) nodeName = front_pageArr[f];
 }
 //location.href=sUrl;
 sUrl = sUrl + nodeName;
 //alert("sUrl=" + sUrl);
 location.href=sUrl;
 /*
 var str = "";
 for(t=0; t<dataArr.length; t++)
 {
	 str += dataArr[t] + " ,";
 }
 alert("str=" + str);
 */
}

//获取某个月的XML数据 data yyyy-MM
function goMonthXMLData(data)
{ 
 var XmlUrl;
 var period_dateStr = "";
 var front_pageStr = "";
 var nowxxtt = new Date();
 XmlUrl = findPageXmlUrl(data);//寻找新的一月对应的XML地址
 XmlUrl = XmlUrl + "?time=" + nowxxtt.toString()
	 //alert(XmlUrl);
    $.ajax(
	  {
        url: XmlUrl,
        type: 'GET',
        dataType: 'xml',
        timeout: 1000,
	    async:false,
        error: function(xml){
          //alert('Error loading XML document'+xml);
      },
        success: function(xml)
	  {
		 
            $(xml).find("period").each(function(i){
            //var id=$(this).children("period_name");   //取对象
            var period_date=$(this).children("period_date").text();  //取文本 或者 $("id" , xml).text(); 
			var front_page=$(this).children("front_page").text();
			if(period_dateStr == "")
			{
				period_dateStr = period_date;
				front_pageStr = front_page;
			}else{
			period_dateStr += "!" + period_date;
			front_pageStr += "!" + front_page;			
			}
			//alert("period_dateStr=" + period_dateStr);
			
           });
      }
    });
	
  var ret = period_dateStr + "@" + front_pageStr;
  return ret;
}

//获取某个月的XML数据 data yyyy-MM add by ChenJasong
function goMonthXMLDataOld(data)
{ 
 var front_page = edNavUrl;
 var len = edNavUrl.indexOf(".") - 5;
 var edNavUrlEnd = edNavUrl.substr(5,len);
 var XmlUrl;
 var period_dateStr = "";
 var front_pageStr = "";
 var nowxxtt = new Date();
 XmlUrl = findPageXmlUrl(data);//寻找新的一月对应的XML地址
 XmlUrl = XmlUrl + "?time=" + nowxxtt.toString()
	 //alert(XmlUrl);
    $.ajax(
	  {
        url: XmlUrl,
        type: 'GET',
        dataType: 'xml',
        timeout: 1000,
	    async:false,
        error: function(xml){
          //alert('Error loading XML document'+xml);
      },
        success: function(xml)
	  {
            $(xml).find("dates").each(function(i){
            if($(this).attr("pageid") == edNavUrlEnd){
                $(this).children().each(function(i){
                    var period_date=data + "-" + $(this).text();
                    if(period_dateStr == "")
			        {
				        period_dateStr = period_date;
				        front_pageStr = front_page;
			        }else{
			        period_dateStr += "!" + period_date;
			        front_pageStr += "!" + front_page;			
			        }
                });
                return false; 
            }
          });
      }
    });
  var ret = period_dateStr + "@" + front_pageStr;
  return ret;
}
//给定年月 计算下几个月 data = yyyy-dd Months  下几个月
function getNextMonth(data,Months)
{
	var dataArr = data.split("-");
	var Nowdate = new Date(parseInt10(dataArr[0]),parseInt10(dataArr[1])-1 + Months,1);
	var month = parseInt10(Nowdate.getMonth()) + 1;
	var monthStr = String(month);
	if(monthStr.length <2) monthStr = "0" + monthStr;
	var dataStr = Nowdate.getFullYear() + "-" + monthStr;
    return dataStr;
}

//获取当前报纸年月日 yyyy-MM-dd
function getNowData()
{
   var nowUrl = location.href; 
   var re = /\d{4}-\d{2}\/\d{2}/g;
   var r = nowUrl.match(re);
   var newData = r[0].replace("/","-");
   return newData;
}
//获取当前报纸年月  yyyy-MM
function getNowMonth()
{
   var nowUrl = location.href; 
   var re = /(\d{4})-(\d{2})/;
   var r = nowUrl.match(re);
   var newData = r[0];
   return newData;
}
//日期自动补零
function appendZero(n){return(("00"+ n).substr(("00"+ n).length-2));}


 //寻找新的一月对应的XML地址 sMonth = yyyy-MM
 function findPageXmlUrl(sMonth) {		
		//alert(sMonth);
		var localUrl = location.href;
		var re = /[\s\S]+?(\d{4}-\d{2})[\/\\]/i;
		var monthRe = /\d{4}-\d{2}/i;
		var r = localUrl.match(re);
		var retUrl = r[0] + "paper_existed.xml";//paper_existed.xml or period.xml
		retUrl = retUrl.replace(monthRe,sMonth);
		return retUrl;
 }


//给定排好序的数组(从小到大) 返回比 指定日期大的第一个日期 返回空说明没有
function getBigData(dataArr,findData)
{ 
  var ret = "";
  var nowdata = new Date();
  var MonthStr = String(nowdata.getMonth() + 1);
  if(MonthStr.length <2) MonthStr = "0" + MonthStr;
  var dayStr = String(nowdata.getDate());
  if(dayStr.length <2) dayStr = "0" + dayStr;
  var YearStr = String(nowdata.getFullYear());
  var nowdataStr = YearStr + "-" + MonthStr + "-" + dayStr;
  for(i=0;i<dataArr.length;i++)
  {
	  if(dataArr[i] > nowdataStr) break;
	 
	  if(dataArr[i] > findData)
	  {
		  ret = dataArr[i];
		  break;
	  }
  }
  return ret;
}

//给定排好序的数组(从小到大) 返回比 指定日期小的第一个日期 返回空说明没有
function getSmallData(dataArr,findData)
{ 
  var ret = "";
  //alert("dataArr.length=" + dataArr.length);
  for(i=dataArr.length - 1; i>=0; i--)
  {
      //alert("dataArr[" + i + "]=" + dataArr[i]);
	  if(dataArr[i] < findData)
	  {
		  ret = dataArr[i];
		 break;
	  }
  }
  //alert(ret);
  return ret;	
}
//查找日期数组 返回页面地址
function findArr(dataArr,findData,front_pageArr)
{ 
  var ret = "";
  
  for(i=0;i<dataArr.length;i++)
  {
	  
	  if(dataArr[i] == findData)
	  {
		  var localUrl = location.href;
          var re = /(http:\/\/[\s\S]+?)\/html/i;
          var r = localUrl.match(re);
          var findDataArr = findData.split("-");
          var sUrl = r[0] + "/" + findDataArr[0] + "-" + findDataArr[1] + "/" + findDataArr[2] + "/";
		  ret = sUrl + front_pageArr[i];
		  ret = front_pageArr[i];
		  break;
	  }
	  
  }
  
  return ret;	
}
//将字符转换成10进制整型
function parseInt10(n)
{
	return parseInt(n,10);
}
//冒泡排序
function BubbleSort(arr) { //交换排序->冒泡排序
  //var st = new Date();
  var temp;
  var exchange;
  for(var i=0; i<arr.length; i++) {
   exchange = false;
   for(var j=arr.length-2; j>=i; j--) {
    if((arr[j+1]) < (arr[j])) {
     temp = arr[j+1];
     arr[j+1] = arr[j];
     arr[j] = temp;
     exchange = true;
    }
   }
   if(!exchange) break;
  }
  //status = (new Date() - st) + ' ms';
  return arr;
 }


//修改文章的标题样式 (只有每版的所有文章才有用)
function inItTitleStyle()
{
	$("span[id='contenttitle']").attr("style","font-size:23px;font-family:黑体;line-height:30px;"); 
}


