var domainName="hahawx.com";

function $(v){
	return document.getElementById(v); 
}
function $n(n, index){
	var es = document.getElementsByName(n);
	if (typeof(index) == 'undefined') {
		index = 0;
	}
	if (index >= es.length) {
		index = es.length - 1;
	}
	return es[index];
}
function validateEmail(email) {
	// var f = /^([A-Za-z0-9])(\w)+@(\w)+(\.)(com|com\.cn|net|cn|net\.cn|org|biz|info|gov|gov\.cn|edu|edu\.cn)/;
	var f = /\\w+([-+.\']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*/;
    return (email != null && email.length >= 8&& email.match(f));
}
function Ajax(url, params, callback, method) {
	
	this.createHttpRequest = function() {
		if (window.ActiveXObject) {
			try {
				return new ActiveXObject('Msxml2.XMLHTTP');
			} catch (e) {
				return new ActiveXObject("Microsoft.XMLHTTP");
			}
		} else {
			return new XMLHttpRequest();
		}
	}
	this.url = url;
	this.params = params;
	this.callback = callback;
	this.method = method == null? "post" : method;
	this.xmlHttp = this.createHttpRequest();
	
	window.myAjax = this;
	this.doRequest = function() {
		var query = "";
		for (var param in this.params) {
			if (query != "") {
				query += "&";
			}
			query += param + "=" + this.params[param];
		}
		
		if (this.method == "post") {
			this.xmlHttp.open(this.method, this.url, true);
			this.xmlHttp.onreadystatechange = this.stateChanged;
			this.xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
			query = encodeURI(query);
			query = encodeURI(query);
			this.xmlHttp.send(query);
		} else {
			this.url += "?" + query;
			try { 
			this.xmlHttp.open(this.method, this.url, true);
			} catch (err) {}
			this.xmlHttp.send(null);
			return this.xmlHttp.responseText;
		}
	};
	this.stateChanged = function() {
		if (myAjax.xmlHttp.readyState==4 || myAjax.xmlHttp.readyState=="complete") {
			var data = myAjax.xmlHttp.responseText;
			myAjax.callback(data);
		}
	};
	
}
function add2Bookcase(novelId, chapterId) {
	var params = new Object();
	params.articleId = novelId;
	params.chapterId = chapterId;
	params.categoryId = "N";
	var ajax =new Ajax("/u/pl.html", params, postAdd2Bookcase);
	ajax.doRequest();
}
function postAdd2Bookcase(data) {
	var oRet = eval("(" + data + ")");
	if (oRet.flag == "success") {
		showInfoTip("成功添加到书架中。");
	} else if (oRet.flag == "error") {
		if (oRet.data == null || oRet.data=="") {
			showInfoTip("您还没有登陆，请先登录或如果没有账号，请先注册。");
		} else {
			showInfoTip(oRet.data);
		}
	} else {
	}
}

function nm(type, content) {
	alert("正在实现中。。。。");
}

function showInfoTip(message) {
	alert(message);
}

function hiddenDiv() {
	var oDiv = document.getElementById("message_div");
	if (oDiv != null) {
		oDiv.style.display = "none"; 
		oDiv.innerHTML = "";
	}
}

function setCookie(name,value,days) {
	if(days) {
  		var exp = new Date(); 
  		exp.setTime(exp.getTime() + days*24*60*60*1000);
	  	document.cookie = name + "="+ escape(value) +";expires="+ exp.toGMTString()+";path=/;domain=" + domainName;
	} else {
		document.cookie = name + "="+ escape(value)+";path=/;domain=" + domainName;
	}
}

function setCookieWithHour(name,value,hours) {
	if(hours) {
  		var exp = new Date(); 
  		exp.setTime(exp.getTime() + hours*60*60*1000);
	  	document.cookie = name + "="+ escape(value) +";expires="+ exp.toGMTString()+";path=/;domain=" + domainName;
	} else {
		document.cookie = name + "="+ escape(value)+";path=/;domain=" + domainName;
	}
}
function setCookieWithTime(name,value,times) {
	if(times) {
	  	document.cookie = name + "="+ escape(value) +";expires="+ times.toGMTString()+";path=/;domain=" + domainName;
	} else {
		document.cookie = name + "="+ escape(value)+";path=/;domain=" + domainName;
	}
}

function getCookie(name) {
  	var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
  	if(arr != null) return unescape(arr[2]); return null;
}

function setCookie2(name,value,days) {
	if(days) {
	  	var exp  = new Date(); 
	  	exp.setTime(exp.getTime() + days*24*60*60*1000);
	  	document.cookie = name + "="+ encodeURIComponent(value) +";expires="+ exp.toGMTString()+";path=/;domain=" + domainName;
	} else {
		document.cookie = name + "="+ encodeURIComponent(value)+";path=/;domain=" + domainName;
	}
}

function getCookie2(name) {
	 var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
	 if(arr != null) return decodeURIComponent(arr[2]); return null;
}

function delCookie(name) {
	var exp = new Date();
	exp.setTime(exp.getTime() - 1);
	var cval=getCookie(name);
	if(cval!=null) document.cookie=name +"="+cval+";expires="+exp.toGMTString() + ";domain=" + domainName;
}

function delCookie2(name) {
	var exp = new Date();
	exp.setTime(exp.getTime() - 1);
	var cval=getCookie2(name);
	if(cval!=null) document.cookie=name +"="+cval+";expires="+exp.toGMTString() + ";domain=" + domainName;
}


function toInteger(value){
	if(value == "" || value == undefined ) {
		return 0;
	} else {
		return parseInt(value);
	}
}


function loadFavor(nid) {
	var params = new Object();
	params.id=nid;
	params.categoryId = "N";
	var ajax = new Ajax("/j/gaf.html", params, postLoadFavor);
	ajax.doRequest();
}
function postLoadFavor(data) {
	var oRet = eval("(" + data + ")");
	if (oRet.flag == "success") {
		var fs = oRet.data.split(",");
		if (fs.length == 9) {
			$("f1").innerHTML = fs[0];
			$("f2").innerHTML = fs[1];
			$("f3").innerHTML = fs[2];
			$("f4").innerHTML = fs[3];
		}
	} 
}
function downloadTxt(name, author) {
	document.writeln("<a href=\"http:\/\/txt.zhuike.net\/download.html?nm=" + name + "&au=" + author + "\" target=\"_blank\">TXT合集下载<\/a>");
}

function downTxt1(refId) {
	var url = getDownloadUrl(refId);
	document.writeln("<a href=\"" + url + "\" title=\"文字版下载\" target=\"_blank\"><font style=\"color:red;\">　<b>文字版下载</b>　<\/font><\/a>");
}	
function downTxt2(refId) {
	window.location.href = getDownloadUrl(refId);
}
function getDownloadUrl(refId) {
	var subDir = Math.floor(refId / 1000) + 1;
	return "http://txt.zhuike.net/" + subDir + "_" + refId + ".html";
}
function getServer() {
	return "http:\/\/res.zhuike.net:88\/novel";
}
function outputTxt(sub) {
	document.writeln("<script language=\"javascript\" src=\"" + getServer() + sub + "\"><\/script>");
}
function outputImg(sub) {
	document.writeln("<div class=\"div_image\">");
	document.writeln("<img src=\"" + getServer() + sub + "\" onclick=\"document.body.focus();\" alt=\"正在加载中。。。。。。，如果长时间不显示，请按F5刷新。\"\/><br \/>");
	document.writeln("<\/div>");
}
function setBackground(color) {
	setCookie("color", color, 30);
	document.body.style.backgroundColor = "#" + color;
}

function setFontSize(fontSize) {
	setCookie("fontSize", fontSize, 30);
	var textArea = $("chapter_content");
	if (textArea != null) textArea.style.fontSize= fontSize + "px";
}

window["MzBrowser"]={};
var ua = window.navigator.userAgent;
MzBrowser.platform = window.navigator.platform;

MzBrowser.firefox = ua.indexOf("Firefox")>0;
MzBrowser.opera = typeof(window.opera)=="object";
MzBrowser.ie = !MzBrowser.opera && ua.indexOf("MSIE")>0;
MzBrowser.mozilla = window.navigator.product == "Gecko";
MzBrowser.netscape= window.navigator.vendor=="Netscape";
MzBrowser.safari= ua.indexOf("Safari")>-1;

var re = null;
if(MzBrowser.firefox) re = /Firefox(\s|\/)(\d+(\.\d+)?)/;
else if(MzBrowser.ie) re = /MSIE( )(\d+(\.\d+)?)/;
else if(MzBrowser.opera) re = /Opera(\s|\/)(\d+(\.\d+)?)/;
else if(MzBrowser.netscape) re = /Netscape(\s|\/)(\d+(\.\d+)?)/;
else if(MzBrowser.safari) re = /Version(\/)(\d+(\.\d+)?)/;
else if(MzBrowser.mozilla) re = /rv(\:)(\d+(\.\d+)?)/;

if("undefined"!=typeof(re)&&re.test(ua))
	MzBrowser.version = parseFloat(RegExp.$2);
