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_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 MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}

function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_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; }
}
//*****************************************
// Added DOM detection for Opera which doesn't handle the length property of
// an array of form elements.

function customHandlerForShoes (f,fld,msg) {
    var frm = document.frm ;
    if(frm.radShoes[0].checked) {
        if(chkForChecked(f, fld, msg)) return true; else return false;
    }
    return true ;
}

isDOM = document.getElementById ? 1:0;

function stripSpaces(x) {
    while (x.substring(0,1) == ' ') x = x.substring(1);
    return x;
}

function empty(x) { if (x.length > 0) return false; else return true; }

// Validator function for RADIO and CHECKBOX elements
function chkForChecked (f,fld,msg) {

    var frm = f ;
    var e ;
    var j = 0 ; // This is so that we know which RADIO/CHECKBOX element to return to.

    if(isDOM) {
    // Added the DOM part for Opera which seems to choke on the length
    // property of an array of elements.
        e = document.getElementsByTagName('INPUT'); // returns a Node List

        for (var i=0; i<=e.length-1; ++i){

            if(e[i].name == fld) {
                if(j==0)j=i;
                if ( e[i].checked ) return true;  // one is checked after all!
            }
        }

    }else{

        e = f.elements[fld] ; // returns an array of elements

        for( var i=0; i < e.length; ++i ) {
            if ( e[i].checked ) {
                return true;  // one is checked after all!
                break;
            }
        }
    }

    alert( msg );
    e[j].focus() ;
    return false;
}

// Validator function for TEXT and TEXTAREA elements
function chkForNonblank (f,fld,msg) {

    var frm = f ;
    var e = f.elements[fld]

    if ( ! empty(stripSpaces(e.value))  ) return true;
    alert( msg );
    e.focus() ;
    return false;
}

// Validator function for SELECT elements
function chkForIsSelected (f,fld,msg) {

    var frm = f ;
    var e = f.elements[fld]

    if ( ! e.selectedIndex == 0 ) return true;
    alert( msg );
    e.focus() ;
    return false;
}

// Validator function to check for numeric values.
function chkNumeric (f,fld,msg) {

    var frm = f ;
    var e = f.elements[fld]

    if ( !isNaN(parseInt(e.value)) ) return true;
    alert( msg );
    e.focus() ;
    return false;
}

function validate(f)
{
    for( var i=0; i < fieldsToCheck.length; ++i )
    {
	    if (! fieldsToCheck[i][1](f,fieldsToCheck[i][0],fieldsToCheck[i][2]) ) {
	        return false ;
	    }
    }
    return true ;
}

function chkmail(f,fld,msg){
    var frm = f ;
    var e = f.elements[fld];
	if (e.value!=""){
		if (e.value.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) == -1)
		{
			alert(msg);
			e.focus();
			return false;
		}
	}
	return true;
}
//*****************************************

function cambia(oCntrl,array,actual,valor){
var indice;
while (oCntrl.length) oCntrl.remove(0);
	for (var i=0;i<array[actual.value].length;i++){
		var selOpcion=new Option(array[actual.value][i][1], array[actual.value][i][0]);
		if (array[actual.value][i][0]==valor) indice=i;
			eval(oCntrl.options[i]=selOpcion);
		}
	oCntrl.selectedIndex=indice;
}

function validar_presu(){
	if(!confirm("Se van a enviar los productos presentes en su carrito para ser presupuestados.\nEsta seguro?")){
		return false;
	}else{
		return true;
	}
}