/* $Id : common.js 4865 2007-01-31 14:04:10Z paulgao $ */
//@模板堂-bylu
var bool =0;//此为变量声明,加在第一行,用于判断是加入购物车还是直接购买的一个变量
/* *
 * 添加商品到购物车 并且停留当前页 显示出DIV
 */
function addToCartShowDiv(goodsId, script_name,goods_recommend,parentId)
{
 
  if(!script_name)
  {
	script_name = 0;	  
  }
  var goods        = new Object();
  var spec_arr     = new Array();
  var fittings_arr = new Array();
  var number       = 1;
  var formBuy      = document.forms['ECS_FORMBUY'];
  var quick		   = 0;
 
  // 检查是否有商品规格 
  if (formBuy)
  {
    spec_arr = getSelectedAttributes(formBuy);
    if (formBuy.elements['number'])
    {
      number = formBuy.elements['number'].value;
    }
	quick = 1;
  }
  
  //ecmoban模板堂 --zhuo 仓库ID start
  if(document.getElementById('region_id')){
	  var warehouse_id = document.getElementById('region_id').value;
	  goods.warehouse_id   = warehouse_id; 
  }
  
  //地区ID
  if(document.getElementById('area_id')){
	  var area_id = document.getElementById('area_id').value;
	  goods.area_id = area_id; 
  }
  //ecmoban模板堂 --zhuo 仓库ID end
  goods.quick    = quick;
  goods.spec     = spec_arr;
  goods.goods_id = goodsId;
  goods.number   = number;
 
  goods.script_name   = (typeof(script_name) == "undefined") ? 0 : parseInt(script_name);
  goods.goods_recommend   = (typeof(goods_recommend) == "undefined") ? '' : goods_recommend;
  goods.parent   = (typeof(parentId) == "undefined") ? 0 : parseInt(parentId);
  
  //商品属性组是否有选中
	var attr_list = 0;
	var is_selected = 0;
	$(".goods_info_attr").each(function(index, element) {
		attr_list = index + 1;
		
		if($(this).find("li.item").hasClass("selected")){
			is_selected = is_selected + 1
		} 
	});
	
	//@模板堂-bylu 获取分期数  start
	if(document.getElementById("chooseStages")){
		if($("#chooseStages").find("li").hasClass("selected")){
			goods.stages_qishu = $("#chooseStages").find(":input[name='stages_qishu']").val();
		}
	}
	//@模板堂-bylu  end
  if($(".goods_info_attr").length > 0){
	  if(attr_list == is_selected){
		  Ajax.call('flow.php?step=add_to_cart_showDiv', 'goods=' + $.toJSON(goods), addToCartShowDivResponse, 'POST', 'JSON');
	  }else{
		  get_goods_prompt_message(json_languages.Product_spec_prompt);
	  }
  }else{
	  Ajax.call('flow.php?step=add_to_cart_showDiv', 'goods=' + $.toJSON(goods), addToCartShowDivResponse, 'POST', 'JSON');
  }
}
/* *
 * 处理添加商品到购物车并且停留当前页显示出DIV反馈信息
 */
function addToCartShowDivResponse(result)
{
  if (result.error > 0)
  {
    // 如果需要缺货登记,跳转
    if (result.error == 2)
    {
		pbDialog(result.message," ",0,450,80,50,true,function(){
			location.href = 'user.php?act=add_booking&id=' + result.goods_id + '&spec=' + result.product_spec;
		});
    }
    // 没选规格,弹出属性选择框
    else if (result.error == 6)
    {	
      openSpeDivShowDiv(result.message, result.goods_id, result.parent, result.script_name,result.goods_recommend);
    }
    else
    {
	  pbDialog(result.message,"",0,500,80,50);
    }
  }
  else
  {
    var cartInfo = document.getElementById('ECS_CARTINFO');
    var cart_url = 'flow.php?step=cart';
    if (cartInfo)
    {
      cartInfo.innerHTML = result.content;
    }
	
	if(result.goods_recommend && result.goods_recommend !='')
	{
		goods_recommend = "_"+result.goods_recommend;
	}
	else
	{
		goods_recommend = "";
	}
	
	if(result.script_name == 1)
	{
		$("#addtocartdialog_retui_"+result.goods_id+goods_recommend).html(result.show_info);
		
		if(result.show_info != ''){
			$("#addtocartdialog_retui_"+result.goods_id+goods_recommend).show();
		}
	}
	else
	{
		$("#addtocartdialog .center_pop_txt").html(result.show_info);
		if(result.show_info != ''){
			$("#addtocartdialog").show();
			var $this = $("#addtocartdialog .loading");
			var top = ($(window).height()-$this.outerHeight())/2;
			var left = ($(window).width() -$this.outerWidth())/2;
			$this.css({"left":left,"top":top});
		}
	}
	
	$(".ibar_plugin_content").html(result.cart_content);
	$(".cart_num").html(result.cart_num);
  }
}
//生成属性选择层
function openSpeDivShowDiv(message, goods_id, parent,script_name ,goods_recommend) 
{
  var _id = "speDiv";
  var m = "mask";
  if (docEle(_id)) document.removeChild(docEle(_id));
  if (docEle(m)) document.removeChild(docEle(m));
  //计算上卷元素值
  var scrollPos; 
  if (typeof window.pageYOffset != 'undefined') 
  { 
    scrollPos = window.pageYOffset; 
  } 
  else if (typeof document.compatMode != 'undefined' && document.compatMode != 'BackCompat') 
  { 
    scrollPos = document.documentElement.scrollTop; 
  } 
  else if (typeof document.body != 'undefined') 
  { 
    scrollPos = document.body.scrollTop; 
  }
  var i = 0;
  var sel_obj = document.getElementsByTagName('select');
  while (sel_obj[i])
  {
    sel_obj[i].style.visibility = "hidden";
    i++;
  }
  // 新激活图层
  var newDiv = document.createElement("div");
  newDiv.id = _id;
  newDiv.style.position = "absolute";
  newDiv.style.zIndex = "10000";
  newDiv.style.width = "300px";
  newDiv.style.height = "260px";
  newDiv.style.top = (parseInt(scrollPos + 200)) + "px";
  newDiv.style.left = (parseInt(document.body.offsetWidth) - 200) / 2 + "px"; // 屏幕居中
  newDiv.style.overflow = "auto"; 
  newDiv.style.background = "#FFF";
  newDiv.style.border = "3px solid #59B0FF";
  newDiv.style.padding = "5px";
  //生成层内内容
  newDiv.innerHTML = '
' + json_languages.select_spe + "
";
  for (var spec = 0; spec < message.length; spec++)
  {
      newDiv.innerHTML += '
' +  message[spec]['name'] + '
';
      if (message[spec]['attr_type'] == 1)
      {
        for (var val_arr = 0; val_arr < message[spec]['values'].length; val_arr++)
        {
          if (val_arr == 0)
          {
            newDiv.innerHTML += "" + message[spec]['values'][val_arr]['label'] + ' [' + message[spec]['values'][val_arr]['format_price'] + ']
';      
          }
          else
          {
            newDiv.innerHTML += "" + message[spec]['values'][val_arr]['label'] + ' [' + message[spec]['values'][val_arr]['format_price'] + ']
';      
          }
        } 
        newDiv.innerHTML += "";
      }
      else
      {
        for (var val_arr = 0; val_arr < message[spec]['values'].length; val_arr++)
        {
          newDiv.innerHTML += "" + message[spec]['values'][val_arr]['label'] + ' [' + message[spec]['values'][val_arr]['format_price'] + ']
';     
        }
        newDiv.innerHTML += "";
      }
  }
  newDiv.innerHTML += "
[" + btn_buy + "]  [" + cancel + "]";
  document.body.appendChild(newDiv);
  // mask图层
  var newMask = document.createElement("div");
  newMask.id = m;
  newMask.style.position = "absolute";
  newMask.style.zIndex = "9999";
  newMask.style.width = document.body.scrollWidth + "px";
  newMask.style.height = document.body.scrollHeight + "px";
  newMask.style.top = "0px";
  newMask.style.left = "0px";
  newMask.style.background = "#FFF";
  newMask.style.filter = "alpha(opacity=30)";
  newMask.style.opacity = "0.40";
  document.body.appendChild(newMask);
} 
//获取选择属性后,再次提交到购物车
function submit_div_show_div(goods_id, parentId ,script_name,goods_recommend) 
{
  var goods        = new Object();
  var spec_arr     = new Array();
  var fittings_arr = new Array();
  var number       = 1;
  var input_arr      = document.getElementsByTagName('input'); 
  var quick		   = 1;
  var spec_arr = new Array();
  var j = 0;
  for (i = 0; i < input_arr.length; i ++ )
  {
    var prefix = input_arr[i].name.substr(0, 5);
    if (prefix == 'spec_' && (
      ((input_arr[i].type == 'radio' || input_arr[i].type == 'checkbox') && input_arr[i].checked)))
    {
      spec_arr[j] = input_arr[i].value;
      j++ ;
    }
  }
  goods.quick    = quick;
  goods.spec     = spec_arr;
  goods.goods_id = goods_id;
  goods.number   = number;
  goods.script_name   = (typeof(script_name) == "undefined") ? 0 : parseInt(script_name);
  goods.goods_recommend   = (typeof(goods_recommend) == "undefined") ? '' : goods_recommend;
  goods.parent   = (typeof(parentId) == "undefined") ? 0 : parseInt(parentId);
  Ajax.call('flow.php?step=add_to_cart_showDiv', 'goods=' + $.toJSON(goods), addToCartShowDivResponse, 'POST', 'JSON');
  document.body.removeChild(docEle('speDiv'));
  document.body.removeChild(docEle('mask'));
  var i = 0;
  var sel_obj = document.getElementsByTagName('select');
  while (sel_obj[i])
  {
    sel_obj[i].style.visibility = "";
    i++;
  }
}
/*关闭悬浮窗*/
function loadingClose(){
	$('.ecsc-cart-popup').hide();
}
/* *
 * 添加商品到购物车 
 */
var client_x=0,client_y=0,img_url=0,divId="",store_id=0,end_time='',store_mobile='';
function addToCart(goodsId, parentId,event,obj,divId,store_id,end_time,store_mobile)
{
	if(typeof(obj) != "undefined" && event)
	{
		img_url=obj.rev;
		client_x=event.clientX;
		client_y=event.clientY;
	}
	
	var goods        = new Object();
	var spec_arr     = new Array();
	var fittings_arr = new Array();
	var number       = 1;
	var formBuy      = document.forms['ECS_FORMBUY'];
	var quick		   = 0;
	var state 	   = $(obj).parents(".goodslistForm").data('state');
	var confirm_type = $(obj).data('confirm_type');
	
	// 检查是否有商品规格 
	if (formBuy)
	{
		spec_arr = getSelectedAttributes(formBuy);
	
		if (formBuy.elements['number'])
		{
			number = formBuy.elements['number'].value;
		}
	
		quick = 1;
	}
	
	if(state == 1){
	  	number = document.getElementById("product_num_"+goodsId).value;
	}
  
	//ecmoban模板堂 --zhuo 仓库ID start
	if(document.getElementById('region_id')){
	  	var warehouse_id = document.getElementById('region_id').value;
	  	goods.warehouse_id   = warehouse_id; 
	}
	
	//地区ID
	if(document.getElementById('area_id')){
	  	var area_id = document.getElementById('area_id').value;
	  	goods.area_id = area_id; 
	}
	//ecmoban模板堂 --zhuo 仓库ID end
  
	if(document.getElementById('confirm_type')){
	  	var confirm_type = document.getElementById('confirm_type').value;
	  	goods.confirm_type   = confirm_type; 
	}
	
	if(confirm_type){
	  	goods.confirm_type   = confirm_type;
	}
	
	if(store_id > 0){
                if(end_time){
                    goods.end_time = end_time;
                }
                if(store_mobile){
                    goods.store_mobile = store_mobile;
                }
	  	goods.store_id = store_id;
	}
	
	goods.quick    = quick;
	goods.spec     = spec_arr;
	goods.goods_id = goodsId;
	goods.number   = number;
	if(divId){goods.divId    = divId;}
	goods.parent   = (typeof(parentId) == "undefined") ? 0 : parseInt(parentId);
  
  	//商品属性组是否有选中
	var attr_list = 0;
	var is_selected = 0;
	$(".goods_info_attr").each(function(index, element) {
		attr_list = index + 1;
		
		if($(this).find("li.item").hasClass("selected")){
			is_selected = is_selected + 1
		} 
	});
	if($(".goods_info_attr").length > 0){
		if(attr_list == is_selected){
			Ajax.call('flow.php?step=add_to_cart', 'goods=' + $.toJSON(goods), addToCartResponse, 'POST', 'JSON');
		}else{
			get_goods_prompt_message(json_languages.Product_spec_prompt);
		}
	}else{
		Ajax.call('flow.php?step=add_to_cart', 'goods=' + $.toJSON(goods), addToCartResponse, 'POST', 'JSON');
	}
}
function addToCartStages(goodsId)
{
	var goods        = new Object();
	var spec_arr     = new Array();
	var fittings_arr = new Array();
	var number       = 1;
	var formBuy      = document.forms['ECS_FORMBUY'];
	var quick		   = 0;
	// 检查是否有商品规格 
	if (formBuy)
	{
		spec_arr = getSelectedAttributes(formBuy);
	
		if (formBuy.elements['number'])
		{
			number = formBuy.elements['number'].value;
		}
	
		quick = 1;
	}
	
	//ecmoban模板堂 --zhuo 仓库ID start
	if(document.getElementById('region_id')){
	  	var warehouse_id = document.getElementById('region_id').value;
	  	goods.warehouse_id   = warehouse_id; 
	}
	
	//地区ID
	if(document.getElementById('area_id')){
	  	var area_id = document.getElementById('area_id').value;
	  	goods.area_id = area_id; 
	}
	//ecmoban模板堂 --zhuo 仓库ID end
  
	goods.quick    = quick;
	goods.spec     = spec_arr;
	goods.goods_id = goodsId;
	goods.number   = number;
	goods.parent   = 0;
  
  	//商品属性组是否有选中
	var attr_list = 0;
	var is_selected = 0;
	$(".goods_info_attr").each(function(index, element) {
		attr_list = index + 1;
		
		if($(this).find("li.item").hasClass("selected")){
			is_selected = is_selected + 1
		} 
	});
	//@模板堂-bylu 获取分期数  start
	if($("input[name='stages_qishu']").val()){
		goods.stages_qishu = $("input[name='stages_qishu']").val();		
	}
	//@模板堂-bylu  end
	
	if($(".goods_info_attr").length > 0){
		if(attr_list == is_selected){
			Ajax.call('flow.php?step=add_to_cart', 'goods=' + $.toJSON(goods), addToCartResponse, 'POST', 'JSON');
		}else{
			get_goods_prompt_message(json_languages.Product_spec_prompt);
		}
	}else{
		Ajax.call('flow.php?step=add_to_cart', 'goods=' + $.toJSON(goods), addToCartResponse, 'POST', 'JSON');
	}
}
/* *
 * 处理添加商品到购物车的反馈信息
 */
function addToCartResponse(result)
{
  var buy_num = parseInt(result.number);	
  var cart_num = parseInt($(".cart_num").eq(0).html());
  if(buy_num > 0){
	  cart_num =cart_num + buy_num;
  }else{
	  cart_num=cart_num=='0'?1:parseInt(cart_num)+1;
  }
  if (result.error > 0)
  {
    // 如果需要缺货登记,跳转
    if (result.error == 2)
    {
		pbDialog(result.message," ",0,450,80,50,true,function(){
			location.href = 'user.php?act=add_booking&id=' + result.goods_id + '&spec=' + result.product_spec;
		});
    }
    // 没选规格,弹出属性选择框
    else if (result.error == 6)
    {	
      openSpeDiv(result.message, result.goods_id, result.parent, result.warehouse_id, result.area_id,result.divId,result.confirm_type,result.number);
    }
    else
    {
		pbDialog(result.message,"",0,500,80,50);
    }
  }
  else
  {
    var cart_url = 'flow.php?step=cart';
    if (result.one_step_buy == '1')
    {
      location.href = cart_url;
    }
    else
    {
        //@模板堂-bylu 白条分期购买 start
        if(bool == 1) {
            location.href = 'flow.php?step=checkout&act=stages&cart_value=' + result.cart_value;//跳转到订单确认页 bylu;
            //@模板堂-bylu  end
        }else if(bool == 2){
            location.href = 'flow.php?step=checkout&store_id='+result.store_id+'&cart_value=' + result.cart_value;//跳转到订单确认页  by kong 20160721  门店一步购物
        }else{
            switch(result.confirm_type)
            {
                case '1' :
                    if (confirm(result.message)) location.href = cart_url;
                    break;
                case '2' :
                    if (!confirm(result.message)) location.href = cart_url;
                    break;
                case '3' :
                    location.href = cart_url;
                    break;
                default :
                    flyCart(client_x,client_y,img_url,cart_num,result,result.divId);
                    break;
            }
        }
    }
  }
}
/**
 * 获得选定的商品属性
 */
function getSelectedAttributes(formBuy)
{
  var spec_arr = new Array();
  var j = 0;
  for (i = 0; i < formBuy.elements.length; i ++ )
  {
    var prefix = formBuy.elements[i].name.substr(0, 5);
	
    if (prefix == 'spec_' && (
      ((formBuy.elements[i].type == 'radio' || formBuy.elements[i].type == 'checkbox') && formBuy.elements[i].checked) ||
      formBuy.elements[i].tagName == 'SELECT'))
    {
      spec_arr[j] = formBuy.elements[i].value;
      j++ ;
    }
  }
  return spec_arr;
}
/**
 * 获得选定的商品属性组
 */
function getSelectedAttributesGroup(formBuy)
{
  var spec_arr = new Array();
  var j = 0;
  
  $("form[name='ECS_FORMBUY'] :input[name='spec_list']").each(function(index, element) {
	  spec_arr[j] = $(this).val();
	  j++ ;
  });
  return spec_arr;
}
/* *
 * 添加商品到收藏夹
 */
function collect(goodsId)
{
	var where = '';
	var cat_id = $("input[name='category']").val();
	var merchant_id = $("input[name='merchant_id']").val();
	var script_name = $("input[name='script_name']").val();
	var cur_url = $("input[name='cur_url']").val();
	var keywords = $("input[name='keywords']").val();
	
	if(cat_id > 0 && cat_id != 'undefined'){
		where = "&cat_id=" + cat_id + "&script_name=" + script_name;
	}else if(script_name != '' && (script_name == 'merchants_shop' || script_name == 'search') && cur_url != ''){
		where = "&script_name=" + script_name + "&cur_url=" + cur_url;
	}else if(script_name != '' && script_name == 'merchants_store_shop'){
		where = "&script_name=" + script_name + "&merchant_id=" + merchant_id;
	}
	
  	Ajax.call('user.php?act=collect', 'id=' + goodsId + where, collectResponse, 'GET', 'JSON');
}
/* *
 * 处理收藏商品的反馈信息
 */
function collectResponse(result)
{
	if(result.error != 2){
		
		var divId = 'flow_add_cart';
		var content = '' + 
							'
' +
								'
' + 
								'
' +
									'
' + result.message + '
' +
								'' +
							'
' +
						'
' +
        '
' +
        '
' +
        '

' +
        '
'+json_languages.Focus_prompt_two+'
';
			foot = true;
		}
		
		if(res.error > 0 && res.error < 3){
                    
			var content = '' + 
								'
' +
									'
' + 
									'
' +
										'
' + message + '
' +
										ftx_div + 
									'' +
								'
' +
							'
' + 
							'
' +
								'
' + 
								'
' +
									'
' + message + '
' +
								'' +
							'
' +
						'
' +
						'
' +
							'
' +
							'
' +
								'
' + text + '
' + 
							'' +
						'
' +
					'