// <%
//////////////////////////////////////////////////////////////////////////////
// Arquivo:  dateUtil.js
// Autor:    Star Sistemas e Projetos Graficos Ltda.
// Data:     13/11/1999, 02/11/2001
// Conteudo: Funcoes para manipulacao e formatacao de datas.
//////////////////////////////////////////////////////////////////////////////

// Formata uma data como string no padrao brasileiro (DD/MM/AAAA).

function FormatDateStr (aDate)
{
   // Obtem valores numericos dos componentes da data.
   var aDay = aDate.getDate();
   var aMonth = aDate.getMonth()+1;
   var aYear = aDate.getYear();
   if (aYear < 200) aYear += 1900;
   // Obtem texto dos valores da data.
   var aDayStr = (aDay > 9 ? String(aDay) : "0" + aDay);
   var aMonthStr = (aMonth > 9 ? String(aMonth) : "0" + aMonth);
   var aYearStr = String(aYear);
   // Formata a data no padrao DD/MM/AAAA.
   return aDayStr + "/" + aMonthStr + "/" + aYear;
}

// Obtem o nome do dia da semana de uma data.

var WeekDayNames = new Array ("Domingo", "Segunda-feira", "Terça-feira",
   "Quarta-feira", "Quinta-feira", "Sexta-feira", "Sábado");

function GetWeekDayName (weekDayNum)
{
   return (weekDayNum >= 0 && weekDayNum <= 6 ? WeekDayNames[weekDayNum] : "");
}

// Obtem o nome de um mes.

var MonthNames = new Array ("", "Janeiro", "Fevereiro", "Março", "Abril", "Maio",
   "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro");

function GetMonthName (monthNum)
{
   return (monthNum >= 1 && monthNum <= 12 ? MonthNames[monthNum] : "");
}

// Numero de milissegundos em um dia. Usado pela rotina AddToDate().

var msPerDay = 24 * 60 * 60 * 1000;

// Adiciona um determinado numero de dias (positivo ou negativo) a uma data.

function AddToDate (aDate, numDays)
{
   aDate.setTime (aDate.getTime() + numDays*msPerDay);
}

// Convertem datas para formatos diversos.

function GetDateFromSeqDateStr (seqDateStr)
{
   // "19991215" -> Date(15/12/1999)
   var day = Number (seqDateStr.substr (6,2));
   var month = Number (seqDateStr.substr (4,2));
   var year = Number (seqDateStr.substr (0,4));
   var aDate = new Date (year, month-1, day, 12, 0, 0);
   return aDate;
}

function GetDateFromFormDateStr (seqDateStr)
{
   // "15/12/1999" -> Date(15/12/1999)
   var day = Number (seqDateStr.substr (0,2));
   var month = Number (seqDateStr.substr (3,2));
   var year = Number (seqDateStr.substr (6,4));
   var aDate = new Date (year, month-1, day, 12, 0, 0);
   return aDate;
}

// %>

