// JavaScript Document
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 isNumber(field,label)
{
        if(field.value.length>0 && (field.value.indexOf('.')!=-1 || isNaN(field.value/2)
        || field.value.indexOf(',')!=-1))
        {
                alert('El campo '+label+' solamente puede contener números');
                field.focus();
                return false;
        }
        return true;
}

function maxLength(field, label,max)
{
        if(field.value.length>max )
        {
                alert('El campo '+label+' no pude pasar de '+max+' caracteres');
                field.focus();
                return false;
        }
        return true;
}


function isPhoneNumber(codeField, phoneField, label)
{
        var code = codeField.value;
        var phone = phoneField.value;
        var numericChars=/[0-9]+/gi;
        if(code.search(numericChars)==-1 || phone.search(numericChars))
        {
                alert('El campo '+label+' no contiene un número telefónico válido');
                phoneField.focus();
                return false;
        }
        return true;
}

function isDate(field, label)
{
        if(field.value==null || field.value.length<10)
        {
                alert('El campo '+label+' es requerido');
                return false;
        }
        return true;
}
function isMailAddress(field, label)
{
        if(field.value==null || field.value=="")
        {
                alert('El campo '+label+' es requerido');
                field.focus();
                return false;
        }
        else
        {
                if(field.value.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/)==
-1)
                {
                        alert("El campo " + label + " no contiene una dirección de correo electrónico válida");
                        field.focus();
                        return false;
                }
        }
        return true;
}

function requiredNotCero(field, label){
        if(field.type=='select-one')
        {
                if(field[field.selectedIndex].value==null || field[field.selectedIndex].value==undefined || field[
field.selectedIndex].value==''
                || field[field.selectedIndex].value=='0')
                {
                        alert('Debe seleccionar una opción para el campo '+label);
                        field.focus();
                        return false;
                }
        }
        else
        {
                myOption = -1;
                for (i=field.length-1; i > -1; i--)
                {
                        if (field[i].checked) {
                                myOption = i;
                        }
                }
                if (myOption == -1)
                {
                        alert('Debe marcar una opci?n para el campo '+label);
                        field[0].focus();
                        return false;
                }
        }
        return true;
}

function required(field, label)
{
        if(field.length!=null)
        {
                if(field.type=='select-one')
                {
                        if(field[field.selectedIndex].value==null || field[field.selectedIndex].value==undefined || field[field.selectedIndex].value=='')
                        {
                                alert('Debe seleccionar una opción para el campo '+label);
                                field.focus();
                                return false;
                        }
                }
                else
                {
                        myOption = -1;
                        for (i=field.length-1; i > -1; i--)
                        {
                                if (field[i].checked) {
                                        myOption = i;
                                }
                        }
                        if (myOption == -1)
                        {
                                alert('Debe marcar una opción para el campo '+label);
                                field[0].focus();
                                return false;
                        }
                }
        }
        else
        {

                if(field.value==null || field.value=="")
                {
                        alert('El campo '+label+' es requerido');
                        field.focus();
                        return false;
                }
        }
        return true;
}

function isValidPassword(field,field1){
        if (field.value!=field1.value){
                        alert('No coinciden los password');
                        field.focus();
                        return false;
        }
        return true;
}

function validateDepen(value,field1,field,label){
        myOption = -1;
        for (i=field1.length-1; i > -1; i--)
        {
                if (field1[i].checked) {
                        myOption = field1[i].value;
                }
        }
        if (myOption == value)
        {
                myOption = -1;
                for (i=field.length-1; i > -1; i--)
                {
                        if (field[i].checked) {
                                        myOption = i;
                                }
                        }
                        if (myOption == -1)
                        {
                                alert('Debe marcar una opción para el campo '+label);
                                field[0].focus();
                                return false;
                        }
        }
        return true;
}

function validateDepenText(value,field1,field,label){
        myOption = -1;
        for (i=field1.length-1; i > -1; i--)
        {
                if (field1[i].checked&&field1[i].value==value) {
                        myOption = field1[i].value;
                }
        }
        if (myOption == value)
        {
                if(field.value==null || field.value=="")
                {
                        alert('El campo '+label+' es requerido');
                        field.focus();
                        return false;
                }
        }
        return true;
}

//uso: en el input onkeypress="return numbersonly(event);"
function numbersonly(e){
        var unicode=e.charCode? e.charCode : e.keyCode
        if (unicode!=8){ //if the key isn't the backspace key (which we should allow)
        if (unicode<48||unicode>57) //if not a number
        return false //disable key press
        }
}
