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 validate_and_setinfo() { //v4.0
  var i,p,q,nm,test,num,min,max,errors='',args=validate_and_setinfo.arguments;

var idioma=args[0];

if (idioma == 'ES') {
	var email_error_msg = ' tiene que ser un e-mail válido.';
	var req_error_msg = ' es obligatorio.';
	var title_error_msg = 'Ha ocurrido el siguiente error:';
}
else if (idioma == 'EN') {
	var email_error_msg = ' must contain an e-mail address.';
	var req_error_msg = ' is required.';
	var title_error_msg = 'The following error(s) occurred:';
}
else if (idioma == 'DE') {
	var email_error_msg = ' muss eine gültige e-mail Adresse sein.';
	var req_error_msg = ' ist notwendig.';
	var title_error_msg = 'Folgende Fehler sind aufgetreten:';
}
else if (idioma == 'FR') {
	var email_error_msg = ' doit ętre un e-mail correcte.';
	var req_error_msg = ' est obligatoire.';
	var title_error_msg = 'Erreur:';
}
//Test para reconocer los idiomas

  for (i=1; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
    if (val) { nm=val.name; if ((val=val.value)!="") {
      if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
        if (p<1 || p==(val.length-1)) errors+='- '+nm+email_error_msg+'\n';
      } else if (test!='R') { num = parseFloat(val);
        if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
        if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
          min=test.substring(8,p); max=test.substring(p+1);
          if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
    } } } else if (test.charAt(0) == 'R') errors += '- '+nm+req_error_msg+'\n'; }
  }

  if (errors) alert(title_error_msg+'\n'+errors);
  //else setvisitorinfo(MM_findObj(args[0]).value,MM_findObj(args[3]).value,MM_findObj(args[6]).value);

  document.MM_returnValue = (errors == '');
}

function rimontgo_validate() { 
  var p,errors='',args=rimontgo_validate.arguments;

var idioma=args[0];

if (idioma == 'ES') {
	var email_error_msg = 'E-mail tiene que ser un e-mail válido.';
	var req_error_msg = ' Nombre es obligatorio.';
	var title_error_msg = 'Ha ocurrido el siguiente error:';
	var email_tel_msg = ' Indique por favor email o teléfono.';
}
else if (idioma == 'EN') {
	var email_error_msg = ' E-mail must contain a valid e-mail address.';
	var req_error_msg = ' Name is required.';
	var title_error_msg = 'The following error(s) occurred:';
	var email_tel_msg = ' Please set an email or phone.';
}
else if (idioma == 'DE') {
	var email_error_msg = ' E-mail muss eine gültige e-mail Adresse sein.';
	var req_error_msg = ' Name ist notwendig.';
	var title_error_msg = 'Folgende Fehler sind aufgetreten:';
	var email_tel_msg = ' Geben Sie bitte E-Mail oder Telefonnummer ein.';
}
else if (idioma == 'FR') {
	var email_error_msg = ' E-mail doit ętre un e-mail correcte.';
	var req_error_msg = ' Nom est obligatoire.';
	var title_error_msg = 'Erreur:';
	var email_tel_msg = ' Indiquez si\'l vous plait email ou téléphone.';
}
// Nombre es obligatorio
val=MM_findObj(args[1]); //nom
if(val.value=='') {errors+='- '+req_error_msg+'\n';}
// Email o telefono
val2=MM_findObj(args[2]); //tel
val3=MM_findObj(args[3]); //email
if(val2.value=='' && val3.value=='') {errors+='- '+email_tel_msg+'\n';}
else {p=val3.value.indexOf('@');
        if (val2.value=='' && (p<1 || p==(val3.value.length-1))) errors+='- '+email_error_msg+'\n';
}
if (errors) alert(title_error_msg+'\n'+errors);

document.MM_returnValue = (errors == '');
}

// Cookie TBox

var dbug = 0;
//var timeToKeep = 7200000 ; // two hours
//var expires = new Date();
//expires.setTime(expires.getTime() + timeToKeep);
var expires = new Date();
var timeToKeep = expires.getTime() + (30 * 24 * 60 * 60 * 1000);
expires.setTime(timeToKeep);

function posinarray(ar,item) {
	var myfind=-1;
	for (var i=1; i<ar.length; i++) {
		if (ar[i]==item) myfind=i;
	}
	if(myfind == -1) {
		item = item.replace(/ /g, '+');
		for (var i=1; i<ar.length; i++) {
			if (ar[i]==item) myfind=i;
		}
	}
	if(myfind == -1) {
		item = item.replace(/ /g, '%20');
		for (var i=1; i<ar.length; i++) {
			if (ar[i]==item) myfind=i;
		}
	}
	return myfind;
}

function d_a(ary) {
	var beg = next_entry(ary) - 1;
	for (var i = beg ; i > -1; i--) {
		ary[i] = null;
	}
	}

function init_array() {
	var ary = new Array(null);
	return ary;
	}

function set_cookie(name,value,expires) {
//	if (!expires) expires = new Date();
//#############################################################fonsi changes
	if (!expires) {
		var expires = new Date();
		var timeToKeep = expires.getTime() + (30 * 24 * 60 * 60 * 1000);
		expires.setTime(timeToKeep);
	}
//#############################################################fonsi changes
	document.cookie = name + '=' + escape(value) + ';	expires=' + expires.toGMTString() + '; path=/';
	}

function get_cookie(name) {
	 var dcookie = document.cookie;
	 var cname = name + "=";
	 var clen = dcookie.length;
	 var cbegin = 0;

	 while (cbegin < clen) {
	 	  var vbegin = cbegin + cname.length;
      if (dcookie.substring(cbegin, vbegin) == cname) {
    	   var vend = dcookie.indexOf (";", vbegin);
    	   if (vend == -1) vend = clen;
    	   return unescape(dcookie.substring(vbegin, vend));
    	   }
      cbegin = dcookie.indexOf(" ", cbegin) + 1;
      if (cbegin == 0) break;
      }
    return null;
   }

function del_cookie(name) {
	 document.cookie = name + '=' + '; expires=Thu, 01-Jan-70 00:00:01 GMT; path=/';
	 return true;
	 }

function get_array(name, ary) {
	 d_a(ary);
	 var ent = get_cookie(name);
	 if (ent) {
	 	  i = 1;
	    while (ent.indexOf('^') != '-1') {
	 	     ary[i] = ent.substring(0,ent.indexOf('^'));
	 	     i++;
         ent = ent.substring(ent.indexOf('^')+1, ent.length);
         }
      }
    }

function set_array(name, ary, expires) {
	 var value = '';
	 for (var i = 1; ary[i]; i++) {
	 	   value += ary[i] + '^';
	 	   }
	 set_cookie(name, value, expires);
	 }

function del_entry(name, ary, pos, expires) {
	var value = '';
	get_array(name, ary);
	for (var i = 1; i < pos; i++) {
		value += ary[i] + '^';
		}
	for (var j = pos + 1; ary[j]; j++) {
		value += ary[j] + '^';
		}
	set_cookie(name, value, expires);
 	}

function next_entry(ary) {
	  var j = 0;
	  for (var i = 1; ary[i]; i++) {
	  	j = i
	  }
	  return j + 1;
	  }

function debug_on() {dbug = 1;}

function debug_off() {dbug = 0;}

function dump_cookies() {
	if (document.cookie == '') document.write('No Cookies Found');
	else
		{
			thisCookie = document.cookie.split('; ');
			for (i=0; i<thisCookie.length; i++)
			   {
			   	document.write(thisCookie[i] + '<br \/>');
			   }
		}
	}

function addproperty(propertylist,ref) {
  var myarray = init_array(); // if it isn't already defined

  get_array(propertylist, myarray);
  if ( posinarray(myarray,ref) == -1) myarray.push(ref);
  set_array(propertylist, myarray, expires);
}

function removeproperty(propertylist,ref) {
  var myarray = init_array(); // if it isn't already defined
  var todelete = -1;

  get_array(propertylist, myarray);

  todelete = posinarray(myarray,ref);
  if (todelete != -1) myarray.splice(todelete,1);

  set_array(propertylist, myarray, expires);
}

function isselected(propertylist,ref) {  // ,resultdiv) {
	var myarray = init_array(); // if it isn't already defined
  var myfind=-1;

  get_array(propertylist, myarray);
  myfind = posinarray(myarray,ref);
  //if (resultdiv)
    // if (myfind == -1) resultdiv.innerHTML='NOOO!'; else resultdiv.innerHTML='SIIII!';
  return myfind;
}




