function this_month() {
	if(typeof document.forms["calendar_form"] != "undefined"){
  dt = new Date();
  current_month  = dt.getMonth();
  day_of_month = dt.getDate();
  day_of_week = dt.getDay();
  yr = dt.getFullYear();
  month_name = get_month_name(current_month)+ " ";
  document.forms["calendar_form"].day.value = day_of_month;
  document.forms["calendar_form"].month.value = current_month;
  document.forms["calendar_form"].year.value = yr;
  document.forms["calendar_form"].curr_month.value = current_month;
  document.forms["calendar_form"].curr_year.value = yr;
  document.forms["calendar_form"].curr_day.value = day_of_month;
  
  document.forms["calendar_form"].month_year.value = month_name+yr;
  document.forms["calendar_form"].submit_date.value = yr+"-"+(current_month+1)+"-"+day_of_month;

  dt1 = new Date((current_month+1)+"/1/"+yr);
  day_of_week1 = dt1.getDay(); /*0-6*/
  no_of_days_in_month = get_no_of_days_in_month(current_month+1,yr);
  fill_dates(day_of_week1+1,no_of_days_in_month, current_month, yr);
}
}

function get_month_name(current_month) {
 if (current_month == 0) {
  name = "Jan";
 }else if(current_month==1) {
  name = "Feb";
 }else if(current_month==2) {
  name = "Mar";
 }else if(current_month==3) {
  name = "Apr";
 }else if(current_month==4) {
  name = "May";
 } else if(current_month==5) {
  name = "Jun";
 } else if(current_month==6) {
  name = "Jul";
 } else if(current_month==7) {
  name = "Aug";
 } else if(current_month==8) {
  name = "Sep";
 } else if(current_month==9) {
  name = "Oct";
 } else if(current_month==10) {
  name = "Nov";
 } else if(current_month==11) {
  name = "Dec";
 }
 return name;
}


function get_no_of_days_in_month(month,yr) { 
leap = 0; 
if((yr % 4) ==0) {
   leap = 1;
 }
 no_days=0;
 if ( (month == 1) || (month == 3) || (month == 5) ||
      (month == 7) || (month == 8) || (month == 10) ||
      (month == 12)) {
  no_days=31;
 } else if (month == 2) {
           no_days=28+leap;
        } else {
           no_days=30;
 }
 return no_days;       
}

function fill_dates(day,no_days, month, yr) {
 dt = new Date();
  current_month  = dt.getMonth();
  day_of_month = dt.getDate();
  current_yr = dt.getFullYear();
  this_day = (day*1 - 1) + day_of_month*1;
 for(var i=1; i<43; i++) {
   str = "d"+i;
   document.forms["calendar_form"].elements[str].value="";
 }
 for(var i=1; i<(no_days+1); i++) {
  element_name = "d"+day;
  val="";
  if (i<10) {
    val = " "+i+" ";
  } else {
    val = i;
  }
  document.forms["calendar_form"].elements[element_name].value = val;
  day++;
 }
 
  if(current_month == month && current_yr==yr){    
    id="d"+this_day;
    document.getElementById(id).style.fontWeight="bold";
  } 
}

function set_next_month() {
 var curr_month = document.forms["calendar_form"].month.value;
 curr_yr = document.forms["calendar_form"].year.value;

 if (curr_month == "11") {
    next_month = 0;
    next_yr = curr_yr;
    next_yr++;
 } else {
   next_month=curr_month;
   next_month++;
   next_yr = curr_yr;
 }

 month_name = get_month_name(next_month);
 document.forms["calendar_form"].month.value=next_month;
 document.forms["calendar_form"].year.value=next_yr;
 document.forms["calendar_form"].month_year.value= month_name+" "+next_yr;

 dt = new Date((next_month+1)+"/1/"+next_yr);
 day_of_week = dt.getDay();
 no_of_days = get_no_of_days_in_month(next_month+1,next_yr);

 fill_dates(day_of_week+1,no_of_days, next_month, next_yr);
}

function set_prev_month() {

 var curr_month = document.forms["calendar_form"].month.value;
 curr_yr = document.forms["calendar_form"].year.value;

 if (curr_month == "0") {
    prev_month = 11;
    prev_yr = curr_yr;
    prev_yr--;
 } else {
   prev_month=curr_month;
   prev_month--;
   prev_yr = curr_yr;
 }

 dt = new Date((prev_month+1)+"/1/"+prev_yr);
 day_of_week = dt.getDay();

 month_name = get_month_name(prev_month);
 document.forms["calendar_form"].month.value=prev_month;
 document.forms["calendar_form"].year.value=prev_yr;
 document.forms["calendar_form"].month_year.value= month_name+" "+prev_yr;

 no_of_days = get_no_of_days_in_month(prev_month+1,prev_yr);
 fill_dates(day_of_week+1,no_of_days, prev_month, prev_yr);
}

function set_date(str) {
 if (str == "") {
  return;
 }
 month = document.forms["calendar_form"].month.value;
  month++;
 year = document.forms["calendar_form"].year.value;
 submit_date = year+"-"+month+"-"+(str.replace(/^\s+/, ''));
  document.forms["calendar_form"].submit_date.value = submit_date;
document.forms["calendar_form"].submit();
}
