/*
  SMH Custom extension
      VERSION: 1.0
    CHANGELOG:
      20071207 - Updated to Mootools v1.2 syntax
               - Removed need for countless plugins by creating custom versions.
               - Compressed file
      20080111 - Updated Fader to use a display:none class on the li rather than scroll the whole ul left or right.
      20080310 - Added Advertisement Metadata
      20080507 - Removed Advertisement Metadata
	  20080722 - Added routines for comment form (validation, display toggle)
	  20080930 - Added functions for poll
	  20081112 - Added filter to not add hooks to static version of cN-groupNavigator
	  20081117 - Added toggler code for manually initiated horizontal toggle wofs (Europa skin)
	  20081217 - Added generic rotator code
	  20090123 - Added stylesheet switcher
	  20090206 - Added function 'resetToggler' as supplied by Behrang
	  20090309 - Added function '_initSearchBox' for masthead search box
	  20090312 - Fix rotateList function
	  20090319 - Added function '_initWofToggle'
	  20090330 - Updated 'Low vision' to 'High contrast'
	  20090501 - Added function '_initTagCloud'
	  20090514 - Added function '_initSocialCommenting'
	  20090528 - Updated 'initSearchBox' to attach to elements with classes instead of ids
	  20090602 - Removed function '_initShareLinks'
	  20090616 - Fixed bug in function '_swapTab'
	  20090714 - Removed '_initShowCommentForm'; added '_initComments'
	  20090728 - Re-inserted function '_initShareLinks' (required for video page)
	  20090828 - Updated _initSearchBox: test for class, not for display property
	  20090819 - Added tab changes to allow third party tracking calls
	  20090819 - Simplified and fixed search drop downs.
	  20090930 - Added '_initTabs2', successor of _initTabs; updated '_initQuotes'
	  20091019 - Added '_initDropdown' for accessible dropdown menues
      20091202 - Added '_toggleHidden' as more generic routine to '_toggleLI'
	  20100201 - Updated _initSocialCommenting function to work with 'scriptable'
	  20100209 - Added an expanding SEO box
	  20100217 - Added handling for default values in textboxes
	  20100301 - Changed  _initRotator/_rotateList to randomise first element
	  20100318 - Added '_initFormPrevValues' to fill forms with values submitted on previous page
	  20100526 - Added '_initExpandable' for elements which can expand on click;
	    	     '_initToggleText' to toggle text in input controls;
				 '_initWordCount' to count words in an input control
*/
var siteAdvertDesc={redir:"/adredirect.html?ad="};if(window.FD){if(window.Fx&&Fx.Styles){Fx.Morph=Fx.Styles}if(!window.Client&&window.Browser){Client=Browser}FD.smhage=new Class({options:{aSHeight:366,duration:250,classCurrent:"current"},initialize:function(){this._initDropdown();this._initSearchBox();this._initSocialCommenting();this._initShareLinks();this._initSlider();this._initQuotes(".cT-quoteRotator","autoplay","blockquote");this._initQuotes(".cS-quoteRotator","autoplay",".tab");this._initAllSections();
this._initTabs();this._initTabs2("div.cN-tabPages > ul.nav > li > a");this._initFormValidation();this._initTextFieldDefaults();this._initFormPrevValues();this._initComments();this._initNavigators();this._initMatchingSections();this._initToggler();this._toggleHidden(".cA-adInteractive");this._toggleHidden(".cS-rateMetadata");this._initRotator(".rotator");this._initStylesheetSwitcher();this._initWofToggle();this._initTagCloud();this._initRater();this._initPopup();this._initExpandable();this._initToggleText();
this._initWordCount();this._initExternalParams();this._initITunes();this._initSeoExpand()},_initDropdown:function(){var A=$$(".hasDropdown");A.addEvents({mouseenter:function(B){this.getElement("ul").addClass("selected")},mouseleave:function(B){this.getElement("ul").removeClass("selected")}});$$(".hasDropdown a").addEvent("focus",function(){this.getParent().getChildren("ul").addClass("selected")});$$(".hasDropdown .last a").addEvent("blur",function(){A.getElement("ul").removeClass("selected")})},_initSearchBox:function(){var A=$$("ul.ddown");
if(A){A.addEvent("click",this.ddown.bindWithEvent(this));A.addEvent("mouseleave",this.closeDdown.bindWithEvent(this))}},ddown:function(F){if(F&&F.target){var A=$(F.target);F.stop();if(A.get("href")){A=A.getParent()}var E=A.getParents("ul"),E=E[E.length-1],B=A.getElement("ul");if(B){E.toggleClass("open");return }var D=A.getChildren("a").get("text"),C=E.getElement("a.selected");if(C){C.set("text",D)}E.removeClass("open");E.getParent().getChildren("input[name='ss']").set("value",D)}},closeDdown:function(B){var A=$(B.target).getParent("ul");
if(A){A.removeClass("open")}},_initQuotes:function(M,D,A){D=(D=="autoplay")?true:false;var M=$$(M);var L=-1;for(var G=0,F=M.length;G<F;G++){var C=M[G],I=C.getChildren(A);if(D==true){autoRotate=-1}if(I.length>1){quotesCount=I.length;for(var G=0;G<I.length;G++){I[G].removeClass("selected")}var H=(quotesCount>1)?Math.floor(Math.random()*(quotesCount)+1)-1:0;I[H].addClass("selected");L=H;var B=new Element("ul",J="");var J='<li class="previous"><a title="Previous" href="#">Show previous quote</a></li>';
J+='<li class="pause"><a title="Pause/Play" href="#">Pause/Play</a></li>';J+='<li class="next last"><a title="Next" href="#">Show next quote</a></li>';B.set("html",J);C.appendChild(B);C.getElements("ul a").addEvent("click",K.create({bind:this,event:true,arguments:C}));if(D==true){C.autoRotate=E.periodical(5000)}}}function K(Q,P){if(Q&&Q.target){var N=$(Q.target);if(N.href&&N.href.test("#$")){new Event(Q).stop()}var O=N.getParent().className;if(O.indexOf("previous")>-1){E("backward")}if(O.indexOf("next")>-1){E("forward")
}if(O.indexOf("pause")>-1){if(P.autoRotate!=-1){P.autoRotate=$clear(P.autoRotate);P.autoRotate=-1;P.getElement(".pause").addClass("play")}}if(O.indexOf("play")>-1){if(P.autoRotate==-1){P.autoRotate=E.periodical(5000);P.getElement(".pause").removeClass("play")}}}}function E(O){var N=-1;if((O!="forward")&&(O!="backward")){O="forward"}if(O=="backward"){N=L-1;if(N<0){N=quotesCount-1}}if(O=="forward"){N=L+1;if(N==quotesCount){N=0}}C.getChildren(A)[N].addClass("selected");C.getChildren(A)[L].removeClass("selected");
L=N}},_initAllSections:function(){var A=$("allSections");var C=$("allSectionsWrap");var B=$("allSectionsContent");if(A&&C&&B){this.options.aSOpenText=A.innerHTML;A.addEvent("click",this.toggleAllSections.bindWithEvent(this));C.empty().innerHTML=B.innerHTML}},getASW:function(){return $("allSectionsWrap")},toggleAllSections:function(B){new Event(B).stop();var A=this.getASW();if(A&&!this.asChanging){if(A.getStyle("height").toInt()==0){this.openAllSections(A)}else{this.closeAllSections(A)}}},openAllSections:function(B){this.asChanging=true;
B.setStyle("border-width","1px 1px 1px 1px");var A=new Fx.Morph(B,$extend(this.options,{onComplete:this.allSectionsComplete.bind(this)}));A.start({height:[0,this.options.aSHeight]})},closeAllSections:function(B){this.asChanging=true;var A=new Fx.Morph(B,$extend(this.options,{onComplete:this.allSectionsComplete.bind(this,B)}));A.start({height:[this.options.aSHeight,0]})},allSectionsComplete:function(A){if(A){this.asChanging=false;var B=A.innerHTML;if(A.getStyle("height").toInt()!=this.options.aSHeight){A.empty().innerHTML=B.replace(/Hide/ig,"Show");
A.setStyle("border-width","1px 0 0 0")}else{A.empty().innerHTML=B.replace(/Show/ig,"Hide")}}},_initSlider:function(){this.sliderPos=0;var A=$("woffRotator_parent");if(A){this.slCount=A.getElements("li").length;this.addSliderTimeout();A.addEvent("mouseover",function(){$clear(this.sliderTimeout)}.bind(this));A.addEvent("mouseleave",this.addSliderTimeout.bind(this));A.getElements("a.fdScrollPrevItem").addEvent("click",this._moveSlider.bind(this,-1));A.getElements("a.fdScrollNextItem").addEvent("click",this._moveSlider.bind(this,1))
}},_moveSlider:function(A){if(!this.sliding&A){this.sliding=true;var B=new Fx.Morph($("woffRotator_holder"),$merge(this.options,{duration:550,onComplete:this._moveSliderComplete.bind(this,A)})).start({opacity:0})}},_moveSliderComplete:function(B){var C=this.sliderPos+B;var F=0;var E=$("woffRotator");var A=E.getElements("li");A[this.sliderPos].removeClass(this.options.classCurrent);if(C==this.slCount){C=0}else{if(C<0){C=this.slCount-1}}this.sliderPos=C;A[this.sliderPos].addClass(this.options.classCurrent);
var D=new Fx.Morph($("woffRotator_holder"),$merge(this.options,{duration:450,onComplete:this._setFadeComplete.bind(this)})).start({opacity:1})},_setFadeComplete:function(){this.sliding=false},addSliderTimeout:function(){this.sliderTimeout=this._moveSlider.periodical(7000,this,1)},_initToggler:function(){var B=$$(".woffToggler");this.aTogglers=[];if(B){for(var A=0,C=B.length;A<C;A++){B[A].addEvent("click",this._toggleList.create({bind:this,event:true,arguments:B[A]}));this.aTogglers.push(B[A].id);
B[A].removeClass("accessibleToggler");B[A].left=0;B[A].elementsPerScreen=3;B[A].liCount=B[A].getElements("div ul").getElements("li")[0].length;B[A].width=291}}},_toggleList:function(C,B){if(C&&C.target&&$(B.id)){var A=$(C.target);if(A.href&&A.href.test("#$")){new Event(C).stop()}if(!A.href){A=A.getFirst()}if(!A){return }var E=A.getParent().className;var D=$(B.id).getElement("div ul");if(E.test("previous")){A.getParent().getParent().getElements("li.next").removeClass("hidden");B.left+=B.width;if(B.left>=0){A.getParent().addClass("hidden")
}else{A.getParent().removeClass("hidden")}}if(E.test("next")){A.getParent().getParent().getElements("li.previous").removeClass("hidden");B.left-=B.width;if(B.left<=-((Math.ceil(B.liCount/B.elementsPerScreen)-1)*B.width)){A.getParent().addClass("hidden")}else{A.getParent().removeClass("hidden")}}new Fx.Morph(D,{duration:550}).start({left:B.left})}},_initRotator:function(D){var E=$$(D);this.aTogglers=[];if(E){for(var C=0,F=E.length;C<F;C++){E[C].addEvent("click",this._rotateList.create({bind:this,event:true,arguments:E[C]}));
this.aTogglers.push(E[C].id);E[C].removeClass("accessibleRotator");var B=E[C].getElements("[class*='tab']");E[C].liCount=B.length;E[C].currentElement=Math.floor(Math.random()*(E[C].liCount)+1);for(var A=0;A<E[C].liCount;A++){B[A].removeClass("selected")}B[E[C].currentElement-1].addClass("selected")}}},_rotateList:function(D,C){if(D&&D.target){var A=$(D.target);if(A.href&&A.href.test("#$")){new Event(D).stop()}if(!A.getParent().className.test("previous")&&!A.getParent().className.test("next")){return
}var E=A.getParent().className;var B=C.currentElement;if(E.test("previous")){C.currentElement-=1;if(C.currentElement==0){C.currentElement=C.liCount}}if(E.test("next")){C.currentElement+=1;if(C.currentElement>C.liCount){C.currentElement=1}}C.getElement(".tab"+C.currentElement).addClass("selected");C.getElement(".tab"+B).removeClass("selected")}},_initTabs:function(){var C=$$("a.cN-externalTarget");for(var B=0;B<C.length;++B){C[B].addEvent("click",this._sendTracking.create({bind:this,event:true}))}var A=$$("ul.cN-tabBox");
this.tabIDs=[];if(A){for(var B=0,D=A.length;B<D;B++){A[B].addEvent("click",this._swapTab.create({bind:this,event:true,arguments:A[B].id}));this.tabIDs.push(A[B].id);A[B].removeClass("accessibleTab")}}},_swapTab:function(C,D){if(C&&C.target&&$(D)){var A=$(C.target);if(A.href&&A.href.test("#$")){new Event(C).stop()}if(!A.href){A=A.getFirst()}if(!A||A.getParent().tagName!="H4"){return }var B=$(D).getChildren().removeClass("selected");A.getParent().getParent().addClass("selected")}},_initTabs2:function(G){var F=$$(G);
if(F){for(var E=0,H=F.length;E<H;E++){F[E].addEvent("click",function(){if(this.getParent("li").hasClass("selected")){return false}var I=this.get("href");I=I.substr(I.indexOf("#")+1,I.length);this.getParent("ul").getChildren("li").removeClass("selected");this.getParent("li").addClass("selected");this.getParent("div").getChildren("div").removeClass("selected");$(I).addClass("selected");return false});var D=F[E].get("href");if(D.indexOf("#content")>-1){var C=D.substr(D.indexOf("#content-")+9,D.length);
var B=$("content-"+C);var A=$(C);if((A.innerHTML=="")&&B){A.set("html",B.get("html"));B.innerHTML=""}F[E].set("href","#"+C)}}}},_sendTracking:function(D){if(D&&D.target){var A=$(D.target);var C=new Element("img");var B=A.href;B=B.replace("#","");C.src=this._paramsForExterntracking(B)}},_paramsForExterntracking:function(C,E,D){var B=FD.baseAd.params;if(B){if(B.ctype){if(E&&E==true){C+="?pageType="+B.ctype}else{C+="&pageType="+B.ctype}}if(B.area){C+="&section="+B.area}}if(D&&D==true){}else{var A=Math.floor(Math.random()*10000);
C+="&rand="+A}return C},_initPopup:function(){var A=function(D){var C=new Element("a",{"class":"popup-link",html:D.get("title"),href:"javascript:;",events:{click:function(){D.addClass("popup-selected")}}}).inject(D,"before");var C=new Element("a",{"class":"popup-close",html:"Close",href:"javascript:;",events:{click:function(){D.removeClass("popup-selected")}}}).inject(D,"bottom");var C=new Element("span",{"class":"popup-tip"}).inject(D,"top")};var B=$$(".popup");B.each(A)},_initExpandable:function(){var B=function(D){D.addEvent("click",E);
D.addEvent("focus",E);D.addEvent("blur",F);var C=D.defaultValue;function E(){D.addClass("expanded")}function F(){if((D.value=="")||(D.value==D.defaultValue)){D.removeClass("expanded")}}};var A=$$(".expandable");A.each(B)},_initToggleText:function(){var A=function(E){var D=E.defaultValue;E.addEvent("click",B);E.addEvent("focus",B);E.addEvent("blur",C);function B(){if(E.value==D){E.value=""}}function C(){if(E.value==""){E.value=D}}};$$(".toggleText").each(A)},_initWordCount:function(){var A=function(C){var D=C.get("class"),F=parseInt(D.substr(D.indexOf("maxWords-")+9));
C.addEvent("keyup",G);var B=new Element("p",{"class":"wordCount",html:"&nbsp;words"}).inject(C,"after");var E=new Element("span",{html:"0"}).inject(B,"top");function G(){var J=C.value,I=0,H=/\s+/g;J=J.replace(H," ");I=J.split(" ").length;C.getNext(".wordCount").getElement("span").set("html",I);if(I>0){}}if((C.value!="")&&(C.value!=C.defaultValue)){G()}};$$(".countWords").each(A)},_initExternalParams:function(){var C=$$("a.applyParamsForExternal");if(C){for(var B=0;B<C.length;++B){if(C[B].href.contains("#")){var A=new Array();
A=C[B].href.split("#");C[B].href=A[1]}C[B].href=this._paramsForExterntracking(C[B].href);C[B].href=C[B].href.clean()}}var C=$$("a.applyFirstParamsForExternalNoRand");if(C){for(var B=0;B<C.length;++B){C[B].href=this._paramsForExterntracking(C[B].href,true,true);C[B].href=C[B].href.clean()}}},_initShareLinks:function(){var C=$("shareLink");if(C){var B=C.getElement("ul");var A=$("mobileLinks");C.addEvent("mouseenter",function(){B.setStyle("visibility","visible");A.setStyle("visibility","hidden")});C.addEvent("mouseleave",function(){B.setStyle("visibility","hidden");
A.setStyle("visibility","visible")});C.getParent().removeClass("accessibleStoryTools")}},_initTextFieldDefaults:function(){var C=$$("form.usedefaults");if(C){for(var E=0,F=C.length;E<F;E++){var B=C[E].getElements("input[type=text]");if(B){C[E].addEvent("submit",this.cleanFormDefaults.bind(this,C[E]));for(var D=0,A=B.length;D<A;D++){B[D].addEvent("focus",this.hideDefault.bind(this,B[D]));B[D].addEvent("blur",this.showDefault.bind(this,B[D]))}}}}},cleanFormDefaults:function(C){var A=C.getElements("input[type=text]");
for(var B=0,D=A.length;B<D;B++){if(A[B].value==A[B].defaultValue){A[B].value=""}}},hideDefault:function(A){if(A.value==A.defaultValue){A.value=""}},showDefault:function(A){if(A.value==""){A.value=A.defaultValue}},_initFormPrevValues:function(K){var A=$$("form.fillprevvalues");if(A&&A.length>0){var C=A[0];var I=window.location.search.substring(1);if(I.length>0){var G=I.split("&");for(var H=0;H<G.length;H++){var J=G[H].indexOf("=");var B=G[H].substring(0,J).replace("+"," ");var L=G[H].substring(J+1).replace("+"," ").replace("%28","(").replace("%29",")").replace("%2F","/");
if(L!=""){var E=C.getElements("input[name='"+B+"']");if(E.length>0){E[0].set("value",L)}var F=C.getElements("select[name='"+B+"']");if(F.length>0){var M=F[0];for(var D=0;D<M.options.length;D++){if(M.options[D].value==L){M.options[D].set("selected","true")}}}}}}}},_initFormValidation:function(){var C=$$("form.validate-form");if(C){for(var E=0,G=C.length;E<G;E++){var B=C[E].getElements(".validate");for(var D=0,A=B.length;D<A;D++){this.assignEvent(B[D])}var F=C[E].getElement("li.submit").getElements(".valDisabled");
for(var D=0,A=F.length;D<A;D++){F[D].disabled=true}C[E].removeClass("accessibleComment")}}},assignEvent:function(A){A.addEvent("blur",this.validate.bind(this,A));A.isValid=false},validate:function(H){var A=H.className.split(" ");myregexp=/^val\w+/;var B=new Array();for(var C=0,E=A.length;C<E;C++){if(A[C].test(myregexp)){B.push(A[C])}}var F=["valRequired","valAlpha","valNumber","valEmail"];var I=true;var G=false;H.valRequired=(B.indexOf("valRequired")==-1)?false:true;for(var D=0,E=F.length;D<E;D++){if(B.indexOf(F[D])!=-1){G=this[F[D]](H);
I=(I&&G)}}if((H.valRequired==false)&&(this.valRequired(H)==false)){I=true}H.isValid=I;this.toggleErrorMessage(H,I)},valRequired:function(A){if(A.value==""||A.value==null){A.isEmpty=true;return false}return true},valAlpha:function(A){var B=/^([\w\xc0-\xff](\s)?)+$/;if(!A.value.test(B)){return false}return true},valNumber:function(A){var C=A.value;if(isNaN(C)||C==""){return false}var B=/^([0-9])+$/;if(!C.test(B)){return false}return true},valEmail:function(B){var D=B.value;if(D.length>0){var G=D.indexOf("@");
if(G>0){var H=D.lastIndexOf("@");if(G==H){var C=D.substr(0,H+1);var F=/^([a-zA-Z0-9_\.\-\+])+\@/;if(!F.test(C)){return false}}else{return false}}else{return false}var E=D.substr(D.indexOf("@")+1,D.length);var A=/^(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})$/;if(!A.test(E)){return false}return true}else{return false}},toggleErrorMessage:function(D,B){var F=D.getParent().getElement("span.error");if(F){if(B==true){F.removeClass("errorSelected")}else{F.addClass("errorSelected")}}var G=D.getParent().getParent().getElement("li.submit").getElement(".valDisabled");
var C=D.getParent("form").getElements("input.validate");var A=true;for(var E=0,H=C.length;E<H;E++){A=(A&&C[E].isValid)}G.disabled=(!A)},_initComments:function(){var A=$("comments");if(A){A.addEvent("click",this.toggleForm.bindWithEvent(this))}},toggleForm:function(D){var C=$(D.target);if(D&&C){if(C.hasClass("btnScreen")){var B=C.href;B=B.substr(B.lastIndexOf("#")+1);var A=$(B);if(A){D.stop();A.toggleClass("show")}}}},_initNavigators:function(){var C=$$("div.cN-groupNavigator");if(C){for(var A=0,B=C.length;
A<B;A++){if(C[A].className.indexOf("static")==-1){C[A].addEvent("click",this._toggleNavigator.create({bind:this,event:true,arguments:C[A]}));C[A].removeClass("accessible")}}}},_toggleNavigator:function(C,B){if(C&&C.target&&B){var A=$(C.target);if(A&&(((A.tagName=="A")&&(A.getParent().tagName=="H4"))||((A.tagName=="SPAN")&&(A.getParent().getParent().tagName=="H4")))){new Event(C).stop();if(B.className.indexOf("open")==-1){B.addClass("open")}else{B.removeClass("open")}window.fireEvent("expandingNavigator");
return }if(A&&(A.getParent().className.indexOf("more")!=-1)){new Event(C).stop();this.toggleLI(A)}if(A&&(A.getParent().getParent().tagName=="OL")){new Event(C).stop();A.getParent("ol.selected").addClass("hide");A.getParent("div").addClass("open")}window.fireEvent("expandingNavigator")}},toggleLI:function(A){var B=A.getParent("ul").getElements("li.hide");if(B.length>0){B.removeClass("hide");B.addClass("show");this.toggleHTML(A);A.getParent().addClass("less");return }B=A.getParent("ul").getElements("li.show");
if(B.length>0){B.removeClass("show");B.addClass("hide");this.toggleHTML(A);A.getParent().removeClass("less")}},_toggleHidden:function(B){var C=$$(B);if(C){for(var A=0,D=C.length;A<D;A++){C[A].addEvent("click",this._toggleElement.create({bind:this,event:true,arguments:C[A]}))}}},_toggleElement:function(B,A){hiddenEle=A.getElements(".hide");if(A.getElement(".more")){anchor=A.getElement(".more").getElement("a")}else{anchor=false}if(hiddenEle.length>0){hiddenEle.removeClass("hide");hiddenEle.addClass("show");
if(anchor){this.toggleHTML(anchor);A.getElement(".more").addClass("less")}return }hiddenEle=A.getElements(".show");if(hiddenEle.length>0){hiddenEle.removeClass("show");hiddenEle.addClass("hide");if(anchor){this.toggleHTML(anchor);A.getElement(".more").removeClass("less")}}},resetToggler:function(A){A.liCount=A.getElements("div ul").getElements("li")[0].length;var B=$(A.id).getElement("div ul");B.setStyle("left","0");A.left=0;if(A.liCount<A.elementsPerScreen){A.getElement("ul.nav").addClass("hidden")
}else{A.getElement("ul.nav").removeClass("hidden")}A.getElement("li.previous").addClass("hidden");A.getElement("li.next").removeClass("hidden")},toggleHTML:function(A){var B=A.innerHTML;if(B.indexOf("More")!=-1){A.innerHTML=B.replace("More","Less");return }if(B.indexOf("Less")!=-1){A.innerHTML=B.replace("Less","More");return }if(B.indexOf("more")!=-1){A.innerHTML=B.replace("more","less");return }if(B.indexOf("less")!=-1){A.innerHTML=B.replace("less","more");return }if(B.indexOf("Set")!=-1){A.innerHTML=B.replace("Set","Close");
return }if(B.indexOf("Close")!=-1){A.innerHTML=B.replace("Close","Set");return }if(B.indexOf("Show")!=-1){A.innerHTML=B.replace("Show","Hide");return }if(B.indexOf("Hide")!=-1){A.innerHTML=B.replace("Hide","Show");return }},_initMatchingSections:function(){var C=$$("div.cT-matchingSections");if(C){for(var A=0,B=C.length;A<B;A++){C[A].addEvent("click",this._toggleNavigator.create({bind:this,event:true,arguments:C[A]}));C[A].removeClass("accessible")}}},_initStylesheetSwitcher:function(){var A=$$(".vision");
if(A){A.addEvent("click",this._swapCSS.bind(this))}},_swapCSS:function(G){if(G&&G.target){var A=$(G.target);G.stop();if(A.get("href")){A=A.getParent()}var B=A.getFirst();var D="High Contrast";var C=$$("head link");var F=(B.get("text")==D)?false:true;var E;for(i=0;(o=C[i]);i++){if("alternate stylesheet"===o.getAttribute("rel")&&(E=o.getAttribute("title"))){o.disabled=true;if(F==false){o.disabled=(E==D);B.set("text","Normal Contrast")}else{o.disabled=(E!==D);B.set("text","High Contrast")}}}}},_initWofToggle:function(){var A=$$("div.fdVideoWof");
var B=A.length;if(B>0){for(var C=0;C<B;C++){var D=A[C].getElement("h4").getElement("span");if(D){D.innerHTML='<a href="#">'+D.innerHTML+"</a>";D.addEvent("click",this._showWoff.bindWithEvent(this,A[C]))}A[C].removeClass("accessibleWof")}}},_showWoff:function(C,B){if(C&&C.target){C.stop();var A=B.getElement("p").getStyle("position");if(A=="absolute"){B.getElement("p").setStyle("position","static")}else{B.getElement("p").setStyle("position","absolute")}}},_initTagCloud:function(){var A=$$(".cS-tagCloud");
if(A.length<1){return }A.each(function(F){var C=F.getElements(".cloud");if(C.length<1){var H=new Array();F.getElements("ol li").each(function(J,I){H.push(J.clone().addClass("weight-"+(I+1)))});H.sort(function(J,I){aa=String(J.get("text")).toLowerCase();bb=String(I.get("text")).toLowerCase();if(aa>bb){return 1}else{if(aa<bb){return -1}else{return 0}}});var D=new Element("ul",{"class":"cloud"});H.each(function(I){D.appendChild(I)});F.appendChild(D)}var E=new Element("a",{href:"javascript:void(0);",text:"Tag cloud",events:{click:function(){this.getParent(".cS-tagCloud").removeClass("display-list").addClass("display-cloud")
}}});var G=E.clone().set("text","List").addEvent("click",function(){this.getParent(".cS-tagCloud").removeClass("display-cloud").addClass("display-list")});var B=new Element("ul",{"class":"controller"});B.appendChild(new Element("li",{"class":"cCloud"})).appendChild(E);B.appendChild(new Element("li",{"class":"cList"})).appendChild(G);B.inject(F.getElements("h3")[0],"after")})},_initSocialCommenting:function(){var F=$$("div.cT-socialCommenting");if(F.length==0){return }for(var C=0,B=F.length;C<B;C++){var A=F[C].getElement("h4");
if(A){var E=new Element("a",{href:"javascript:void(0);",text:A.textContent});A.textContent="";E.inject(A,"bottom");A.addEvent("click",this._toggleElem.create({bind:this,event:true,arguments:[F[C],"ol"]}));this._addCloseButton(F[C],"ol")}var D=F[C].getElement("p.tellFriends");if(D){D.addEvent("click",this._toggleElem.create({bind:this,event:true,arguments:[F[C],"ul"]}));this._addCloseButton(F[C],"ul")}}},_toggleElem:function(D,C,B){var A=C.getElement(B);if(A.getStyle("left")=="0px"){A.removeClass("show")
}else{A.addClass("show");var E=A.getElement(".close");E.addEvent("click",function(F){F.stop();A.removeClass("show")})}},_addCloseButton:function(C,B){var D=new Element("a",{href:"javascript:void(0);",text:"Close"});var A=C.getElement(B);A.appendChild(new Element("li",{"class":"close"})).appendChild(D)},encryptPass:function(A){var B=new RSAKey();B.setPublic("502c079c5026048c01f69c57d5dff655c482d05d96203641356e598161bf0e5b3a57f74636adcd5a4d1d4f12d4637cc5620dad4835f424aa904dacbdd5e98a3b","10001");return B.encrypt(A)
},_initITunes:function(){var A=$("itunesCampaignName");if(A){if(Cookie.read(A.value)){this.hideComponent("ipodForm");this.showComponent("doneITunes")}var B=$("ipodForm");if(B){B.addEvent("submit",this.itunesSubmit.bindWithEvent(this))}}},itunesSubmit:function(B){this.hideComponent("ipodButton");var A=$("itunesCampaignName");if(A){Cookie.write(A.value,"dl",{path:"/",domain:document.domain,duration:365})}else{B.stop()}},itunesSubmit:function(B){this.hideComponent("ipodButton");var A=$("itunesCampaignName");
if(A){Cookie.write(A.value,"dl",{path:"/",domain:document.domain,duration:365})}else{B.stop()}},_initSeoExpand:function(){var B=$("fullSEO");if(B){B.getElements("a.swapPanel").addEvent("click",this.swapPanel.bindWithEvent(this));var A=$("briefSEO");if(A){A.getElements("a.swapPanel").addEvent("click",this.swapPanel.bindWithEvent(this))}}},swapPanel:function(E){var D=$(E.target);if(D){E.stop();var B=D.href;var A=B.substr(B.lastIndexOf("#")+1);this.showComponent(A);var C=D.getParent();this.hideComponent(C.id)
}},hideComponent:function(B){var A=$(B);if(A){A.addClass("hidden")}},showComponent:function(B){var A=$(B);if(A){A.removeClass("hidden")}},_initRater:function(){var B=function(F){F.addEvent("mouseover",G);F.addEvent("click",E);F.addEvent("mouseout",K);function E(R){R.stop();var Q=R.target,P=Q.getAllPrevious().length+1;F.getChildren().removeClass("rSelected");J(Q,P)}function J(P,R){F.getChildren().removeClass("rSelected");F.getChildren().removeClass("halfSelectedIE6");if(P){P.addClass("rSelected");
P.getAllPrevious().addClass("rSelected")}I(R);L("select");var Q=F.getParent("form");F.getParent().getElement("select").selectedIndex=R;var S=Q.getElement("input#isReview");if(S&&S.value=="true"){}else{Q.submit()}}function G(R){var Q=$(R.target),P=Q.getAllPrevious().length+1;K();M(Q);I(P);L("fill")}function M(P){P.addClass("rFilled");P.getAllPrevious().addClass("rFilled")}function K(){var P=F.getChildren(".rSelected").length;F.getChildren().removeClass("rFilled");L("clear");if(P==0){I(0)}else{I(P)
}}function I(Q){var P=F.getParent().getChildren(".rating"),R="";if(!P){return }switch(Q){case 0:R="";break;case 1:R="Some rewards";break;case 2:R="Likeable";break;case 3:R="Some respectable highlights";break;case 4:R="A solid experience";break;case 5:R="Reliably good";break;case 6:R="A bit of that WOW factor";break;case 7:R="Amazingly good";break;case 8:R="World class";break;case 9:R="Truly spectacular";break;case 10:R="Are we in heaven?";break}P.set("html",R)}F.addEvent("keydown",H);F.addEvent("keyup",O);
function H(T){var S=T.target,P=F.getChildren();switch(T.key){case"right":if(D<A){D++}for(var Q=0;Q<D;Q++){P[Q].addClass("rFilled")}I(D);L("fill");T.preventDefault();break;case"left":if(D>0){D--}P[D].removeClass("halfFilledIE6");P[D].removeClass("rFilled");I(D);L("fill");T.preventDefault();break;case"enter":var R=F.getParent("form");J(P[D-1],D);T.preventDefault();N();K();D=0;break;case"esc":D=0;K();L("clear");N()}}function O(P){if((P.key!="esc")&&(P.key!="enter")&&(P.target!=F.getLast())){F.getPrevious("p.raterLegend").addClass("show")
}else{N()}}function N(P){F.getPrevious("p.raterLegend").removeClass("show")}function L(S){var R,Q="";if(S=="fill"){R=".rFilled";Q="halfFilledIE6"}if(S=="select"){R=".rFilled";Q="halfSelectedIE6"}if(S=="clear"){Q="halfFilledIE6"}var P=F.getChildren(R);P.each(function(T){if(S=="clear"){T.removeClass(Q)}else{if(T.hasClass("half")){T.addClass(Q)}}})}};var C=$$("p.rater");C.each(B);var D=0;var A=10}});var smhage;function initSMHAGE(){smhage=new FD.smhage()}FD.register("SMHAGE")}var ErrorClass=new Class({errorType:"",errorMessage:"",errorSpan:"",initialize:function(C,A,B){this.errorType=C;
this.errorMessage=A;this.errorSpan=B}});FD.register("CaptchaCode");var CaptchaCode=new Class({initialize:function(){this.init()},init:function(){$$(".newChallenge").addEvent("click",this.newChallenge.bindWithEvent(this))},newChallenge:function(B){B.stop();var A=B.target;A.set("send",{url:"/action/createNewCaptchaWordAction",onSuccess:this.handleChallenge.bind(this)});A.send()},handleChallenge:function(E){if(E){try{E=JSON.decode(E);var A=$$(".captcha");var C=A.getElement("input.challenge");var B=A.getElement("img.challenge");
if(C&&B){C[0].value=E.challenge;B[0].src="/action/displayTextAsDeformedImage?encryptedText="+E.challenge}}catch(D){}}}});var captchacode;function initCaptchaCode(){captchacode=new CaptchaCode()}var FormValidation=new Class({fieldErrors:[],hasErrors:false,cleanForm:function(A){this.removeErrors(A);this.hasErrors=false;this.fieldErrors.empty()},errorCheck:function(B,A){if(this.hasErrors){B.stop();this.addErrors(this.fieldErrors,A)}else{this.submitForm(B)}},addError:function(A){this.fieldErrors.push(new ErrorClass(A));
this.hasErrors=true},addErrorWithSpan:function(B,A){this.fieldErrors.push(new ErrorClass(B,null,A));this.hasErrors=true},removeErrors:function(B){var C=B.getElements("span.errorSelected");if(C){for(var A=0;A<C.length;++A){C[A].removeClass("errorSelected")}}},addErrors:function(G,D){var C=D.getElement("ul");C.empty();for(var A=0;A<G.length;++A){var B=D.getElement("#"+G[A].errorType);var E="error";if(G[A].errorSpan&&G[A].errorSpan!=""){E=G[A].errorSpan}var F=B.getNext("span."+E);if(F){F.addClass("errorSelected")
}}},isBlank:function(A){var B=$(A);if(B){if(B.value&&B.value.clean().length>0){return false}else{return true}}},invalidEmail:function(I){var H=$(I);var F=H.value;if(F.length>0){var B=F.indexOf("@");if(B>0){var C=F.lastIndexOf("@");if(B==C){var G=F.substr(0,C+1);var A=/^([a-zA-Z0-9_\.\-\+])+\@/;if(!A.test(G)){return true}}else{return true}}else{return true}var D=F.substr(F.indexOf("@")+1,F.length);var E=/^(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})$/;if(!E.test(D)){return true}return false}else{return true
}},tandc:function(B){var A=$(B);if(A){if(A.checked){return false}else{return true}}},tooLong:function(A,B){var C=$(A);if(C){if(C.value&&C.value.length<=B){return false}else{return true}}},tooShort:function(A,B){var C=$(A);if(C){if(C.value&&C.value.length>=B){return false}else{return true}}},matches:function(A,B){var C=$(A);if(C&&B){if(C.value.lowercase==B.lowercase){return true}else{return false}}}});FD.register("WriteAReviewPanel");var WriteAReviewPanel=new Class({Extends:FormValidation,hasErrors:false,form:null,initialize:function(){this.init()
},init:function(){this.form=$$("#content").getElementById("writeAReview");if(this.form[0]){this.form[0].addEvent("submit",this.validateForm.bindWithEvent(this))}},validateForm:function(A){this.cleanForm(this.form);if(this.isBlank("frmName")){this.addError("frmName")}if(this.isBlank("frmEmail")){this.addErrorWithSpan("frmEmail","blankEmail")}else{if(this.invalidEmail("frmEmail")){this.addErrorWithSpan("frmEmail","invalidEmail")}}if(this.isBlank("frmPhone")){this.addError("frmPhone")}if(this.isBlank("frmPhoneNumber")){this.addError("frmPhoneNumber")
}if(this.isBlank("frmCode","blankSecurityCode")){this.addErrorWithSpan("frmCode","blankSecurityCode")}else{if(this.tooLong("frmCode",6)||this.tooShort("frmCode",6)){this.addErrorWithSpan("frmCode","invalidSecurityCode")}}if(this.tandc("terms")){this.addError("terms")}this.errorCheck(A,this.form)},submitForm:function(A){},handleResp:function(C){if(C){try{C=JSON.decode(C);if(C.errorFound){this.addErrors(C.errorList)}var B=form.getElement("li.submit");if(B.getElement("input.button")){B.getElement("input.button").removeClass("hidden")
}}catch(A){}}},hidePanel:function(){this.panel.addClass("hidden")},isType:function(A){return this.panel.hasClass(A)}});var writeareviewpanel;function initWriteAReviewPanel(){writeareviewpanel=new WriteAReviewPanel()}var LoginLogoutPanel=new Class({fieldErrors:[],hasErrors:false,initialize:function(A,B){this.panel=A;this.prefix=B;this.init()},init:function(){var A=this.panel.getElement("form");if(A){A.addEvent("submit",this.validateForm.bindWithEvent(this))}if(this.panel.getElements("a.logoutLink")){this.panel.getElements("a.logoutLink").addEvent("click",this.logout.bindWithEvent(this))
}if(this.panel.getElements("a.newChallengeLink")){this.panel.getElements("a.newChallengeLink").addEvent("click",this.newChallenge.bindWithEvent(this))}},validateForm:function(A){A.stop();this.cleanForm();if(this.isBlank(this.prefix+"FrmLogin")){this.addError(this.prefix+"NoteLogin","An Account Name is required")}else{if(this.tooLong(this.prefix+"FrmLogin",255)){this.addError(this.prefix+"NoteLogin","Your Account Name must be less than "+255+" characters.")}}if(this.isBlank(this.prefix+"FrmPasswordLogin")){this.addError(this.prefix+"NotePasswordLogin","A Password is required")
}else{if(this.tooLong(this.prefix+"FrmPasswordLogin",20)){this.addError(this.prefix+"NotePasswordLogin","Your Password must be less than "+20+" characters.")}else{if(this.tooShort(this.prefix+"FrmPasswordLogin",4)){this.addError(this.prefix+"NotePasswordLogin","Your Password must be more than "+4+" characters.")}}}this.errorCheck(A)},cleanForm:function(){this.removeErrors();this.hasErrors=false;this.fieldErrors.empty()},errorCheck:function(A){if(this.hasErrors){A.stop();this.addErrors(this.fieldErrors)
}else{this.submitForm(A)}},addError:function(B,A){this.fieldErrors.push(new ErrorClass(B,A));this.hasErrors=true},logout:function(B){B.stop();document.cookie="membership-login=;path=/;domain="+document.domain;document.cookie="membership-username=;path=/;domain="+document.domain;document.cookie="frmScreenName=;path=/;domain="+document.domain;document.cookie="frmLocation=;path=/;domain="+document.domain;document.cookie="starCount=;path=/;domain="+document.domain;document.cookie="frmComment=;path=/;domain="+document.domain;
var A=B.target;A.set("send",{url:"/action/membershipLogoutAction",onSuccess:this.handleResp.bind(this)});this.removeErrors();A.send()},submitForm:function(E){var F=this.panel.getElement("li.submit");if(F.getElement("input.button")){F.getElement("input.button").addClass("hidden")}if(F.getElement("img#loader")){F.getElement("img#loader").removeClass("hidden")}var D=this.panel.getElements("input.js_encryptable");var B;for(B=0;B<D.length;B++){if(D[B].value!=""){var G=$(D[B].id+"Encrypted");G.value=smhage.encryptPass(D[B].value)
}}var C=E.target;var A=this.panel.getElement("input#isJSON");if(A&&A.value=="false"){}else{E.stop();C.set("send",{onSuccess:this.handleResp.bind(this)});C.send()}},handleResp:function(C){if(C){try{C=JSON.decode(C);if(C.errorFound){this.addErrors(C.errorList)}else{if(C.showNext.indexOf("comment")>-1){commentsreviews.showPanel(C.showNext)}else{if(C.showNext.indexOf("readerRating")>-1){readerratings.showPanel(C.showNext)}}}var B=this.panel.getElement("li.submit");if(B.getElement("input.button")){B.getElement("input.button").removeClass("hidden")
}if(B.getElement("img#loader")){B.getElement("img#loader").addClass("hidden")}}catch(A){}}},addErrors:function(E){var B=this.panel.getElement("div.error");B.addClass("errorSelected");var C=B.getElement("ul");C.empty();for(var A=0;A<E.length;++A){C.adopt(new Element("li",{text:E[A].errorMessage}));var D=this.panel.getElement("#"+E[A].errorType);if(D){D.addClass("errorSelected")}}},removeErrors:function(){var B=this.panel.getElement("div.error");B.removeClass("errorSelected");var C=this.panel.getElements("span.errorSelected");
if(C){for(var A=0;A<C.length;++A){C[A].removeClass("errorSelected")}}},hidePanel:function(){this.panel.addClass("hidden")},newChallenge:function(B){B.stop();var A=B.target;A.set("send",{url:"/action/createNewCaptchaWordAction",onSuccess:this.handleChallenge.bind(this)});A.send()},handleChallenge:function(D){if(D){try{D=JSON.decode(D);var B=this.panel.getElement("input.challenge");var A=this.panel.getElement("img.challenge");if(B&&A){B.value=D.challenge;A.src="/action/displayTextAsDeformedImage?encryptedText="+D.challenge
}}catch(C){}}},isType:function(A){return this.panel.hasClass(A)},tandc:function(B){var A=$(B);if(A){if(A.checked){return true}else{return false}}},isBlank:function(A){var B=$(A);if(B){if(B.value&&B.value.clean().length>0){return false}else{return true}}},tooLong:function(A,B){var C=$(A);if(C){if(C.value&&C.value.length<=B){return false}else{return true}}},tooShort:function(A,B){var C=$(A);if(C){if(C.value&&C.value.length>=B){return false}else{return true}}}});var ShowHidePanel=new Class({hasRegisterForm:false,panels:[],getRegisterForm:function(C,A){if(!this.hasRegisterForm){var D="/action/membershipRegistrationFormAction?idPrefix="+C+"&signupMessage="+A;
var B=new Request({url:D,onSuccess:this.setRegisterForm.bind(this),method:"GET"});B.send()}else{this.showRegisterForm()}},addRegisterEvents:function(A){A.getElements("a.panelLink").addEvent("click",this.swapToPanel.bindWithEvent(this));this.getPanel("register").init()},updateLogin:function(){var A=$("commentloggedInAs");if(A&&Cookie.read("membership-username")){A.set("text",Cookie.read("membership-username"))}var C=$("emailSubmitComments");if(C&&Cookie.read("membership-username")){C.value=Cookie.read("membership-username")
}var B=$("memberIDSubmitComments");if(B&&Cookie.read("membership-login")){B.value=Cookie.read("membership-login")}},getPanel:function(B){var C=0,A=this.panels;while(C<A.length){if(A[C].isType(B)){return A[C]}C++}},swapToPanel:function(D){var C=$(D.target);if(C){D.stop();var B=C.href;var A=B.substr(B.lastIndexOf("#")+1);this.showPanel(A)}}});var RegisterPanel=new Class({Extends:LoginLogoutPanel,initialize:function(A,B){this.panel=A;this.prefix=B;this.init()},validateForm:function(A){this.cleanForm();
if(this.isBlank(this.prefix+"FrmLoginName")){this.addError(this.prefix+"NoteLoginName","An Account Login is required")}else{if(this.tooLong(this.prefix+"FrmLoginName",255)){this.addError(this.prefix+"NoteLoginName","Your Account Login must be less than "+255+" characters.")}}if(this.isBlank(this.prefix+"FrmPassword")){this.addError(this.prefix+"NotePassword","A Password is required")}else{if(this.tooLong(this.prefix+"FrmPassword",20)){this.addError(this.prefix+"NotePassword","Your Password must be less than "+20+" characters.")
}else{if(this.tooShort(this.prefix+"FrmPassword",4)){this.addError(this.prefix+"NotePassword","Your Password must be less than "+20+" characters.")}}}if(this.isBlank(this.prefix+"FrmPassword2")){this.addError(this.prefix+"NotePassword2","A Password is required")}else{if(this.tooLong(this.prefix+"FrmPassword2",20)){this.addError(this.prefix+"NotePassword2","Your Confirming Password must be less than "+20+" characters.")}else{if(this.tooShort(this.prefix+"FrmPassword2",4)){this.addError(this.prefix+"NotePassword2","Your Confirming Password must be more than "+4+" characters.")
}else{if(!this.comparePass()){this.addError(this.prefix+"NotePassword2","Your Confirming Password must the same as your Password.")}}}}if(this.isBlank(this.prefix+"FrmYearOfBirth")){this.addError(this.prefix+"NoteYearOfBirth","A year of birth is required")}if(this.isBlank(this.prefix+"FrmCountry")){this.addError(this.prefix+"NoteCountry","A Country is required")}if(!this.validaPostCode()){this.addError(this.prefix+"NotePostcode","A postcode is required in Australia")}if(this.isBlank(this.prefix+"FrmCode")){this.addError(this.prefix+"NoteCode","Please enter the Security code.")
}if(!this.tandc(this.prefix+"FrmTOC")){this.addError(this.prefix+"NoteTOC","Terms and conditions need to be agreed to.")}this.errorCheck(A)},validaPostCode:function(){var B=$(this.prefix+"FrmCountry");var A=$(this.prefix+"FrmPostcode");if(B){if(B.value=="au"){if(A){return true}else{return false}}else{return true}}},comparePass:function(){var B=$(this.prefix+"FrmPassword");var A=$(this.prefix+"FrmPassword2");if(B&&A){if(B.value==A.value){return true}else{return false}}}});var CommentReviewPanel=new Class({Extends:LoginLogoutPanel,wordCount:0,initialize:function(A){this.panel=A;
this.populateField("frmScreenName");this.populateField("frmLocation");var B=window.location.toString();var I=new RegExp("postContent");var F=I.exec(B);if(F){this.populateField("frmComment")}var G=this.panel.getElement("input#isReview");if(G&&G.value=="true"){if(Cookie.read("starCount")){var H=Cookie.read("starCount").trim();var K=this.panel.getElement("p.rater");if(K){K.getChildren().removeClass("rSelected");K.getChildren().removeClass("halfSelectedIE6");var C=K.getChildren();for(var E=0;E<H;E++){C[E].addClass("rSelected")
}var C=K.getChildren(".rSelected");C.each(function(L){if(L.hasClass("half")){L.addClass("halfSelectedIE6")}});var D=K.getParent().getChildren(".rating"),J="";if(!D){return }switch(D){case 0:J="";break;case 1:J="Some rewards";break;case 2:J="Likeable";break;case 3:J="Some respectable highlights";break;case 4:J="A solid experience";break;case 5:J="Reliably good";break;case 6:J="A bit of that WOW factor";break;case 7:J="Amazingly good";break;case 8:J="World class";break;case 9:J="Truly spectacular";
break;case 10:J="Are we in heaven?";break}D.set("html",J);K.getParent().getElement("select").selectedIndex=H}}}$("frmComment").addEvent("keydown",this.wordCounter.bindWithEvent(this));this.init()},wordCounter:function(E){area=E.target;var C=300;if(this.wordCount>=C&&(E.code!=8&&E.code!=37&&E.code!=38&&E.code!=39&&E.code!=40&&E.code!=46)){var D=area.value.clean();var A=D.split(" ").clean();var B=A.length;if(B>C){E.stop();area.value=D}}else{if(area){var F=area.value.clean();var A=F.split(" ");var B=A.length;
if(B!=this.wordCount){this.wordCount=B;var F=$("wordCountRemaining");if(F){F.empty();F.set("text",C-B)}}}}},populateField:function(B){if(Cookie.read(B)){var A=$(B);A.value=Cookie.read(B).trim()}},populateCookie:function(B){var A=$(B);if(A){Cookie.write(B,A.value,{path:"/",domain:document.domain})}},validateForm:function(D){this.cleanForm();this.populateCookie("frmScreenName");this.populateCookie("frmLocation");this.populateCookie("frmComment");var C=this.panel.getElement("input#isReview");if(C&&C.value=="true"){var A=this.panel.getElementById("readerReviewStarCount").selectedIndex;
if(this.panel.getElementById("readerReviewStarCount")[A].value==0){this.addError("noteStarCount","A Rating is required.")}Cookie.write("starCount",this.panel.getElementById("readerReviewStarCount")[A].value,{path:"/",domain:document.domain})}if(this.isBlank("frmScreenName")){this.addError("noteScreenName","A Screen Name is required.")}else{if(this.tooLong("frmScreenName",255)){this.addError("noteScreenName","Your Screen Name must be less than "+255+" characters.")}}var B=$("frmLocation");if(B){if(B.value&&B.value.length>0){if(this.tooLong("frmLocation",255)){this.addError("noteLocation","Your Location must be less than "+255+" characters.")
}}}if(C&&C.value=="false"){if(this.isBlank("frmComment")){this.addError("noteComment","A Comment is required.")}else{if(this.tooManyWords(300)){this.addError("noteComment","Only "+300+" words are allowed.")}}}else{if(this.isBlank("frmComment")){this.addError("noteComment","A Review is required.")}else{if(this.tooManyWords(300)){this.addError("noteComment","Only "+300+"words are allowed.")}}}if(this.isBlank("frmCodeComment")){this.addError("noteCodeComment","Please enter the Security code.")}if(!this.tandc("frmCond")){this.addError("noteCond","Terms and conditions need to be agreed to.")
}this.errorCheck(D)},tooManyWords:function(B){var C=$("frmComment");if(C){var D=C.value.clean();var A=D.split("\b");if(A.length>B){return true}else{return false}}}});FD.register("CommentsReviews");var CommentsReviews=new Class({Extends:ShowHidePanel,isReview:false,initialize:function(){var E=$$("div.commentingPanels");for(var D=0;D<E.length;++D){if(E[D].hasClass("register")){this.panels.push(new RegisterPanel(E[D],"comment"))}else{if(E[D].hasClass("commentForm")){if(E[D].getElement("input#isReview")){this.isReview=true
}this.panels.push(new CommentReviewPanel(E[D]))}else{this.panels.push(new LoginLogoutPanel(E[D],"comment"))}}E[D].getElements("a.panelLink").addEvent("click",this.swapToPanel.bindWithEvent(this))}if(E.length>0){this.showPanel("commentStart");if(Cookie.read("membership-login")){this.showPanel("commentForm")}var C=window.location.toString();var G=new RegExp("posted=sucessful");var F=G.exec(C);if(F){this.showPanel("commentThanks");document.cookie="starCount=;path=/;domain="+document.domain;document.cookie="frmComment=;path=/;domain="+document.domain
}var B=new RegExp("posted=error");var A=B.exec(C);if(A){var H=this.getPanel("commentForm");H.cleanForm();H.addError("noteCodeComment","Your Security Code doesn't match");H.addErrors(H.fieldErrors);H.populateField("frmComment")}}},showPanel:function(A){var C=$(A);if(C){for(var B=0;B<this.panels.length;++B){this.panels[B].hidePanel()}this.updateLogin();C.removeClass("hidden");if(A=="commentRegister"){if(this.isReview){this.getRegisterForm("comment","Simply sign up below to write a review.")}else{this.getRegisterForm("comment","Simply sign up below to start commenting on articles.")
}}}},setRegisterForm:function(B){var A=$("commentRegister");A.set("html",B);this.hasRegisterForm=true;this.addRegisterEvents(A);this.showRegisterForm()},showRegisterForm:function(){var A=$("commentRegister");A.addClass("complete")}});var commentsreviews;function initCommentsReviews(){commentsreviews=new CommentsReviews()}FD.register("ReaderRatings");var ReaderRating=new Class({Extends:ShowHidePanel,initialize:function(){var C=$$("div.readerRatingPanels");for(var B=0;B<C.length;++B){this.panels.push(new LoginLogoutPanel(C[B],"readerRating"));
C[B].getElements("a.panelLink").addEvent("click",this.swapToPanel.bindWithEvent(this))}if(C.length>0){this.showPanel("readerRatingForm");var A=window.location.toString();var E=new RegExp("postedRating=successful");var D=E.exec(A);var G=Cookie.read("ratingfeedback");var F=FD.assetId.toString(36);if((D)||((G)&&(F)&&(G.indexOf(F)>=0))){this.showPanel("readerRatingThanks")}}},showPanel:function(A){var C=$(A);if(C){for(var B=0;B<this.panels.length;++B){this.panels[B].hidePanel()}this.updateLogin();C.removeClass("hidden")
}},rated:function(F){var B=F.getElementById("rated");var E=Cookie.read("ratingfeedback").split("#");var G=FD.assetId;for(var C=0;C<E.length;C++){if((E[C].indexOf(">")>=0)&&((E[C].indexOf(">")+1)<E[C].length)){var A=parseInt(E[C].replace('"',""),36).toString();var D=parseInt(E[C].substring(E[C].indexOf(">")+1),36);if(A.indexOf(G)>=0){D=D/200;B.innerHTML="<em><span>Rating: "+D+" out of 5 stars</span></em>";B.addClass("cN-rating rValue-"+D)}}}this.showPanel("readerRatingThanks")}});var readerratings;
function initReaderRatings(){readerratings=new ReaderRating()}function initPollContainer(H){var A=H.getElements("div.panels");var Q=H.get("expiryDate");var M=H.get("pollId");var G=Cookie.read("checkIfCookiesEnabled");var I=H.get("isPollInsideArticle");var D=H.get("numComments");var R;if(G){N();L();if(Q&&Q<new Date()){K();return }var J=Cookie.read("poll");if(M&&J&&J.indexOf("-"+M)>0){E();return }F("notVoted")}else{F("noCookie")}function N(){var S=H.getElements("a.viewResult");S.addEvent("click",O)
}function O(S){S.stop();B();E()}function B(){var T=H.getElements("a.viewQuestion");if(T==0){var S=H.getElements("p.total");S.setHTML(S.getHTML()+"<a href='#viewQuestion' class='viewQuestion'> CAST YOUR VOTE</a>");T=H.getElements("a.viewQuestion");T.addEvent("click",P)}}function P(T){T.stop();if(I){var S=H.getElements(".add");S.addClass("hidden")}F("notVoted")}function L(){var S=H.getElement("form");if(S){S.addEvent("submit",C)}}function C(U){U.stop();var S=H.getElements("input[name^='id']");for(var T=0;
T<S.length;T++){if(S[T].checked){H.getElement("form").submit();return }}H.getElements(".error").addClass("errorSelected")}function F(S){if(R){H.removeClass(R)}H.addClass(S);R=S}function K(){if(I){var U=H.getElements(".close");U.addClass("closeVoted");var T=H.getElements(".comments");T.addClass("pollCommentsVoted");if(D==0){T.addClass("pollNoComments")}var S=H.getElements(".related");S.removeClass("hidden")}F("voted")}function E(){K();if(I){var S=H.getElements(".add");S.removeClass(" hidden")}}}function initPollContainers(){$$(".pollContainer").each(initPollContainer)
}window.addEvent("domready",initPollContainers);function getMonthName(B){var A=["January","February","March","April","May","June","July","August","September","October","November","December"];return A[B-1]}Date.prototype.setISO8601=function(B){var C="([0-9]{4})(-([0-9]{2})(-([0-9]{2})(T([0-9]{2}):([0-9]{2})(:([0-9]{2})(.([0-9]+))?)?(Z|(([-+])([0-9]{2}):([0-9]{2})))?)?)?)?";var E=B.match(new RegExp(C));var D=0;var A=new Date(E[1],0,1);if(E[3]){A.setMonth(E[3]-1)}if(E[5]){A.setDate(E[5])}if(E[7]){A.setHours(E[7])
}if(E[8]){A.setMinutes(E[8])}if(E[10]){A.setSeconds(E[10])}if(E[12]){A.setMilliseconds(Number("0."+E[12])*1000)}if(E[14]){D=(Number(E[16])*60)+Number(E[17]);D*=((E[15]=="-")?1:-1)}D-=A.getTimezoneOffset();time=(Number(A)+(D*60*1000));this.setTime(Number(time))};var BuildBuyFromITunesDimmiComponent=new Class({Implements:Options,options:{containerClass:"cA-adInteractive",contentsClass:"iTunes",label:"",result:null,term:"",match:"",others:2,otherText:null,assetType:"",trackingUrl:"http://www.s2d6.com/x/?x=c&z=s&v=2377638&t=",urlSuffix:"&uo=6&partnerId=1002",id:0,width:300,height:405,dimmiUrl:"http://cms.dimmi.com.au/Widget/Default.aspx?"},initialize:function(B){this.setOptions(B);
var R=null;var G=new Array();if(this.options.id==0){for(var P=0;P<this.options.result.resultCount;P++){var S=this.options.result.results[P];var Q=this.options.match;if(!R&&(S.collectionName&&S.collectionName.match(Q)||S.artistName.match(Q))){R=S;if(G.length>=this.options.others){break}}else{if(G.length<this.options.others){G.push(S);if(R){break}}}}}if(R==null&&this.options.id==0){return }var I=$$("."+this.options.containerClass);for(var E=0;E<I.length;++E){var A=I[E];A.empty();var F=new Element("h3",{"class":"more"}).adopt(new Element("a",{href:"javascript:;",html:this.options.label}));
A.adopt(F);var D=new Element("div",{"class":"iTunes"});var K=new Element("div",{"class":"outer"});if(this.options.id==0){K.adopt(D)}var J=new Element("div",{"class":"inner"}).adopt(K);var O=new Element("div",{"class":"hide"}).adopt(J);if(this.options.id>0){var N=new Element("iframe",{"class":"dimmiiframe",frameborder:0,scrolling:"no",width:this.options.width,height:this.options.height});var T=window.location.toString();var C=this.options.dimmiUrl+"ID="+this.options.id+"&location="+escape(T);N.set("src",C);
K.adopt(N)}else{var M=new Element("ul");M.adopt(this._buildItemHTML(R,"featured"));D.adopt(M);if(G.length>0){var H=this.options.otherText;if(!H){H="Other "+this.options.term+" "+this.options.assetType+"s"}D.adopt(new Element("h4",{html:H}));var L=new Element("ul");for(P=0;P<G.length;P++){if(P==G.length-1){L.adopt(this._buildItemHTML(G[P],"last"))}else{L.adopt(this._buildItemHTML(G[P]))}}D.adopt(L)}}A.adopt(O)}},_buildItemHTML:function(J,K){var I=new Element("li",{"class":K});var B=J.collectionViewUrl;
if(B==null){B=J.artistLinkUrl}B=this.options.trackingUrl+encodeURIComponent(B+this.options.urlSuffix);var E=new Element("a",{target:"_blank"});E.set("href",B);E.adopt(new Element("img",{src:J.artworkUrl60}));I.adopt(E);var G=new Element("dl");var D=J.collectionName;if(D==null){D=J.artistName}G.adopt(new Element("dt",{html:"Album title"}));G.adopt(new Element("dd").adopt(new Element("a",{href:B,target:"_blank",html:D})));G.adopt(new Element("dt",{html:"Artist"}));G.adopt(new Element("dd",{html:J.artistName}));
var H=J.releaseDate;if(H){var A=new Date();A.setISO8601(H);var C="Released "+A.getDate()+" "+getMonthName(A.getMonth())+" "+A.getFullYear();G.adopt(new Element("dt",{html:"Released"}));G.adopt(new Element("dd",{html:C}))}var F=J.collectionPrice;if(F){G.adopt(new Element("dt",{html:"Price"}));G.adopt(new Element("dd").adopt(new Element("a",{href:B,target:"_blank",html:"Buy $"+F})))}I.adopt(G);return I}});