// JavaScript Document
function getCookie(name){
  var cname = name + "=";               
  var dc = document.cookie;             
  if (dc.length > 0) {              
    begin = dc.indexOf(cname);       
    if (begin != -1) {           
      begin += cname.length;       
      end = dc.indexOf(";", begin);
      if (end == -1) end = dc.length;
        return unescape(dc.substring(begin, end));
    } 
  }
  return null;
}

function setCookie(name, value, expires, path, domain, secure) {
  document.cookie = name + "=" + escape(value) + 
  ((expires == null) ? "" : "; expires=" + expires.toGMTString()) +
  ((path == null) ? "" : "; path=" + path) +
  ((domain == null) ? "" : "; domain=" + domain) +
  ((secure == null) ? "" : "; secure");
}

function delCookie (name,path,domain) {
  if (getCookie(name)) {
    document.cookie = name + "=" +
    ((path == null) ? "" : "; path=" + path) +
    ((domain == null) ? "" : "; domain=" + domain) +
    "; expires=Thu, 01-Jan-70 00:00:01 GMT";
  }
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function reenviar(paso)
{
	switch(paso)
	{
		case 1:
			document.form1.action="pagar_paso0.php";
			break;
		case 2:
			document.form1.action="pagar_paso1.php";
			break;
		case 3:
			document.form1.action="pagar_paso2.php";
			break;
		case 5:
			document.form1.action="pagar_paso3.php";
			break;
		case 6:
			document.form1.action="pagar_paso5.php";
			break;
		case 7:
			document.form1.action="pagar_paso6.php";
	}
	document.form1.submit(); 
}

function direccionar(paso)
{
	//alert(paso);
	resp="";
	switch(paso)
	{
		case 0: 
			document.form1.action="pagar_paso1.php";
			if(document.form1.sub_total.value>0)
				resp=true;
			break;
		case 1:
			document.form1.action="pagar_paso2.php";
			if(document.form1.length>1)
			{
				for (i=0;i<document.form1.id_dir_factura.length;i++)
				{
					if (document.form1.id_dir_factura[i].checked) 
					{
						resp=true;
						break;
					}
				}
				if(!resp)
					alert("Selecciona la dirección de facturación");
			}
			else
			{
				if(document.form1.length==1)
				{
					if (document.form1.id_dir_factura.checked) 
						resp=true; 
					else
						alert("Selecciona la dirección de facturación");
				}
				else
					alert("Registra tu dirección de facturación");
			}
			break;
		case 2:
			document.form1.action="pagar_paso3.php";
			if(document.form1.length>2)
			{
				for (i=0;i<document.form1.id_dir_envio.length;i++)
				{
					if (document.form1.id_dir_envio[i].checked) 
					{
						resp=true; 
						break;
					}
				}
				if(!resp)
					alert("Selecciona la dirección de envío");
			}
			else
			{
				if(document.form1.length==2)
				{
					if (document.form1.id_dir_envio.checked) 
						resp=true;
					else
						alert("Selecciona la dirección de envío");
				}
				else
					alert("Registra tu dirección de envio");
			}
			break;
		case 3:
			document.form1.action="pagar_paso5.php";
			if(document.form1.sub_ttotal.value>0)
				resp=true;
			break;
		case 5:
			document.form1.action="pagar_paso6.php";
			valor=document.form1.cupon.value;
			arr_detalle=valor.split("<-->");
			if(arr_detalle[0]!='0')
			{
				if(arr_detalle[0]=='-1' && document.form1.publicidad.value=="")
					alert("Coloque la clave del cupón");
				else
				{
					if(document.form1.id_ttotal.value<Number(arr_detalle[1]))
						alert("No cumple con el mínima de compra");
					else
						resp="true";
				}
			}
			else
				resp="true";
			break;
		case 6:
			document.form1.action="pagar_paso7.php";
			switch(Number(document.form1.metodo.value))
			{
				case 1:
				case 3:
				case 4:
					resp="true";
					break;
				case 2:
					if(document.form1.cardName.value=='' || document.form1.cardSecurityNumber.value=='' || document.form1.cardNumber.value=='')
						alert('Datos de la Tarjeta Incompletos');
					else
						if(document.form1.cardExpiryYear.value+''+document.form1.cardExpiryMonth.value < document.form1.date.value)
							alert("Tarjeta Vencida");
						else
							resp="true";
			}
			break;
		case 7:
			location.href="http://www.famsa.com.mx";
	}
	if(resp)
		document.form1.submit(); 
}

function local_escape(cadena)
{
	cadena=cadena.replace(/á/g,'<-aacute->')
	cadena=cadena.replace(/é/g,'<-eacute->')
	cadena=cadena.replace(/í/g,'<-iacute->')
	cadena=cadena.replace(/ó/g,'<-oacute->')
	cadena=cadena.replace(/ú/g,'<-uacute->')
	cadena=cadena.replace(/ñ/g,'<-ntilde->')
	cadena=cadena.replace(/Á/g,'<-Aacute->')
	cadena=cadena.replace(/É/g,'<-Eacute->')
	cadena=cadena.replace(/Í/g,'<-Iacute->')
	cadena=cadena.replace(/Ó/g,'<-Oacute->')
	cadena=cadena.replace(/Ú/g,'<-Uacute->')
	cadena=cadena.replace(/Ñ/g,'<-Ntilde->')
	return cadena;
}

// Esta funcion ayuda a eliminar los espacios en blanco al inicio y fin de la cadena
function trim(cadena)
{
	for(i=0; i<cadena.length; )
	{
		if(cadena.charAt(i)==" ")
			cadena=cadena.substring(i+1, cadena.length);
		else
			break;
	}
	for(i=cadena.length-1; i>=0; i=cadena.length-1)
	{
		if(cadena.charAt(i)==" ")
			cadena=cadena.substring(0,i);
		else
			break;
	}
	return cadena;
}

function pop_boletin(obj)
{
	window.open("popup_boletin.php?email="+obj.email.value,"Alta_boletin","width=250,height=270");
	return false;
}

function vaciar(campo)
{
	campo.value=trim(campo.value);
	if(campo.value=="Escribe tu correo")
		campo.value="";
}

function llenar(campo,texto)
{
	campo.value=trim(campo.value);
	if(campo.value=="")
		campo.value="Escribe tu correo";
}

function vaciarB(campo, texto)
{
	campo.value=trim(campo.value);
	if(campo.value==texto)
		campo.value="";
}

function llenarB(campo, texto)
{
	campo.value=trim(campo.value);
	if(campo.value=="")
		campo.value=texto;
}

function formatCurrency_beta(num) { return '$' + Math.floor(Math.round(num)); }
function formatAsMoney_beta(mnt) { return Math.floor(Math.round(mnt)); } 

function formatCurrency(num) 
{ 
	num = num.toString().replace(/$|,/g,''); 
	if(isNaN(num)) 
	num = "0"; 
	sign = (num == (num = Math.abs(num))); 
	num = Math.floor(num*100+0.50000000001); 
	cents = num%100; 
	num = Math.floor(num/100).toString(); 
	if(cents<10) 
	cents = "0" + cents; 
	for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++) 
	num = num.substring(0,num.length-(4*i+3))+','+ 
	num.substring(num.length-(4*i+3)); 
	return (((sign)?'':'-') + '$' + num + '.' + cents); 
}

function formatAsMoney(mnt) 
{ 
	mnt -= 0; 
	mnt = (Math.round(mnt*100))/100; 
	return (mnt == Math.floor(mnt)) ? mnt + '.00' 
	: ( (mnt*10 == Math.floor(mnt*10)) ? 
	mnt + '0' : mnt); 
}

function es_numero(op, e, obj)
//	op  -> 	Tipo de validacion
//			int: 	valida contra entero, exclusivamente NUMEROS
//			float: 	valida contra numeros y puntos, solo admite 1 punto 
//	e   ->	Evento que acontece
//			event: envia la tecla que se esta presionando
//	obj ->	Envia el objeto que invoca la funcion con el fin de tener acceso a lo que contiene en el value
{
	charCode=(document.all) ? e.keyCode : e.which; 
	switch(op)
	{
		case 'int':
			if (charCode>31 && (charCode < 48 || charCode > 57))
			{
				//alert("Solo se pueden ingresar numeros.");
				return false;
			}
			return true;
			break;
		case 'float':
			a=obj.value;
			ArrCantidad=a.split(".")
			if (charCode>31 && charCode!=46 && (charCode<48 || charCode>57))
			{
				//alert("Solo se pueden ingresar numeros.");
				return false;
			}
			if(ArrCantidad.length-1>0 & charCode==46){
			   return false;	
			}
			return true;
			break;
	}
}

function es_caracter(e)
//	e   ->	Evento que acontece
//			event: envia la tecla que se esta presionando
{
	charCode=(document.all) ? e.keyCode : e.which; 
	if (charCode>32 && charCode!=35 && charCode!=38 && charCode!=40 && charCode!=41 && (charCode < 44 || charCode > 57) && charCode!=59 && (charCode < 63 || charCode > 90) && charCode!=95 && (charCode < 97 || charCode > 122) && charCode!=191 && charCode!=193 && charCode!=201 && charCode!=205 && charCode!=209 && charCode!=211 && charCode!=218 && charCode!=225 && charCode!=233 && charCode!=237 && charCode!=241 && charCode!=243 && charCode!=250)
	{
		//alert("Caracter no valido. charCode="+ charCode);
		return false;
	}
	return true;
}

function detalle_cupon()
{
	valor=document.form1.cupon.value;
	if(valor=='-1')
	{
		document.form1.publicidad.style.display='';
	}
	else
	{
		document.form1.publicidad.style.display='none';
		document.form1.publicidad.value='';
		if(valor!='0')
		{
			arr_detalle=valor.split("<-->");
			alert("Compra mínima de $"+arr_detalle[1]);
		}
	}
}

function sacar_carrito(sa)
{
	document.getElementById("imagen_carrito").innerHTML='<img src="inc/mostrar_imagen_carrito.php" onclick="javascript:location.href=\'pagar_paso0.php\'" style="cursor:pointer"  />';
	alert("Producto Agregado.");
}

// Funciones para relizar la validacion de maxima cantidad de productos a comparar
function limitar_seleccion(indice)
{
	var cant=0;
	for(i=0;i<=document.form1.chk_comparar.length-1;i++)
	{
		if(document.form1.chk_comparar[i].checked==true)
		{
			cant=cant+1;
		}
	}
	if(cant>5)
	{
	  	alert("Pueden comparar máximo 5 productos.");
		//document.getElementById('indice').checked=false;
		indice.checked=false;
	}
} 

function limpiar_ciudad()
{
//	co= window.document.form1.ciudad.length-1;
	co = document.forms[0].elements["ciudad"].length;
	for(i=co;i>=0;i--)
	{
		document.getElementById("ciudad").options[i]=null;
	} 
}

function agregar_carrito(obj,id)
{
//	en=new enviar_ajax("pagar_paso0.php","id_producto="+id+"","sacar_carrito");
//	en.enviarr();
}

function planes_venta(id_planvta,posicion)
{
	var en = new enviar_ajax("procesos_ajax_front.php", "modu=planes_venta&id_planvta="+id_planvta+'&posicion='+posicion, "evento_ajax");
	en.enviarr();
}

function busca_ciudad(id_cd)
{
	var en = new enviar_ajax('procesos_ajax_front.php','modu=busca_ciudad&id_edo='+document.getElementById("estado").value+'&id_cd='+id_cd, "evento_ajax");
	en.enviarr();
}

function actualiza_envio(parametro)
{
	document.form1.sinenvio.value=0;
	document.getElementById('msj_sinenvio').style.display='none';
	id_envio=parametro;
	for(i=1; i<=primera; i++)
	{
		id_prod="id_prod_"+i;
		var en = new enviar_ajax("procesos_ajax_front.php", 'modu=actualiza_envio&id_producto='+document.form1[id_prod].value+'&id_ciudad='+document.form1.id_ciudad.value+'&id_envio='+id_envio+'&posicion='+i, "evento_ajax");
		en.enviarr();
	}
}

function evento_ajax(str_sac)
{
	//alert(str_sac);
	var sacar;
	sacar=str_sac.split("<-sacarevento->");
	switch(sacar[0])
    {
		case '1': // Coloca las ciudades que se encuenran registradas (no borradas) con el estado seleccionado
			limpiar_ciudad();
			sac_arr=sacar[1].split("<--nuvoregistro-->");
			var ii = document.getElementById("ciudad").options.length;
			document.getElementById("ciudad").options[ii] = new Option("Seleccione una",0);
			for(i=0;i<=sac_arr.length-1;i++)
			{
				sac_di=sac_arr[i].split("<--campo-->");
		   
				if(sac_di[1]!="")
				{
					var ii = document.getElementById("ciudad").options.length;
					document.getElementById("ciudad").options[ii] = new Option(sac_di[1], sac_di[0]);
				}
			}
			if(!isNaN(sacar[2]))
			{
				select_cd(sacar[2]);
			}
			break;
		case '2': 
			document.getElementById('direcciones').innerHTML=sacar[1];
			break;
		case '3': 
			if(sacar[1]=="Error")
			{
				alert("Ha ocurrido un error\n Intentalo de nuevo mas tarde");
			}
			else
			{
				limpia_campos();
				carga_direcciones();
			}
			break;
		case '4': 
			limpia_campos();
			var arr_element;
			arr_element=sacar[1].split("<--campo-->");
			document.form1.id_dir.value=arr_element[0];
			document.form1.cliente_id.value=arr_element[1];
			document.form1.nombre.value=arr_element[2];
			document.form1.calle.value=arr_element[3];
			document.form1.colonia.value=arr_element[4];
			select_edo(arr_element[6]);
			busca_ciudad(arr_element[5]);
			document.form1.cp.value=arr_element[7];
			document.form1.telefono.value=arr_element[8];
			document.form1.pais.value=arr_element[9];
			document.form1.rfc.value=arr_element[10];
			document.form1.comentarios.value=arr_element[11];
			document.form1.clave.value=arr_element[12];
			break;
		case '5': // 
			if(sacar[1]=="Error")
			{
				alert("Ha ocurrido un error\n Intentalo de nuevo mas tarde");
			}
			else
			{
				limpia_campos();
				carga_direcciones();
			}
			break;
		case '6': // Coloca la mensualida, la cantidad de meses y el interes que se le agregara y es invocado al seleccionar un plan de venta
		    sac_arr2=sacar[1].split("<--posicion-->");
			sac_obj=sac_arr2[1];
			sac_arr=sac_arr2[0].split("<--nuvoregistro-->");
			for(i=0;i<=sac_arr.length-1;i++)
			{
				sac_di=sac_arr[i].split("<--campo-->");
				if(sac_di!="")
				{
					if(sac_obj=="selectplan")
					{
						if(sac_di[0]>0)
						{
							sac_meses = Number(sac_di[1]);
							sac_interes = Number(sac_di[2])/100;
							precio = Number(document.form1.precio_lista.value);
							mensualidad=(precio*(1+sac_interes))/sac_meses;
							tabla="	<table width=200 cellspacing=0 cellpadding=0><tr><td colspan=2 align=center class=txt-sku><div align=center class=txt-12><img src=images/bullet_1.gif width=7 height=11/> a "+sac_meses+" meses</div></td></tr><tr><td width=100 class=txt-descripcion>Mensualidad</td><td width=100 class=txt-descripcion>"+formatCurrency_beta(mensualidad)+"</td></tr></table>";
							document.getElementById("tabla_plan_venta").innerHTML = tabla;
						}
						else
						{
							document.getElementById("tabla_plan_venta").innerHTML = "";
						}
					}
					if(sac_obj.indexOf("planventa_")>=0)
					{
						sac_pos=sac_obj.split("_");
						sac_st="plazo_td_"+sac_pos[1];
						sac_st_h="plazo_"+sac_pos[1];
						sac_interes_h="interes_"+sac_pos[1];
						sac_val=sac_di[1];
						sac_interesval = sac_di[2];
						document.getElementById(sac_st).innerHTML = sac_val;
						document.form1[sac_st_h].value = sac_val;
						document.form1[sac_interes_h].value = sac_interesval;
					}
				}
				if(sac_obj.indexOf("planventa_")>=0)
					calcula_detalle();
			}
			break;
		case '7': // Actualiza los costos de envio segun el peso y la empresa seleccionada, es invocado al cambiar la forma de envio
			sac_arr=sacar[1].split("<--campo-->");
			envio="envio_"+sac_arr[0];
			if(sac_arr[1]==0)
			{
				document.form1.sinenvio.value=1;
				document.getElementById('msj_sinenvio').style.display='';
			}
			window.document.form1[envio].value=sac_arr[1];
			calcula_detalle();
			break;
case '':
		if(semaforo2<=primera && semaforo==3)
		{
			for(i=0; semaforo2<=primera;i++)
			{
				if(semaforo2==i)
				{
					id_prod="id_prod_"+semaforo2;
					semaforo=0;
					enviar('inc/procesos_ajax_pedidos.php','modu=actualiza_envio&id_producto='+document.form1[id_prod].value+'&id_ciudad='+document.form1.id_ciudad.value+'&id_envio='+id_envio+'&posicion='+semaforo2);
					semaforo2=0;
					break;
				}
			}
		}
	}
}

// Funcion para hacer cambios de banner en una página.
function banner_dinamico(op)
{
	// Esta funcion se utiliza para mostrar banner de forma cambiante en base al segundo, los banners pueden ser de tipo imagen o de tipo flash
	switch(op)
	{
		case 0: // Esta opcion espara los banner con Flash
			//Anchura del banner 
			width="290";
			//Altura del banner 
			height="120";
			// Array de banners (incluendo la ruta de subcarpeta)
			banners= new Array();
			banners[0]="banners/bner_principal_1.swf"; 
			urls= new Array();
			descripciones= new Array();
			target="_self";
			break;
		case 6: // Esta opcion es para los banner de Espacio 6 de Home
			//Anchura del banner 
			width="294";
			//Altura del banner 
			height="119";
			// Array de banners (incluendo la ruta de subcarpeta)
			banners= new Array(); 			
			banners[0]="banners/espacio6_mx.swf"; 

			// Array de Links
			urls= new Array();
			urls[0]="http://www.facebook.com/grupofamsa"; 

			// Arreglo de texto alternativo (alt)
			descripciones= new Array();
			descripciones[0]=" Promo Whirlpool"; 
			descripciones[1]="Festejemos a Papá";
			descripciones[2]="Televisor";
			target="_¨blank";
			break;
		case 7: // Esta opcion es para los banner de Espacio 6 de Home
			//Anchura del banner 
			width="295";
			//Altura del banner 
			height="119";
			// Array de banners (incluendo la ruta de subcarpeta)
			banners= new Array(); 		
			banners[0]="banners/espacio7_mx.swf";

			// Array de Links
			urls= new Array();
			urls[0]="index.php?modulo=280&url=../temp_grupos_1.php&menu_arr=274&modulo_p=2"; 

			// Arreglo de texto alternativo (alt)
			descripciones= new Array();
			descripciones[0]=":: gadget de la semana ::";
			target="_self";
			break;
	}

	totalbanners = banners.length; 	//Número total de banners
	var ahora = new Date();
	var segundos = ahora.getSeconds();
	var ad = segundos % totalbanners; 
	banner=banners[ad]; 
	if(urls[ad]=="")
	{
		url_1="";
		url_2="";
	}
	else
	{
		url_1="<a href='"+urls[ad]+"' target='"+target+"'>"; 
		url_2="</a>";
	}
	if(descripciones[ad]=="")
	{
		descripcion="";
	}
	else
	{
		descripcion="alt='"+descripciones[ad]+"'"; 
	}
	localizador=banner.lastIndexOf('.'); 
	localizador2=localizador+4 
	extension=banner.substring(localizador+1,localizador2); 
	archivo=banner.substring(0,localizador); 

	if (extension=="swf")
	{ 
		flash=banner; 
		document.write('<OBJECT CLASSID="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width=' + width + ' height=' + height + ' CODEBASE="http://active.macromedia.com/flash4/cabs/swflash.cab#version=4,0,0,0">'); 
		document.write('<PARAM NAME="MOVIE" VALUE="' + flash + '">'); 
		document.write('<PARAM NAME="PLAY" VALUE="true">'); 
		document.write('<PARAM NAME="LOOP" VALUE="true">'); 
		document.write('<PARAM NAME="QUALITY" VALUE="high">'); 
		document.write('<PARAM NAME="WMODE" VALUE="transparent">'); 
		document.write('<EMBED SRC=' + flash + ' width=' + width + ' height=' + height + ' PLAY="true" LOOP="true" QUALITY="high" PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi? P1_Prod_Version=ShockwaveFlash">'); 
		document.write('</EMBED>'); 
		document.write('</OBJECT>');
	} 
	else 
	{
		document.write(url_1+'<img src='+banner+' border=0 width='+width+' height='+height+' '+descripcion+'>'+url_2); 
	} 
}