Date.prototype.getDiff = function(date, interval){
  if (typeof date == "string"){
     date = new Date(date);
  }
  if (isNaN(date) || !(date instanceof Date)){
     return NaN; //invalid date passed
  }
  if (typeof interval == "undefined") interval = "ms"; //msec (default)
  var diff = this - date; //alert(this+' - '+date+" = "+diff)//diff in msec
  switch(interval.toLowerCase()){
    case "s": //sec
      diff = diff/1000; break;
    case "n": //min
      diff = diff/(1000*60); break;
    case "h": //hr
      diff = diff/(1000*60*60); break;
    case "d": //day
      diff = diff/(1000*60*60*24); break;
    case "m": //month
      diff = diff/(1000*60*60*24*30); break;
    case "y": //year
      diff = diff/(1000*60*60*24*365); break;
    default:
      ; //msec
  }
  return Math.floor(diff);
}

var arrBday = [
['Rúsber Bernardes (3)', '1/3/2000'],
['Ivan Bernardes (4)', '1/4/2000'],
['Sérgio Andrade (4)', '1/4/2000'],
['Manoel Bernardes (10)', '1/10/2000'],
['Ivanilda Bernardes (10)', '1/10/2000'],
['Patrícia Bernardes (16)', '1/16/2000'],
['Mônica Bernardes (19)', '2/19/2000'],
['Ercídio Bernardes (20)', '2/20/2000'],
['Ana Carolina (22)', '2/22/2000'],
['Suely Bernardes (25)', '2/25/2000'],
['Carolina Brito (12)', '3/12/2000'],
['Fábio Andrade (12)', '3/12/2000'],
['Thainá Bernardes (12)', '3/12/2000'],
['Sabrina Brito (16)', '3/16/2000'],
['Marcelo Bernardes (20)', '3/20/2000'],
['Gabriel Bernardes (26)', '3/26/2000'],
['Vilmondes Martins (2)', '4/2/2000'],
['Maria Vitória (25)', '4/25/2000'],
['Roberto Silva (26)', '4/26/2000'],
['Bruno Caixeta (27)', '4/27/2000'],
['Cecília Matos (28)', '4/28/2000'],
['Regina (29)', '4/29/2000'],
['Márcio Andrade (5)', '5/5/2000'],
['Antônia Augusta (15)', '5/15/2000'],
['Robson Bernardes (22)', '5/22/2000'],
['Urbano Bernardes (25)', '5/25/2000'],
['Manoel Vitor (6)', '6/6/2000'],
['Fernanda Bernardes (16)', '6/16/2000'],
['Carlos Henrique (22)', '6/22/2000'],
['Alícia Bernardes (28)', '6/28/2000'],
['Maria Lúcia (1)', '7/1/2000'],
['Ivan Júnio (2)', '7/2/2000'],
['Márcia Silva (12)', '7/12/2000'],
['Marcelino Bernardes (14)', '7/14/2000'],
['Nidalva Bernardes (28)', '7/28/2000'],
['Getúlio Bernardes (31)', '7/31/2000'],
['Maria Helena (1)', '8/1/2000'],
['Maria de Lourdes (13)', '8/13/2000'],
['Fernanda Andrade (13)', '8/13/2000'],
['Alan Bernardes (20)', '8/20/2000'],
['Luciana Caixeta (4)', '9/4/2000'],
['Esther Andrade (11)', '9/11/2000'],
['Cláudio Andrade (11)', '9/11/2000'],
['Vitor da Silva (16)', '9/16/2000'],
['Aramita Dias (19)', '9/19/2000'],
['Diogo Silva (22)', '9/22/2000'],
['Karla Bernardes (27)', '9/27/2000'],
['Jorge da Silva (3)', '10/3/2000'],
['Denise Andrade (5)', '10/5/2000'],
['Rusimário Bernardes (10)', '10/10/2000'],
['Márcio Andrade (15)', '10/15/2000'],
['Aida Maria (9)', '11/9/2000'],
['Mateus (11)', '11/11/2000'],
['Jéssica Alves (18)', '11/18/2000'],
['Juversina Maria (25)', '11/25/2000'],
['Meire Dias (29)', '11/29/2000'],
['Marléria Matos (2)', '12/2/2000'],
['Félix Chagas (8)', '12/8/2000'],
['Ana Paula (15)', '12/15/2000'],
['Artur (25)', '12/25/2000'],
['Heloísio Antônio (29)', '12/29/2000']
  ];

function getBdayList(numDays){
  var bday,temp,idx,diff;
  var today = new Date();
  var bdayList = new Array();
  for (var i=0;i<arrBday.length;i++){
    bday = new Date(arrBday[i][1]);
    if (isNaN(bday)) continue;
    temp = new Date(today.getFullYear(), bday.getMonth(), bday.getDate(), 23, 59, 59, 999);
    diff = temp.getDiff(today, "d");
    if (diff >= 0 && diff <= numDays){
       idx = bdayList.length;
       bdayList[idx] = new Object();
       bdayList[idx].name = arrBday[i][0];
       bdayList[idx].bday = arrBday[i][1];
       bdayList[idx].age = today.getDiff(bday, "y");
       if (diff > 0) bdayList[idx].age = bdayList[idx].age + 1;
       bdayList[idx].today = (diff == 0) ? true : false;
       bdayList[idx].site = arrBday[i][2];
    }
  }
  return bdayList;
}

function displayBdayList(){
  var bdayList = getBdayList(15);
  var len = bdayList.length;
  var s1 = ""; //today's bday list
  var s2 = ""; //next 1 week's bday list
  if (len>0){
    for (var i=0; i<len; i++){
       if (bdayList[i].today){
          if (s1 != ""){
             s1 += ', ' +  bdayList[i].name;
          }
          else{
             s1 = '<span class="niver">Hoje:<br> </span> ' +  bdayList[i].name ;
          }
       }
       else{
         if (s2 != ""){
            s2 += ', ' +  bdayList[i].name;
         }
         else{
            s2 = '<br><span class="niver">Próximos 15 dias:<br> </span> ' +  bdayList[i].name;
         }
       }
     }
  }
  else{
    s1 = '<span class="texto_03"><br><p align="center">Sem aniversariantes nos próximos 15 dias</span> ';
  }
  document.write('<div>' + s1 + '</div><div>' + s2 + '</div>');
}
