if(typeof PIECESOFUK=="undefined"){var PIECESOFUK={}}PIECESOFUK.allSongs=null;PIECESOFUK.loadSongs=function(){$.ajax({type:"GET",url:"Data/songData.js",dataType:"script",async:false,success:function(){},error:function(A,B){PIECESOFUK.songs=null;alert("Unable to load songs database. Please try later. Error: "+B)}})};PIECESOFUK.initCalendar=function(){if(PIECESOFUK.feeds==undefined){PIECESOFUK.feeds=new Array}PIECESOFUK.feeds.calendar=new PIECESOFUK.calendar();setTimeout(PIECESOFUK.controller,1000);$("body").show();$(".aView, .aControl, .aDialog").hide();PIECESOFUK.initCalendarView()};PIECESOFUK.initCalendarView=function(){$("#calView, #calControls").show();this.focus=function(){$(".aControl").hide();$("#calControls").show()};$("#calView").dialog({title:"calendar",width:657,height:$(window).height()-10,focus:this.focus});$("#ui-dialog-title-calView").prepend('<img class="infoViewTitleImg" src="Graphics/calendar.gif" width="15" height="14" alt="icon">').parent().css("paddingLeft","3px");$("#calView").parent().css("padding","0px");$("#calView").parent().css("top","34px");$("#calendarLink").click(function(){$("#menu").hide();$(".aControl").hide();$("#calView").show();$("#calControls").show();if(PIECESOFUK.feeds.calendar==undefined){PIECESOFUK.feeds.calendar=new PIECESOFUK.calendar()}else{if($("#calView").dialog("isOpen")){$("#calView").dialog("moveToTop")}else{$("#calView").dialog("open")}}return false});$("#calChartsIcon, #visualizationsLink").click(function(){if(PIECESOFUK.visualizationsPtr==null){PIECESOFUK.visualizationsPtr=new PIECESOFUK.visualizations()}else{if($("#visualizations").dialog("isOpen")){$("#visualizations").dialog("moveToTop")}else{$("#visualizations").dialog("open")}}PIECESOFUK.visualizationsPtr.calendarCharts();return false})};PIECESOFUK.calendar=function(){this.name="calendar";var A=this;this.calViewMode="Month";this.gMonth=PIECESOFUK.todayMM,this.gYear=PIECESOFUK.todayYYYY;this.maxMM=null;this.maxYYYY=null;this.minMM=1;this.minYYYY=2007;this.initialise=function(){A.setStatus("initialised")};this.focus=function(){$(".aControl").hide();$("#calControls").show()};this.load=function(){A.setStatus("loading");if(A.calViewMode=="Month"){$("#week3day3 > .cbmContentDiv").append(PIECESOFUK.$preloader)}$("#cblView").hide();$("#calSelectView").val("Month");$("#calSelectMonth").val(A.gMonth);$("#calSelectYear").val(A.gYear);var C=PIECESOFUK.todayMM;var B=PIECESOFUK.todayYYYY;C=(C<10?"0"+C:C);var D="01";theURL="http://www.google.com/calendar/feeds/o75curq5sg0qvg313odgfgg9ec%40group.calendar.google.com/public/full-noattendees?orderby=starttime&alt=json-in-script&callback=?&singleevents=true&sortorder=ascending&futureevents=false&max-results=100&start-min="+B+"-"+C+"-"+D+"T00:00:00";$.getJSON(theURL,A.initialRead)};this.initialRead=function(T){$("#week3day3 > .cbmContentDiv").html("");if(T.feed.entry===undefined){A.setStatus("failed");return }var Q=0,M=0,E=0;var U=0;for(var R=0;R<T.feed.entry.length;R++){var P=T.feed.entry[R];var D="",S;if(P.gd$when[0].startTime.search(/T/)==-1){S=P.gd$when[0].startTime.match(/(\d{4})[-](\d{2})[-](\d{2})/)}else{S=P.gd$when[0].startTime.match(/(\d{4})[-](\d{2})[-](\d{2})[T](\d{2})[:](\d{2})[:](\d{2})/);D=S[4]+":"+S[5]}var I=S[1];var K=S[2];var N=S[3];var C=null;var O=new Date(I,K-1,N);var J=parseInt(K,10);var H=parseInt(N,10);var L=false;if(O.valueOf()>=PIECESOFUK.today.valueOf()){C=$("<div/>").addClass("latestItem");var F="";if(O.valueOf()==PIECESOFUK.today.valueOf()){F="Today"}else{if(O.valueOf()==PIECESOFUK.today.valueOf()+PIECESOFUK.aDay){F="Tomorrow"}else{if(O.valueOf()<=PIECESOFUK.today.valueOf()+PIECESOFUK.aWeek){F=PIECESOFUK.dayText[O.getDay()]}else{F=H+" "+PIECESOFUK.months[J-1];L=true}}}F+=" "+D+P.title.$t.slice(5);if(P.title.$t.slice(2,4)=="TV"){F+=", "+P.gd$where[0].valueString}C.append(F);var S=P.updated.$t.match(/(\d{4})[-](\d{2})[-](\d{2})[T](\d{2})[:](\d{2})[:](\d{2})/);var O=new Date(S[1],S[2]-1,S[3]);if(PIECESOFUK.nowVal-O.valueOf()<PIECESOFUK.aWeek){$("<span/>").addClass("latestNew").text(" new!").appendTo(C)}else{if(L){C=null}}}if(E!=I){A.createFullYear(I,$("#cblView"),"append");E=I;M=K;Q=N;U=0;var B=$("<div/>").attr("id","d"+N+"m"+K+"y"+I).addClass("cblDayHead").text(N);var V=$("<div/>");$("#m"+K+"y"+I).next().append(B,V);if($("#m"+K+"y"+I).hasClass("cblInitialised")){$("#m"+K+"y"+I).removeClass("cblInitialised").removeAttr("title").addClass("cblLoaded")}}else{if(M!=K){while(++M<K){$("#m"+(M<10?"0"+M:M)+"y"+E).removeClass("cblInitialised").addClass("cblNodata").next().text("no events found")}M=K;Q=N;U=0;var B=$("<div/>").attr("id","d"+N+"m"+K+"y"+I).addClass("cblDayHead").text(N);var V=$("<div/>");$("#m"+K+"y"+I).next().append(B,V);if($("#m"+K+"y"+I).hasClass("cblInitialised")){$("#m"+K+"y"+I).removeClass("cblInitialised").removeAttr("title").addClass("cblLoaded")}}else{if(Q!=N){U=0;Q=N;var B=$("<div/>").attr("id","d"+N+"m"+K+"y"+I).addClass("cblDayHead").text(N);var V=$("<div/>");$("#m"+K+"y"+I).next().append(B,V)}}}var W=$("<div/>").addClass("cblEntry").attr("title",P.content.$t).data("where",P.gd$where[0].valueString).text(D+P.title.$t.slice(5)+", "+P.gd$where[0].valueString);if(P.title.$t.slice(2,4)=="LV"){W.addClass("aConcert")}if(C){W.data("latest",C)}if(++U%2==0){W.addClass("cblEntryEven")}$("#d"+N+"m"+K+"y"+I).next().append(W)}A.maxMM=parseInt(M,10);A.maxYYYY=E;var G=true;while(++M<=12){if(G){G=false;$("#m"+(M<10?"0"+M:M)+"y"+E).removeClass("cblInitialised").removeAttr("title").addClass("cblNodata").next().text("no further events")}else{$("#m"+(M<10?"0"+M:M)+"y"+E).removeClass("cblInitialised").removeAttr("title").addClass("cblNodata")}}A.setStatus("loaded")};this.addEvents=function(){$("#calPrevLink").click(function(){if($("#calView").dialog("isOpen")){$("#calView").dialog("moveToTop")}else{$("#calView").dialog("open")}var B=A.gMonth;gYearSav=A.gYear;if(--A.gMonth==0){A.gMonth=12;--A.gYear}if(A.gYear==A.minYYYY&&A.gMonth<A.minMM||A.gYear<A.minYYYY){A.gMonth=B;A.gYear=gYearSav}else{$("#calSelectMonth").val(A.gMonth);$("#calSelectYear").val(A.gYear);if(A.calViewMode=="List"){A.cblView(A.gMonth,A.gYear)}else{A.cbmView(A.gMonth,A.gYear)}}return false});$("#calNextLink").click(function(){if($("#calView").dialog("isOpen")){$("#calView").dialog("moveToTop")}else{$("#calView").dialog("open")}var B=A.gMonth;gYearSav=A.gYear;if(++A.gMonth>12){A.gMonth=1;++A.gYear}if(A.gYear==A.maxYYYY&&A.gMonth>A.maxMM||A.gYear>A.maxYYYY){A.gMonth=B;A.gYear=gYearSav}else{$("#calSelectMonth").val(A.gMonth);$("#calSelectYear").val(A.gYear);if(A.calViewMode=="List"){A.cblView(A.gMonth,A.gYear)}else{A.cbmView(A.gMonth,A.gYear)}}return false});$("#calGoButton").click(function(){if($("#calView").dialog("isOpen")){$("#calView").dialog("moveToTop")}else{$("#calView").dialog("open")}var B=A.gMonth;gYearSav=A.gYear;A.gMonth=$("#calSelectMonth").val();A.gYear=$("#calSelectYear").val();if(A.gYear==A.minYYYY&&A.gMonth<A.minMM||A.gYear<A.minYYYY){alert("Out of Range: too far in the past!");A.gMonth=B;A.gYear=gYearSav;$("#calSelectMonth").val(A.gMonth);$("#calSelectYear").val(A.gYear)}else{if(A.gYear==A.maxYYYY&&A.gMonth>A.maxMM||A.gYear>A.maxYYYY){alert("Out of Range: too far in the future");A.gMonth=B;A.gYear=gYearSav;$("#calSelectMonth").val(A.gMonth);$("#calSelectYear").val(A.gYear)}else{if(A.calViewMode=="List"){A.cblView(A.gMonth,A.gYear);return false}A.cbmView(A.gMonth,A.gYear)}}return false});$("#calSelectView").change(function(){if($("#calView").dialog("isOpen")){$("#calView").dialog("moveToTop")}else{$("#calView").dialog("open")}if($(this).val()=="Month"){A.calViewMode="Month";$("#cblView").hide();$("#cbmView").show();A.cbmView(A.gMonth,A.gYear)}else{A.calViewMode="List";$("#cblView").show();$("#cbmView").hide();A.cblView(A.gMonth,A.gYear)}})};this.display=function(){A.cbmView(PIECESOFUK.todayMM,PIECESOFUK.todayYYYY);A.setStatus("complete");this.addEvents()};this.resetCbmView=function(){$("#d"+PIECESOFUK.todayDDx).removeClass("cbmToday");$("#week6").show();$("#week5").show()};this.cbmView=function(F,G){if((typeof F=="number"&&F<10)||(typeof F=="string"&&F.length==1)){F="0"+F}theID="#m"+F+"y"+G;var K=$(theID);if(K.length==0||K.hasClass("cblInitialised")){A.loadNewMonth(F,G);return }var J=F;A.resetCbmView();--F;$("#cbmMonthHead").text(PIECESOFUK.months[F]+" "+G);$(document).scrollTop(0);var C=new Date(G,F,1);if(PIECESOFUK.isLeapYear(G)){PIECESOFUK.daysInMonth[1]=29}else{PIECESOFUK.daysInMonth[1]=28}var I=C.getDay();for(var H=0;H<I;H++){$("#week1day"+H+" > .cbmDateDiv").html("&nbsp;").removeClass("cbmDateSet").next().removeAttr("id").html("")}maxDays=PIECESOFUK.daysInMonth[F];var B=1;var E=0;while(++E<=maxDays){var D=(E<10?"0"+E:E);$("#week"+B+"day"+I+" > .cbmDateDiv").text(E).addClass("cbmDateSet").next().attr("id","d"+D).html("");if(++I>6){++B;I=0}}if(B==5||(B==6&&I==0)){$("#week6").hide()}if(B==5&&I==0){$("#week5").hide()}--I;while(++I<=6){$("#week"+B+"day"+I+" > .cbmDateDiv").html("&nbsp;").removeClass("cbmDateSet").next().removeAttr("id").html("")}if(J==PIECESOFUK.todayMM&&G==PIECESOFUK.todayYYYY){$("#d"+PIECESOFUK.todayDDx).addClass("cbmToday")}K.next().children(".cblDayHead").each(function(){var L=$(this).attr("id").slice(1,3);$(this).next().children().each(function(){var M=$(this).text()+", "+$(this).attr("title");var N=$("<div/>").addClass("cbmEntry").text($(this).text()).data("where",$(this).data("where")).css("width",$("#d"+L).parent().css("width")).attr("title",M);if($(this).hasClass("aConcert")){N.addClass("aConcert")}$("#d"+L).append(N)})});$("#calView").scrollTop($("#calView").scrollTop()+($("#cbmView").offset().top-$("#calView").offset().top))};this.cblView=function(D,E){if((typeof D=="number"&&D<10)||(typeof D=="string"&&D.length==1)){D="0"+D}theID="#m"+D+"y"+E;var C=$(theID);if(C.length==0||C.hasClass("cblInitialised")){A.loadNewMonth(D,E);return }var B="#m"+(A.gMonth<10?"0"+A.gMonth:A.gMonth)+"y"+A.gYear;$("#calView").scrollTop($("#calView").scrollTop()+($(B).offset().top-$("#calView").offset().top))};this.googleCalReadMonth=function(N){$("#week3day3 > .cbmContentDiv").html("");if(N.feed.entry===undefined){return }var L=0;var D=0;for(var F=0;F<N.feed.entry.length;F++){var G=N.feed.entry[F];var I="",B;if(G.gd$when[0].startTime.search(/T/)==-1){B=G.gd$when[0].startTime.match(/(\d{4})[-](\d{2})[-](\d{2})/)}else{B=G.gd$when[0].startTime.match(/(\d{4})[-](\d{2})[-](\d{2})[T](\d{2})[:](\d{2})[:](\d{2})/);I=B[4]+":"+B[5]}var E=B[1];var H=B[2];var C=B[3];$monthDIV=$("#m"+H+"y"+E).next();if(L!=C){if(L!=0){$monthDIV.append(J,M)}L=C;D=0;var J=$("<div/>").attr("id","d"+C+"m"+H+"y"+E).addClass("cblDayHead").text(C);var M=$("<div/>")}var K=$("<div/>").addClass("cblEntry").attr("title",G.content.$t).data("where",G.gd$where[0].valueString).text(I+G.title.$t.slice(5)+", "+G.gd$where[0].valueString);if(G.title.$t.slice(2,4)=="LV"){K.addClass("aConcert")}if(++D%2==0){K.addClass("cblEntryEven")}M.append(K)}$("#m"+H+"y"+E).removeClass("cblInitialised").removeAttr("title").addClass("cblLoaded");$monthDIV.append(J,M);if(A.calViewMode=="List"){$("#cblPreloader").remove();A.cblView(H,E)}else{A.cbmView(H,E)}};this.loadNewMonth=function(E,F){if((typeof E=="number"&&E<10)||(typeof E=="string"&&E.length==1)){E="0"+E}if(!$("#y"+F).length){A.createFullYear(F,$("#cblView"),"prepend")}else{if(!$("#m"+E+"y"+F).length){var I=$("<div/>").attr("id","m"+E+"y"+F).addClass("cblMonthHead").text(PIECESOFUK.months[E-1]);var C=$("<div/>");$("#y"+F).next().append(I,C)}}if(A.calViewMode=="Month"){$("#week3day3 > .cbmContentDiv").append(PIECESOFUK.$preloader)}else{$("#calView").scrollTop($("#calView").scrollTop()+($("#m"+E+"y"+F).offset().top-$("#calView").offset().top));$("#m"+E+"y"+F).append(PIECESOFUK.$cblPreloader);var H=(($("#m"+E+"y"+F).width()-PIECESOFUK.$cblPreloader.width())/2)-20;PIECESOFUK.$cblPreloader.css("paddingLeft",H+"px")}var B=startMaxMM=E;var D=startMaxYYYY=F;var G="01";if(PIECESOFUK.isLeapYear(startMaxYYYY)){PIECESOFUK.daysInMonth[1]=29}else{PIECESOFUK.daysInMonth[1]=28}var J=PIECESOFUK.daysInMonth[startMaxMM-1];theURL="http://www.google.com/calendar/feeds/o75curq5sg0qvg313odgfgg9ec%40group.calendar.google.com/public/full-noattendees?orderby=starttime&alt=json-in-script&callback=?&singleevents=true&sortorder=ascending&futureevents=false&max-results=60&start-min="+D+"-"+B+"-"+G+"T00:00:00&start-max="+startMaxYYYY+"-"+startMaxMM+"-"+J+"T23:59:59";$.getJSON(theURL,A.googleCalReadMonth)};this.createFullYear=function(D,F,H){D=parseInt(D,10);var E=$("<div/>").attr("id","y"+D).addClass("cblYearHead").text(D);var C=$("<div/>");for(var I=1;I<=12;I++){var G=$("<div/>").attr("id","m"+(I<10?"0"+I:I)+"y"+D).addClass("cblMonthHead cblInitialised").attr("title","click to load month").text(PIECESOFUK.months[I-1]).attr("name","m"+(I<10?"0"+I:I)+"y"+D);var B=$("<div/>");C.append(G,B)}if(H=="append"){F.append(E,C)}else{if(H=="prepend"){F.prepend(E,C)}}$(".cblInitialised").click(function(){$(this).unbind("click");var J=$(this).attr("id");A.gMonth=parseInt(J.slice(1,3),10);A.gYear=J.slice(4,8);$("#calSelectMonth").val(A.gMonth);$("#calSelectYear").val(A.gYear);A.loadNewMonth(A.gMonth,A.gYear)});if(D+1<A.maxYYYY&&!$("#y"+D+1).length){A.createFullYear(D+1,$("#y"+D).next(),"append")}}};PIECESOFUK.calendar.prototype=new PIECESOFUK.feed();