
<!--Hide from JS-Impaired Browsers
function numDaysIn(mth,yr) {
 if (mth==3 || mth==5 || mth==8 || mth==10) return 30;
 else if ((mth==1) && leapYear(yr)) return 29;
 else if (mth==1) return 28;
 else return 31;
}
function leapYear(yr) {
 if (((yr % 4 == 0) && yr % 100 != 0) || yr % 400 == 0)
  return true;
 else
  return false;
}
// fixes a Netscape 2 and 3 bug
function getFullYear(d) { // d is a date object
 yr = d.getYear();
 if (yr < 1000)
  yr+=1900;
 return yr;
}
function arr() {
 for (n=0;n<arr.arguments.length;n++) {
  this[n] = arr.arguments[n];
 }
}

//weekdays = new arr("Sun.","Mon.","Tues.","Wed.",
// "Thurs.","Fri.","Sat.");
// *** comment out the one you don't want to use ***
weekdays = new arr("Sunday","Monday","Tuesday","Wednesday",
 "Thursday","Friday","Saturday");

//months = new arr("Jan.","Feb.","Mar.","Apr.","May",
// "June","July","Aug.","Sep.","Oct.","Nov.","Dec.");
// *** comment out the one you don't want to use ***
months = new arr("January","February","March","April","May",
 "June","July","August","September","October","November","December");


var flg=0;
var today = new Date();

/* You control the size of this calendar
   by specifying the font size (from 1
   through 7) in the var fs below. */
var fs=3;

/* The events array - E - below uses an
     array element for each month from
     Jan thru Dec. The string for each
     month is indexed with a tilde (~), the
     date and a space, followed by the
     event description.  Substitute the
     events you wish here. Use two lines
     (with <BR>) for each. */
E=new arr("","","","","","","","","","","","");
E[0]="~~";
E[1]="~13 <a href='../../education/summit/index.html'>Forecasting Summit 2006<BR>Orlando, FL</A>~14 <a href='../../education/summit/index.html'>Forecasting Summit 2006<BR>Orlando, FL</A>~15 <a href='../../education/summit/index.html'>Forecasting Summit 2006<BR>Orlando, FL</A>~16 <A href='../../education/training/index.html'>XE & Unlimited<BR> Training Orlando</A>~";
E[2]="~~";
E[3]="~3 <A href='../../education/training/index.html'>Forecast Pro Training<BR>Boston, MA</A>~4 <A href='../../education/training/index.html'>Forecast Pro Training<BR>Boston, MA</A>~";
E[4]="~8 <A href='../../education/seminars/index.html'>Forecasting Seminar<BR>San Francisco, CA</A>~9 <A href='../../education/seminars/index.html'>Forecasting Seminar<BR>San Francisco, CA</A>~10 <A href='../../education/seminars/index.html'>Forecasting Seminar<BR>San Francisco, CA</A>~21 <A href='http://www.bestmeetings.com/pmsa/indexa.cfm' TARGET='_BLANK'>PMSA Conference<BR>Hilton Head, SC</A>~22 <A href='http://www.bestmeetings.com/pmsa/indexa.cfm' TARGET='_BLANK'>PMSA Conference<BR>Hilton Head, SC</A>~23 <A href='http://www.bestmeetings.com/pmsa/indexa.cfm' TARGET='_BLANK'>PMSA Conference<BR>Hilton Head, SC</A>~24 <A href='http://www.bestmeetings.com/pmsa/indexa.cfm' TARGET='_BLANK'>PMSA Conference<BR>Hilton Head, SC</A>~";
E[5]="~11 <A href='http://www.isf2006.org/' TARGET='_BLANK'>ISF<BR>Santander, Spain</A>~12 <A href='http://www.isf2006.org/' TARGET='_BLANK'>ISF<BR>Santander, Spain</A>~13 <A href='http://www.isf2006.org/' TARGET='_BLANK'>ISF<BR>Santander, Spain</A>~14 <A href='http://www.isf2006.org/' TARGET='_BLANK'>ISF<BR>Santander, Spain</A>~19 <A href='http://www.belge.com.br/cursos_eventos/congressos/innovation_2006/index.htm' TARGET='_BLANK'>Innovation 2006<BR>Itu, SP, Brazil</A>~20 <A href='http://www.belge.com.br/cursos_eventos/congressos/innovation_2006/index.htm' TARGET='_BLANK'>Innovation 2006<BR>Itu, SP, Brazil</A>~21 <A href='http://www.belge.com.br/cursos_eventos/congressos/innovation_2006/index.htm' TARGET='_BLANK'>Innovation 2006<BR>Itu, SP, Brazil</A>~";
E[6]="~24 <A href='../../education/training/index.html'>Forecast Pro Training<BR>Boston, MA</A>~25 <A href='../../education/training/index.html'>Forecast Pro Training<BR>Boston, MA</A>~";
E[7]="~14 <A href='../../education/training/index.html'>Quick Start Training<BR>Chicago, IL</A>~15 <A href='../../education/training/index.html'>Quick Start Training<BR>Los Angeles, CA</A>~21 <A href='../../education/training/index.html'>Quick Start Training<BR>Washington, DC</A>~22 <A href='../../education/training/index.html'>Quick Start Training<BR>Atlanta, GA</A>~";
E[8]="~11 <A href='../../education/training/index.html'>Forecast Pro Training<BR>Brussels</A>~12 <A href='../../education/training/index.html'>Forecast Pro Training<BR>Brussels</A>~25 <a href='../../education/summit/index.html'>Forecasting Summit 2006<BR>Boston, MA</A>~26 <a href='../../education/summit/index.html'>Forecasting Summit 2006<BR>Boston, MA</A>~27 <a href='../../education/summit/index.html'>Forecasting Summit 2006<BR>Boston, MA</A>~28 <A href='../../education/training/index.html'>XE & Unlimited<BR> Training Boston</A>~";
E[9]="~29 <A href='http://www.apics.org/Education/Conference' TARGET='_BLANK'>APICS<BR>Orlando, FL</A>~30 <A href='http://www.apics.org/Education/Conference' TARGET='_BLANK'>APICS<BR>Orlando, FL</A>~31 <A href='http://www.apics.org/Education/Conference' TARGET='_BLANK'>APICS<BR>Orlando, FL</A>~";
E[10]="~~";
E[11]="~12 <A href='../../education/training/index.html'>Forecast Pro XE Training<BR>Phoenix, AZ</A>~13 <A href='../../education/training/index.html'>Forecast Pro XE Training<BR>Phoenix, AZ</A>~14 <A href='../../education/training/index.html'>Forecast Pro Unlimited Training<BR>Phoenix, AZ</A>~15 <A href='../../education/training/index.html'>Forecast Pro Unlimited Training<BR>Phoenix, AZ</A>~";


/* You can hard code the year by setting
   hard_code_year to true and then setting the
   hard_yr variable to the year you want */
hard_code_year = true; // change to true if desired
hard_yr = 2006; // specify your hard coded year if desired

/* You can hard code the month by setting
   hard_code_date to true and then setting the
   hard_mo variable to the month you want */
hard_code_date = false; // change to true if desired
hard_mo = 3; // 0=Jan, 1=Feb, etc.

function Calendar(){
 mo=today.getMonth();
 rd=today.getDate();
 yr=getFullYear(today);
 if (location.search.length > 1) {
  mon = parseInt(location.search.substring(1,location.search.length));
  if (((""+mon).length<=2) && (mon >= 0) && (mon <= 11)) {
   mo = mon;
   rd = -99; // so current day doen't get highlighted
  }
 }
 if (hard_code_year) {
  yr = hard_yr;
  rd = -99; // so current day doen't get highlighted
 }
 if (hard_code_date) {
  mo = hard_mo;
  rd = -99; // so current day doen't get highlighted
 }
 bgn=new Date(months[mo]+" 1,"+yr);
 dy=bgn.getDay();
 ld=numDaysIn(mo,yr);
 document.write("<TABLE BORDER=2"
 +" BGCOLOR='#ffffff' WIDTH='575'><TR><TD ALIG"
 +"N=CENTER COLSPAN=7><FONT SIZE="
 +fs+" color='#BF7331'><B>"+months[mo]+" "+yr+"</B></FONT></TD>"
 +"</TR><TR VALIGN=TOP>");
 for (var i=0;i<7;i++){
  document.write("<TD VALIGN=TOP ALIGN=CENTER WIDTH=14%>"
  +"<FONT SIZE=-1 color='#BF7331'>"+weekdays[i]+"</FONT></TD>");
 }
 document.write("</TR><TR VALIGN=TOP>");
 ctr=0;
 for (var i=0;i<7;i++) {
  /* If the ctr is less than the day of the
     week determined to be the first day
     of the month, print a space in
     this cell of the table. */
  if (i<dy){
   document.write("<TD ALIGN=CENTER VALIGN=TOP>"
   +"<FONT SIZE="+fs+">&nbsp;</FONT>"
   +"</TD>");
  }
  /* Otherwise, write date and the event,
     if any, in this cell of the table. */
  else {
   ctr++;
   di=i; // carry var i outside this routine
   dupWrt();
  }
 }
 document.write("</TR><TR VALIGN=TOP>");
 while (ctr<ld){
  for (var i=0;i<7;i++){
   ctr++;
   /* If the ctr is greater than the last
      day of the month, print a space in
      this cell of the table. */
   if (ctr>ld){
    document.write("<TD VALIGN=TOP ALIGN=CENTER>"
    +"&nbsp;</TD>");
   }
   /* Otherwise, write date and the event,
      if any, in this cell of the table. */
   else{
    di=i; // carry var i outside this routine
    dupWrt();
   }
  }
  document.write("</TR><TR>");
  }
 jump = "";
 if (mo < 1)
  jump += '<a href="Calendar2005.html?11">&lt;-- View December</a>';
 if ((mo > -1) && (mo < 1))
  jump += " &nbsp; | &nbsp; <a href='index.html'>Current Month</a> &nbsp; | &nbsp; ";
 if (mo > 0)
  jump += '<a href="index.html?'+(mo-1)+'">&lt;-- View '+months[mo-1]+'</a>';
 if ((mo > 0) && (mo < 11))
  jump += " &nbsp; | &nbsp; <a href='index.html'>Current Month</a> &nbsp; | &nbsp; ";
 if (mo < 11)
  jump += '<a href="index.html?'+(mo+1)+'">View '+months[mo+1]+' --&gt;</a>';
 if ((mo > 10) && (mo < 12))
  jump += " &nbsp; | &nbsp; <a href='index.html'>Current Month</a> &nbsp; | &nbsp; ";
 if (mo > 10)
  jump += '<a href="Calendar2007.html?0">View January --&gt;</a>';
 if (hard_code_date)
  jump += "";
 document.write("</TR><TR><TD colspan=7 align=center><font size='1'>"+jump+"</font></TD></TR></TABLE>");
}
function dupWrt() {
 document.write("<TD VALIGN=TOP ALIGN=CENTER>"
 +"<FONT SIZE="+fs);
 blue=0;
 /*if (di==0){
   Change color to whatever color you wish
     for Sundays to be differentiated on
     screen.  I used red here.
  document.write(" COLOR='#0000cc'");
  blue=1;
 } */
 if (ctr==rd){
  /* Change color to whatever color you wish
     for the current date to be differentiated on
     screen.  I used green here.  */
  document.write(" COLOR='#00cc00'");
  blue=1;
 }
 /* For dates without an event, an HTML padder
    that will align dates properly with dates
    having an event. Here, space break space. */
 tmp="&nbsp;<BR>&nbsp;";
 /* Then check for event in this month's events
    array for this date. If present, rewrite the
    tmp variable to contain the event. */
 pos=E[mo].indexOf("~"+ctr+" ");
 if (pos>-1){
  tmp=E[mo].substring(pos+3,E[mo].length);
  pos=tmp.indexOf("~");
  tmp=tmp.substring(0,pos);
  if (blue!=1){
   /* Change color to whatever color you wish
      for the events to be differentiated on
      screen.  I used blue here.  */
   document.write(" COLOR='#BF7331'");
   }
  }
 document.write("><B>"+ctr+"</B></FONT><BR><FO"
 +"NT SIZE=-2>"+tmp+"</TD>");
 }
// End Hiding -->
