if(window.FastInit)
	FastInit.addOnLoad(initPage)
else
	Event.observe(window, 'load', initPage);
	

function initPage() {
	var form = $('Contact')
	
	if(form && Validation) {
		Validation.add('validate-phone', 'Please enter a phone number in the XXX-XXX-XXXX format.', {
			 pattern 			: /^\(?\d{3}\)?[\s\.\-]?\d{3}[\s\.\-]?\d{4}$/gi // only US phone allowed
		});
		

		new Validation(form);
	}

	$$('ul.tabgroup')
		.each(function(el) {
			var options = {
				showFunction: function(el) {},
				hideFunction: function(el) {}
			}
			new Control.Tabs(el, options);
		});
	
	var CaptchaImage = $('CaptchaImage')
	var CaptchaRefreshLink = $('CaptchaRefresh')
	var CaptchaText = $('CaptchaText')
	
	if(CaptchaImage && CaptchaRefreshLink && CaptchaText) {
		function ToRot13(text) {
			var rot13text_rotated = ""; /* the function will return this string */;

			for (i = 1 ; i < (text.length + 1); i++) {

			k = text.charCodeAt(i-1);

			if (k >= 97 && k <= 109) {
			k = k + 13;
			} else

			if (k >= 110 && k <= 122) {
			k = k - 13;
			} else

			if (k >= 65 && k <= 77) {
			k = k + 13;
			} else

			if (k >= 78 && k <= 90) {
			k = k - 13;
			}
			
			if (k >= 48 && k <= 52) {
			k = k + 5;
			} else

			if (k >= 53 && k <= 57) {
			k = k - 5;
			}

			rot13text_rotated = rot13text_rotated + String.fromCharCode(k);

			}

			return rot13text_rotated;
		}
		
		var GetRandomChars = function(length, charSet) {
			var chars = "";
			var i;
			var blacklistWords = $A("flange,poop,arsehole,arvo,foursome,ass,poopshoot,poopshoot,assfuck,asshole,fruit,asswipe,postal,asswipe,fuck,prick,asswipe,fuck,pubes,aunty,fuck,ball,fuck,ball,pussy,ball,quad,baltic,queef,bang,queen,basket,queer,bastard,queer,quim,quim,bear,quim,rack,beaver,fucker,beef,fucker,fucking,ranch,fugly,berk,gangbang,bi,gangbang,redneck,biatch,reestie,biffy,bitch,rim,bob,scallywag,boiler,scat,boink,screw,screw,boner,screw,boob,brown,buddy,gook,shit,bugger,greek,shit,buggery,groe,shit,grostulation,shit,gummer,shit,bunghole,buns,have,shitcan,have,shitfaced,butch,head,shitfit,cacker,herb,shithead,shithouse,can,hodgie,shithouse,honkey,shitlist,hork,shits,cathouse,shits,cherry,hummer,shitstain,chicken,hung,shitstain,chief,choad,jackal,sissy,jackshit,sister,jay,christacrutchian,jizz,slant,jizzum,slapper,chuck,john,slut,chuck,john,snatch,jugs,clipped,clit,kike,spooge,closet,knockers,spunk,cock,krunk,stiffy,cocksmoker,Libido,swedish,cocksucker,loo,come,loose,coon,cornhole,meat,crabs,cracker,meatrack,crap,crap,telesis,crap,crapper,threesome,cum,nellie,cunt,nigga,tinkle,cunt,nigger,tit,cunt,nookey,noonan,tittie,cut,cut,darky,nudger,dick,nut,dickwad,tosser,diddle,diddle,trick,trick,dildo,trick,dildo,orlando,dingleberry,dink,turd,dipshit,pecker,twat,dong,twink,peckerwood,dork,pee,dork,drag,period,phungky,wanker,dyke,wasted,eddress,piss,fag,piss,wetback,faggot,fairy,whiz,fart,fart,pissed,willie,pissed,woody,felch,wordhole,plow,wuss,yasser,fish,zipperhead".split(','));
			
			for (i=0; i<length; i++) {
				chars += charSet.charAt(Math.floor(Math.random()*charSet.length));
			}

			if(blacklistWords.include(chars.toLowerCase()))
				chars = GetRandomChars(length, charSet);
			
			return chars;
		}
		
		CaptchaRefreshLink.observe('click', function(evt) {
			Event.stop(evt)
			var newCaptchaText = ToRot13(GetRandomChars(4,'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'));
			CaptchaText.value = newCaptchaText;
			CaptchaImage.src = '/CaptchaImage.aspx?t=' + newCaptchaText + '&w=' + CaptchaImage.readAttribute('width') + '&h=' + CaptchaImage.readAttribute('height');
		});
	}
}
