String.prototype.trim=function(){return this.replace(/^\s*|\s*$/g,"")};String.prototype.ltrim=function(){return this.replace(/^\s*/g,"")};String.prototype.rtrim=function(){return this.replace(/\s*$/g,"")};function FIC_checkForm(l,k){var o=new Array();var k=k||false;var g={valid:true,errors:[]};if(typeof(l)=="string"){l=xGetElementById(l);if(!l){return true}}var m=l;if(!l.nodeName){m=(l.srcElement)?l.srcElement:l.target}if(m.nodeName.toLowerCase()!="form"){m=searchUp(m,"form")}var b=true;var n=m.getElementsByTagName("input");var d=m.getElementsByTagName("select");var j=m.getElementsByTagName("textarea");for(i=0;i<n.length;i++){if(n[i].type.toLowerCase()!="submit"&&n[i].type.toLowerCase()!="button"&&n[i].type.toLowerCase()!="hidden"&&n[i].type.toLowerCase()!="reset"){if(isVisible(n[i])){var h=" "+n[i].className.replace(/^\s*|\s*$/g,"")+" ";h=h.toLowerCase();var f=n[i].value.trim();var p=n[i].type.toLowerCase();var c="";if(p=="text"||p=="password"){var a=FIC_checkField(h,n[i])}else{if(p=="radio"||p=="checkbox"){var a=FIC_checkRadCbx(h,n[i],n);c="-cr"}else{var a=true}}if(a){removeClassName(n[i],"validation-failed"+c);addClassName(n[i],"validation-passed"+c)}else{removeClassName(n[i],"validation-passed"+c);addClassName(n[i],"validation-failed"+c);if(n[i].getAttribute("title")){o[o.length]=n[i].getAttribute("title")}b=false}}}}for(i=0;i<j.length;i++){if(isVisible(j[i])){var h=" "+j[i].className.replace(/^\s*|\s*$/g,"")+" ";h=h.toLowerCase();var a=FIC_checkField(h,j[i]);if(a){removeClassName(j[i],"validation-failed");addClassName(j[i],"validation-passed")}else{removeClassName(j[i],"validation-passed");addClassName(j[i],"validation-failed");if(j[i].getAttribute("title")){o[o.length]=j[i].getAttribute("title")}b=false}}}for(i=0;i<d.length;i++){if(isVisible(d[i])){var h=" "+d[i].className.replace(/^\s*|\s*$/g,"")+" ";h=h.toLowerCase();var a=FIC_checkSel(h,d[i]);if(a){removeClassName(d[i],"validation-failed-sel");addClassName(d[i],"validation-passed-sel")}else{removeClassName(d[i],"validation-passed-sel");addClassName(d[i],"validation-failed-sel");if(d[i].getAttribute("title")){o[o.length]=d[i].getAttribute("title")}b=false}}}g.valid=b;g.errors=o;g.LIST_TYPE_CLASS="";g.listType="UL";g.getHTML=function(){if(this.errors.length>0){return"We have found the following error(s):<br/><"+this.listType+' class="yui-mb-list '+this.LIST_TYPE_CLASS+'"><li>'+this.errors.join("</li><li>")+"</li></"+this.listType+">Please check the fields and try again"}else{return"Some required values are not correct. Please check the items in red."}};g.getMessage=function(){if(this.errors.length>0){return"We have found the following error(s):\n\n  * "+o.join("\n  * ")+"\n\nPlease check the fields and try again"}else{return"Some required values are not correct. Please check the items in red."}};if(!b){if(!k){alert(g.getMessage())}YAHOO.util.Event.stopEvent(l)}if(k){return g}else{return b}}function FIC_checkField(k,h){var g=true;var b=h.value.trim();if(k.indexOf(" required ")!=-1&&b.length==0){g=false}if(k.indexOf(" required ")!=-1){var a=h.getAttribute("minlength");if(a&&Math.abs(a)>0){if(h.value.length<Math.abs(a)){g=false}}}if(k.indexOf(" validate-number ")!=-1&&isNaN(b)&&b.match(/[^\d]/)){g=false}else{if(k.indexOf(" validate-digits ")!=-1&&b.replace(/ /,"").match(/[^\d]/)){g=false}else{if(k.indexOf(" validate-alpha ")!=-1&&!b.match(/^[a-zA-Z]+$/)){g=false}else{if(k.indexOf(" validate-alphanum ")!=-1&&b.match(/\W/)){g=false}else{if(k.indexOf(" validate-date ")!=-1){var j=new Date(b);if(isNaN(j)){g=false}}else{if(k.indexOf(" validate-email ")!=-1&&!b.match(/\w{1,}[@][\w\-]{1,}([.]([\w\-]{1,})){1,3}$/)){g=false;if(k.indexOf(" required ")==-1&&b.length==0){g=true}}else{if(k.indexOf(" validate-url ")!=-1&&!b.match(/^(http|https|ftp):\/\/(([A-Z0-9][A-Z0-9_-]*)(\.[A-Z0-9][A-Z0-9_-]*)+)(:(\d+))?\/?/i)){g=false}else{if(k.indexOf(" validate-date-au ")!=-1&&!b.match(/^(\d{2})\/(\d{2})\/(\d{4})$/)){g=false;if(k.indexOf(" required ")==-1&&b.length==0){g=true}}else{if(k.indexOf(" validate-currency-dollar ")!=-1&&!b.match(/^\$?\-?([1-9]{1}[0-9]{0,2}(\,[0-9]{3})*(\.[0-9]{0,2})?|[1-9]{1}\d*(\.[0-9]{0,2})?|0(\.[0-9]{0,2})?|(\.[0-9]{1,2})?)$/)){g=false}else{if(k.indexOf(" validate-decimal ")!=-1&&!b.match(/^\-?([1-9]{1}[0-9]{0,2}(\,[0-9]{3})*(\.[0-9]{0,2})?|[1-9]{1}\d*(\.[0-9]{0,2})?|0(\.[0-9]{0,2})?|(\.[0-9]{1,2})?)$/)){g=false}else{if(k.indexOf(" validate-regex ")!=-1){var f=RegExp(h.getAttribute("regex"));if(f&&!b.match(f)){g=false}if(k.indexOf(" required ")==-1&&b.length==0){g=true}}}}}}}}}}}}return g}function FIC_checkRadCbx(h,g,d){var b=true;if(h.indexOf(" validate-one-required ")!=-1){b=false;for(var a=0;a<d.length;a++){if(d[a].name.toLowerCase()==g.name.toLowerCase()&&d[a].checked){b=true;break}}}return b}function FIC_checkSel(d,b){var a=true;if(d.indexOf(" validate-not-first ")!=-1&&b.selectedIndex==0){a=false}else{if(d.indexOf(" validate-not-empty ")!=-1&&b.options[b.selectedIndex].value.length==0){a=false}}return a}function addClassName(c,b){if(typeof c=="string"){c=xGetElementById(c)}var a=" "+c.className.replace(/^\s*|\s*$/g,"")+" ";var d=a;b=b.replace(/^\s*|\s*$/g,"");if(a.indexOf(" "+b+" ")==-1){d=a+b}c.className=d.replace(/^\s*|\s*$/g,"");return true}function removeClassName(c,b){if(typeof c=="string"){c=xGetElementById(c)}var a=" "+c.className.replace(/^\s*|\s*$/g,"")+" ";var d=a;b=b.replace(/^\s*|\s*$/g,"");if(a.indexOf(" "+b+" ")!=-1){d=a.replace(" "+b.replace(/^\s*|\s*$/g,"")+" "," ")}c.className=d.replace(/^\s*|\s*$/g,"");return true}function attachToForms(e){var frms=document.getElementsByTagName("form");for(var i=0;i<frms.length;i++){var validate=frms[i].getAttribute("validate")||true;if(eval(validate)){YAHOO.util.Event.addListener(frms[i],"submit",FIC_checkForm)}}}function isVisible(a){if(typeof a=="string"){a=xGetElementById(a)}while(a.nodeName.toLowerCase()!="body"&&a.style.display.toLowerCase()!="none"&&a.style.visibility.toLowerCase()!="hidden"){a=a.parentNode}if(a.nodeName.toLowerCase()=="body"){return true}else{return false}}function searchUp(c,a,b){if(typeof(c)=="string"){c=xGetElementById(c)}while(c&&c.parentNode&&c.nodeName.toLowerCase()!=a&&c.nodeName.toLowerCase()!="body"){c=c.parentNode}return c}function xGetElementById(a){if(typeof(a)!="string"){return a}if(document.getElementById){a=document.getElementById(a)}else{if(document.all){a=document.all[a]}else{a=null}}return a}YAHOO.util.Event.addListener(window,"load",attachToForms);
