/************************************
* Script para Contratación Pública  *
*        06/04/2010 8:41:53         *
*************************************/

function fFormLimpiaValDef(cBox,sValor)
{
  if(cBox.value==sValor) cBox.value='';
}
  //-----------------------------

function ChekFecha(fInFecha,fInAviso)
{
    var bOkFecha = true;

    function finMes(nMes, nAno)
    {
       var nRes = 0;

       switch(nMes)
       {
          case  1: nRes = 31; break;

          case  2: if((nAno % 4)==0) nRes = 29; else nRes = 28;
                   break;

          case  3: nRes = 31; break;
          case  4: nRes = 30; break;
          case  5: nRes = 31; break;
          case  6: nRes = 30; break;
          case  7: nRes = 31; break;
          case  8: nRes = 31; break;
          case  9: nRes = 30; break;
          case 10: nRes = 31; break;
          case 11: nRes = 30; break;
          case 12: nRes = 31; break;
       }

       return nRes;
    }

    function valMes(nMes)
    {
       var bOk = false;

       bOk = ((nMes >= 1) && (nMes <= 12));

       return bOk;
    }

    function fValFecha(sFecha)
    {
      var bOk = false; var bSep = false;
      var aa = 0; var mm = 0; var dd = 0;
      var sAx = ''; var ii = 0;
      var nTam = sFecha.value.length;

      if(nTam>0 && sFecha.value!='-')
      {
         while((ii < nTam) && !bSep)
         {
            bSep = (sFecha.value.charAt(ii) == '/');
            if(!bSep) sAx = sAx + sFecha.value.charAt(ii);
            ii++;
         }
         dd = parseInt(sAx,10);

         sAx = ''; bSep = false;
         while((ii < nTam) && !bSep)
         {
            bSep = (sFecha.value.charAt(ii) == '/');
            if(!bSep) sAx = sAx + sFecha.value.charAt(ii);
            ii++;
         }
         mm = parseInt(sAx,10);
         aa = parseInt(sFecha.value.substr(ii),10);
         sAA = sFecha.value.substr(ii);

         if(sAA.length==2)
         {
           if(aa<30) aa+=2000; else aa+=1900;
           sAA=String(aa);
         }

         bOk = ((String(aa).length==4) && valMes(mm) && (dd >= 1) && (dd <= finMes(mm, aa)));

         if(dd<10) sDD='0'+String(dd); else sDD=String(dd);
         if(mm<10) sMM='0'+String(mm); else sMM=String(mm);

         if (!bOk)
         {
          //  alert("Fecha inválida ");
         //   sFecha.value = "";
            sFecha.focus();
         } else sFecha.value = sDD+"/"+sMM+"/"+sAA;

      } else bOk = true;  //<-- tam > 0

      return bOk;
    }
  //-----------------------------

  if(!fValFecha(fInFecha))
  {
    bOkFecha = false;
    fInAviso.value = "NO VÁLIDA";
    fInFecha.focus();
  } else fInAviso.value = "";

  return bOkFecha;
}



