function generate_cal(){

var today = new Date();
var d= new Date();
if (today.getMonth() < 7){
  d.setMonth(0,1);
  var start_month = 0;
  var to_month = 5;
}
else {
  d.setMonth(7,1);
  var start_month = 5;
  var to_month = 10;
}

var first_day = d.getDay(); //determine day of the week of first of jan/aug
var month = new Array("January","February","March","April","May","August","September","October","November","December");
var month_days = new Array(31,28,31,30,31,31,30,31,30,31);
if (d.getFullYear() % 4 == 0){
  month_days[1] = 29; //it's a leap year
}

for (var i = start_month; i < to_month; i++){
  if (i != 0 && i != 5){
  document.write("<td>\n");}
  document.write("\n<table class=\"month\"><tr><th colspan=\"7\">&laquo; ");
  document.write(month[i]);
  document.write(" &raquo;</th></tr>\n");
  document.write("<tr><td>S</td><td>M</td><td>T</td><td>W</td><td>H</td><td>F</td><td>S</td></tr>\n");
    var day = 1;
  var next_first = first_day + month_days[i] % 7;
  if (next_first >= 7){
    next_first= next_first - 7;
  }
  for (var j = 0; j < 6; j++){
      document.write("<tr>");
      for (var m= 0; m < 7; m++){
        document.write("<td");
        if (first_day > 0 ){
          document.write(">&nbsp;");
          first_day--;
        }
        else if (day <= month_days[i]) {
          document.write(" id=\"",month[i],"_",day,"\">");
          document.write(day);
          day++;
        }
        else {
          document.write(">&nbsp;");
        }
        document.write("</td>\n");
      }
      document.write("</tr>\n\n");
  }
  first_day = next_first;
  document.write("</table>");
//document.write("</td>");
  if (i ==(start_month + 2)){
    	document.write("</tr><tr>\n");  
  }
}

document.getElementById(month[today.getMonth()]+"_"+today.getDate()).style.textDecoration= "underline";
document.getElementById(month[today.getMonth()]+"_"+today.getDate()).style.fontWeight= "bolder";

}

function event_desc(arg,type,what_evt,start,end){
  if (start && end){
     for (var k = start; k <= end; k++){
        arg_this = arg + "_" + k;
        document.getElementById(arg_this).className=type;
        document.getElementById(arg_this).innerHTML="<a href=\"#"+what_evt+"\">"+document.getElementById(arg_this).innerHTML+"</a>";
     }
  }
  else {
  document.getElementById(arg).className=type;
  document.getElementById(arg).innerHTML="<a href=\"#"+what_evt+"\">"+document.getElementById(arg).innerHTML+"</a>";  
  }
}
