var greyNgreen = {

	prepForm:function() {
	
		var theForm = document.getElementById('searchform');
		var searchInput = document.getElementById('search');
		if (!theForm || !searchInput) { return; }
		var formLabels = theForm.getElementsByTagName('label');
		var defaultVal = 'Search';
		if (formLabels .length > 0) {
		
			formLabels[0].style.display = 'none';
			defaultVal = formLabels[0].firstChild.nodeValue;
		}
		searchInput.value = searchInput.value ? searchInput.value : defaultVal ;
		searchInput.onfocus = function() {
			
			if (this.value == defaultVal ) {
			
				this.value = '';
			}
		}
		searchInput.onblur= function() {
			
			if (this.value == '') {
			
				this.value = defaultVal ;
			}
		}
	},
	
	modulePos:function() {
	
		var yOffset = 0;
		var modules = document.getElementById('modules');
		var navigation = document.getElementById('navigation');
		if (!modules || !navigation) { return; }
		var navuls = navigation.getElementsByTagName('ul');
		if (navuls.length > 0) {
			var navululs = navuls[0].getElementsByTagName('ul');
			for (var i in navululs) {
			
				var ulHeight = navululs[i].offsetHeight
				yOffset = ulHeight > yOffset ? ulHeight : yOffset;
			}
		}
		modules.style.marginLeft = '-210px';
		modules.style.marginTop = (yOffset + 15) + 'px';		
	},
	
	fixIEjump:function() {
	
	// a nasty fix for ie's jumping bug
	// problem caused by positioning submenus in percentage values
		if (window.innerHeight > 0) { return; }
		var navigation = document.getElementById('navigation');
		if (!navigation) { return; }
		var navWidth = navigation.offsetWidth;
		
		var navuls = navigation.getElementsByTagName('ul');
		if (navuls.length > 0) {
		
			var navululs = navuls[0].getElementsByTagName('ul');
			for (var i = 0; i < navululs.length; i++) {
			
				// this particularly horrible bit makes sure that the correction is only applied to first children of the menu
				if (navululs[i].parentNode.parentNode.parentNode.parentNode.parentNode.getAttribute('id') != 'navigation') { continue; }
				navululs[i].style.left = (navWidth + 20) + 'px';
			}
		}
	}
	
}
coreFuncs.addLoadEvent(greyNgreen.prepForm);
coreFuncs.addLoadEvent(greyNgreen.modulePos);
coreFuncs.addLoadEvent(greyNgreen.fixIEjump);