// JavaScript Document

// CHECK FOR 'prototype'
if (typeof $ != "undefined") {
	
	Event.observe(window, "load", function() {
		// IMAGE ROLLOVERS
		// rollover image must be named "name-over.ext"
		$$(".rollover").each( function(elem) {
			var src = elem.readAttribute('src');
			if (src) {
					var over = src.substr(0, src.lastIndexOf(".")) + '-over' + src.substr(src.lastIndexOf("."));
				if (elem.hasClassName('active')) {
					elem.src = over;				
				} else {
					var pic = new Image();
					pic.src = over; 
					Event.observe(elem.up(), "mouseover", function() { elem.src = over; });
					Event.observe(elem.up(), "mouseout", function() { elem.src = src; });
				}
			}
		});
		
		// IF NOT IE, AND NOT 'class="rollover"', ALL OTHER IMAGES NESTED INSIDE AN '<a>' TAG WILL FADE ON ROLLOVER
		if (navigator.appName != 'Microsoft Internet Explorer') {
			$$("a img").each( function(elem) {
				if (!elem.hasClassName('rollover') && !elem.up(2).hasClassName('callout')) {
					Event.observe(elem.up(), "mouseover", function() { elem.setOpacity(0.6); });
					Event.observe(elem.up(), "mouseout", function() { elem.setOpacity(1.0); });
				}
			});
		}
		
		// INPUT TEXT PLACEHOLDER TEXT
		$$(".placeholder").each( function(elem) {
			var ph_txt = elem.value;
			Event.observe(elem, 'click', function() { if (elem.value == ph_txt) elem.value = ''; });
			Event.observe(elem, 'blur', function() { if (elem.value == '') elem.value = ph_txt; });
		});
		
	});
	
	
	// LOCATION SEARCH
	Event.observe(window, "load", function() {
		if ($('findlocation_txt')) {
			Event.observe('findlocation_txt', 'keypress', function(e) { if (Event.KEY_RETURN == e.keyCode) FindLocation_Submit(); });
			Event.observe('findlocation_btn', 'click', function() { FindLocation_Submit(); });
			
			FindLocation_Submit = function() {
				var txt = $('findlocation_txt').value;
				var url = $('findlocation_url').value;
				if ( txt != '' && txt != 'FIND A LOCATION' ) location.href = "/" + url + "?search=" + encodeURIComponent(txt);
				//if ( txt.length != 5 || isNaN(txt) ) alert('Zip Code must be a 5 digit number.');
			};
		}
	});
	
		
	// EMAIL SIGNUP FORM
	Event.observe(window,'load', function() { 
		if ( $('emailsignup_form') && $('field_1') && $('emailsignup_btn') && $('emailsignup_msg') ) {
			Event.observe('field_1', 'keypress', function(e) { if (Event.KEY_RETURN == e.keyCode) EmailSignup_Submit(); });
			Event.observe('emailsignup_btn', 'click', function() { EmailSignup_Submit(); });
			
			EmailSignup_Submit = function() {
				$('emailsignup_btn').disabled = true;
				var issubmit = true;
				
				// CHECK CITY OPTION
				var str = $('field_61').value;
				if ( str == '' ) {
					issubmit = false;
					$('emailsignup_msg').show().update('Please choose a city.');
				}
				
				// CHECK EMAIL FIELDS
				str = $('field_1').value;
				var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
				if ( !emailPattern.test(str) ) {
					issubmit = false;
					$('emailsignup_msg').show().update('Please enter a valid email address.');
				}
				
				if (issubmit) { $('emailsignup_form').submit(); }
				$('emailsignup_btn').disabled = false;
			};
		}
		
	});
	
	
	// TOGGLE MENU LIST
	Event.observe(window, "load", function() {
		$$('.menulist .toggle').each(function(elem) {
			Event.observe(elem.up(), 'click', function() {
				// IF CLOSED, OPEN LIST
				if ($(elem).hasClassName('toggle-closed')) {
					$(elem).removeClassName('toggle-closed').addClassName('toggle-opened');
					$(elem).up().next('ul').show();
				}
				// ELSE OPENED, CLOSE LIST
				else {
					$(elem).removeClassName('toggle-opened').addClassName('toggle-closed');
					$(elem).up().next('ul').hide();
				}
			});
		});
	});
	
}
