
BigBrothers.withDOM = function() {
	var linklists = [ GSSI.$('headerutils'), GSSI.$('headernav'), GSSI.$('navigation'), GSSI.$('getinvolved-nav') ];
	var links, i, j;
	
	// Home icon always points to the site root...
	var cliplen = GSSI.$('headerlogo').href.length - 1;
	
	
	for(i=0; i<linklists.length; i++) {
		if (! linklists[i]) { continue; }
		links = linklists[i].getElementsByTagName('a');
		for(j=0; j<links.length; j++) {
			if(BigBrothers.ThisPage.Active[links[j].href.substring(cliplen)]) {
				links[j].className = "active";
			}
		}
	}
};

BigBrothers._emailaddressregex = /^[a-z0-9._%-]+@[a-z0-9.-]+\.[a-z]{2,4}$/i;

BigBrothers.validateNewsletterSignup = function() {
	var nameinput = GSSI.$('mb-name');
	var emailinput = GSSI.$('mb-nktkt-nktkt');
	var errormessages = "";
	
	if( nameinput.value.length < 1 ) {
		errormessages += "- Name is required. \n";
		nameinput.style.borderColor = "red";
	} else {
		nameinput.style.borderColor = "";
	}

	if( emailinput.value.length < 1 ) {
		errormessages += "- Email address is required. \n";
		emailinput.style.borderColor = "red";
	} else if(! BigBrothers._emailaddressregex.test(emailinput.value)) {
		errormessages += "- Email address does not appear to be valid. \n";
		emailinput.style.borderColor = "red";
	} else {
		emailinput.style.borderColor = "";
	}
	
	if (errormessages.length < 1) {
		return true;
	} else {
		alert("Some form fields were invalid:\n\n" + errormessages);
		return false;
	}
};


GSSI.Environment.onDOMReady(BigBrothers.withDOM);