//var PicSite = "http://192.168.1.116/";
var PicSite = "http://www.goodscool.net/pic/";
function BindTopLogin(s)
{
	var $a = $("#toplogin a");
	if ($a.size() == 2 && $($a.get(1)).text().toLowerCase().substr(0,4) == "sign")
	{
		var html = $("#toplogin").html();
		var pos1 = html.indexOf("ShowLoginDlg");
		var pos2 = html.indexOf(")", pos1+1);
		html = html.replace(html.substr(pos1, pos2-pos1+1), s);
		$("#toplogin").html(html);
	}
}

function feedback()
{
	var url, host;
	host = self.location.host;
	url = "http://" + host + "/feedback/feedback.do?url=" + self.location.href;
	window.open(url, "newwindow", "width=610,left=200,top=150,scrollbars=1;");
}

function showObject(self,objId) {$("#"+objId).show();}

function ShowCartDetails()
{
	var cartNum = $($("sapn[id='cartnum']").get(0)).text();
	cartNum = parseInt(cartNum);
	if (cartNum == 0) return;
	
	if ($("#shoppingcart #shopcartdetails ul").size() > 0)
	{
		if ($("#shoppingcart #shopcartdetails ul:hidden").size() > 0)
		{
			$("#cartshow img").attr("src", PicSite + "images/greynarrowdup.gif");
			$("#cartshow").html($("#cartshow").html().replace(/show<\/a>/i, "Hide</a>"));
			$("#shopcartdetails").show();
		} else
		{
			$("#cartshow img").attr("src", PicSite + "images/greynarrow.gif");
			$("#cartshow").html($("#cartshow").html().replace(/hide<\/a>/i, "Show</a>"));
			$("#shopcartdetails").hide();
		}
		return;
	}
	
	var ajaxUrl = "http://" + document.location.host + "/ajax/getcartdetails.asp?rand=" + Math.round(Math.random()*1000000);
	$.ajax({
		url:ajaxUrl
		,type:"get"
		,dataType:"json"
		,success:function(result)
		{
			if (result.DetailsHtml && result.DetailsHtml.length > 0)
			{
				$("#shopcartdetails").html(result.DetailsHtml);
				$("#cartshow img").attr("src", PicSite + "images/greynarrowdup.gif");
				$("#cartshow").html($("#cartshow").html().replace(/show<\/a>/i, "Hide</a>"));
				$("#shopcartdetails").show();
			}
		}
	});
}

function showTimes(obj,time,lang){
    var afterTime= new Date(time);
    leaveTime = afterTime - new Date();
    leaveDays=Math.floor(leaveTime/(1000*60*60*24));//天
    leaveHours=Math.floor(leaveTime/(1000*60*60)%24);//时
    leaveMinutes=Math.floor(leaveTime/(1000*60)%60);//分
    leaveSeconds=Math.floor(leaveTime/1000%60);//秒
    if (lang==1) 
		obj.innerHTML=leaveDays+"天"+leaveHours+"时"+leaveMinutes+"分"+leaveSeconds+"秒";
	else
		obj.innerHTML=leaveDays+" days "+leaveHours+" hours "+leaveMinutes+" minutes "+leaveSeconds+" seconds ";
}

function countdown(id,ms){
	leftTime(document.getElementById(id),ms,1000);
	function leftTime(obj,ms,l){
		if(ms>0){
			days=Math.floor(ms/(1000*60*60*24));//天
			hours=Math.floor(ms/(1000*60*60)%24);//时
			minutes=Math.floor(ms/(1000*60)%60);//分
			seconds=Math.floor(ms/1000%60);//秒
			obj.innerHTML=days+"d "+hours+":"+minutes+":"+seconds;
			window.setTimeout(function(){leftTime(obj,ms-l,l);},l);
		}else{
			obj.innerHTML="END";
		}
	}
}

//选择CheckBox
function selectCheckBox(str){
    var chkboxs=document.getElementsByName(str);
    for(i=0;i<chkboxs.length;i++){
		chkboxs[i].checked=!chkboxs[i].checked;
    }
	//self.checked=!self.checked;
}
		
//选项卡
function selectTag(obj,tagId) {
	for(var i=0;i<obj.parentNode.childNodes.length;i++) {
		var currNode=obj.parentNode.childNodes[i];
		if (currNode!=obj) {
			currNode.className="unselect";
		}else {
			currNode.className="selected";
		}
	}
	var tag=document.getElementById(tagId);
	for(i=0;i<tag.parentNode.childNodes.length;i++) {
		currNode=tag.parentNode.childNodes[i];
		if (currNode!=tag) {
			currNode.className="unshow";
		}else {
			currNode.className="show";
		}
	}
}

//弹窗
function showWindow(url,width,height) {
	var isIE = document.all && window.external; 
	if(isIE) {
		var parameArray = new Array(); 
		parameArray.push(window); 
		var diagReturn = showModalDialog(url,parameArray,"dialogWidth:"+width+"px;dialogHeight:"+height+"px;help:No;resizable:No;states:No;");
		if(diagReturn == "ok"){
			//重新加载
			window.location.href=window.location.href;
		}
	}
	else
	{
	   //firefox
		var win = window.open(url,"","top=50,left=200,width="+width+",height="+height+",scrollbars=false,dialog=yes,modal=yes,resizable=no");
		win.focus(); 
	} 
}

function checkSearch(formName) {
	var key;
	var $q;
	
	$q = $("#" + formName + " #q");
	key = $q.attr("value");
	if (key == "search by word or item number…") key = "";
	if (key=="")
	{
		alert("please input the key words.(multi-words to part by space symple or |)");
		$q.focus(); 
		return false;
	}
	$("#" + formName).submit();
	return true;
}

function checkSearcht(thisvalue){
	document.formsearch.searchkey.value=thisvalue;
	document.formsearch.submit();
}

function externalLinks() { 
    if (!document.getElementsByTagName) return; 
    var anchors = document.getElementsByTagName("a"); 
    for (var i=0; i<anchors.length; i++) {
        var anchor = anchors[i]; 
        if (anchor.getAttribute("href") && anchor.getAttribute("rel") == "external") 
            anchor.target = "_blank";
    } 
} 

function more(o, option, text)
{
	var i, j, isShow, cmd;
	
	if (option.length == 4)
	{
		i = 20;
	} else
	{
		i = parseInt(option.substr(option.indexOf(":")+1));
	}

	if ( $(o).text().toLowerCase().substr(0,4) == "more" )
	{
		isShow = 1;
		$(o).text(text);
		$(o).append(" <img src=\"" + PicSite + "images/shrink.gif\" />");
	}
	else
	{
		isShow = 0;
		$(o).text("More Info");
		$(o).append(" <img src=\"" + PicSite + "images/expand.gif\" />");
	}

	if (option.substr(0,4) == "prev")
	{	
		cmd = 0;
		o = $(o).prev();
	} else if(option.substr(0,4) == "next")
	{
		cmd = 1;
		o = $(o).next();
	}
	
	j = 0;
	while (o && j<i)
	{
		if (isShow)	$(o).show();
		else $(o).hide();
		if (cmd == 0)
			o = $(o).prev();
		else 
			o = $(o).next();
		j++;
	}
}

function SwitchComCategory(obj, index)
{
	var i;
	
	for(i=1; i<4; i++)
	{
		if (i == index)
		{
			$("#comcatprolist" + i).show();
		} else 
		{
			$("#comcatprolist" + i).hide();
		}
	}
	for(i=0; i<obj.parentNode.childNodes.length; i++)
	{
		currNode = obj.parentNode.childNodes[i];
		if (currNode != obj)
		{
			currNode.className = "";
		} else
		{
			currNode.className="selli";
		}
	}
}

if (window.attachEvent){ 
	window.attachEvent('onload',externalLinks);
}else if (window.addEventListener){
	window.addEventListener('load',externalLinks,false);
}

function GetOffsetLeft(o)
{
	var res = 0;
	while(o)
	{
		res += o.offsetLeft;
		o = o.offsetParent;
	}
	return res;
}

function GetOffsetTop(o)
{
	var res = 0;
	while(o)
	{
		res += o.offsetTop;
		o = o.offsetParent;
	}
	return res;
}

function InputDefaultValue(o, defaultValue, states)
{
	if (states == "down")
	{
		if (o.value == defaultValue)
		{
			o.value = "";
		}
	} else if (states == "out")
	{
		/*
		if (o.value == "")
		{
			o.value = defaultValue;
		}
		*/
	}
}

//show login dlg
function ShowLoginDlg(callbackName)
{
	var oid = "float_bg"; 
	var html = "";

	if ($("#" + oid).size() > 0)
	{
		return;
	}
	html = "<div id=\"" + oid + "\">";
	html += "</div>";
	html += "<div id=\"logindlg\">";
	html += "<div id=\"loginbox\">";
	html += "<div class=\"logintitle\">Sign in for checkout</div>";
	html += "<span>Email address:</span>"
	html += "<input type=\"text\" id=\"loginusername\" name=\"loginusername\" />";
	html += "<span>Password:</span><input type=\"password\" id=\"loginpassword\" name=\"loginpassword\" />";
	html += "<div class=\"normaldiv\" id=\"forgetpwd\"><a href=\"http://" + document.location.host + "/forgetpass.do\">Forgot your password?</a></div>";
	if (callbackName && callbackName.length > 0)
	{
		html += "<a href=\"javascript:void(0);\" onclick=\"javascript:Login(" + callbackName + ");\">";
	} else
	{
		html += "<a href=\"javascript:void(0);\" onclick=\"javascript:Login();\">";
	}
	html += "<img src=\"" + PicSite + "images/signin.gif\" /></a>";
	html += "<div id=\"loginmsg\"></div>";
	html += "<div class=\"normaldiv\" id=\"learnmore\">Learn more about our <a href=\"\">Privacy Policy</a></div>";
	html += "</div>";
	html += "<div id=\"regbox\">";
	html += "<div class=\"logintitle\">Create an Account</div>";
	html += "<div class=\"normaldiv\" style=\"margin-left:25px;width:300px;\">Register with us to enjoy our <a href=\"\">discount policy</a> and <a href=\"\">$2 voucher</a>.</div>";
	html += "<div><a href=\"javascript:NewAccount();\"><img src=\"" + PicSite + "images/createaccount.gif\" /></a></div>";
	html += "</div>";
	html += "<div id=\"loginclosebtn\"><img src=\"" + PicSite + "images/logindlgclose.gif\" onclick=\"CloseLoginDlg();\" /></div>";
	html += "</div>"
	$("body").append(html);
	$("#" + oid).show();
	$("#logindlg").show("slow");
}

function CloseLoginDlg()
{
	CloseFloatDlg("logindlg");
}

function CloseFloatDlg(n)
{
	$("#float_bg").remove();
	CloseDlg($("#" + n));
}

function NewAccount()
{
	//$("#float_bg").remove();
	//CloseDlg($("#logindlg"));
	window.location.href ="http://" + document.location.host + "/register.do";
}

//close a div
function CloseDlg($dlg)
{
	var s = {width:$dlg.width(),height:$dlg.height(),left:$dlg.offset().left};
	$dlg.animate({left:(s.left+s.width+20)+"px",width:"0px",height:"0px"}
						,{duration:"slow",complete:function(){$(this).remove();}});
}

//fun:param
function Login(callback)
{
	var email, pwd;
	var isOK;
	
	email = $("#loginusername").attr("value");
	if (email.length == 0 || !isMail(email))
	{
		ShowLoginErr("email format is incorrect");
		$("#loginusername").focus();
		return false;
	}
	
	pwd = $("#loginpassword").attr("value");
	if (pwd.length < 6)
	{
		ShowLoginErr("password's length at least 6");
		$("#loginpassword").focus();
		return false;
	}
	var host = document.location.host;
	$.ajax(
	{
		url:"http://" + host + "/ajax/checklogin.asp?email=" + email + "&pwd=" + pwd + "&rand=" + Math.round(Math.random()*1000000)
		,type:"get"
		,async:false
		,timeout:10000
		,dataType:"json"
		,success:function(result)
		{
			if (result.Error)
			{
				ShowLoginErr(result.Error);
				return false;
			}
			if ("1" == result.Success)
			{
				isOK = true;
				$("#float_bg").remove();
				var $dlg = $("#logindlg");
				if ($("#shoppingcart #shopcartdetails ul").size() > 0)
				{
					$("#shoppingcart #shopcartdetails").html("");
				}
				if (callback)
				{
					var args = [];
					args.push(result);
					callback.apply(this, args);
					/*
					var pos = callback.indexOf(":");
					var s;
					if (-1 != pos)
					{
						var param = callback.substr(pos+1, callback.length - pos - 2);
						callback = callback.substr(0, pos);
						s = callback + "(result,'" + param.replace(",", "','") + "')";
					} else
					{
						s = callback;
					}
					Exec(s);
					*/
				}
				//
				CloseDlg($dlg);
			} else 
			{
				ShowLoginErr("login error!");
				return false;
			}
		}
	});
	
	return isOK;
}

function GoShopCar()
{
	var isLogin, host;
	
	host = window.location.host;
	if ("register" == $($("#toplogin a").get(0)).text().toLowerCase())
	{
		isLogin = false;
	} else
	{
		isLogin = true;
	}
	if (isLogin)
	{
		self.location.href = "http://" + host + "/order/shoppingcart.do";
	} else
	{
		ShowLoginDlg();
		var $btn;
		$btn = $("#forgetpwd").next("a");
		$btn.unbind("click");
		$btn.bind("click", function()
		{
			var res = Login();
			if (res)
			{
				window.location.href="http://" + host + "/order/shoppingcart.do"
			}
		});
	}
}

function Exec(script)
{
	if($.browser.msie)
	{
		execScript(script); 
	} else 
	{
		window.eval(script);
	}
}

//global after login action
function GAfterLogin(data)
{
	var url;
	var html;
	var cartNum = data.CartProNum;

	$("span[id='cartnum']").text(cartNum);
	url = "http://" + document.location.host + "/";
	html = "Welcome <a href=\"" + url + "user/index.do\">My account</a> <a href=\"" + url + "Logout.do\">Log out</a>";
	$("#toplogin").html(html);
}

function FormatNumber(number, digitRight)
{
	var s,pos;
	
	s= "" + number;
	pos=s.indexOf(".");
	if (pos!=-1)
	{
		s = s.substr(0, pos+digitRight+2);
		s = Math.round(parseFloat(s)*Math.pow(10,digitRight))/Math.pow(10,digitRight);
		s = "" + s;
		pos = s.indexOf(".");
		pos = s.length - pos - 1;
		if (pos < digitRight)
		{
			pos = digitRight - pos;
			for(var i=0; i<pos; i++)
			{
				s += "0";
			}
		}
		return s;
	}else
	{
		return number + ".00";
	}
}

function productview(type)
{
	if (type == "list")
	{
		$(".gridul").attr("class", "listul");
		$(".listul .propic img").each(function(){this.src = this.src.replace("-160", "-90")});
		$("#viewtype a").each(function(i){
			if (i ==0)
			{
				$(this).attr("class", "curview");
			} else 
			{
				$(this).attr("class", "");
			}
		});
	} else
	{
		$(".listul").attr("class", "gridul");
		$(".gridul .propic img").each(function(){this.src = this.src.replace("-90", "-160")});
		$("#viewtype a").each(function(i){
			if (i ==0)
			{
				$(this).attr("class", "");
			} else 
			{
				$(this).attr("class", "curview");
			}
		});
	}
}

function ShowLoginErr(msg)
{
	$("#loginmsg").html(msg);
}
