function MostrarFecha(strCodigoObjeto)
{
  var objFecha = new FechaHora;

  document.getElementById(strCodigoObjeto).innerHTML = objFecha.getFecha;
}

function FechaHora()
{
  this.getFecha = CalcularFecha();
  this.getHora = CalcularHora();
  this.getHoraMilitar = CalcularHoraMilitar();  
}

function CalcularFecha()
{
  var Fecha = new Date();
  
  // Compatibilidad con IE y FireFox
  return(Fecha.getDate() + " de " + getNombreMes(Fecha.getMonth()) + " de " + ((Fecha.getYear()<1000) ? 1900 + Fecha.getYear() : Fecha.getYear()));
}

function CalcularHora()
{
  var Fecha = new Date();
  var strHora;
  
  if(Fecha.getHours()>12)
  {
    strHora = "0" + (Fecha.getHours() - 12) + ":" + ((Fecha.getMinutes()<10) ? "0" + Fecha.getMinutes() : Fecha.getMinutes()) + ":" + ((Fecha.getSeconds()<10) ? "0" + Fecha.getSeconds() : Fecha.getSeconds()) + " PM";
  }
  else
  {
    strHora = ((Fecha.getHours()<10) ? "0" : "") + Fecha.getHours() + ":" + ((Fecha.getMinutes()<10) ? "0" + Fecha.getMinutes() : Fecha.getMinutes()) + ":" + ((Fecha.getSeconds()<10) ? "0" + Fecha.getSeconds() : Fecha.getSeconds()) + " AM";
  }
  
  return(strHora);
}

function CalcularHoraMilitar()
{
  var Fecha = new Date();
  
  return(Fecha.getHours() + ":" + ((Fecha.getMinutes()<10) ? "0" + Fecha.getMinutes() : Fecha.getMinutes()) + ":" + ((Fecha.getSeconds()<10) ? "0" + Fecha.getSeconds() : Fecha.getSeconds()));
}

function getNombreMes(intNumeroMes)
{
  switch(intNumeroMes)
  {
    case 0:
    {
      return("Enero");
      break;
    }

    case 1:
    {
      return("Febrero");
      break;
    }

    case 2:
    {
      return("Marzo");
      break;
    }

    case 3:
    {
      return("Abril");
      break;
    }

    case 4:
    {
      return("Mayo");
      break;
    }

    case 5:
    {
      return("Junio");
      break;
    }

    case 6:
    {
      return("Julio");
      break;
    }

    case 7:
    {
      return("Agosto");
      break;
    }

    case 8:
    {
      return("Septiembre");
      break;
    }

    case 9:
    {
      return("Octubre");
      break;
    }

    case 10:
    {
      return("Noviembre");
      break;
    }

    case 11:
    {
      return("Diciembre");
      break;
    }

    default:
    {
      return("Error: Número de Mes Inválido");
    }
  }
}