﻿EWS.infoSys = {};
EWS.infoSys.infoList = function(obj){
	var _this = this;
    this.obj = obj;
    this.pageSize = obj.titleNum;
    this.thisPage = 1;
    
    //获取喵点判断是请求页数
    var p = EWS.Anchor.get(this.obj.id);
    this.thisPage = p==null?1:Number(p);
    this.getDataFlag = false;//是否重新获取数据
    
    this.num = obj.num || 5;  //选择页号大小
    
    this.dom = $('#'+this.obj.id);
    
    this.initFlag = false;//初始化标志

    this.init = function(){
    	this.getThemeName();
    };
    
    this.createHtml = function(json){
//        this.dom.find('ul').remove();
    	var Dobj = $('#'+this.obj.id);
    	var oul = Dobj.find('ul');
    	//创建标题区
//    	if(!this.initFlag&&this.obj.titleCote){
//            Dobj.html("");
//            if(this.obj.linkPage){
//                Dobj.append($('<H3><a href="'+this.obj.linkPage+'.shtml">'+this.obj.title+'</a></H3>'));
//            }else{
//    	    	Dobj.append($('<H3></H3>').html(this.obj.title));
//            };
//    	};
    	//创建列表区
    	if(this.obj.listCls == 1){//一列
    	    var ul = $('<ul style="width:100%"></ul>');
    	    var len = json.length;
    	    for(var i=0;i<len;i++){
	    		var url = json[i].URL+".shtml";
	    		var src = "http://"+this.obj.htmlUrl+"/theme/infoSys/img/ICO/"+this.obj.icon+".png";
	    	    if(this.obj.isIcon){
                	var li = $('<li style="width:100%"><img src="'+src+'"><a href='+url+' target="_blank" title="'+json[i].FullTitle+'">'+json[i].Title+'</a></li>');       
	    	    }else{
	    	    	var li = $('<li style="width:100%"><a href='+url+' target="_blank" title="'+json[i].FullTitle+'">'+json[i].Title+'</a></li>');       
	    	    };
         
				if(_this.obj.Date){
    	    	    li.append($('<sup>'+json[i].Date.split(' ')[0]+'</sup>'));
    	    	};
    	    	ul.append(li);
            };
    	    oul.html(ul.html());
    	}else if(this.obj.listCls == 2){//两列
    	    var len = json.length;
    	    var cls = 'two_r1';
    	    for(var j=0;j<2;j++){
    	    	var ul = $('<ul style="width:50%" class="'+cls+'"></ul>');
    	    	cls = '';
	    	    for(var i=j;i<len;i=i+2){
		    		var url = json[i].URL+".shtml";
		    		var src = "http://"+this.obj.htmlUrl+"/theme/infoSys/img/ICO/"+this.obj.icon+".png";
		    	    if(this.obj.isIcon){
	                	var li = $('<li  style="width:100%"><img src="'+src+'"><a href='+url+' target="_blank" title="'+json[i].FullTitle+'">'+json[i].Title+'</a></li>');       
		    	    }else{
		    	    	var li = $('<li  style="width:100%"><a href='+url+' target="_blank" title="'+json[i].FullTitle+'">'+json[i].Title+'</a></li>');       
		    	    };
		    	    ul.append(li);
	            };
    	    	$(oul[j]).html(ul.html());
    	    };
    	}else{//三列
    	    var len = json.length;
    	    var cls = 'three_r1';
    	    for(var j=0;j<3;j++){
    	    	var ul = $('<ul style="width:33%" class="'+cls+'"></ul>');
    	    	cls = '';
	    	    for(var i=j;i<len;i=i+3){
		    	    var url = json[i].URL+".shtml";
		    	    var src = "http://"+this.obj.htmlUrl+"/theme/infoSys/img/ICO/"+this.obj.icon+".png";
		    	    if(this.obj.isIcon){
	                	var li = $('<li style="width:100%"><img src="'+src+'"><a href='+url+' target="_blank" title="'+json[i].FullTitle+'">'+json[i].Title+'</a></li>');       
		    	    }else{
		    	    	var li = $('<li style="width:100%"><a href='+url+' target="_blank" title="'+json[i].FullTitle+'">'+json[i].Title+'</a></li>');       
		    	    };
		    	    ul.append(li);
	            };
    	    	$(oul[j]).html(ul.html());
    	    };
    	};
        
        if(this.getDataFlag == true){
        	this.getDataFlag = false;
        	Dobj.find('.page').replaceWith($('<div></div>').attr({id:this.obj.id+'_page'}).addClass('page'));
    	   	this.pageInit();
			this.domObj = $('#'+this.obj.id+'_page').find('a');
        }
        
//    	if(this.obj.page){//分页
//    	   if(this.initFlag){//已初始化分页
//    	   	  $('#'+this.obj.id+'_page').appendTo('#'+this.obj.id);		
//    	   }else{//初始化分页
//    	   	   Dobj.find('.page').replaceWith($('<div></div>').attr({id:this.obj.id+'_page'}).addClass('page'));
//    	   	   this.pageInit();
//    	   };
//    	};
    	
    	this.initFlag = true;
    };
    
        //获取信息标题
    this.getThemeName = function(){
    	$.ajax({
			url:"/EWS_Interface/getThemeName.aspx",
			type:'get',
		        data:{ThemeID:_this.obj.ThemeID,CID:_this.obj.cid},
			cache:false,
			dataType:'html',
			success:function(result){
				if(result == 'Error'){return;}
					_this.getDataFlag = true;
                    _this.obj.title = result;
				    _this.getInfoCount();
			}
		});
    };

    
    //获取信息总量 
    this.getInfoCount = function(){
    	$.ajax({
			url:"/EWS_Interface/getCountMessage.aspx",
			type:'get',
		        data:{ThemeID:_this.obj.ThemeID,CID:_this.obj.cid},
			cache:false,
			dataType:'html',
			success:function(result){
                _this.obj.Count = result;
                _this.obj.totalPage = Math.ceil(parseInt(_this.obj.Count)/parseInt(_this.pageSize)) || 0;
				_this.ajaxList();
			}
		});
    	//this.pageInit();
    };


//获取信息列表
    this.ajaxList = function(){
    	if(this.obj.totalPage){
    	$.ajax({
			url:"/EWS_Interface/getMessageByThemeID.aspx",
			type:'get',
			data:{ThemeID:_this.obj.ThemeID,pN:_this.thisPage,pS:_this.obj.titleNum,tS:Number(_this.obj.titleLen),CID:_this.obj.cid},
			cache:false,
			dataType:'html',
			success:function(result){
                var data =  eval("("+result+")");
				_this.createHtml(data);
			}
		});
    	}else{
    		this.getInfoCount();
    	}
		//this.createHtml([]);
    };

/************************************************  分页码  ***************************************************/
    //初始化分页
    this.pageInit = function(){
    	 var p = document.createElement('p');
   		 var a = document.createElement('a');
   		 var c_a = a.cloneNode(true);
    	
   		 //第一页 
   		 var u_a = c_a.cloneNode(true);
   		 $(u_a).attr({'title':'第一页','href':'javascript:info_'+this.obj.id+'.fristPage()'}).html('第一页').addClass('first disfirst');
   		 	
   		 $(p).append(u_a);
   		 
   		 //上一页 
   		 var u_a = c_a.cloneNode(true);  		 
   		 $(u_a).attr({'title':'上一页','href':'javascript:info_'+this.obj.id+'.upPage()'}).html('上一页').addClass('previous disprevious');
   		 $(p).append(u_a);
   		 
   		 
   		 var len = this.obj.totalPage>this.num?this.num:this.obj.totalPage;
   		 var start = 0;
   		 if(this.thisPage!=1){
   		 	var start = (this.obj.totalPage - this.thisPage)>this.num?this.thisPage:0;
   		 }
   		 for(var i=start;i<len;i++){
   		 	var u_a = c_a.cloneNode(true);
   		 	var k = i+1;
   		 	$(u_a).attr({'id':'p_'+(i+1),'href':'javascript:info_'+this.obj.id+'.toPage('+k+')'}).addClass((i+1)==this.thisPage?'status_p':"").html(i+1);
//   		 	$(u_a).bind('click',function(){_this.toPage(this.innerHTML)});
   		 	$(p).append(u_a);
   		 };
   		 this.mostPage = i;
   		 
   		 
   		 //下一页
   		 var u_a = c_a.cloneNode(true);
   		 $(u_a).attr({'title':'下一页','href':'javascript:info_'+this.obj.id+'.downPage()'}).html('下一页').addClass('next disnext');
   		 $(p).append(u_a);
   		 
   		 //最后一页  
   		 var u_a = c_a.cloneNode(true);  		 
   		 $(u_a).attr({'title':'尾页','href':'javascript:info_'+this.obj.id+'.lastPage()'}).html('尾页').addClass('last dislast');
   		 $(p).append(u_a);
   		 
   		 $('#'+this.obj.id+'_page').append(p);
   		 this.domObj = $(p).find('a');
    };
    
    
    this.fristPage = function(){
    	if(this.thisPage != 1){
    		 if(this.mostPage - this.num > 0){
	   	     	this.setState(1,this.num);
	   	        this.toPage(1);
	   	     }else{
	   	        this.thisPage = 1;
	   	        this.dom.find('.status_p').removeClass();
	   	        $(this.domObj[2]).addClass('status_p');
	   	        this.setTruePage();
	   	     };
    	};
    };
       	
    //上一页
   	this.upPage = function(){
   	     if(this.thisPage == 1) return;
   	     if(this.mostPage-this.num>=this.thisPage-1){
   	        //页面跳转
   	        if(this.thisPage-1<=this.num){
   	        	var temp = this.thisPage-this.num;
   	        	if(temp>0){
   	        		this.setState(this.thisPage-this.num,this.thisPage-1);
   	        	}else{
   	        		this.setState(1,this.num);
   	        	}
   	        	this.toPage(this.thisPage-1);
   	        }else{
   	        	this.setState(parseInt((this.thisPage-1)/this.num)*this.num+1,parseInt((this.thisPage-1)/this.num)*this.num+this.num);
   	        	this.toPage(this.thisPage-1);
   	        };
   	     }else{
   	        this.dom.find('.status_p').removeClass();
   	        this.thisPage = this.thisPage-1;
   	        this.dom.find('#p_'+this.thisPage).addClass('status_p');
   	        this.setTruePage();
   	     };
   	};
       	
   	//下一页
   	this.downPage = function(){
   	    if(this.thisPage == this.obj.totalPage ||this.obj.totalPage == 0) return;//最后一页
   	    if(Number(this.thisPage)+1<=this.mostPage){//不需要跳页
   	       	this.dom.find('.status_p').removeClass();
   	        this.thisPage = this.thisPage+1;
   	        this.dom.find('#p_'+this.thisPage).addClass('status_p');
   	        this.setTruePage();
   	    }else{
//   	    	if(this.mostPage<5) return;
   	        if(Number(this.thisPage)+Number(this.num)>this.obj.totalPage){//总页数少于下一页
   	        	this.setState(Number(this.obj.totalPage)-Number(this.num)+1,this.obj.totalPage);
   	        	this.toPage(this.thisPage+1);
   	        }else{
   	           	this.setState(Number(this.thisPage)+1,Number(this.thisPage)+Number(this.num));
   	        	this.toPage(Number(this.thisPage)+1);
   	        }
   	    }
   	};
   	//最后一页
   	this.lastPage = function(){
   		 if(this.obj.totalPage == this.mostPage){
   		    this.toPage(this.mostPage);
   		 }else{
   		     this.setState((this.obj.totalPage+1-this.num),this.obj.totalPage);
   	         this.toPage(this.obj.totalPage);
   		 }
   	};
    
    
    
    this.setState = function(f,l){
		 var j = 2; 
	     for(var i=f;i<(l+1);i++){
	         $(this.domObj[j]).attr('id','p_'+i).html(i);
	         j++;
	     };
	     this.setButton(f,l);

	     this.mostPage = l;
	};
    
	//第几页
   	this.toPage = function(p){
   		 var d = 1+Number(p);
   		 this.thisPage = Number(p);
   		 this.dom.find('.status_p').removeClass();
         this.dom.find('#p_'+p).addClass('status_p');
         this.setTruePage();
   	};
   	
   	
   	this.setTruePage = function(){
   		EWS.Anchor.set(this.obj.id,this.thisPage);
		this.ajaxList();
        this.setButton2(this.thisPage);
	};
	
	//设置:第一页，最后一页的样式
	this.setButton = function(f,l){
		 if(f == 1){//最前一页为第一页
	        this.dom.find('.first').addClass('disfirst');
	     }else{
	     	this.dom.find('.first').removeClass('disfirst');
	     };
	     if(l == this.obj.totalPage){
	        this.dom.find('.last').addClass('dislast');
	     }else{
	        this.dom.find('.last').removeClass('dislast');
	     };
	};
	
	//设置:上一页，下一页的样式
	this.setButton2 = function(c){
		 var f = Number($(this.domObj[2]).html());
	     if(c == f && c == 1){//最前一页为第一页
	        this.dom.find('.previous').addClass('disprevious');
	     }else{
	     	this.dom.find('.previous').removeClass('disprevious');
	     };
	     if(c == this.mostPage  && c == this.obj.totalPage){
	        this.dom.find('.next').addClass('disnext');
	     }else{
	        this.dom.find('.next').removeClass('disnext');
	     };
	};
//	if(!this.obj.newMethod){
//	    this.init.call(this);
//	}
	if(this.thisPage !=1){
		this.getThemeName();
	}else{
		this.domObj = $('#'+this.obj.id+'_page').find('a');
		this.mostPage = this.domObj.length - 4;
	}

};

