var g_js_root = 'mh/';

function dealComicBlock(page_index,perpage,data,template,ids){
	var min = (page_index - 1)*perpage;
	var max = (page_index*perpage > data.length)?data.length:page_index*perpage;
	var ret = '';
	var id_array = new Array();
	
	if (ids){
		id_array = ids.split(',');
	}

	for(var i=min;i<max;i++){
		var isShow = true;
		
		for(var j=0;j<id_array.length;j++){
			
			if (id_array[j] == data[i].id){
				isShow = false;
				break;
			}
		}
		if (isShow){
			ret += dealComicDetailBlock(template,data[i]);
		}
	}
	return ret;
}

function dealSameComicBlock(maxPage,data,template,ids){
	var min = 0;
	var id_array = new Array();
	id_array = ids.split(',');
	var dlen = data.length;
	var max = (maxPage + id_array.length) > dlen?dlen:maxPage + id_array.length;
	var ret = new Array();
	ret['ids'] = '';
	ret['html'] = '';
    var count = 0;
	for(var i=min;i<max;i++){
		if (count >= maxPage){
			break;
		}
		var isShow = true;
		
		for(var j=0;j<id_array.length;j++){
			
			if (id_array[j] == data[i].id){
				isShow = false;
				break;
			}
		}
		if (isShow){
			count++;
			ret['ids'] += data[i].id+',';
			ret['html'] += dealComicDetailBlock(template,data[i]);
		}
	}
	ret['ids'] = ret['ids'].substring(0,ret['ids'].length -1);
	return ret;
}

function dealComicDetailBlock(tp,data){
	  var template = tp;
	  template = template.replace('{{0}}',data.cover);
	  template = template.replace('{{1}}',data.comic_url_raw);
	  template = template.replace('{{2}}',data.comic_name);
	  template = template.replace('{{3}}',data.comic_author);
	  template = template.replace('{{4}}',data.status);
	  template = template.replace('{{5}}',data.chapter_url_raw);
	  template = template.replace('{{6}}',data.last_update_chapter_name);
	  template = template.replace('{{7}}',data.comic_url_raw);
	  template = template.replace('{{8}}',data.comic_name);
	  template = template.replace('{{9}}',data.comic_name);
	  template = template.replace('{{10}}',data.comic_name);
	  template = template.replace('{{11}}',data.last_update_chapter_name);
      return template;   
}

function generatePages(page_base,current_page,max_page_count){
    var max_show = 9;
    current_page = parseInt(current_page);
    var min_page = current_page  - 4 > 0? current_page  - 4:1;
    var max_page = current_page + 4 < max_page_count?current_page + 4:max_page_count;
    var t = '?';
    if (page_base.indexOf('?') >= 0){
        t = '&';
    }
    
    var str = '<a class="pselected" href="'+page_base + t + 'p=1">首页</a> ';
    if (current_page > min_page){
        var pre_page = current_page -1;
        str += '<a class="pselected" href="'+page_base + t + 'p='+pre_page+'" >上一页</a> ';
    }
    
    for(var i=min_page;i<=max_page;i++){
        if (i == current_page){
            str += '<a  href="'+page_base+ t + 'p='+i+'">'+i+'</a> '; 
        }else{
            str += '<a class="pselected" href="'+page_base + t + 'p='+i+'">'+i+'</a> '; 
        } 
    }

    if (current_page < max_page){
        var next_page = current_page + 1;
        str += '<a href="'+page_base + t + 'p='+next_page+'" >下一页</a> ';
    }
    str += '<a class="pselected" href="'+page_base + t + 'p='+max_page_count+'">末页</a> ';
    return str;
}

function getCookieValue(varname){
	if(varname){
		if (!document.cookie){
			return '';
		}
		var a=document.cookie.indexOf(varname+"=");
		if(a!=-1){
			return document.cookie.substring((a+varname.length+1),document.cookie.length).split(";")[0];
		}else{
			return "";
		}
	}
	return '';
}

function dechex(number){
	if(number<0){
		number=0xFFFFFFFF+number+1;
	}
	return parseInt(number,10).toString(16)
}

var _user=new function(){
	this.getdir=function(uid){
		var hex=dechex(uid);
		hex=new Array(9-hex.length).join('0')+hex;
		var match=hex.match(/([\da-z]{2})([\da-z]{2})([\da-z]{2})([\da-z]{2})/);
		match.pop();
		match.shift();
		return match.join('/');
	};
	this.getfilename=function(uid,size){
		if(!size){size=120}
		return size+'_'+uid+'.jpg';
	};
	this.getpatch=function(uid,size){
		if(!size){size=120}
		return 'http://pic1.178.com/avatars/'+this.getdir(uid)+'/'+this.getfilename(uid,size);
	}
};


function getUserInfo(){

	var _178c =getCookieValue("_178c");
	
	var info =unescape(decodeURI(_178c)).split("#");

	if(info.length >2 && info[2] != '') {
		info[3] = _user.getpatch(info[0]);
		return info;
	}else{

		return false;
	}
	
}

function generateUserBlock(userinfo){
	var template = '<div class="user_p_border">'+
                   '<img width="48" height="48"  src="'+userinfo[3]+'"/>'+
                   '</div><div class="mymessages">'+
                   userinfo[2] + '<span class="icon_star"></span>' +
                   '<a href="http://account.178.com/q_account.php?_act=logout" target="_self">退出</a> | ';
                   

    if ($('.login').size() > 0){
    	$('.login').html( template +  $('.login').html() + '</div>');
    	$('#sms_info').show();
    }
}

function generateUserLogin(){
	
	var html = '<div class="loginbtn"><form target="_self" method="POST" action="http://account.178.com/q_account.php" name="loginForm">'+
	'登录方式：<select name="type">'+
	  '<option>用户名</option>'+
	  '<option>UID</option>'+
	  '<option>Email</option>'+
	'</select><span>用户名</span>：<input type="text" name="email" size="18" />'+
	 '密码：<input type="password" name="password" size="18" />'+ '<input type="hidden" name="_act" value="login"/>'+
	  '<span class="i_input input"><input class="i_input" type="submit" value="登 陆" /> </span> <a href="http://account.178.com/?p=register">注 册</a> | <a href="http://account.178.com/?p=reset_pass">忘记密码</a> '+
	'<input type="hidden" name="to" value="'+window.location.href+ '" ></form></div><!--loginbtn-->';
	$('.login').html(html);
}

function getMessage(num){
	$('#sms_info').html('<span class="mymessages_sms">短消息 ('+num+')</span>');
}

function getSTime(time,full){
	var ret = '';
	var tmp = 0;
	var full_format = false;
	if(full && full == true){
		full_format = true
	}
	
	if (time >= 1000*60*60*24){
		tmp = Math.floor(time/(1000*60*60*24));
	
		if (full_format){
			time -= tmp * 1000*60*60*24;
			ret += tmp + '天';
		}else{
			ret = tmp + '天';
			return ret;
		}
	}
	
	if (time >= 1000*60*60){
		tmp = Math.floor(time/(1000*60*60));
	
		if (full_format){
			time -= tmp * 1000*60*60;
			if (time > 0){
				ret += tmp + '小时';
			}
		}else{
			ret = tmp + '小时';
			return ret;
		}
	}
	
	if (time >= 1000*60){
		tmp = Math.floor(time/(1000*60));
	
		if (full_format){
			time -= tmp * 1000*60;
			if (time > 0){
				ret += tmp + '分钟';
			}
		}else{
			ret = tmp + '分钟';
			return ret;
		}
	}
	
	if (time >= 1000){
		tmp = Math.floor(time/(1000));
	
		if (full_format){
			ret += tmp + '秒';
		}else{
			ret = tmp + '秒';
			return ret;
		}
	}
	return ret;
}

function clearVisit(id){
	$.cookie('_visitedcomic', '', {expires: -1, path: '/'});
	if (id){
		$('#'+id).html('');
	}
}

function getVisit(){
	var ret = new Array();
	var idx = 0;
	var name_value = $.cookie('_visitedcomic');
    var time = (new Date()).getTime();
	
	if (name_value == null){
		return null;
	}else{
		var ary = name_value.split("||");
	
		var url = window.location.href;
		var url_b = url.split('/');
		var size = url_b.length;
		var prefix = '';
		for (var j=0;j<3;j++){
			prefix += url_b[j] + '/';
		}
		prefix += g_js_root;

		for (var i = ary.length - 1; i>=0 ;i--){
			var data = ary[i].split('###');
			var stime = 0;
			if (data.length == 3){
				stime = time - parseInt(data[2]);
				stime = getSTime(stime) + '前';
				if (data[1] && typeof data[1] != 'undefined'){
					ret[idx] = new Array(prefix + data[0],data[1],'','',stime);
					idx++;
				}
			}
			
			if (data.length == 5){
				stime = time - parseInt(data[4]);
				stime = getSTime(stime) + '前';
				if (data[1] && typeof data[2] != 'undefined'){
					ret[idx] = new Array(prefix + data[0],data[1],prefix + data[2],data[3],stime);
					idx++;
				}
			}
			
		}
		return ret;
	}
}

function  test(){
	var url = window.location.href;
	var url_b = url.split('/');
	var size = url_b.length;
	var prefix = '';
	for (var j=0;j<3;j++){
		prefix += url_b[j] + '/';
	}

}

function setVisit(url,name,url2,name2){
   //var s_url = window.location.href;
   var time = (new Date()).getTime();
  
   if (!url2){
	   setCookie('_visitedcomic',url+'###'+name+'###'+time);
   }else{
	   setCookie('_visitedcomic',url+'###'+name +'###'+url2+'###'+name2+'###'+time);
   }
}


function setCookie(key,name){
	var cname = name.substring(0,name.indexOf('###'));
	
	var name_value = $ .cookie(key);
    if (name_value == null){
    	name_value = name;
    }else{
       var names = name_value.split("||");
	   var tmp = '';
	   var count = 0;
	   for (var i = 0; i < names.length; i++){
		   var cpname = names[i].substring(0,names[i].indexOf('###'));
		   if (cname != cpname){
			   tmp+= '||'+names[i];
			   count++;
		   } 
	   }
	   
	   if (count > 4){
		   name_value = tmp.replace('||'+names[0]+'||','') + '||' +name;
	   }else{
		   if (tmp != ''){
			   name_value = tmp.substring(2) + '||' +name;
		   }else{
			   name_value = name;
		   }
	   }

    }
    //alert(name_value);
    $.cookie(key, name_value, {expires: 7, path: '/'});
}

function doHit(){
	if (typeof g_comic_id != 'undefinded' && typeof g_comic_code != 'undefinded'){
		var str = "<script src=\"http://acg.178.com/comicsum/hit.php?i="+g_comic_id+"&c="+g_comic_code+"\"></script>";
//		/alert(str);
		$('body').append(str);
	}
}

function bookmark(title, url){
	if (document.all) {window.external.AddFavorite(url, title)}
	else {if (window.sidebar) window.sidebar.addPanel(title, url, "")}
}

function copytoclipboard ( copyingdata,alert_info )
{
	  if(window.clipboardData)
	  {
		  window.clipboardData.clearData();
		  window.clipboardData.setData("Text", copyingdata);
	      if( alert_info ){
	    	  alert( alert_info );
          }
	  }else{
	          alert("此功能目前只支持IE浏览器")
      }
}


function generateVisitPanel(visited){
	var visited_str = '';
	//<span class="floatright1">'+visited[i][4]+'</span>
    for(var i = 0 ; i< visited.length;i++){
   	 if (visited[i][2] == ''){
   		 visited_str+= '<li><span class="icoblueli"></span><a title="'+visited[i][1]+'" href="'+visited[i][0]+'" class="gray12link tt_comic0">'+visited[i][1]+'</a>&nbsp;<a title="'+visited[i][1]+'" href="'+visited[i][0]+'" class="tt_chapter0" >目录</a></li>';
   	 }else{
   		 var ourl = visited[i][2];
   		 var p = 1;
   		 if (ourl.indexOf('?') > 0){
   			 url = ourl.substring(0,ourl.indexOf('?'));
   			 var tmp = ourl.substring(ourl.indexOf('?'));
                  
   			 p = parseInt(tmp.replace('p=','').substring(1));
   			 if (isNaN(p)){
   				 p = 1
   			 }
   		 }
   		 visited_str+= '<li><span class="icoblueli"></span><a title="'+visited[i][1]+'" href="'+visited[i][0]+'" class="gray12link tt_comic0">'+visited[i][1]+'</a>&nbsp;<a href="'+url+'" title="'+visited[i][3]+'" class="tt_chapter0" >'+visited[i][3]+'</a>&nbsp;<a href="'+url+'?p='+p+'" class="tt_chapter0">第'+p+'页</a></li>';
   	 }
    }
    return visited_str;
}


function getNav(dir){
	   var rd = (new Date()).getTime();
	    $.ajax({
		   type: "GET",
	       url: dir + 'cache/index/mn.html?r='+rd, 
		   success: function(resText){
	    	  resText = resText.replace(new RegExp("{\\$ROOT}",'gm'),dir);
		      $('.navbg2').children('ul').html(resText);
		   }   
		});
		
	   $.ajax({
			   type: "GET",
		       url: dir + 'cache/index/sn.html?r='+rd, 
			   success: function(resText){
		    	  resText = resText.replace(new RegExp("{\\$ROOT}",'gm'),dir);
			      $('.navbg3left').children('ul').html(resText);
			   }   
	  });
}

