function calcOrder(){
	var prices=new Array(0,20,54,90,160,15,41.50,67.50,120,10,27,45,80)
	var i=1
	var f=false
	var p1=0
	var p2=0
	var p3=0
	var p4=0
	var p5=0
	var fld=null
	var lyr=null
	while (i<=12 && !f) {
		fld=getFld('product'+i)
		if (fld && fld.checked){
			f=true
			p1=prices[i]
		} else {
  		i++
  	}
	}
  lyr=getLayer('b1')
  lyr.innerHTML=fmtNum(p1)+' EUR'
  fld=getFld('createbanner')
  if (fld && fld.checked){
  	p2=i<=4?20:10
  }
  lyr=getLayer('b2')
  lyr.innerHTML=fmtNum(p2)+' EUR'
  p3=p1+p2
  lyr=getLayer('b3')
  if (lyr){
  	lyr.innerHTML='<b>'+fmtNum(p3)+' EUR</b>'
  	p4=Math.round(p3*18) / 100
  	lyr=getLayer('b4')
  	lyr.innerHTML=fmtNum(p4)+' EUR'
  	p5=Math.round((p3+p4)*100) / 100
  } else {
  	p5=p3
  }
  lyr=getLayer('b5')
  lyr.innerHTML='<b>'+fmtNum(p5)+' EUR</b>'
}

function valPubBanner() {
  var res=true
  disableForm(true)
  with (document.forms[0]) {
  	var bansel=-1
  	var maxi=product.length
  	var i=0
  	while (i<maxi && bansel==-1) {
  		if (product[i].checked) bansel=i
  		i++
  	}
  	if (bansel==-1) {
  		alert("Por favor, seleccione un banner para contratar")
  		res=false
  	}
    if (res && !accept.checked) {
      var str=htmlToHex("&iquest;Ha le&iacute;do las condiciones de la contraci&oacute;n y las acepta?")
      alert(str)
      accept.focus()
      res=false
    }
    if (res && fulladdress.value==''){
    	alert(htmlToHex('Por favor, introduzca la direcci&oacute;n de facturaci&oacute;n'))
    	fulladdress.focus()
    	res=false
    }
    if (res) res=valEmail(email)
   	if (res) {
   	 	var fld1=getFld('pagoC')
   	 	var fld2=getFld('pagoP')
   	 	var fld3=getFld('pagoT')
   	 	var fld4=getFld('pagoD')
	    if (!(fld1 && fld1.checked) && !(fld2 && fld2.checked) && !(fld3 && fld3.checked) && !(fld4 && fld4.checked)) {
     		alert(htmlToHex("Por favor, seleccione el m&eacute;todo de pago"))
     		res=false
      } else if (fld4 && fld4.checked) {
 	     	res=valCCC('bank','branch','dc','account')
      }
  	}
  }
  if (!res) disableForm(false)
  return res
}

function valAccNumFld(f,s,l,m,n){
	var fld=(typeof(f)=="string")?getFld(f):f
	var val=fld.value
  if (val==""){
    alert("Por favor, introduzca el n\xFAmero de cuenta")
    fld.focus()
    return false
  } else {
  	return valNumberFld(f,l,m,n)
  }
  return true
}

function AccCalcDigit(n){
  var pesos=new Array(1,2,4,8,5,10,9,7,3,6)
	var l=n.length
	var tot=0
	var v=0
	var pes=0
	var vv=0
	for (var i=0; i<l; i++) tot+=parseInt(n.charAt(i))*pesos[i]
	var resto=tot%11
	var dig=11-resto
	if(dig==11) dig=0
	else if (dig==10) dig=1
	return dig
}

function valCCC(f1,f2,f3,f4){
  var res=false
  res=valAccNumFld(f1,10,4,1)
  if (res) res=valAccNumFld(f2,11,4,1)
  if (res) res=valAccNumFld(f3,12,2,1)
  if (res) res=valAccNumFld(f4,13,10,1)
  if (res){
    var fld1=getFld(f1)
    while (fld1.value.length<4) fld1.value='0'+fld1.value
    var fld2=getFld(f2)
    while (fld2.value.length<4) fld2.value='0'+fld2.value
    var fld3=getFld(f3)
    while (fld3.value.length<2) fld3.value='0'+fld3.value
    var fld4=getFld(f4)
    while (fld4.value.length<10) fld4.value='0'+fld4.value
  	var cd=''+AccCalcDigit('00'+fld1.value+fld2.value)+AccCalcDigit(''+fld4.value)
  	if (fld3.value!=cd){
  		alert("El d\xEDgito de control no es correcto")
  		fld3.focus()
  		res=false
  	}
  }
  return res
}

function checkPay(){
  var lyr=getLayer('acc')
  if (lyr) {
    var fld1=getFld('pagoD')
   	var fld2=getFld('bank')
   	var fld3=getFld('branch')
   	var fld4=getFld('dc')
   	var fld5=getFld('account')
    if (fld1 && fld1.checked) {
  	  lyr.style.visibility='visible'
  	  disableField(fld2,false)
  	  disableField(fld3,false)
  	  disableField(fld4,false)
  	  disableField(fld5,false)
  	  fld2.focus()
    } else {
  	  disableField(fld2,true)
  	  disableField(fld3,true)
  	  disableField(fld4,true)
  	  disableField(fld5,true)
  	  lyr.style.visibility='hidden'
  	}
  }
}

function valPromocion() {
  var res=true
  disableForm(true)
  with (document.forms[0]) {
    if (!accept.checked) {
      var str=htmlToHex("&iquest;Ha le&iacute;do las condiciones de la contraci&oacute;n y las acepta?")
      alert(str)
      accept.focus()
      res=false
    } else {
  	  res=valEmail(email)
  	  if (res) res=valRad(pago, "Por favor, seleccione el método de pago")
  	}
  }
  if (!res) disableForm(false)
  return res
}

function fmtNum(pVal){
	var res=pVal+''
	var pos=res.indexOf('.')
	if(pos>-1){
		var l=res.length
		if (pos==l-1) res+='00'
		else if(pos==l-2) res+='0'
	} else {
		res=pVal+'.00'
	}
	return res
}
