var MainContainer;var CurrentDate=new Date();CurrentDate.setDate(1);var StartDate=new Date();var EndDate=new Date();var LastContentCall;var ColLoc=0;var ContentLoc=0;var CalendarTable="";var Container1=new Element('div',{"id":"Container","styles":{"width":"163px"}});function CalendarInit(a){CalendarTable=a;MainContainer=$("Calendar");BuildCalendar();Container1.setStyle("margin-left","0")}function BuildCalendar(){Container1.empty();Container1.setStyle("margin-left",-164);var b=new Element("div",{"class":"clear"});var c=new Element("div",{"class":"Divider"});var d=new Element("div",{"class":"TitleBar"});var e=new Element("div",{"class":"ArrowLeft"});var f=new Element("img",{"src":"/_img/CalendarArrowLeft.jpg"});f.inject(e);var g=new Element("div",{"class":"ArrowRight"});var h=new Element("img",{"src":"/_img/CalendarArrowRight.jpg"});h.inject(g);var i=new Element("div",{"class":"MonthName"});i.appendText(GetMonthName(CurrentDate)+" "+GetYear(CurrentDate));e.inject(d);i.inject(d);g.inject(d);d.inject(Container1);b.inject(Container1);var j=new Element("div",{"class":"Body"});b.clone().inject(j);CCell=CreateCell("DayName","S","S");CCell.inject(j);c.clone().inject(j);CCell=CreateCell("DayName","M","M");CCell.inject(j);c.clone().inject(j);CCell=CreateCell("DayName","T","T");CCell.inject(j);c.clone().inject(j);CCell=CreateCell("DayName","W","W");CCell.inject(j);c.clone().inject(j);CCell=CreateCell("DayName","T","T");CCell.inject(j);c.clone().inject(j);CCell=CreateCell("DayName","F","F");CCell.inject(j);c.clone().inject(j);CCell=CreateCell("DayName","S","S");CCell.inject(j);b.clone().inject(j);var k=CurrentDate.getDay();var l=DateAdd("m",-1,CurrentDate);var m=GetDaysInMonth(l);StartDate.setMonth(l.getMonth());StartDate.setDate(m-(k-1));if(l.getMonth()==11){StartDate.setFullYear(CurrentDate.getFullYear()-1)}else{StartDate.setFullYear(CurrentDate.getFullYear())}StartDate.setMonth(l.getMonth());for(looper=0;looper<k;looper++){ColLoc++;var n=m-((k-1)-looper);var o=(StartDate.getMonth()+1).toString()+n.toString();CCell=CreateCell("DifferentMonth",n,o);CCell.inject(j);if(ColLoc<7){c.clone().inject(j)}else{b.clone().inject(j);ColLoc=0}}for(looper=1;looper<(7-(k-1));looper++){ColLoc++;var o=(CurrentDate.getMonth()+1).toString()+looper.toString();CCell=CreateCell("ThisMonth",looper,o);CCell.inject(j);if(ColLoc<7){c.clone().inject(j)}else{b.clone().inject(j);ColLoc=0}}NextDay=looper;b.clone().inject(j);DaysInMonth=GetDaysInMonth(CurrentDate);for(looper=NextDay;looper<=DaysInMonth;looper++){ColLoc++;var o=(CurrentDate.getMonth()+1).toString()+looper.toString();CCell=CreateCell("ThisMonth",looper,o);CCell.inject(j);if(ColLoc<7){c.clone().inject(j)}else{b.clone().inject(j);ColLoc=0}}n=1;EndDate.setMonth(CurrentDate.getMonth()+1);if(CurrentDate.getMonth()==11){EndDate.setFullYear(CurrentDate.getFullYear()+1)}else{EndDate.setFullYear(CurrentDate.getFullYear())}for(looper=ColLoc;looper<7;looper++){ColLoc++;var o=(EndDate.getMonth()+1).toString()+n.toString();CCell=CreateCell("DifferentMonth",n,o);n++;CCell.inject(j);if(ColLoc<7){c.clone().inject(j)}else{b.clone().inject(j);ColLoc=0}}EndDate.setDate(n);j.inject(Container1);b.clone().inject(Container1);Container1.inject(MainContainer);e.addEvent("click",function(){SlideRight()});g.addEvent("click",function(){SlideLeft()});var p="/jsonTest.php?StartDate="+(StartDate.getMonth()+1)+"/"+StartDate.getDate()+"/"+StartDate.getFullYear()+"&EndDate="+(EndDate.getMonth()+1)+"/"+EndDate.getDate()+"/"+EndDate.getFullYear()+"&CalendarTable="+CalendarTable;var q=new Request.JSON({url:p,onComplete:function(a){if(a!=null){AddDates(a.CalDates)}}}).send()}var AddDates=function(e){e.each(function(a){var b=$(a.CalID);if(b){var c=new Element("a",{"href":"javascript:;"});c.appendText(a.Display);var d=new Element("div",{"class":a.Venue});c.inject(d);b.empty();d.inject(b);b.addEvent("click",function(){GetContent(a.Date)})}})};function CreateCell(a,b,c){var d="Cell";var e=new Element("div",{"class":"Cell","id":c});var f=new Element("span",{"class":a});f.appendText(b);f.inject(e);return e}function SlideLeft(){CurrentDate=DateAdd("m",1,CurrentDate);BuildCalendar();var a=new Fx.Tween(Container1);a.start('margin-left',164,0)}function SlideRight(){CurrentDate=DateAdd("m",-1,CurrentDate);BuildCalendar();var a=new Fx.Tween(Container1);a.start('margin-left',-164,0)}function GetContent(c){if(LastContentCall!=c){LastContentCall=c;var d=ContentLoc;ContentLoc++;var e=ContentLoc;var f=new Element("div",{"class":"NewContent","id":"nc"+e});var g=new Element("div",{"class":"scrollContent","id":"id"+e});g.inject(f);var h=new Element("div",{"class":"scrollbar"});var i=new Element("div",{"class":"knob"});i.inject(h);h.inject(g,'after');f.inject($("CalendarContent"));var j=new Request.HTML({"url":'/ajaxTest.php',"update":g}).post("/ajaxTest.php?CalDate="+c+"&CalendarTable="+CalendarTable).chain(function(){var b=new Fx.Tween(g);b.start("margin-left",0).chain(function(){var a=new Scrollbar(f,{})})});var k=new Fx.Tween($("id"+d));k.start("margin-left",450).chain(function(){$("nc"+d).dispose()})}}function GetMonthName(a){var b=new Array("January","February","March","April","May","June","July","August","September","October","November","December");return b[a.getMonth()]}function GetYear(a){var b=a.getYear();if(b<1900){b+=1900}return b}function GetDaysInMonth(a){var b=a.getMonth();if(GetYear(a)/4==(GetYear(a)/4).round()){var c=new Array(31,29,31,30,31,30,31,31,30,31,30,31)}else{var c=new Array(31,28,31,30,31,30,31,31,30,31,30,31)}return c[b]}function DateAdd(a,b,c){var d=new Date(c);b=new Number(b);switch(a.toLowerCase()){case"yyyy":{d.setFullYear(d.getFullYear()+b);break}case"q":{d.setMonth(d.getMonth()+(b*3));break}case"m":{d.setMonth(d.getMonth()+b);break}case"y":case"d":case"w":{d.setDate(d.getDate()+b);break}case"ww":{d.setDate(d.getDate()+(b*7));break}case"h":{d.setHours(d.getHours()+b);break}case"n":{d.setMinutes(d.getMinutes()+b);break}case"s":{d.setSeconds(d.getSeconds()+b);break}case"ms":{d.setMilliseconds(d.getMilliseconds()+b);break}default:{return"invalid interval: '"+a+"'"}}return d}