var jpl = 0;
var tmr_jpl;
Event.observe(window,'load',function(){
	try{
		if(window.details.ieVersion()!=6){
			$('nav_ribbon_dealer').observe('mouseover',function(){dealer_locator_nav_hover = true;show_dealer_menu();},true);
			$('nav_ribbon_dealer').observe('mouseout',function(){dealer_locator_nav_hover = false;hide_dealer_menu();},true);
			$('dealer_locator').observe('mouseover',function(){dealer_locator_menu_hover = true;show_dealer_menu();},true);
			$('dealer_locator').observe('mouseout',function(){dealer_locator_menu_hover = false;hide_dealer_menu();},true);
			$('zip_code_nav').observe('focus',function(){if(this.value=='zip code') this.value = '';});
			$('zip_code_nav').observe('blur',function(){if(!this.value) this.value = 'zip code';});
			if($('zip_code_tab')){
				$('zip_code_tab').observe('focus',function(){if(this.value=='zip code') this.value = '';});
				$('zip_code_tab').observe('blur',function(){if(!this.value) this.value = 'zip code';});
			}		
		}
	}catch(err){}
});
document.observe('dom:loaded',function(){
	// IE6 PROVISION
	if($('form_container_overlay')) $('form_container_overlay').style.height = $('form_container_confirmation').style.height = $('form_container').clientHeight + 'px';	    

	if(navigator.userAgent.indexOf('Safari')>-1&&navigator.userAgent.indexOf('Mac')>-1) $('dealer_locator').style.backgroundColor = '#444';

	// TAB CLICK
	var tabs = $$('img.tab');
	if(tabs.length>0){
		tabs.each(
			function(tab){
				tab.img_active = tab.src;
				tab.observe('click',function(){
					show_tab(tab);
				});
			}
		);
		show_tab(tabs[default_tab]);
	}
	add_status();
	remove_alt_tags();
	
	// CONTACT FORM
	if($('form_contact')){
		toggle_referrer();
	}
});
var dealer_locator_nav_hover, dealer_locator_menu_hover;
function show_dealer_menu(){
	$('dealer_locator').style.display = 'block';
	var nav_item = $('nav_ribbon_dealer');
	$('dealer_locator').style.left = (nav_item.cumulativeOffset()[0] - $('dealer_locator').clientWidth + nav_item.clientWidth) + 'px';
	$('dealer_locator').style.top = (nav_item.cumulativeOffset()[1] + nav_item.clientHeight) + 'px';

	var nav_item = $('nav_ribbon_dealer');
	nav_item.select('img')[0].style.backgroundImage = 'url(img/header_nav_dealer_hover.png)';
	
}
function hide_dealer_menu(){
	window.setTimeout(
		function(){
			if(!(dealer_locator_nav_hover||dealer_locator_menu_hover)){
				$('dealer_locator').style.display = 'none';
				var nav_item = $('nav_ribbon_dealer');
				nav_item.select('img')[0].style.backgroundImage = 'url(img/header_nav_dealer.png)';
			}
		}
	,100);
}
function contact_form_validate(){
	var errors = 0;
	$$('#form_contact input, #form_contact select').each(
		function (field){
			if(!field.disabled&&field.type!='hidden'&&field.type!='image'){
				field.invalid = (field.hasClassName('required')&&!field.value);
				if(!field.invalid){
					switch(field.name){
						case 'phone':
							field.invalid = !validate_phone(field.value);
							break;
						case 'fax':
							field.invalid = (field.value&&!validate_phone(field.value));
							break;
						case 'email':
							field.invalid = !validate_email(field.value);
							break;
						case 'email_confirm':
							field.invalid = (field.value!=$('form_contact').email.value);
							break;
						case 'zip':
							field.invalid = !(validate_zip(field.value));
							break;
					}
				}
				if(field.invalid){
					errors++;
					if(!field.hasClassName('error')){
						field.addClassName('error');
						field.up('td').previous('td').down('.label').addClassName('error');
					}
				}else{
					field.removeClassName('error');
					field.up('td').previous('td').down('.label').removeClassName('error');					
				}
			}
		}
	);
	$('lbl_error').style.display = (errors==0)?'none':'inline';
	return (errors==0);
}
function hide_tabs(){
	$$('.tab_content').each(
		function(tab){
			tab.style.display = 'none';
			tab.previous('img.tab').src = 'img/spacer.gif';
		}
	);
}
function show_tab(tab){
	hide_tabs();
	tab.src = tab.img_active;
	tab.next('.tab_content').style.display = 'block';
	tab.up('.tab_control').style.height = Math.max(450,tab.next('.tab_content').clientHeight) + 'px';
	if(tab.id=='tab_contact') tmr_jpl = window.setInterval(function(){ jpl++; },1000);
}
function dealer_locator_validate(){
	return ($('zip_code').value!='zip code');
}

function dealer_locator_submit(zip){
	if(zip!='zip code'){
		$('form_dealer_locator_hidden').txtZipCode.value = zip;
		$('form_dealer_locator_hidden').submit();
	}
}
function remove_alt_tags(){
	// DYNAMICALLY REMOVE ALT AND TITLE TAGS (INCLUDED IN HTML FOR SEO PURPOSES)
	$$('img[title],img[alt],area[title],area[alt],a[title]').each(function(elt){elt.title=elt.alt='';});
}
function hide_form_error(){
    $('form_container_error').style.visibility = 'hidden';
    $('form_contact').setOpacity(1);
    $('form_contact').style.visibility = 'visible';
}
function set_overlay_visibility(visible){
    $('form_container_overlay').style.visibility = (visible)?'visible':'hidden';
    $('form_container_overlay').style.height = $('form_container_overlay').parentNode.clientHeight + 'px';
    if(visible){
	    $('form_contact').setOpacity(.25);
    }else{
	    $('form_contact').style.visibility = 'hidden';
    }
}
function toggle_referrer(){
	$('form_contact').referrer_other.disabled = ($('form_contact').referrer.value!='Other');
	$('form_contact').referrer_other.style.display = $('referrer_other_label').style.display = ($('form_contact').referrer_other.disabled)?'none':'block';
	$('referrer_other_label').removeClassName('error');
}
function submit_form(){
    if(contact_form_validate()){
	    set_overlay_visibility(true)
	    $('button_submit').disabled = true;
	    $('button_submit').style.cursor = 'default';
	    
	    var data = unescape($('form_contact').serialize()) + '&jpl=' + jpl;
	    window.clearInterval(tmr_jpl);
	    
	    var url = 'contact_submit.asp';
	    new Ajax.Request(url, {
	      method: 'get',
	      parameters: data,
	      onComplete: function(response) {
		show_submit_result(response.responseText=='success');
		return false;
	      }
	    }); 
    }
    return false;
}
function show_submit_result(success){
    $('button_submit').disabled = false;
    $('button_submit').style.cursor = 'pointer';
    set_overlay_visibility(false);
    $('form_container_confirmation').style.visibility = (success)?'visible':'hidden';
    $('form_container_error').style.visibility = (!success)?'visible':'hidden';
    // KICK OUT COREMETRICS CONVERSION EVENT
    if(success) cmCreateConversionEventTag('Premiere Series Contact Us',2,'Contact', 10);
}
function validate_email(txt){
	return (txt.search(/^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/)==0);
}
function validate_phone(txt){
	return (txt.search(/\d{3}\-\d{3}\-\d{4}/)==0);
}
function validate_zip(txt){
	return (txt.search(/\d{5}/)==0);
}