/** 
  Austereo Custom Functionality 
    CHANGELOG: 
      20080926 - Born, broken out from todayNetwork custom JS. 
      20081001 - Updating rotator to update every 3 seconds. 
      20081002 - Moved more todayNetwork specific JS to fd.todayNetwork.custom.js. 
      20081210 - Moved showControlPanelHeight to fd.todaynetwork.custom.js to allow for scrolling in the music widget (applicable only to Today brands). 
      20081215 - Added an anchor tag check on the rotator thumbnail (to resolve which feature div is "active") 
 **/ 
if(window.FD){FD.austereo=new Class({backgroundResize:false,Implements:Options,options:{featureLoopDelay:3000},initialize:function(){this.setOptions();this._initFeatureLoop();this._initControlTabs();this._initAutoInputs();this._initValidateForm();this._initRegistrationForm()},_initFeatureLoop:function(){var B=$("featurehighlights"),A=$("sub_highlights");if(B&&A){this._featureLoopPos=0;B.addEvents({mouseenter:this._stopFeatureLoop.bind(this)});B.getElements("div.heading").inject(A).addEvent("mouseenter",this._jumpLoopPos.bindWithEvent(this));
A.getElement("div.heading").addClass("active");this._startFeatureLoop()}},_startFeatureLoop:function(){this._featureLoopID=this._loopFeature.create({bind:this,periodical:this.options.featureLoopDelay})()},_stopFeatureLoop:function(){$clear(this._featureLoopID)},_loopFeature:function(){var A=this.getFeatureHighlights();if(A){var B=((this._featureLoopPos+1)==A.length)?0:this._featureLoopPos+1;this._setLoopPos(A,B)}},_setLoopPos:function(A,C){if(A){if(A&&A[C]){A.removeClass("active");A[C].addClass("active");
var B=this.getFeatureHeadings();B.removeClass("active");B[C].addClass("active");this._featureLoopPos=C}}},_jumpLoopPos:function(D){if(D&&D.target){var C=$(D.target);if(C.get("tag")=="img"){C=C.getParent()}if(C.get("tag")=="a"){C=C.getParent()}var A=C.get("tag");var E=this.getFeatureHeadings();var B=this.getFeatureHighlights();for(var F=0;F<E.length;F++){if(E[F]==C){this._setLoopPos(B,F);return true}}}},getFeatureHighlights:function(){return $$("#highlights .highlight")},getFeatureHeadings:function(){return $$("#sub_highlights .heading")
},_initControlTabs:function(){var C=$$(".cPanel");if(C){for(var B=0;B<C.length;B++){var A=C[B].getElements("ul.controltabs");if(A){A.addEvent("click",this.swapTab.bindWithEvent(this,C[B]))}}}},swapTab:function(C,E){if(C&&C.target){new Event(C).stop();var D=$(C.target);if(D.get("tag")!="a"){D=D.getElement("a")}var F=E.getElements("ul.controltabs a");for(var G=0;G<F.length;G++){var I=F[G].getParent();I.removeClass("selected");if(F[G]==D){I.addClass("selected")}}if(D){var A=D.href;var H=A.substr(A.lastIndexOf("#")+1);
var B=E.getElements("div.controltab");for(var G=0;G<B.length;G++){B[G].removeClass("selected");if(B[G].hasClass(H)){B[G].addClass("selected")}}}}},_initAutoInputs:function(){var B=$$("form.autoInput input");for(var A=0;A<B.length;A++){if(B[A].type=="text"){if(B[A].value!=""){B[A].addClass("userInput")}B.addEvent("focus",function(D){if(D&&D.target){var C=$(D.target);if(C.type=="text"&&C.value==C.defaultValue){C.value="";C.addClass("userInput")}}}.bind(this));B.addEvent("blur",function(D){if(D&&D.target){var C=$(D.target);
if(C.type=="text"&&C.value==""){C.value=C.defaultValue;C.removeClass("userInput")}}}.bind(this))}}},_initValidateForm:function(){var A=$$("form.validateMe");for(i=0;i<A.length;i++){var B=A[i].getElements("a.button");B[0].addEvent("click",this.triggerFormSubmit.bind(this,B[0]))}},validateRequired:function(A){if(A&&A.value){this.toggleErrorMessage(A,"");return true}this.toggleErrorMessage(A,"This input is required.");return false},validateMinLength:function(B,A){if(B&&(B.value.length>=A)){this.toggleErrorMessage(B,"");
return true}this.toggleErrorMessage(B,"The minimum length required is "+A+" characters.");return false},toggleErrorMessage:function(C,B){var D=C.getParent().getPrevious();var A=D.getElements("span");if(B){A[0].innerHTML=B;D.removeClass("hidden")}else{D.addClass("hidden")}},validateForm:function(E){var C=E.getElements("input");var B=true;for(i=0;i<C.length;i++){if(C[i].hasClass("validate")){var A=true;var D=C[i].className.split(" ");for(j=0;j<D.length;j++){switch(D[j]){case"required":if(!this.validateRequired(C[i])){A=false
}break;case"minLength3":if(!this.validateMinLength(C[i],3)){A=false}break;case"minLength6":if(!this.validateMinLength(C[i],6)){A=false}break}if(A==false){break}}if(A==false){B=false}}}if(B==true){E.submit()}},triggerFormSubmit:function(B){var A=B.getParent();while((A.get("tag")!="form")&&(A.get("tag")!="body")){A=A.getParent()}this.validateForm(A)},_initRegistrationForm:function(){var B=$$("form.frmMemberProfile");for(i=0;i<B.length;i++){var A=B[i].getElements("li");for(j=0;j<A.length;j++){if(A[j].hasClass("country")){var C=$("country");
C.addEvent("change",this.toggleStatePostcode.bind(this,C))}}}if(C){this.toggleStatePostcode(C)}},toggleStatePostcode:function(C){var B=C.getParent().getParent();var A=B.getElements("li");for(j=0;j<A.length;j++){if((A[j].hasClass("state"))||(A[j].hasClass("postcode"))){if(C[C.selectedIndex].text=="Australia"){A[j].removeClass("hidden")}else{A[j].addClass("hidden")}}}}});function enableSave(){var B=document.createElement("span");var E=document.createElement("a");E.setAttribute("class","button smallButton top");
E.setAttribute("className","button smallButton top");E.setAttribute("href","javascript:document.profile.submit();");E.setAttribute("onclick","document.profile.submit();");var L=document.createTextNode("Save Profile");E.appendChild(L);var J=document.createElement("span");E.appendChild(J);B.appendChild(E);var N=document.getElementById("saveBtn");var C=document.getElementById("saveBtnSpan");var M=N.replaceChild(B,C);var I=document.createElement("span");var D=document.createElement("a");D.setAttribute("class","button smallButton");
D.setAttribute("className","button smallButton");D.setAttribute("href","javascript:document.profile.submit();");D.setAttribute("onclick","document.profile.submit();");var A=document.createTextNode("Save Profile");D.appendChild(A);var G=document.createElement("span");D.appendChild(G);I.appendChild(D);var K=document.getElementById("saveBtn1");var F=document.getElementById("saveBtnSpan1");var H=K.replaceChild(I,F)}var austereo;function initAustereo(){austereo=new FD.austereo()}FD.register("Austereo",1)
};