
//the bday array data can be generated from server-side
var arrBday = [
['Abraham', '5/13/1981'],
['Alex', '5/5/1983'],
['Agus', '8/1/1975'],
['Achiu', '4/27/1970'],
['Ai Hua', '9/24/1980'],
['Anna', '12/21/1974'],
['Chang Kon Lie', '11/5/1932'],
['Ciang Ha (Achiang)', '12/23/1977'],
['Claudia Lie Jin', '12/19/1973'],
['Candra', '3/14/1983'],
['Cindrawati', '3/29/1965'],
['David Santolo', '5/9/1967'],
['David', '1/4/1982'],
['Dedy Nasir', '12/16/1983'],
['Didik', '12/15/1975'],
['Eva Hidayat', '2/5/1958'],
['Evita Sonya Huntono', '8/15/1981'],
['Endy Redi Fong', '12/13/1980'],
['Effi', '5/17/1969'],
['Enny', '11/9/1972'],
['Evy', '3/8/1980'],
['Ev. Nani Priscilla', '7/24/1976'],
['Ev. Feldi Endercun', '3/16/1977'],
['Fuk Kong', '7/18/1980'],
['Fifi Ester', '11/15/1975'],
['Ferly', '9/10/1984'],
['Hady Slamet', '11/17/1985'],
['Hasnah (anna)', '10/26/1980'],
['Henny', '11/20/1950'],
['Hartinah (Dina)', '12/18/1972'],
['Hery Christian', '1/2/1952'],
['Heriman', '6/25/1967'],
['Iwan Hanafi (Amiau)', '3/11/1955'],
['Jonny', '12/2/1982'],
['John Dwipasa', '9/19/1974'],
['Junardi Linus', '3/24/1980'],
['Kuncoro', '10/14/1987'],
['Lany Suhardi', '7/10/1976'],
['Linah Yarangga', '6/17/1982'],
['Lukky Kurniawan', '2/20/1973'],
['Lim Tjen  Moi (Ami)', '12/20/1967'],
['Lidya', '10/17/1983'],
['Lena', '12/25/1964'],
['Lukas Marcello', '10/6/1976'],
['Linda', '7/22/1972'],
['Monalisa Siringo-ringo', '2/18/1977'],
['Mangantas Eddy Sinaga', '4/14/1975'],
['Metta', '10/13/1989'],
['Mario Kembara', '3/25/1987'],
['Ma Kim Djin (Ayin)', '12/8/1957'],
['Novriyana', '11/15/1982'],
['Nurhaya', '11/5/1970'],
['Rika', '4/27/1987'],
['Robby', '9/20/1973'],
['Rudy Hontono', '8/14/1979'],
['Rizal Calvary', '8/30/1974'],
['Siu Lian (Asien)', '11/23/1977'],
['Siu-siu', '10/7/1968'],
['Sun A Sui', '4/8/1961'],
['Susan', '4/19/1970'],
['Sumen', '3/22/1977'],
['Teriman (Kim Fong)', '8/29/1973'],
['Tjong Mi Sin (Hendrik Aseng)', '1/19/1954'],
['Tjong Sauw Thin', '5/13/1951'],
['Vinny V Cristy', '1/4/1977'],
['Yohan Handoyo', '10/28/1970'],
['Yanto', '11/24/1974'],
['Yunus', '8/22/1970'] 
  //...and so on (last entry must not have a trailing comma)
];

function getBdayList(month){
  var bday, idx;
  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;
    if (month == bday.getMonth()){
       idx = bdayList.length;
       bdayList[idx] = new Object();
       bdayList[idx].name = arrBday[i][0];
       bdayList[idx].bday = bday;
       bdayList[idx].age = today.getFullYear() - bday.getFullYear();       
    }
  }
  if (bdayList.length > 0){ //sort asc by birthdate
     bdayList.sort(
       function(a, b){
         if (a.bday.getDate() < b.bday.getDate()) return -1;
         if (a.bday.getDate() > b.bday.getDate()) return 1;
         return 0;
       }
     );
  }
  return bdayList;  
}

function displayBdayList(){
  var arrMonth = new Array("Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "October", "November", "December");
  var month = new Date().getMonth();
  var date = new Date().getDate();
  var monthName = arrMonth[month];
  var bdayList = getBdayList(month);
  var len = bdayList.length;
  var s = "<h4>Yang berulang tahun bulan " + monthName + "</h4>";
  if (len>0){
    s += '<ul>';
    for (var i=0; i<len; i++){
       //no age
       s += '<li' + ((date == bdayList[i].bday.getDate())?' class="bdayToday"':'') + '><strong>' + bdayList[i].name + "</strong> (" + bdayList[i].age + "th) - Tgl " + bdayList[i].bday.getDate() + " " + monthName + "</li>";

       //with age
       //s += '<li' + ((date == bdayList[i].bday.getDate())?' class="bdayToday"':'') + '><strong>' + bdayList[i].name + "</strong> - Tanggal " + bdayList[i].bday.getDate() + " " + monthName + " (" + bdayList[i].age + ")</li>";
    }
    s += '</ul>';
  }
  else{
    s += "Tidak ada yg Ultah bulan ini.";
  }
  document.write(s);
}

