var boxBorder;
var boxBackground;
var boxColor;
var buttonHeightSmall;
var buttonHeightLarge;

function siteInit() {
	attachEpochHandlers();
	activateButtons();
}

function attachEpochHandlers(){
    //var epochDateFields = Element.getElementsByClassName('input', 'formDateSelector');
	var epochDateFields = $$('.formDateSelector');
    for(i=0; i<epochDateFields.length; i++){
        cal = new Epoch('epoch_popup','popup',epochDateFields[i]);
	}
}

function activateButtons() {
	$$('.siteButton').each(function(s) {
		
		if(!buttonHeightSmall) {
			buttonHeightSmall = s.getHeight() - 16;
		}
		
		s.observe('mouseover', function(event) {

			var element = event.element();
			
			//gather the original styles
			if(!boxBorder) {
				boxBorder = element.getStyle('border');
				boxBackground = element.getStyle('background-color');
				boxColor = element.getStyle('color');
			}
			element.setStyle({
			  	backgroundColor: boxColor,
			  	color: boxBackground
			});

		});
		
		s.observe('mouseout', function(event) {
			var element = event.element();
			
			element.setStyle({
			  	backgroundColor: boxBackground,
			  	color: boxColor
			});

		});
		
		s.observe('click', function(event) {
			var element = event.element();
			var relLink = element.readAttribute('rel');

			if(relLink) {
				if(relLink.startsWith('http')) {
					window.open(relLink, '', '');
				}else{
					document.location.href = relLink;
				}
			}
		});
  		
	});
	
	$$('.dropButton').each(function(s) {
		
		if(!buttonHeightLarge) {
			buttonHeightLarge = s.getHeight();
			
			s.setStyle({
  				height: buttonHeightSmall+'px'
  			});
		}
		
		s.observe('click', function(event) {
			var element = event.element();
			element.morph('height:'+buttonHeightLarge+'px;');

			var innerElement = element.childElements()[0];

			var elementID = innerElement.identify();
			Effect.BlindDown(elementID);
			
			element.setStyle({
			  	backgroundColor: boxBackground,
			  	color: boxColor
			});
			element.stopObserving('click');
			element.stopObserving('mouseover');
			element.stopObserving('mouseout');
		});
	});
}
