﻿/*
Modified By MacroX
整合原有的JS，基本在每个页面都有用到
- Verify.js				集成了一组判断输入认证的基本函数
- shopping_cart.js		购物车组件
- letaoui.js			弹出层组件
- utils.js				常用的调用函数，如四舍五入等
- login.js				登陆注册组件
*/
var siteID=2;

var settle_new = 1;//1 为新的结账中心，0 为 旧的结账中心

//letaoui开始
/* public */
function pxToNumber(_px){
	return Number(new String(_px).substr(0,new String(_px).indexOf('px')));
}

var hexunPageMode_obj=(document.body!=null?document.body:document.documentElement);

var dragDelay_obj;
/* resizelist */
var resize_arr=new Array();
/* fltip 500+ */
var fltipDelay_obj;
var fltipDelay_num=5000;
var fltipbase_str='<table cellpadding="0" cellspacing="0" id="fltip">'
					+'<tr><td id="fltip1"></td><td id="fltip2"></td><td id="fltip3"></td></tr>'
					+'<tr><td id="fltip4"></td><td id="fltip5"><div class="fltiptitle"></div><ul></ul></td><td id="fltip6"></td></tr>'
					+'<tr><td id="fltip7"></td><td id="fltip8"></td><td id="fltip9"></td></tr></table>';
function fltip(_arr,_obj){
	if($('#fltip')!=null){
		clearInterval(fltipDelay_obj);
		$('table').remove("#fltip");
	}
	$('body').append(fltipbase_str);
	$('#fltip').dblclick(function(){});
	if(_obj.alpha==null){
		$('#fltip').css('opacity',0.8);
	}else{
		$('#fltip').css('opacity',Number(_obj.alpha)/100);
	}
	$(_arr).each(function(i,n){
		$('#fltip ul').append('<li>'+n+'</li>');
	});
	$('#fltip').css('left',-1000);
	$('#fltip').css('top',0);
	switch(_obj.style){
		default:
		case 0:
			if(_obj.x+$('#fltip').width()>$(document).width()){
				$('#fltip').css('left',$(document).width()-$('#fltip').width());
			}else{
				$('#fltip').css('left',_obj.x);
			}
			if(_obj.y+$('#fltip').height()>$(document).height()){
				$('#fltip').css('top',$(document).height()-$('#fltip').height());
			}else{
				$('#fltip').css('top',_obj.y);
			}
			$('#fltip1').css('background-position','-10px -15px');
			break;
		case 1:
			if(_obj.x-$('#fltip').width()>0){
				$('#fltip').css('left',_obj.x-$('#fltip').width());
			}else{
				$('#fltip').css('left',0);
			}
			if(_obj.y+$('#fltip').height()>$(document).height()){
				$('#fltip').css('top',$(document).height()-$('#fltip').height());
			}else{
				$('#fltip').css('top',_obj.y);
			}
			$('#fltip3').css('background-position','-15px -15px');
			break;
		case 2:
			if(_obj.x-$('#fltip').width()>0){
				$('#fltip').css('left',_obj.x-$('#fltip').width());
			}else{
				$('#fltip').css('left',0);
			}
			if(_obj.y-$('#fltip').height()>0){
				$('#fltip').css('top',_obj.y-$('#fltip').height());
			}else{
				$('#fltip').css('top',0);
			}
			$('#fltip9').css('background-position','-20px -15px');
			break;
		case 3:
			if(_obj.x+$('#fltip').width()>$(document).width()){
				$('#fltip').css('left',$(document).width()-$('#fltip').width());
			}else{
				$('#fltip').css('left',_obj.x);
			}
			if(_obj.y-$('#fltip').height()>0){
				$('#fltip').css('top',_obj.y-$('#fltip').height());
			}else{
				$('#fltip').css('top',0);
			}
			$('#fltip7').css('background-position','-25px -15px');
			break;
			;
	}
	if(_obj.delay!=null){
		fltipDelay_num=_obj.delay*1000
	}
	$('#fltip').css('display','none');
	$('#fltip').fadeIn(1000,function(){
		clearInterval(fltipDelay_obj);
		fltipDelay_obj=setInterval(function(){
			clearInterval(fltipDelay_obj);
			$('#fltip').fadeOut(1000,function(){$('table').remove("#fltip");})
		},fltipDelay_num);
	});
}
/* fldiv 300+ */
var fldivbkbase_str='<div id="breakoff"></div>';
function fldiv(_ctt,_obj,call_back_function){
	if($('#fldiv').size()>0){
		$("#fldiv").html('');
		$('div').remove("#fldiv");
	}
	if(_obj.parent==null){
		$('body').append('<div id="fldiv"></div>');
	}else{
		_obj.parent.css('position','relative');
		_obj.parent.append('<div style="position:absolute" id="fldiv"></div>');
	}
	$('#fldiv').append(fldivbkbase_str);
	if(_obj.breakoff){
		/************************************/
		/**********   修改的内容  ***********/
		/************************************/
		if($.browser.msie && (new String($.browser.version).indexOf('8.0')==0||new String($.browser.version).indexOf('6.0')==0)){
			$('#fldiv #breakoff').width($(document).width()-17);
		}else{
			$('#fldiv #breakoff').width($(document).width());
		}		
		$('#fldiv #breakoff').height($(document).height());
		if(_obj.alpha!=null){
			$('#fldiv #breakoff').opacity(_obj.alpha/100);
		}else{
			$('#fldiv #breakoff').css('opacity',0.6);
		}
	}else{
		$('#fldiv #breakoff').css('opacity',0);
	}
	$('#fldiv #breakoff').dblclick(function(){});
	$('#fldiv #flcontent').dblclick(function(){});
	if(siteID==1)
	    $('#fldiv').append('<div id="flcontent" class="flcontent"></div>');
	else 
	     $('#fldiv').append('<div id="flcontent" class="flcontent" style=\"border-color:#6469c5;\"></div>');
	$("#flcontent").css("z-index",parseInt(new Date().getTime()/1000));
	$('#fldiv #flcontent').append('<div class="fldivtitle">'+(_ctt.title!=null?_ctt.title:'')+'</div>');
	$('#fldiv #flcontent').append('<div class="fldivcontent">'+(_ctt.content!=null?_ctt.content:'')+'</div>');
	$('#fldiv #flcontent').append('<div class="fldivstate">'+(_ctt.state!=null?_ctt.state:'')+'</div>');
	
	
    if(siteID==1)
    {
        if(typeof _ctt.lt_stat_id == 'undefined')
			$('#fldiv #flcontent').append('<div class="fldivclose"></div>');
	    else
	       	$('#fldiv #flcontent').append('<div class="fldivclose" lt_stat_id="'+_ctt.lt_stat_id+'"></div>');
	}
	else
	{
	    if(typeof _ctt.lt_stat_id == 'undefined')
			$('#fldiv #flcontent').append('<div class="fldivclose"></div>');
		else
		    $('#fldiv #flcontent').append('<div class="fldivclose" lt_stat_id="'+_ctt.lt_stat_id+'"></div>');
	}
	
	$('#fldiv #flcontent .fldivclose').hover(function(){$(this).css("background-position","-16px center")},function(){$(this).css("background-position","3px center")});
	 
	$('#fldiv').data('scrolling',{x:$(document).scrollLeft(),y:$(document).scrollTop()});
	
	$('#fldiv #flcontent .fldivclose').click(function(){
	
		if($(this).attr('lt_stat_id'))
		   _lt_click_stat($(this).attr('lt_stat_id'));
		   
		$('#fldiv .flcontent').fadeOut(500,function(){
			$('div').remove("#fldiv");
		});
		if($('#fldiv #breakoff').size()>0){
			$('#fldiv #breakoff').fadeOut(500);
		}
		
		$('#div_add_addressee select').css('display','');
	});
	// for ie8 bug
	if ($.browser.msie && new String($.browser.version).indexOf('8.0')==0) {
		$('#fldiv').css('z-index','auto');
		$('#fldiv #breakoff').css('z-index','auto');
		$('#fldiv #flcontent').css('z-index','auto');
	}
	if($('#fldiv #breakoff').size()>0){
		$('#fldiv #breakoff').css('display','none');
	}
	$('#fldiv #flcontent').css('display','none');
	if($('#fldiv #breakoff').size()>0){
		$('#fldiv #breakoff').fadeIn(500);
	}
	if(call_back_function=="1"){
	    $('#fldiv #flcontent').fadeIn(40,function(){
	       if(document.body.clientWidth < $('#flcontent').width())
	            $('#fldiv #flcontent').css('left','0px');
	        else
	            $('#fldiv #flcontent').css('left',(document.body.clientWidth-$('#flcontent').width())/2+'px');
	    });
	}else{
	     $('#fldiv #flcontent').fadeIn(500);
	}


    
	if($.browser.msie && new String($.browser.version).indexOf('8.0')!=0){
		$('#fldiv #flcontent .fldivtitle').width($('#fldiv #flcontent').width()+'px');
	}
	if(_obj.drag==null||_obj.drag){
		$('#fldiv #flcontent .fldivtitle').mousedown(function(event){
			_obj=$(this).parent().offset();
			$('#fldiv').data('excursion',{x:event.clientX+$(document).scrollLeft()-_obj.left,y:event.clientY+$(document).scrollTop()-_obj.top,width:$(document).width(),height:$(document).height()});
			$(document).bind('mousemove',function(event){
				var _x=event.clientX-$('#fldiv').data('excursion').x+$(document).scrollLeft();
				var _y=event.clientY-$('#fldiv').data('excursion').y+$(document).scrollTop();
				_y=_y<0?0:_y;
				_x=_x<0?0:_x;
				var d_height=$('#fldiv').data('excursion').height;
				var i_height=$('#fldiv #flcontent').height();
				_y=(_y+i_height)>d_height?(d_height-i_height-2):_y;
				var d_width=$('#fldiv').data('excursion').width;
				var i_width=$('#fldiv #flcontent').width();
				_x=(_x+i_width)>d_width?(d_width-i_width-2):_x;
				$('#fldiv').data('scrolling',{x:$(document).scrollLeft(),y:$(document).scrollTop()});
				$('#fldiv #flcontent').css({left:_x+'px',top:_y+'px'});
			});
			document.oncontextmenu=function(){return false;}
			$('body').attr('onselectstart','return false');
			if($.browser.mozilla){$('body').css('-moz-user-select','none');}
		});
		$('#fldiv #flcontent .fldivtitle').mouseup(function(event){
			$(document).unbind('mousemove');
			$('#fldiv').removeData('excursion');
			$('#fldiv .fldivcontent').focus();
			document.oncontextmenu=function(){};
			$('body').attr('onselectstart','return true');
			if($.browser.mozilla){$('body').css('-moz-user-select','-moz-all');}
		})
		$('#fldiv #flcontent .fldivtitle').mouseout(function(event){
			clearInterval(dragDelay_obj);
			dragDelay_obj=setInterval(function(){
				$(document).unbind('mousemove');
				$('#fldiv').removeData('excursion');
				$('#fldiv .fldivcontent').focus();
				clearInterval(dragDelay_obj);
				document.oncontextmenu=function(){};
				$('body').attr('onselectstart','return true');
				//removeAttr('onselectstart');
				if($.browser.mozilla){$('body').css('-moz-user-select','-moz-all');}
			},500);
		});
	}
	
	if(_obj.x!=null){
		$('#fldiv #flcontent').css('left',_obj.x+'px');
	}else{
		if($('#fldiv #flcontent').width()>hexunPageMode_obj.clientWidth){
			$('#fldiv #flcontent').css('left','0px');	
		}else{
			$('#fldiv #flcontent').css('left',(hexunPageMode_obj.clientWidth-$('#fldiv #flcontent').width())/2+'px');		
		}
	}
	if(_obj.y!=null){
		$('#fldiv #flcontent').css('top',_obj.y+'px');
	}else{
		$('#fldiv #flcontent').css('top',$(document).scrollTop()+150+'px');
	}
	
	if(_obj.scrolling||_obj.scrolling==null){
		$(window).scroll(function(){
			var _scrollleft=$(document).scrollLeft();
			var _scrolltop=$(document).scrollTop();
			if($('#fldiv').data('scrolling')!=null){
				$('#fldiv #flcontent').css({left:pxToNumber($('#fldiv #flcontent').css('left'))+_scrollleft-$('#fldiv').data('scrolling').x+'px',top:pxToNumber($('#fldiv #flcontent').css('top'))+_scrolltop-$('#fldiv').data('scrolling').y+'px'});
			}
			$('#fldiv').data('scrolling',{x:_scrollleft,y:_scrolltop});
		});
	}
}

/************************************/
/**********   增加的内容  ***********/
/************************************/

/* resize */
$(window).resize(function(){
	if($('#fldiv #breakoff')[0]){
		$('#fldiv #breakoff').width(10);
		$('#fldiv #breakoff').width(10);
		if($.browser.msie && (new String($.browser.version).indexOf('8.0')==0||new String($.browser.version).indexOf('6.0')==0)){
			$('#fldiv #breakoff').width($(document).width()-17);
		}else{
			$('#fldiv #breakoff').width($(document).width());
		}		
		$('#fldiv #breakoff').height($(document).height());
	}
	 if(document.body.clientWidth < $('#flcontent').width())
	        $('#fldiv #flcontent').css('left','0px');
	    else
	        $('#fldiv #flcontent').css('left',(document.body.clientWidth-$('#flcontent').width())/2+'px');
});

//letaoui结束



function popup_window(window_opt)
{
	    
		var title_str='<div style="padding:10px;width:'+window_opt.width+ 'px;">'+window_opt.title+'</div>';
		
		var content_str='<div style=\"height:'+window_opt.height +'px;text-align:center;  padding:10px; margin:auto; line-height:20px;width:'+ window_opt.width +'px">\n<br/>'+
		
		""+window_opt.content+""+
		"</div>";
		
		if(window_opt.show_OK)
		  {
		    if(typeof window_opt.lt_stat_id_ok)
				var state_str ='<div style="padding:4px; text-align:center; margin-left:auto;margin-right:auto;width::'+window_opt.width+'px"><A lt_stat_id="'+window_opt.lt_stat_id_ok +'" href="#" onclick="javascript:$(\'#fldiv\').remove();return false;"><img style="border:none;" src="/letaozu/images/OK_button.gif?090511" onclick="javascript:_lt_click_stat(\''+window_opt.lt_stat_id_ok+'\')"/></A></div>';
		    else
				var state_str ='<div style="padding:4px; text-align:center; margin-left:auto;margin-right:auto;width::'+window_opt.width+'px"><A href="#" onclick="javascript:$(\'#fldiv\').remove();return false;"><img style="border:none;" src="/letaozu/images/OK_button.gif?090511"/></A></div>';
		  }
		else
		    var state_str ='<div style="padding:0px; text-align:center; width:'+window_opt.width+'px"></div>';
		
		
		if(typeof window_opt.lt_stat_id_close)
			fldiv({
				title:title_str,content:content_str,state:state_str,lt_stat_id:window_opt.lt_stat_id_close
			},{
				drag:true,breakoff:false,scrolling:false,x:window_opt.x,y:window_opt.y
			})
		else
			fldiv({
				title:title_str,content:content_str,state:state_str
			},{
				drag:true,breakoff:false,scrolling:false,x:window_opt.x,y:window_opt.y
			})
		
		
}
//utils结束


//添加到收藏夹，兼容火狐和ie
function addBookmark(url,title) {
    if (window.sidebar) {
        window.sidebar.addPanel(title, url,"");
    }
    else if( document.all ) {
        window.external.AddFavorite( url, title);
    }
    else if( window.opera && window.print ) {
        return true;
    }
}

//新的头部效果
$(function(){
	//顶部导航菜单效果
	$("#ltTopNav ul li").eq(nowNav).children("b").css("background-position","0 -50px").next("span").css("background-position","right -50px").children("a").css("color","#fff").data("nowNav","1").children("i").css("color","#eee");
	$("#ltTopNav ul li span a").hover(
	    function(){
	        if($(this).data("nowNav")==undefined){
	            $(this).children("i").css("color","#eee");
	            $(this).data("nowColor",$(this).css("color")).css("color","#fff").parent("span").css("background-position","right -50px").prev("b").css("background-position","0 -50px");
	        }
	    },
	    function(){
	        if($(this).data("nowNav")==undefined){
	            $(this).children("i").css("color","#aaa");
	            $(this).css("color",$(this).data("nowColor")).parent("span").css("background-position","1000px 1000px").prev("b").css("background-position","1000px 1000px");
	        }
	    }
	);
	
	//收藏夹
	$("#collectletao").bind("click",function(){
	    addBookmark("http://www.letao.com","乐淘—全国最大的网上鞋城");
	});
});


//延迟载入图片
function delay_loading_pics()
{
    $("img[pload_1]").each(function(){
            $(this).attr('src',$(this).attr("pload_1"));
        });
    
	//window.setTimeout(function(){
    //    
    //},200);
    
    window.setTimeout(function(){
        $("img[pload_2]").each(function(){
            $(this).attr('src',$(this).attr("pload_2"));
        });
    },800);
    
    window.setTimeout(function(){
        $("img[pload_3]").each(function(){
            $(this).attr('src',$(this).attr("pload_3"));
        });
    },2500);
}

function get_static_content(page_id, content_id, fill_obj)
{
   $.LT_AJAX("get_page_static_content",[page_id,content_id],get_static_content_callback);
   function get_static_content_callback(return_data)
   {
      if(return_data[0] != "SUCCESS")
          fill_obj.html("该内容不存在");
      else
          fill_obj.html(return_data[1]);
   }
}

$(document).ready(function(){
    delay_loading_pics();
});

function SearchBarEvent(){
    var SearchObject = $("#txtSearch");
    
    SearchObject.bind("focus",function(){
		$(this).css({"border-color":"#3da8ed","color":"#3da8ed"});
        if(_DEFAULT_SEARCH_KEYWORD != null && $(this).val()==_DEFAULT_SEARCH_KEYWORD){
            $(this).val("");
        }
    })
    
    SearchObject.bind("blur",function(){
		$(this).css({"border-color":"#acbabd","color":"#999"});
        if(_DEFAULT_SEARCH_KEYWORD != null && $.trim($(this).val())==""){
            $(this).val(_DEFAULT_SEARCH_KEYWORD);
        }
    })
}

$(document).ready(function(){
    SearchBarEvent();
    
    $("#btnSearch").unbind("click").click(function(){
        var strSearchParam=$("#txtSearch").attr("value");            
        strSearchParam=strSearchParam.replace("'",""); 
        strSearchParam=strSearchParam.replace("script","");            
        if(strSearchParam!="请输入要搜索的内容"&&strSearchParam!='')
        {          
             window.location.href='/letaozu/product_search.aspx?KeyWord='+encodeURIComponent(strSearchParam); 
        }
    })
    $('#txtSearch').keypress(function(event){
        if(event.keyCode==13)
        $('#btnSearch').click();
    }); 
  
});


//LazyLoad
//Author:邢达|macrox@163.com
//Version:Alfa 0.1
//CreateTime:2010.3.17
var lazyLoad = {
	Init : function(){
		return $("img[lazyload]");
	},
	Calculate : function(lazyloadobject){
		var windowHeight = $(window).height();
		var arrReturn = {};
		var _scrollTop;
		if(lazyloadobject.length==0){
			return null;
		}
		else{
			lazyloadobject.each(function(i){
			    _scrollTop = parseInt($(this).offset().top - windowHeight);
				if(!arrReturn.hasOwnProperty(_scrollTop)){
				    arrReturn[_scrollTop] = new Array();
				}
				arrReturn[_scrollTop].push($(this));
			});
			this.ArrLoad = arrReturn;
			return arrReturn;
		}
	},
	ArrLoad : null,
	IsLoad : function(scrolltop,objectstop){
		if(objectstop!=null&&objectstop!={}){
		    for(i in this.ArrLoad){
		        if(parseInt(i)<=scrolltop&&this.ArrLoad.hasOwnProperty(i)){
		            for(j=0;j<this.ArrLoad[i].length;j++){
		                this.ArrLoad[i][j].attr("src",this.ArrLoad[i][j].attr("lazyload")).removeAttr("lazyload");
		            }
		            delete this.ArrLoad[i];
		        }
		    }
		}
	},
	Run : function(){
		var lazyLoadObject = this.Init();
		this.Calculate(lazyLoadObject);
		arrScrollTop = this.ArrLoad;
		if(arrScrollTop==null){
			return false;
		}
		else{
			var _this = this;
			_this.IsLoad($(window).scrollTop(),arrScrollTop);
			$(window).scroll(function(){
				_this.IsLoad($(this).scrollTop(),arrScrollTop);
			});
		}
	}
}

$(function(){
	lazyLoad.Run();
});

$(window).resize(function(){
    lazyLoad.Run();
});

//新的购物车接口
var ShoppingTrolley = {
	//设定默认的基本参数
	DefaultOption : {
		ProductID : null,
		Count : 1,
		Size : 0,
		UserID : null,
		IsAdd : false,
		Callback : null
	},
	//购物车中的商品，初始情况为空
	Product : null,
	//购物车初始化
	Init : function(){
		return _ShoppingTrolleyInit();
	},
	//购物车读取数据
	Load : function(option){
		var opts = $.extend({},this.DefaultOption,option);
		return _ShoppingTrolleyLoad(opts,this.Product);
	},
	//取得购物车中的商品（该事件会异步获取购物车中商品的数据，并回调Load事件）
	GetProduct : function(option){
		var opts = $.extend({},this.DefaultOption,option);
		_ShoppingTrolleyGetProduct(opts);
	},
	//在购物车中移除一件已有的商品
	RemoveProduct : function(option){
		var opts = $.extend({},this.DefaultOption,option);
		_ShoppingTrolleyRemoveProduct(opts);
	},
	//在购物车中增加一件已有的商品的数量
	AddProduct : function(option){
		var opts = $.extend({},this.DefaultOption,option);
		_ShoppingTrolleyAddProduct(opts);
	},
	//在购物车中减少一件已有的商品的数量
	SubstractProduct : function(option){
		var opts = $.extend({},this.DefaultOption,option);
		_ShoppingTrolleySubstractProduct(opts);
	}
}

//***********购物车的函数层************
//购物车初始化
function _ShoppingTrolleyInit(){
	var outerDiv = __CreateShoppingTrolleyOuterDiv();
	outerDiv.html("<div style=\"height:20px; padding:20px 0 0; background:url(/letaozu/images/ajax-loader.gif) no-repeat center center\"></div>")
	return outerDiv;
}

//读取购物车中的数据
function _ShoppingTrolleyLoad(option,product){
	var outerDiv = __CreateShoppingTrolleyOuterDiv();
	if(product==null){
		outerDiv.html("<div style=\"height:20px; line-height:20px; font-size:14px; color:#8cc9f0; text-align:center\">您还没有选购任何商品</div>");
		//以下的部分不是一个通用的接口，先写成这样，回头拆成一个特定的回调函数
		$("#trolley>font").text("");
	}
	else{
		product = __TransProductDatatable(product);
		outerDiv.html(product);
		//以下的部分不是一个通用的接口，先写成这样，回头拆成一个特定的回调函数
		if($("#hid_prod_count").length!=0){
		    $("#trolley>font").text("(" + $("#hid_prod_count").val() + ")");
		}
		else{
		    $("#trolley>font").text("");
		}
	}
	return outerDiv;
}

//取得用户购物车中的商品
function _ShoppingTrolleyGetProduct(option){
	$.LT_AJAX("get_trolley_product",null,_CallBackGetProduct,"user_trolley");
}

//在购物车中增加一件已有的商品的数量
function _ShoppingTrolleyAddProduct(option){
	if(option.ProductID==null){
	    alert(option.ProductID);
		return;
	}
	else{
		//判断option的回调函数是否为空
		//如果不为空，则将该函数作为参数从而成为AJAX.Ready的回调函数
		//如果为空，则调用默认的回调函数
		var callbackFunction = _CallBackAddProduct;
		if(option.Callback!=null){
			callbackFunction = option.Callback;
		}
		$.LT_AJAX("set_trolley_product",[option.ProductID,option.Size,option.Count,option.IsAdd],callbackFunction,"user_trolley");
	}
}

//在购物车中减少一件已有的商品的数量
function _ShoppingTrolleySubstractProduct(option){
	if(option.ProductID==null){
		return;
	}
	else if(parseInt(option.Count)==0){
		if(!window.confirm("您确定要将该件商品从购物车中移出吗？")){
			return;
		}
	}
	else if(parseInt(option.Count)<0){
		return;
	}
	//判断option的回调函数是否为空
	//如果不为空，则将该函数作为参数从而成为AJAX.Ready的回调函数
	//如果为空，则调用默认的回调函数
	var callbackFunction = _CallBackSubstractProduct;
	if(option.Callback!=null){
		callbackFunction = option.Callback;
	}
	$.LT_AJAX("set_trolley_product",[option.ProductID,option.Size,option.Count],callbackFunction,"user_trolley");
}

//在购物车中移除一件已有的商品
function _ShoppingTrolleyRemoveProduct(option){
	if(option.ProductID==null){
		return;
	}
	else if(!window.confirm("您确定要将该件商品从购物车中移出吗？")){
		return;
	}
	//判断option的回调函数是否为空
	//如果不为空，则将该函数作为参数从而成为AJAX.Ready的回调函数
	//如果为空，则调用默认的回调函数
	var callbackFunction = _CallBackRemoveProduct;
	if(option.Callback!=null){
		callbackFunction = option.Callback;
	}
	$.LT_AJAX("set_trolley_product",[option.ProductID,option.Size,0],callbackFunction,"user_trolley");
}

//***********购物车的回调层（与函数层平级）****************
function _CallBackGetProduct(returns){
	if(returns[0].toString()!="SUCCESS"){
		return;
	}
	else{
		//将获取的商品传入实例中并进行处理
		ShoppingTrolley.Product = returns[1];
		ShoppingTrolley.Load();
	}
}

function _CallBackAddProduct(returns){
	if(returns[0].toString()!=="SUCCESS"){
		if(returns[0].toString()=="ALERT"){
			alert(returns[1].toString());
		}
		return false;
	}
	else{
		//将获取的商品传入实例中
		ShoppingTrolley.Product = returns[1];
		ShoppingTrolley.Load();
	}
}

function _CallBackSubstractProduct(returns){
	if(returns[0].toString()!=="SUCCESS"){
		return;
	}
	else{
		//将获取的商品传入实例中
		ShoppingTrolley.Product = returns[1];
		ShoppingTrolley.Load();
	}
}

function _CallBackRemoveProduct(returns){
	if(returns[0].toString()!=="SUCCESS"){
		return;
	}
	else{
		//将获取的商品传入实例中
		ShoppingTrolley.Product = returns[1];
		ShoppingTrolley.Load();
	}
}

//***********购物车的基础应用层****************
//创建购物车的外围弹层
function __CreateShoppingTrolleyOuterDiv(){
	if($("#shopping_trolley").length>0){
		return $("#shopping_trolley");
	}
	else{
		$("body")
		.append(
			$("<div>")
			.attr("id","shopping_trolley")
			.css({
				width:"680px",
				padding:"1px 1px 20px",
				"background-color":"#fff",
				border:"3px solid #8cc9f3",
				position:"absolute",
				"z-index":(parseInt(new Date().getTime()/1000))
			})
		);
		return $("#shopping_trolley");
	}
}

//将回传的购物车商品的Datatable转化成为可读的HTML格式
function __TransProductDatatable(product_json_datatable){
	var dt = product_json_datatable;	//实例化商品Datatable
	var dt_nostock = {Rows:[]};
	var prod_total_count = 0;			//初始化商品总量
	var prod_total_price = 0;			//初始化商品总价
	var is_all_product_nostock = false;//是否所有的商品都没有库存，初始化false
	
	var return_string = "<h6 style=\"line-height:24px; background-color:#e8f4fd; color:#8cc9f3; text-indent:6px; font-weight:700;\">" +
	                    "我的购物车" +
	                    "<span style=\"padding:6px; background:url(/letaozu/images/shopcart/closebtn.gif) no-repeat 0 0; position:absolute; " +
	                    "right:6px; top:6px; cursor:pointer\" onclick=\"$('#shopping_trolley').fadeOut(100);$('#scarrow').fadeOut(100)\"></span>" +
	                    "</h6>";
	
	if(dt.Rows.Count==0){
		return_string += "<div style=\"height:20px; line-height:20px; font-size:14px; color:#8cc9f0; text-align:center; padding:20px 0 0\">您还没有选购任何商品</div>";
	}
	else{
		return_string += 	"<table id=\"shopping_trolley_innertable\">\n" +
							"	<thead>\n" +
							"		<tr>\n" +
							"			<td class=\"prod_image\">商品图片</td>\n" +
							"			<td class=\"prod_name\">商品名称</td>\n" +
							"			<td class=\"prod_status\">状态</td>\n" +
							"			<td class=\"prod_size\">尺码</td>\n" +
							"			<td class=\"prod_count\">数量</td>\n" +
							"			<td class=\"prod_price\">乐淘价</td>\n" +
							"			<td class=\"prod_delete\">操作</td>\n" +
							"		</tr>\n" +
							"	</thead>\n" +
							"	<tbody>\n";
		
		for(i=0; i<dt.Rows.Count; i++){
			if(dt.Rows[i]["HasStock"]==true){
				return_string += 	"		<tr>\n" +
									"			<td>" +
									"				<a href=\"/letaozu/prod.aspx?strProductID=" + dt.Rows[i]["ProductID"].toString().substring(0,9) + "\" target=\"_blank\">" +
									"				<img src=\"http://img.letao.com/img/" + dt.Rows[i]["Image"].substring(0,2) +"/"+ dt.Rows[i]["Image"].replace(".","_3.") + "\" alt=\"\" />" +
									"				</a>" +
									"			</td>\n" +
									"			<td class=\"prod_name\">" +
									"				<a href=\"/letaozu/prod.aspx?strProductID=" + dt.Rows[i]["ProductID"].toString().substring(0,9) + "\" target=\"_blank\">" + dt.Rows[i]["ProductName"].toString() + "</a>" +
									"			</td>\n" +
									"			<td style=\"color:#9c0\">在售</td>\n" +
									"			<td>" + dt.Rows[i]["ProductSize"].toString() + "</td>\n" +
									"			<td>" +
									"				<span class=\"tly_prodsubstract\" style=\"margin:0 0 0 14px\" " +
									"				onclick=\"javascript:ShoppingTrolley.SubstractProduct({" +
									"					ProductID:'" + dt.Rows[i]["ProductID"].toString().substring(0,9) + "'," +
									"					Size:'" + dt.Rows[i]["ProductID"].toString().substring(9,12) + "'," +
									"					Count:" + (parseInt(dt.Rows[i]["ProductNum"]) - 1) +
									"				});\"" +
									"				onmouseover=\"javascript:$(this).addClass('tly_prodsubstract_hover');\"" +
									"				onmouseout=\"javascript:$(this).removeClass('tly_prodsubstract_hover');\"" +
									"				></span>" +
									"				<span class=\"tly_prodnum\">" + dt.Rows[i]["ProductNum"].toString() + "</span>" +
									"				<span class=\"tly_prodadd\" " +
									"				onclick=\"javascript:ShoppingTrolley.AddProduct({" +
									"					ProductID:'" + dt.Rows[i]["ProductID"].toString().substring(0,9) + "'," +
									"					Size:'" + dt.Rows[i]["ProductID"].toString().substring(9,12) + "'," +
									"					Count:" + (parseInt(dt.Rows[i]["ProductNum"]) + 1) +
									"				});\"" +
									"				onmouseover=\"javascript:$(this).addClass('tly_prodadd_hover');\"" +
									"				onmouseout=\"javascript:$(this).removeClass('tly_prodadd_hover');\"" +
									"				></span>" +
									"			</td>\n" +
									"			<td>" + dt.Rows[i]["letao_price_discount"].toString() + "</td>\n" +
									"			<td>" +
									"				<a href=\"javascript:void(0);\" " +
									"				onclick=\"javascript:ShoppingTrolley.RemoveProduct({" +
									"					ProductID:'" + dt.Rows[i]["ProductID"].toString().substring(0,9) + "'," +
									"					Size:'" + dt.Rows[i]["ProductID"].toString().substring(9,12) + "'" +
									"				});\">[删除]</a>" +
									"			</td>\n" +
									"		</tr>\n";
				prod_total_count += parseInt(dt.Rows[i]["ProductNum"]);
				prod_total_price += parseFloat(dt.Rows[i]["letao_price_discount"]) * parseFloat(dt.Rows[i]["ProductNum"]);
			}
			else{
				dt_nostock.Rows.push(dt.Rows[i]);
			}
		}
		
		if(dt_nostock.Rows.length==dt.Rows.Count){
			is_all_product_nostock = true;
			for(i in dt_nostock.Rows){
				return_string += 	"		<tr>\n" +
									"			<td style=\"background-color:#f3f5f7\">" +
									"				<a href=\"/letaozu/prod.aspx?strProductID=" + dt_nostock.Rows[i]["ProductID"].toString().substring(0,9) + "\" target=\"_blank\">" +
									"				<img src=\"http://img.letao.com/img/" + dt_nostock.Rows[i]["Image"].substring(0,2) +"/"+ dt_nostock.Rows[i]["Image"].replace(".","_3.") + "\" alt=\"\" />" +
									"				</a>" +
									"			</td>\n" +
									"			<td class=\"prod_name\" style=\"background-color:#f3f5f7\">" +
									"				<a href=\"/letaozu/prod.aspx?strProductID=" + dt_nostock.Rows[i]["ProductID"].toString().substring(0,9) + "\" target=\"_blank\">" + dt_nostock.Rows[i]["ProductName"].toString() + "</a>" +
									"			</td>\n" +
									"			<td style=\"background-color:#f3f5f7; color:#f00\">售罄</td>\n" +
									"			<td style=\"background-color:#f3f5f7\">" + dt_nostock.Rows[i]["ProductSize"].toString() + "</td>\n" +
									"			<td style=\"background-color:#f3f5f7\">" + dt_nostock.Rows[i]["ProductNum"].toString() +
									"			</td>\n" +
									"			<td style=\"background-color:#f3f5f7\">" + dt_nostock.Rows[i]["letao_price_discount"].toString() + "</td>\n" +
									"			<td style=\"background-color:#f3f5f7\">" +
									"				<a href=\"javascript:void(0);\" " +
									"				onclick=\"javascript:ShoppingTrolley.RemoveProduct({" +
									"					ProductID:'" + dt_nostock.Rows[i]["ProductID"].toString().substring(0,9) + "'," +
									"					Size:'" + dt_nostock.Rows[i]["ProductID"].toString().substring(9,12) + "'" +
									"				});\">[删除]</a>" +
									"			</td>\n" +
									"		</tr>\n";
			}
			return_string +=        "	</tbody>\n" +
									"	<tfoot>\n" +
									"		<tr>\n" +
									"			<td colspan=\"7\" class=\"prodtotal\">\n" +
									"               <input type=\"hidden\" id=\"hid_prod_count\" value=\"" + prod_total_count + "\" />" +
									"				数量总计：<strong>" + prod_total_count + "件</strong>" +
									"				金额总计（免运费）：<strong>" + prod_total_price + "元</strong>" +
									"				<a href=\"javascript:void(0);\" style=\"cursor:default\"><img src=\"/letaozu/images/shopcart/canttoorder.gif\" class=\"btn_toorder\" style=\"cursor:default\" /></a>" +
									"			</td>\n" +
									"		</tr>\n";
		}
		else{
		    return_string += 		"	</tbody>\n" +
									"	<tfoot>\n" +
									"		<tr>\n" +
									"			<td colspan=\"7\" class=\"prodtotal\">\n" +
									"               <input type=\"hidden\" id=\"hid_prod_count\" value=\"" + prod_total_count + "\" />" +
									"				数量总计：<strong>" + prod_total_count + "件</strong>" +
									"				金额总计（免运费）：<strong>" + prod_total_price + "元</strong>" +
									"				<a href=\"/letaozu/pay/create_order.aspx\" target=\"_blank\"><img src=\"/letaozu/images/shopcart/toorder.gif\" class=\"btn_toorder\" /></a>" +
									"			</td>\n" +
									"		</tr>\n";
		}
		
		if(!is_all_product_nostock && dt_nostock.Rows.length>0){
		    return_string += 		"		<tr>\n" +
									"			<td colspan=\"7\" style=\"height:18px; font-weight:700; text-align:left; text-indent:30px\">\n" +
									"               以下的商品已经<i style=\"color:#f00\">售完</i>，暂时无法选购" +
									"			</td>\n" +
									"		</tr>\n";
			for(i in dt_nostock.Rows){
				return_string += 	"		<tr>\n" +
									"			<td style=\"background-color:#f3f5f7\">" +
									"				<a href=\"/letaozu/prod.aspx?strProductID=" + dt_nostock.Rows[i]["ProductID"].toString().substring(0,9) + "\" target=\"_blank\">" +
									"				<img src=\"http://img.letao.com/img/" + dt_nostock.Rows[i]["Image"].substring(0,2) +"/"+ dt_nostock.Rows[i]["Image"].replace(".","_3.") + "\" alt=\"\" />" +
									"				</a>" +
									"			</td>\n" +
									"			<td class=\"prod_name\" style=\"background-color:#f3f5f7\">" +
									"				<a href=\"/letaozu/prod.aspx?strProductID=" + dt_nostock.Rows[i]["ProductID"].toString().substring(0,9) + "\" target=\"_blank\">" + dt_nostock.Rows[i]["ProductName"].toString() + "</a>" +
									"			</td>\n" +
									"			<td style=\"background-color:#f3f5f7; color:#f00\">售罄</td>\n" +
									"			<td style=\"background-color:#f3f5f7\">" + dt_nostock.Rows[i]["ProductSize"].toString() + "</td>\n" +
									"			<td style=\"background-color:#f3f5f7\">" + dt_nostock.Rows[i]["ProductNum"].toString() +
									"			</td>\n" +
									"			<td style=\"background-color:#f3f5f7\">" + dt_nostock.Rows[i]["letao_price_discount"].toString() + "</td>\n" +
									"			<td style=\"background-color:#f3f5f7\">" +
									"				<a href=\"javascript:void(0);\" " +
									"				onclick=\"javascript:ShoppingTrolley.RemoveProduct({" +
									"					ProductID:'" + dt_nostock.Rows[i]["ProductID"].toString().substring(0,9) + "'," +
									"					Size:'" + dt_nostock.Rows[i]["ProductID"].toString().substring(9,12) + "'" +
									"				});\">[删除]</a>" +
									"			</td>\n" +
									"		</tr>\n";
			}
		}
		
		return_string += 			"	</tfoot>\n" +
									"</table>\n";
	}
	return return_string;
}
/************购物车主体结构和接口完成************/


//购物车的前端触发显示
function ShopCartBindObject(object){
    var isHover = 0;
    object.bind("click",
        function(){
            isHover = 1;
            var _this = $(this);
            if($("#shopping_trolley").length==0){
                var scobj = ShoppingTrolley.Init();
            }
            else{
                var scobj = $("#shopping_trolley");
            }
            scobj.css({
                top : _this.offset().top + 24 + "px",
                left : _this.offset().left - 280 + "px"
            }).fadeIn(100);
            if($("#scarrow").length==0)
                $("body").append("<div id=\"scarrow\" style=\"position:absolute; width:13px; height:7px; background:url(/letaozu/images/shopcart/arrow.gif) no-repeat 0 0\"></div>");
            $("#scarrow").css({
                top:scobj.offset().top - 7 + "px",
                left:scobj.offset().left + scobj.outerWidth()/2 - 3 + "px"
            }).fadeIn(100);
            ShoppingTrolley.GetProduct();
            /*
            scobj.hover(
                function(){
                    isHover = 1;
                },
                function(){
                    isHover = 0;
                    setTimeout(function(){
                        if(isHover==0){
                            scobj.fadeOut(100);
                            $("#scarrow").fadeOut(100);
                        }
                    },1000);
                }
            );
            */
        }
    );
    /*
    object.bind("mouseout",
        function(){
            isHover = 0;
            if($("#shopping_trolley").length==0){
                var scobj = ShoppingTrolley.Init();
            }
            else{
                var scobj = $("#shopping_trolley");
            }
            setTimeout(function(){
                if(isHover==0){
                    scobj.fadeOut(100);
                    $("#scarrow").fadeOut(100);
                }
            },1000);
        }
    );
    */
}

function toorder(){
    if(settle_new==1)
        window.location.href='/letaozu/pay/create_order.aspx';
    else
        window.location.href='/pay/net_pay_zu.aspx';
}

//网站头部“我的购物车”的鼠标点击和划过效果，应用新的购物车接口
$(function(){
    ShopCartBindObject($("#trolley"));
});

//下拉菜单综合类
function bindMenu(option){
    var _this = this;
    
    this.DefaultOption = {
        ID : null,
        Object : null,
        Inner : null,
        EventType : "hover"
    };
    this.IsCreated = false;
    this.MenuObject = null;
    
    //初始化
    this.Init = (function(){
        _this.Option = $.extend({},this.DefaultOption,option);
        _this.Do();
    })();
}

bindMenu.prototype.Do = function(){
    var MenuObject;
    var _this = this;
    this.Option.Object.hover(
        function(){
            MenuObject = _this.IsCreated ? _this.MenuObject : _this.Create();
            if(MenuObject.data("OriginalHeight")==undefined){
                var _objheight = MenuObject.height();
                MenuObject.data("OriginalHeight",_objheight);
            }
            _ShowMenu(MenuObject);
        },
        function(){
        }
    );
    
    function _ShowMenu(_obj){
        _obj
        .css({
            height:"26px",
            overflow:"hidden",
            display:"block",
            top:(_this.Option.Object.offset().top + 2) + "px",
            left:(_this.Option.Object.offset().left - 2) + "px"
        })
        .animate({
            height:parseInt(_obj.data("OriginalHeight"))
        },200)
        .hover(
            function(){
            
            },
            function(){
                $(this).stop();
                $(this).hide();
            }
        );
    }
}

bindMenu.prototype.Create = function(){
    var o = this.Option;
    var linkarr = [];
    
    var innerhtml = 
    "<div id=\"" + o.ID + "\" style=\"width:" + o.Object.outerWidth() + "px; line-height:" + (o.Object.height() - 4) + "px; overflow:hidden; display:none; border:1px solid #ddd;" + 
    " position:absolute; background-color:#fff\">" + 
    "   <p style=\"text-align:center;\">" + 
    o.Inner.Title.Text +
    "   </p>" +
    "   <div style=\"padding:0 5px 5px;\">";
    for(_i in o.Inner.Menu){
        innerhtml += "<a href=\"" + o.Inner.Menu[_i][0] + "\" style=\"" + o.Inner.Css + "\" lt_stat_id=\"" + o.Inner.Menu[_i][1] + "\">" + _i + "</a>";
        linkarr.push(o.Inner.Menu[_i][1]);
    }
    "   </div>" +
    "</div>";
    $("body").append(innerhtml);
    
    bindClickStat("topmenu_myletao",linkarr);
    
    this.MenuObject = $("#" + o.ID);
    this.MenuObject.children("div").children("a").hover(
        function(){
            $(this).css({
                color:"#fff",
                "background-color":"#06c",
                "text-decoration":"none"
            })
        },
        function(){
            $(this).css({
                color:"#06c",
                "background-color":"#fff"
            })
        }
    );
    this.IsCreated = true;
    return $("#" + o.ID);
}

$(function(){
    var myLetaoMenu = new bindMenu({
        ID : "cc",
        Object : $("#linkMenu_MyLetao"),
        Inner : {
            Title : {
                Text : "<a href=\"/letaozu/MyLetao/index.aspx\" style=\"font-weight:700;padding:0 12px 0 0;background:url(/letaozu/images/letaozuUI/arrowdown.gif) no-repeat right center;*background-position:right 40%\" lt_stat_id=\"topmenu_myletao\">我的乐淘</a>"
            },
            Menu : {
                "订单管理" : ["/letaozu/MyLetao/OrderList.aspx","topmenu_orderlist"],
                "优惠券管理" : ["/letaozu/MyLetao/MyCoupan.aspx","topmenu_coupan"],
                "修改地址" : ["/letaozu/MyLetao/MyAddress.aspx","topmenu_address"],
                "修改密码" : ["/letaozu/MyLetao/ChangePwd.aspx","topmenu_passwordchange"],
                "留言咨询" : ["/letaozu/MyLetao/MyComment.aspx","topmenu_comment"]
            },
            Css : "display:block; line-height:20px; padding:0 0 0 6px; border-bottom:1px solid #f9f9f9"
        }
    });
});

function bindClickStat(){
    if(arguments.length==0) return;
    var ltStatID, ltStatObject;
    for(i=0; i<arguments.length; i++){
        if(arguments[i].constructor!=Array){
            ltStatID = arguments[i].toString();
            ltStatObject = $("[lt_stat_id='" + ltStatID + "']");
            if(ltStatObject.length>0){
                ltStatObject.bind("click",function(){
                   _lt_click_stat(ltStatID); 
                });
            }
        }
        else{
            if(arguments[i].length>0){
                for(j=0; j<arguments[i].length; j++){
                    ltStatID = arguments[i][j].toString();
                    ltStatObject = $("[lt_stat_id='" + ltStatID + "']");
                    if(ltStatObject.length>0){
                        ltStatObject.bind("click",function(){
                           _lt_click_stat(ltStatID); 
                        });
                    }
                }
            }
        }
    }
}