/* $Id : shopping_flow.js 4865 2007-01-31 14:04:10Z paulgao $ */

var selectedShipping = null;
var selectedPayment  = null;
var selectedBonus    = 0;
var selectedIntegral = 0;


/* *
 * 改变支付方式
 */
function selectPayment(obj)
{
  if (selectedPayment == obj)
  {
    return;
  }
  else
  {
    selectedPayment = obj;
  }

  Ajax.call('flow.php?step=select_payment', 'payment=' + obj.value, orderSelectedResponse, 'GET', 'JSON');
}
/* *
 * 回调函数
 */
function orderSelectedResponse(result)
{
  if (result.error)
  {
    alert(result.error);
    location.href = './';
  }

  try
  {
    var layer = document.getElementById("ECS_ORDERTOTAL");

    layer.innerHTML = (typeof result == "object") ? result.content : result;
  }
  catch (ex) { }
}
/* *
 * 改变红包
 */
function changeBonus(val)
{
  if (selectedBonus == val)
  {
    return;
  }
  else
  {
    selectedBonus = val;
  }

  Ajax.call('flow.php?step=change_bonus', 'bonus=' + val, changeBonusResponse, 'GET', 'JSON');
}
/* *
 * 改变红包的回调函数
 */
function changeBonusResponse(obj)
{
  if (obj.error)
  {
    alert(obj.error);

    try
    {
      document.getElementById('bonus_ect').value = '0';
    }
    catch (ex) { }
  }
  else
  {
    orderSelectedResponse(obj.content);
  }
}
/**
 * 验证红包序列号
 * @param string bonusSn 红包序列号
 */
function validateBonus(bonus_cardnum,bonus_sn)
{
  Ajax.call('flow.php?step=validate_bonus', 'bonus_cardnum=' + bonus_cardnum + '&bonus_sn=' + bonus_sn, validateBonusResponse, 'GET', 'JSON');
}
function validateBonusResponse(obj)
{
  if (obj.error)
  {
    alert(obj.error);
  }
  else
  {
    document.getElementById('bonus2').value = obj.bonus_id;
	orderSelectedResponse(obj.content);
  }
}
/* *
 * 改变支付优惠（代金卡）
 */
function changePayCards(i)
{
  var card  = document.getElementById('cardf');
  var obj1  = document.getElementById('pay1');
  var obj2  = document.getElementById('pay2');
  var b11   = document.getElementById('bonus_ect');
  var b21   = document.getElementById('bonus_sn');
  var b22   = document.getElementById('bonus_cardnum');
  var b23   = document.getElementById('validate_bonus');
  var b24   = document.getElementById('bonus2');
  var needcard = obj1.checked ? 1 : 0; 	
  if(i==1)
  {
	 if(obj1.checked)
	 {
         obj2.checked = false;
		 b11.disabled = false;
		 b21.disabled = true;
		 b22.disabled = true;
		 b23.disabled = true;
		 b24.disabled = true;
	 }
	 else
	 {
		b11.disabled = true;
	 }
  }
  else
  {
	 if(obj2.checked)
	 {
         obj1.checked = false;
		 b11.disabled = true;
		 b21.disabled = false;
		 b22.disabled = false;
		 b23.disabled = false;
		 b24.disabled = false;
		 card.style.display = '';
	 }
	 else
	 {
		 b21.disabled = true;
		 b22.disabled = true;
		 b23.disabled = true; 
		 b24.disabled = true;
		 card.style.display = 'none';
	 }
  }
}
/* *
 * 改变发票的方式
 */
function changeNeedInv()
{
  var obj        = document.getElementById('needinv');
  var objPayee   = document.getElementById('ECS_INVPAYEE');
  var objContent = document.getElementById('ECS_INVCONTENT');
  var needInv    = obj.checked ? 1 : 0;
  var invPayee   = obj.checked ? objPayee.value : '';
  var invContent = obj.checked ? objContent.value : '';
  objPayee.disabled = objContent.disabled = ! obj.checked;
}
/* *
 * 选择生日牌
 */
function changeCards()
{
  var obj        = document.getElementById('needCard');
  var cot        = document.getElementById('card_content');
  cot.style.display = obj.checked ? '' : 'none';
}
/* *
 * 改变生日牌
 */
function change_card(obj)
{
  var txt        = document.getElementById('card_message');
  txt.disabled = obj == '3' ? false : true;
}
/* *
 * 检查提交的订单表单
 */
function checkOrderForm(result)
{
	  var date = document.getElementById('bdate').value;
	  var addr = document.getElementById('address_show_box');
	  var objPayee   = document.getElementById('ECS_INVPAYEE');
	  var obj        = document.getElementById('needinv');
	  var msg = '';
	  if (Utils.isEmpty(date))
	  {
		msg += '请选择配送日期！\n';
	  }
	  if (result)
	  {
		msg += result + '\n';
	  }
	  if (addr.style.display =='none')
	  {
		msg += '请点击确认收货信息按钮确认信息！\n';
	  }
	  if (date == '2012-01-22' || date =='2012-02-14')
	  {
		alert('节日高峰，送货时间会有上下一小时误差，请您谅解！');
	  }
	  if(obj.checked && Utils.isEmpty(objPayee.value))
	  {
		msg += '请填写发票抬头，内容不能写“个人”或“公司”\n';
	  }
	  
	  if(msg)
	  {
	     alert(msg);
	     return false;
	  }
	  else
	  {
	     document.getElementById('submits').style.display = 'none';
	     document.getElementById('show_msg').style.display = ''; 
	     theForm.submit();
	  }
}

function formsubmit()
{
    var date = document.getElementById('bdate').value;
    var hour = document.getElementById('bhour').value;
    var mite = document.getElementById('bmite').value;
    Ajax.call('flow.php?step=check_order_info', 'bdate=' + date + '&bhour=' + hour + '&bmite=' + mite, checkOrderForm, 'GET', 'JSON');
}

/* *
 * 检查收货地址信息表单中填写的内容
 */
function checkConsignee(frm)
{
  var msg = new Array();
  var err = false;

  if (frm.elements['country'] && frm.elements['country'].value == 0)
  {
    msg.push(country_not_null);
    err = true;
  }

  if (frm.elements['province'] && frm.elements['province'].value == 0 && frm.elements['province'].length > 1)
  {
    err = true;
    msg.push(province_not_null);
  }

  if (frm.elements['city'] && frm.elements['city'].value == 0 && frm.elements['city'].length > 1)
  {
    err = true;
    msg.push(city_not_null);
  }

  if (frm.elements['district'] && frm.elements['district'].length > 1)
  {
    if (frm.elements['district'].value == 0)
    {
      err = true;
      msg.push(district_not_null);
    }
  }

  if (Utils.isEmpty(frm.elements['consignee'].value))
  {
    err = true;
    msg.push(consignee_not_null);
  }

  if (frm.elements['address'] && Utils.isEmpty(frm.elements['address'].value))
  {
    err = true;
    msg.push(address_not_null);
  }

  if (frm.elements['zipcode'] && frm.elements['zipcode'].value.length > 0 && (!Utils.isNumber(frm.elements['zipcode'].value)))
  {
    err = true;
    msg.push(zip_not_num);
  }

  if (Utils.isEmpty(frm.elements['tel'].value) && Utils.isEmpty(frm.elements['mobile'].value))
  {
    err = true;
    msg.push('手机号和电话不能都为空！');
  }

  if ((!Utils.isEmpty(frm.elements['tel'].value)) && (!Utils.isTel(frm.elements['tel'].value)))
  {
      err = true;
      msg.push(tele_invaild);
  }
  if ((!Utils.isEmpty(frm.elements['mobile'].value))&&( (!Utils.isTel(frm.elements['mobile'].value))||frm.elements['mobile'].value.length != 11) )
  {
      err = true;
      msg.push('不是有效的手机号！');
  }
  
  if (err)
  {
    message = msg.join("\n");
    alert(message);
  }
  
  return ! err;
}
/* *
 * 保存配送地址
 */
function SaveConsignee()
{
  var con = document.getElementById('consignee');
  var add = document.getElementById('address');
  var tel = document.getElementById('tel');
  var mob = document.getElementById('mobile');
  var cny = document.getElementById('selCountries');
  var prv = document.getElementById('selProvinces');
  var cty = document.getElementById('selCities');
  var dts = document.getElementById('selDistricts');
  var aid = document.getElementById('addreid');
  var zip = document.getElementById('zipcode');
  var adn = cny.options[cny.selectedIndex].text+prv.options[prv.selectedIndex].text+cty.options[cty.selectedIndex].text;  
  
  var arg = '&con='+encodeURIComponent(con.value) + '&add='+encodeURIComponent(add.value) +'&tel='+tel.value +'&mob='+mob.value +'&cny='+cny.value;
  arg += '&cty='+cty.value +'&dts='+dts.value +'&aid='+aid.value +'&zip='+zip.value +'&adn='+encodeURIComponent(adn)+'&prv='+prv.value;
  
  var msg = new Array();
  var err = false;

  if (cny.value == 0)
  {
    msg.push(country_not_null);
    err = true;
  }

  if (prv.value == 0 && prv.length > 1)
  {
    err = true;
    msg.push(province_not_null);
  }

  if (cty.value == 0 && cty.length > 1)
  {
    err = true;
    msg.push(city_not_null);
  }
  if (dts && dts.length > 1)
  {
    if (dts.value == 0)
    {
      err = true;
      msg.push(district_not_null);
    }
  }


  if (Utils.isEmpty(con.value))
  {
    err = true;
    msg.push(consignee_not_null);
  }

  if (Utils.isEmpty(add.value))
  {
    err = true;
    msg.push(address_not_null);
  }

  if (Utils.isEmpty(tel.value) && Utils.isEmpty(mob.value))
  {
    err = true;
    msg.push('手机号和电话不能都为空！');
  }

  if ((!Utils.isEmpty(tel.value)) && (!Utils.isTel(tel.value)))
  {
      err = true;
      msg.push(tele_invaild);
  }
  if ((!Utils.isEmpty(mob.value))&&( (!Utils.isTel(mob.value))||mob.value.length != 11) )
  {
      err = true;
      msg.push('不是有效的手机号！');
  }
  
  if (err)
  {
    message = msg.join("\n");
    alert(message);
  }
  else
  { 
     Ajax.call('flow.php', 'step=save_consignee' + arg, SaveConsigneeResponse, 'GET', 'JSON');
  }
  changeShipping(1);
}
/* *
 * 选择改变配送地址
 */
function changeConsignee(obj)
{
  Ajax.call('flow.php?step=change_consignee', '&con=' + encodeURIComponent(obj.value), changeConsigneeResponse, 'GET');
}
/* *
 * 改变配送地址返回
 */
function changeConsigneeResponse(result)
{
  if (result.error)
  {
    alert(result.error);
    location.href = './';
  }

  try
  {
    var layer = document.getElementById("ECS_Consignee");

    layer.innerHTML = (typeof result == "object") ? result.content : result;
	$('#address_edit_a').hide();
	$('#address_show_box').hide();
  }
  catch (ex) { }
}
/* *
 * 改变配送地址返回
 */
function SaveConsigneeResponse(result)
{
  if (result.error)
  {
    alert(result.error);
    location.href = './';
  }
  //alert(result);return false;
  try
  {
    var layer  = document.getElementById("ECS_Consignee");
    var layer2 = document.getElementById("ECS_ORDERTOTAL");
    document.getElementById("adrs").value = document.getElementById("address").value;
    layer.innerHTML = result.content;
    layer2.innerHTML = (typeof result == "object") ? result.contents : result;
	$('#address_form').hide();
	$('#address_save_button').hide();
	$('#address_often').hide();
	$('#address_exit_a').hide();
	$('#address_edit_a').show();
  }
  catch (ex) { }
}
/*****商品数量增减*******/
function plus(rec)
{
	var tt = 'goods_number_'+rec;
    var oP = document.getElementById(tt);
	oP.value++;
	changenumber(rec);
}
function minus(rec)
{
  var tt = 'goods_number_'+rec;
  var oP = document.getElementById(tt);
  oP.value--;
  changenumber(rec);	 
}
function changenumber(rec)
{
 var number = 0;
 var rec_id = rec;
 var tt = 'goods_number_'+rec;
 number = document.getElementById(tt).value;
 Ajax.call('flow.php', 'step=update_cart&number=' + number + '&rec_id=' + rec_id, changenumberResponse,  'GET', 'JSON');
}
function changenumberResponse(res)
{
   if (res.err_msg.length > 0)
   {
     alert(res.err_msg);
   }
   else
   {
     document.getElementById(res.rec).innerHTML = res.result;
     document.getElementById('total').innerHTML = res.total;
   }
}
/* *
 * 删除配送地址
 */
function DeleteAddr(aid)
{
   if(confirm('确定要删除这个地址吗?'))
   {
      Ajax.call('flow.php?step=drop_consignee', '&id=' + aid, changeConsigneeResponse, 'GET');
   }
}
/* *
 * 关闭不保存配送地址
 */
function address_exit()
{
	var default_consignee = $('#default_consignee').val();
	if(default_consignee == '' || default_consignee == undefined)
	{
		alert('请选择或者手动输入收货地址并进行保存');
		return '';
	}
 
	var default_obj = $('[name="radio_address"][value="'+default_consignee+'"]').trigger('click');
 
	$('#address_often').toggle();
	toggle_div('address');
}
 /* *
 * 点击修改配送地址
 */
function address_edit()
{
	$('#address_often').toggle();
	toggle_div('address');
}
function toggle_div(mod)
{
	//隐藏和显示div
	$('#'+mod+'_form').toggle();
	$('#'+mod+'_show_box').toggle();
	$('#'+mod+'_save_button').toggle();
	$('#'+mod+'_edit_a').toggle();
	$('#'+mod+'_exit_a').toggle();
}
/* *
 * 选择其他配送地址
 */
function trim_form()
{
    document.getElementById('tel').value ='';
    document.getElementById('mobile').value ='';
	document.getElementById('consignee').value ='';
	document.getElementById('address').value ='';
	document.getElementById('addreid').value =0;
	document.getElementById('selCountries').selectedIndex = 0;
	document.getElementById('selProvinces').selectedIndex = 0;
	document.getElementById('selCities').selectedIndex = 0;
	document.getElementById('selDistricts').selectedIndex = 0;
}
/*区域显示隐藏切换*/
function show_area(obj,area,type)
{
   var use = obj.checked ? 1 :0;
   if(use)
   {
      document.getElementById(area).style.display = '';  
   }
   else
   {
	  document.getElementById(area).style.display = 'none';   
   }
}
/*切换支付方式*/
function changePay(obj)
{
    var payback = document.getElementById('payback');
    payback.style.display = obj =='4' ? '' : 'none';
}
function showimg()
{
  document.getElementById('bimg').style.display = '';
}
function hideimg()
{
  document.getElementById('bimg').style.display = 'none';
}
/* *
 * 改变配送方式
 */
function changeShipping(obj)
{
	var cty = document.getElementById('selCountries').value;
	var aa = document.getElementsByName('shipping');
	var bname = document.getElementById('bname');
	if(obj == 1)
	{
		aa[0].checked = true;
		bname.innerHTML = '送货时间';
		document.getElementById('agency1').style.display = 'none';
		document.getElementById('agency2').style.display = 'none';
		document.getElementById('agency3').style.display = 'none';
		document.getElementById('sms_use').style.display = 'none';
	}
	else
	{
		bname.innerHTML = '自提时间';
		//document.getElementById('sms_use').style.display = '';
		if(cty == 441)
		{
		   document.getElementById('agency1').style.display = '';
		}
		else if(cty == 442) 
		{
		   document.getElementById('agency2').style.display = '';
		}
		else
		{
		   document.getElementById('agency3').style.display = '';
		}
	}
   Ajax.call('flow.php?step=change_shipping', 'shipping=' + obj, orderSelectedResponse, 'GET', 'JSON');
}
