// JavaScript Document
var TaoXie=YAHOO;
var $D=TaoXie.util.Dom;
var $E=TaoXie.util.Event;
var $=$D.get;

if(!Array.prototype.indexOf){
	Array.prototype.indexOf=function (C,B){
		if(B==null){
			B=0
		}else {
			if(B<0){
				B=Math.max(0,this.length+B)
			}
		}for(var A=B;A<this.length;A++){
			if(this[A]===C){
				return A
			}
		}return -1
	}
}if(!Array.prototype.lastIndexOf){
	Array.prototype.lastIndexOf=function (C,B){
		if(B==null){
			B=this.length-1
		}else {
			if(B<0){
				B=Math.max(0,this.length+B)
			}
		}for(var A=B;A>=0;A--){
			if(this[A]===C){
				return A
			}
		}return -1
	}
}if(!Array.prototype.forEach){
	Array.prototype.forEach=function (C,D){
		var A=this.length;
		for(var B=0;B<A;B++){
			C.call(D,this[B],B,this)
		}
	}
}if(!Array.prototype.filter){
	Array.prototype.filter=function (D,E){
		var A=this.length;
		var C=[];
		for(var B=0;B<A;B++){
			if(D.call(E,this[B],B,this)){
				C.push(this[B])
			}
		}return C
	}
}if(!Array.prototype.map){
	Array.prototype.map=function (D,E){
		var A=this.length;
		var C=[];
		for(var B=0;B<A;B++){
			C.push(D.call(E,this[B],B,this))
		}return C
	}
}if(!Array.prototype.some){
	Array.prototype.some=function (C,D){
		var A=this.length;
		for(var B=0;B<A;B++){
			if(C.call(D,this[B],B,this)){
				return true
			}
		}return false
	}
}if(!Array.prototype.every){
	Array.prototype.every=function (C,D){
		var A=this.length;
		for(var B=0;B<A;B++){
			if(!C.call(D,this[B],B,this)){
				return false
			}
		}return true
	}
}Array.prototype.contains=function (A){
	return this.indexOf(A)!=-1
};
Array.prototype.copy=function (A){
	return this.concat()
};
Array.prototype.insertAt=function (B,A){
	this.splice(A,0,B)
};
Array.prototype.insertBefore=function (C,B){
	var A=this.indexOf(B);
	if(A==-1){
		this.push(C)
	}else {
		this.splice(A,0,C)
	}
};
Array.prototype.removeAt=function (A){
	this.splice(A,1)
};
Array.prototype.remove=function (B){
	var A=this.indexOf(B);
	if(A!=-1){
		this.splice(A,1)
	}
};
if(!String.prototype.toQueryParams){
	String.prototype.toQueryParams=function (){
		var F={};
		var G=this.split("&");
		var D=/([^=]*)=(.*)/;
		for(var B=0;B<G.length;B++){
			var A=D.exec(G[B]);
			if(!A){
				continue
			}var C=decodeURIComponent(A[1]);
			var E=A[2]?decodeURIComponent(A[2]):undefined;
			if(F[C]!==undefined){
				if(F[C].constructor !=Array){
					F[C]=[F[C]]
				}if(E){
					F[C].push(E)
				}
			}else {
				F[C]=E
			}
		}return F
	}
}if(!String.prototype.trim){
	String.prototype.trim=function (){
		var A=/^\s+|\s+$/g;
		return function (){
			return this.replace(A,"")
		}
	}()
}if(!String.prototype.replaceAll){
	String.prototype.replaceAll=function (B,A){
		return this.replace(new RegExp(B,"gm"),A)
	}
}
Math.randomInt=function (A){
	return Math.floor(Math.random()*(A+1))
};

(function(){
		  
	var ua = navigator.userAgent.toLowerCase();
	
	var opera = ua.indexOf("opera")!=-1,
		safari = ua.indexOf("safari")!=-1,
		gecko = !opera && !safari && ua.indexOf("gecko")>-1,
		ie = !opera && ua.indexOf("msie")!=-1,
		ie6 = !opera && ua.indexOf("msie 6")!=-1,
		ie7 = !opera && ua.indexOf("msie 7")!=-1;
		
	TaoXie.namespace("Tools");
	
	TaoXie.Tools = {
		isOpera : opera,
		isSafari : safari,
		isGecko : gecko,
		isIE : ie,
		isIE6 : ie6,
		isIE7 : ie7,
		getCookie : function (name){
			var cookie=document.cookie.match("(?:^|;)\\s*" + name + "=([^;]*)");
			return cookie ? decodeURI(cookie[1]) : "";
		},
		setCookie : function (name,value,expires,domain,path){
			value = encodeURI(value);
			value += (domain) ? "; domain=" + domain : "";
			value += (path) ? "; path=" + path : "";
			if(expires){
				var expire=new Date();
				expire.setTime( expire.getTime() + (expires*86400000) );
				value += "; expires="+expire.toGMTString()
			}
			document.cookie = name + "=" + value;
		},
		removeCookie : function (name){
			this.setCookie(name,"",-1);
		},
		isValidEmail : function(email){
			if (email.search(/[_a-zA-Z\d\-\.]+@[_a-zA-Z\d\-]+(\.[_a-zA-Z\d\-]+)+$/) != -1){
				return true;
			}else{
				return false;
			}
		},
//		LeftTrim: function(s){
//		    try{
//		        return s.replace(/^\s+/g, "");
//		    }catch(e){
//		        return s;
//		    }
//		},
//		RightTrim : function(s){
//		    try{
//		        return s.replace(/\s+$/g, "");
//		    }catch(e){
//		        return s;
//		    }
//		},
		isHttp: function(s){
		    try{
		        return /(http:\/\/)?([\w-]+\.)+[\w-]+(\/[\w-\.\/?%&=]*)?/.test(s);
		    }catch(e){
		        return false;
		    }
		},
		isNumber : function(s){
		    try{
		        return /^\d+$/.test(s);
		    }catch(e){
		        return false;
		    }
		}
	};
	
})();

TaoXie.common={
	trim:function (A){
		return A.replace(/(^\s*)|(\s*$)/g,"")
	},
	escapeHTML:function (B){
		var C=document.createElement("div");
		var A=document.createTextNode(B);
		C.appendChild(A);
		return C.innerHTML;
	},
	unescapeHTML:function (A){
		var B=document.createElement("div");
		B.innerHTML=A.replace(/<\/?[^>]+>/gi,"");
		return B.childNodes[0]?B.childNodes[0].nodeValue:""
	},
	stripTags:function (A){
		return A.replace(/<\/?[^>]+>/gi,"")
	},
	toArray:function (B,D){
		var C=[];
		for(var A=D||0;A<B.length;A++){
			C[C.length]=B[A]
		}return C
	},
	applyIf:function (C,A){
		if(C&&A&&typeof A=="object"){
			for(var B in A){
				if(!YAHOO.lang.hasOwnProperty (C,B)){
					C[B]=A[B]
				}
			}
		}return C
	},
	apply:function (C,A){
		if(C&&A&&typeof A=="object"){
			for(var B in A){
				C[B]=A[B]
			}
		}return C
	},
	formatMessage:function (D,A,B){
		var C=/\{([\w-]+)?\}/g;
		return function (G,E,F){
			return G.replace(C,function (H,I){
				return F?F(E[I],I):E[I]
			})
		}
	}(),
	parseUri:(function (){
		var B=["source","prePath","scheme","username","password","host","port","path","dir","file","query","fragment"];
		var A=/^((?:([^:\/?#.]+):)?(?:\/\/)?(?:([^:@]*):?([^:@]*)?@)?([^:\/?#]*)(?::(\d*))?)((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?/;
		return function (F){
			var E={};
			var C=A.exec(F);
			for(var D=0;D<C.length;++D){
				E[B[D]]=(C[D]?C[D]:"")
			}return E
		}
	})()
};
TaoXie.applyIf=TaoXie.common.applyIf;
TaoXie.apply=TaoXie.common.apply;
(function(){
		  
    TaoXie.namespace("ShoppingCart");
    TaoXie.ShoppingCart = function(){		
		var cart = this;
		//从服务器获得购物车的商品数量
		cart.GetCartCount();
    };
    
	var proto = TaoXie.ShoppingCart.prototype;
	
	proto.config = {
		/* 保存已经添加到购物篮的商品，用来提示是否添加相同的商品 */
		cache : TaoXie.Tools.getCookie("ShoppingCartInfo"),
		/* 提交的地址 */
		url : "http://www.taoxie.cn/ajax/cart.htm",
		/* 展开的参数 */
		expand : {height:{from:31,to:184}},
		/* 收缩的参数 */
		collapsed : {height:{from:184,to:31}},
		/* 延迟 */
		duration : 0.5,
		
		//iscookie : false,
		
		/* 获得当前购物车的参数 */
		params : {}		
	};
	
	//转成二维数组
	proto.toArray = function(cookie){
		if(cookie){
			if(cookie.indexOf('|||')==0) return;
			cookie = cookie.split('|||');
			for(var i=0; i<cookie.length; i++){
				cookie[i] = cookie[i].split('@@@');
			}
		}
		return cookie;
	};

	proto.GetCartCount = function(){
		var config = this.config;		
		var url = config.url + "?action=getCount&t="+Math.round(Math.random()*10000);
		YAHOO.util.Connect.asyncRequest("GET",url,{
	        success:function (req){
				var attr = eval('('+req.responseText.replace(/\n | \r/g,"")+')'); 
				$("TaoXie:CartCount").innerHTML = attr.Quantity;
				config.params = attr;
	        },failure:function (req){
				alert(req.status);
			}
	    });
	};
	
	proto.Save = function(attr){

		var cart = this;
		var config = cart.config;
		
		if(!attr){
		    return;
		}
		if( attr[8] == 0 || attr[8] == "" ){
		    alert("请填写选购的数量");
		    return;
		}
		if( attr[6] == 0 || attr[6] == ""){
		    alert("请选择尺寸");
		    return;
		}
		cart.AddToCart(attr);
	};
    
    proto.AddToCart = function(attr){
		var config = this.config;
		var cart = this;
		
	    var url = config.url + "?action=add&stockId="+attr[7]+"&quantity="+attr[8]+"&t="+Math.round(Math.random()*10000);
	    YAHOO.util.Connect.asyncRequest("POST",url,{
	        success:function (req){
	            var count = $("TaoXie:CartCount");
	            var payfor_0 = $("TaoXie:PayFor_0");
	            var payfor_1 = $("TaoXie:PayFor_1");
	            var cartImage = $("TaoXie:CartImage");
	            var cartInfo = $("TaoXie:CartInfo");
				var returns = eval('('+req.responseText.replace(/\n | \r/g,"")+')'); 
	            
	            $D.setStyle(payfor_0,"display","none");
	            count.innerHTML = returns.Quantity;
				config.params = returns;
	            cartImage.innerHTML = "<img src='"+attr[2]+"' />";
	            cartInfo.innerHTML = "<h5><a href='"+attr[3]+"'>"+attr[1]+"</a></h5>\n" + 
	                                 "<p>颜色："+attr[5]+"</p>\n" + 
	                                 "<p>尺码："+attr[6]+"</p>\n" + 
	                                 "<p>数量："+attr[8]+"</p>\n" + 
	                                 "<p>价格："+attr[4]+"</p>";
				cart.Anim($("TaoXie:CartPopup"));
	        },failure:function (req){
				alert(req.status);
			}
	    });
	};
	proto.Anim = function(el){
		var config = this.config;
		var show = new YAHOO.util.Anim(el, config.expand,config.duration);
		var hide = new YAHOO.util.Anim(el, config.collapsed,config.duration);
		show.animate();
		setTimeout(function(){
			hide.animate();
			var payfor_0 = $("TaoXie:PayFor_0");
			$D.setStyle(payfor_0,"display","");
		},2000);
	};
	
})();



(function(){

	TaoXie.namespace("OnlineUser");

	
	TaoXie.OnlineUser = function(){
		this.userid = -1;
		this.username = "";
		this.groupid = 0;
		this.newpms = 0;
		
		var cookie = unescape(TaoXie.Tools.getCookie("user"));
		if(cookie!=""){
			var u = cookie.split('&');
			if(u.length==6){
				this.userid=u[0].substring(u[0].indexOf("=")+1,u[0].length);
				this.username=u[1].substring(u[1].indexOf("=")+1,u[1].length);
				this.groupid=u[4].substring(u[4].indexOf("=")+1,u[4].length);
				this.newpms=u[5].replace("NewPms=","");
			}
		}	
	};

})();

function qqOnline(sigkey, qq) {
    if (qq) {
        var url = "http://www.taoxie.cn/ajax/imstat.htm?no=" + qq + "&t=" + Math.round(Math.random() * 10000);
        YAHOO.util.Connect.asyncRequest("GET", url, {
            success: function(req) {
            }, failure: function(req) {
            }
        });
    }
    var tempSrc = 'http://sighttp.qq.com/wpa.js?rantime=' + Math.random() + '&sigkey=' + sigkey;
    var oldscript = document.getElementById('testJs');
    var newscript = document.createElement('script');
    newscript.setAttribute('type', 'text/javascript');
    newscript.setAttribute('id', 'testJs');
    newscript.setAttribute('src', tempSrc);
    if (oldscript == null) {
        document.body.appendChild(newscript);
    } else {
        oldscript.parentNode.replaceChild(newscript, oldscript);
    }
    return false;
} 

var user = new TaoXie.OnlineUser();

