var d, dom, ns4, ie, ie4, ie5x, moz, mac, win, lin, old, ie5mac, ie5xwin, op;

d = document;
n = navigator;
na = n.appVersion;
nua = n.userAgent;
win = (na.indexOf('Win') != -1);
mac = (na.indexOf('Mac') != -1);
ns4 = d.layers
var calunits=document.layers? "" : "px"

if (!d.layers){
dom = (d.getElementById);
op = (nua.indexOf('Opera') != -1);
konq = (nua.indexOf('Konqueror') != -1);
saf = (nua.indexOf('Safari') != -1);
moz = (nua.indexOf('Gecko') != -1);
ie = (d.all && !op);
ie4 = (ie && !dom);
ie5x = (d.all && dom);
ie5mac = (mac && ie5x);
ie5xwin = (win && ie5x);
}

function footer(){if (ie || op || ie5mac)	{
h = parseInt(document.all["c"].scrollHeight);
if(parseInt(document.all["cd"].scrollHeight)>h) h=parseInt(document.all["cd"].scrollHeight);
if(parseInt(document.all["cc"].scrollHeight)>h) h=parseInt(document.all["cc"].scrollHeight);
document.all['f'].style.top = h;
document.all['f'].style.visibility = "visible";
} else if (dom && !op){
h = document.body.scrollHeight-100;
document.getElementById("f").style.top =  h;
document.getElementById("f").style.left =  0;
document.getElementById("f").style.visibility = "visible";
}}

ns4 = (document.layers)? true:false
ie4 = (document.all)? true:false
var currentVisible = "";
var masterSelect = null;
var currentSelect=null;
var remember = new Array(); var remember2 = new Array(); var checkIt;
var DHTML = (document.getElementById || document.all || document.layers);
function show(name,lvl,obj){if (!DHTML) return; checkUserInput();
if (remember[lvl] && remember[lvl] == name) return; if (remember[lvl]){closeAll(lvl);}
if (name){var x = getObj(name); x.visibility = 'visible';} remember[lvl] = name;
if (obj.parentNode) {y = obj.parentNode;} else if (obj.parentElement) {y = obj.parentElement;} else return; if (y.className) return; y.className = 'over'; if (remember2[lvl]) remember2[lvl].className = '';	remember2[lvl] = y;}
function closeAll(lvl) {for (i=remember.length - 1;i>=lvl;i--) { if (remember[i]) //IE4 Mac
{ var x = getObj(remember[i]); x.visibility = 'hidden'; } remember[i] = null; if (remember2[i]) { remember2[i].className = ''; remember2[i] = null;}}}
function checkUserInput(){if (checkIt) clearTimeout(checkIt);checkIt = setTimeout('closeAll(1)',5000);}
function getObj(name){if (document.getElementById){return document.getElementById(name).style;}else if (document.all){return document.all[name].style;}else if (document.layers){return document.layers[name];} else return false;}
//----------------------------------------------------------------
function validar(field) {
var valid = "abcdefghijklmnñopqrstuvwxyz ABCDEFGHIJKLMNÑOPQRSTUVWXYZ 0123456789 ().*&^%$#@!+-_][}{ áéíóúü"; var ok = "si"; var temp;
for (var i=0; i<field.value.length; i++) {temp = "" + field.value.substring(i, i+1);
if (valid.indexOf(temp) == "-1") ok = "no";}
if (ok == "no") {alert("El nombre de usuario que ingresó\ncontiene caracteres inválidos!");
field.focus();
field.select();}}
//----------------------------------------------------------------
function showHideLayers() { //v6.0
var i,p,v,obj,args=showHideLayers.arguments;
for (i=0; i<(args.length-2); i+=3) if ((obj=findObj(args[i]))!=null) { v=args[i+2];
if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
obj.visibility=v; }
}
function 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=findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function hide(id){
if (ns4) document.layers[id].visibility = "hide"
else if (ie4) document.all[id].style.display = "none"
}

//----------------------------------------------------------------
function clearCurrentSelect() {
if (currentSelect != null) {
	currentSelect.value="";
	currentSelect = null;}
}

//----------------------------------------------------------------
function updateCurrentSelect (select) {
currentSelect = select;}

//----------------------------------------------------------------
function synchronize () {
if (masterSelect != null) {
	if (masterSelect[masterSelect.selectedIndex].value != "") {
		showSpanIfExists(masterSelect[masterSelect.selectedIndex].value);
		}
	var numQID = document.AnswerQs.QID.length
	var i, qid;
	for (i=0; i<numQID; i++) {
		qid = document.AnswerQs.QID[i].value
		if (eval("document.AnswerQs.select_"+qid).value != "") {
			currentSelect = eval("document.AnswerQs.select_" + document.AnswerQs.QID[i].value)
		}
	}
}
}

//----------------------------------------------------------------
function changeSelection(val){
if(ie4){
    if(currentVisible != ""){
      hide(currentVisible);
      currentVisible = "";
    }
    var spanId = "span" + val;
    if(document.all[spanId]){
		document.all[spanId].style.display = "inline";
		currentVisible = spanId;
		var selId = "scndLvlCQ" + val;
		if(document.AnswerQs.elements[selId]){
			document.AnswerQs.elements[selId].selectedIndex = 0;
		}
	}
}
}
//----------------------------------------------------------------
function showSpanIfExists(val){
if(currentVisible != ""){
	hide(currentVisible);
	currentVisible = "";
}
if(document.all[val]){
	hide("defaultSpan");
	document.all[val].style.display = "inline";
	currentVisible = val;
} else {
	document.all["defaultSpan"].style.display = "inline";
}
}
//----------------------------------------------------------------
function Go(s){
if(s.options[s.selectedIndex].value=='') {alert("Seleccione una ciudad"); return false}
var provincia = document.AnswerQs.select_1.value.substring(4,document.AnswerQs.select_1.value.length)
var localidad = s.options[s.selectedIndex].value;
if(localidad!=0)
	window.open("http://www.infoclima.com/pronosticos.asp?l=" + localidad + "&p=" + provincia + " target=_blank");
else
	window.top.location.href = "http://www.infoclima.com/selector.asp?p=" + provincia;
}

//----------------------------------------------------------------
function validaEmail(emails){
emails.value = emails.value.toLowerCase();
email=new String(emails.value.toLowerCase())
if(email== "" || email.indexOf("@", 0) == -1 || email.indexOf(".", 0) == -1 || email.length <= 9){
	alert("Debe ingresar un E-Mail válido.");
	emails.focus();
	return false;
} else {
	ok=1
	var validos="abcdefghijklmnopqrstuvwxyz0123456789-_@.";
	for (i=0;i<email.length;i++){
		if (validos.indexOf(email.charAt(i)) == "-1") ok = 0;	
	}
	if (ok==0) {
		alert("Uno o más caracteres no son válidos.");
		emails.focus();
		return false;
	}
}
return true
}

//----------------------------------------------------------------
function validaTelefonos(valor,texto,minimo){
numero=new String(valor.value)
ok=1
var validos="0123456789()-/";
for (i=0;i<numero.length;i++){
	if (validos.indexOf(numero.charAt(i)) == "-1") ok = 0;	
}
if (ok==0) {
	if (texto=="") {alert("Ingrese sólo números.\nOtros caracteres permitidos:\n() - /.");}else{alert(texto);}
	valor.focus(); return false
}
if (numero.length<minimo){
	alert("Ingrese como mínimo "+minimo+" dígitos.");
	valor.focus(); return false
}
return true
}
//----------------------------------------------------------------
function validaNumeros(valor,texto,minimo){
numero=new String(valor.value)
ok=1
var validos="0123456789";
for (i=0;i<numero.length;i++){
	if (validos.indexOf(numero.charAt(i)) == "-1") ok = 0;	
}
if (ok==0) {
	if (texto=="") {alert("Ingrese sólo números.");}else{alert(texto);}
	valor.focus(); return false
}
if (numero.length<minimo){
	alert("Ingrese como mínimo "+minimo+" dígitos.");
	valor.focus(); return false
}
return true
}
//----------------------------------------------------------------
function estaVacio(s,texto){
var len=s.value.length
var i
for (i=0;i<len;++i){
	if (s.value.charAt(i)!=" ") {return false;}
}
alert(texto);s.focus();
return true
}

//----------------------------------------------------------------
function validaFecha(fechad){
fecha=fechad.value;
dia=new Number(fecha.substr(0,2))
mes=new Number(fecha.substr(3,2))
ano=new Number(fecha.substr(6,4))
var hoy = new Date();
if (dia<1 || dia>31 || isNaN(dia)){dia=hoy.getDate();}
if (mes<1 || mes>12 || isNaN(mes)){mes=hoy.getMonth()+1}
if (ano<hoy.getFullYear()-99 || isNaN(ano)){ano=hoy.getFullYear()}
if (parseInt(mes)==2 && parseInt(dia)>28) dia="28";
if ((parseInt(mes)==4 || parseInt(mes)==6 || parseInt(mes)==9 || parseInt(mes)==11) && parseInt(dia)==31) dia="30";
diad=new String(dia)
mesd=new String(mes)
if (diad.length!=2) dia="0"+dia
if (mesd.length!=2) mes="0"+mes
fechad.value=dia+"/"+mes+"/"+ano
if (ano>hoy.getFullYear()-13) {return false}
return true
return
}
//-----------------------------
function initbox(){
if (!dom&&!ie&&!ns4)
return
crossobj=(dom)?document.getElementById("dropin").style : ie? document.all.dropin : document.dropin
scroll_top=(ie)? truebody().scrollTop : window.pageYOffset
crossobj.top=scroll_top-250+calunits
crossobj.visibility=(dom||ie)? "visible" : "show"
dropstart=setInterval("dropin()",50)
}

function dropin(){
scroll_top=(ie)? truebody().scrollTop : window.pageYOffset
if (parseInt(crossobj.top)<100+scroll_top)
crossobj.top=parseInt(crossobj.top)+40+calunits
else{
clearInterval(dropstart)
bouncestart=setInterval("bouncein()",50)
}
}

function bouncein(){
crossobj.top=parseInt(crossobj.top)-bouncelimit+calunits
if (bouncelimit<0)
bouncelimit+=8
bouncelimit=bouncelimit*-1
if (bouncelimit==0){
clearInterval(bouncestart)
}
}

function dismissbox(){
if (window.bouncestart) clearInterval(bouncestart)
crossobj.visibility="hidden"
}

function redo(){
bouncelimit=32
direction="up"
initbox()
}

function truebody(){
return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}

