// JavaScript Document
var startCarousel=null;
var IE6 =function(){
		if (document.all && !window.opera && !window.XMLHttpRequest)
			return true;
		else
			return false;
}
var Dom = YAHOO.util.Dom;
var Event = YAHOO.util.Event;

var resizePopupHandlers = {}

function adjustFilter(){		
	document.getElementById('filterLayer').style.width = Dom.getDocumentWidth() + 'px';
	document.getElementById('filterLayer').style.height = Dom.getDocumentHeight()+'px';
}
var init=function(){ 	
    var so = new SWFObject('/assets/swfs/nav.swf', 'flashNav', '911', '82', '8', '#000000');
	so.useExpressInstall('expressinstall.swf');
	so.addParam('wmode', 'transparent');	
	//alert('here');
    so.addVariable('current_page',RedecurrentPage);		
	so.addVariable('config_file','/assets/swfs/xml/nav_app_config.xml');
	so.addVariable('tracking_file','/assets/swfs/xml/nav_tracking.xml');	
	
    if (document.getElementById('navBar') != null) {
        so.write('navBar');
    }
	if(document.getElementById('flashSection') != null){		
		so = new SWFObject('/assets/swfs/index.swf', 'slideshow', '911', '273', '9.0.0', '#000000');
	           so.useExpressInstall('swfobject/expressinstall.swf');
				so.addParam('wmode', 'transparent');
				so.addParam('allowScriptAccess', 'always');
				so.addVariable('xmlPath', '/assets/swfs/xml/slideshow.xml');
		so.write('flashSection');
	}
	Event.addListener(Dom.getElementsByClassName("radioPopup"),"click",selectState);
    Event.addListener("submit","click",function(){validate("subscribe")});
	Event.addListener("singUp","click",function(e){Event.preventDefault(e); showPopup("popUp")});
    Event.addListener("learnMoreSignUp","click",function(e){
        Event.preventDefault(e);
        scroll(0,0);
        showPopup("popUp");
        omn_rmaction("US:GABM:Thread:08Golf:Events","Click>ACCESS>NLSIGNUP>");
    });
	Event.addListener("closeIt","click",function(){closePopup("popUp")});	
	Event.addListener("closeImg","click",function(){closePopup("popUp")});
	Event.addListener(Dom.getElementsByClassName("browseMapImg"),"click",showMaps);
	Event.addListener(Dom.getElementsByClassName("closeButton"),"mouseover",function(){Dom.addClass(this,'closeButtonOver');});
	Event.addListener(Dom.getElementsByClassName("closeButton"),"mouseout",function(){Dom.removeClass(this,'closeButtonOver');});
	Event.addListener("closeMap","click",function(){closePopup("popUpmap")});

	Event.addListener("filterLayer","click",closePopup);

	Event.addListener(window,"resize",adjustFilter);	
	if(startCarousel)
		startCarousel();
	so = new SWFObject('/assets/swfs/cards.swf', 'Cards', '550', '110', '8', '#000000');	
	so.useExpressInstall('expressinstall.swf');
	so.addParam('scale', 'noscale');
	so.addParam('wmode', 'transparent');	
	so.addVariable('path','/assets/swfs/xml/'+xml);		
	so.write('cardAdd');
}
var selectState=function(){
	var oselect=document.getElementById("PROMO_CODE");
	if(this.value=="Y"){
		oselect.disabled=false;
	}
	else{
		oselect.disabled=true;
	}
}
var showPopup=function(id){
	adjustFilter();
    centerPopup(id);
    if (resizePopupHandlers[id] == null) {
        var handler = function() { centerPopup(id); }
        resizePopupHandlers[id] = handler;
        Event.addListener(window,"resize",handler);	
    }
    Dom.setStyle("filterLayer","display","block");
	Dom.setStyle(id,"display","block");	
	if(IE6()){
		Dom.setStyle(Dom.getElementsByClassName("hideonPopup"),"visibility","hidden");
	}
}

var centerPopup = function(id) {
	var docWidth=Dom.getViewportWidth();
	var docHeight=Dom.getViewportHeight();
	var popupWidth=Dom.getStyle(document.getElementById(id),"width");
	var popupHeight=Dom.getStyle(document.getElementById(id),"height");	
	if(popupHeight=='auto')
	   popupHeight='352px';
	var posX=(docWidth-parseInt(popupWidth))/2;
	var posY=(docHeight-parseInt(popupHeight))/2;
	Dom.setStyle(document.getElementById(id),"left",posX+"px");
	Dom.setStyle(document.getElementById(id),"top",posY+"px");
}

var closePopup=function(id){
	Dom.setStyle("filterLayer","display","none");
    closePopupAux("popUp");
    closePopupAux("popUpmap");
    closePopupAux("ggPopUp");
    if (id != null) {
        closePopupAux(id);
    }

    if(IE6()){
		Dom.setStyle(Dom.getElementsByClassName("hideonPopup"),"visibility","visible");
	}
}

var closePopupAux = function(id) {
    if(document.getElementById(id) != null) {
        Dom.setStyle(id,"display","none");
    }
    if(id=="popUp"){
		Dom.setStyle("errorMessage","visibility","hidden");
		Dom.setStyle(document.getElementById("subscribe").getElementsByTagName("label"),"color","#000000");
	}    
}

var showMaps=function(e) {
    Event.preventDefault(e);
    initStateDropDowns();
    showPopup("popUpmap");
    if (this.id == "browseMapGGButton") {
        omn_rmaction("US:GABM:Thread:08Golf:Play","Click>GETAWAY>SRCHMAP>");
    } else if (this.id == "browseMapPTTButton") {
        omn_rmaction("US:GABM:Thread:08Golf:Play","Click>TEETIME>SRCHMAP>");        
    }
}

var validate=function(form){
	form=document.getElementById(form);
	var objects=form.getElementsByTagName("input");
	var passed=true;
	var diffEmail=false
	var objs=form.getElementsByTagName('label');
	if(!emailValidate(form.email1.value)){
		passed=false
		diffEmail=true;	
	}
	if(form.email1.value!=form.email2.value){		
		passed=false;
		diffEmail=true;				
	}
	for(var i=0;i<objects.length;i++){		
		if(objects[i].value=='' || objects[i].value==' ' || objects[i].value=='.'){			
			var label=objs[i]						
			label.style.color="#ff0000"
			passed=false;				
		}
		else{			
			var label=objs[i]							
			label.style.color="#000000"			
		}
	}		
	if(diffEmail){
	   objs[4].style.color="#ff0000"	 	
	   objs[5].style.color="#ff0000"	 
	}
	if(form.CARDMEMBER[0].checked && form.PROMO_CODE.selectedIndex==0){			
		passed=false;
		objs[8].style.color="#ff0000"
	}
	
	if(!validateZip(form.POSTALCODE.value)){	
		objs[6].style.color="#ff0000"	
		passed=false;
	}
	if(passed){

        if (document.getElementById("CARDMEMBER").checked) {
            var cardTypeElement = document.getElementById("PROMO_CODE");
            var cardType = cardTypeElement.options[cardTypeElement.selectedIndex].value;
            omn_rmaction("US:GABM:Thread:08Golf:HP","Link>ENEWS>SIGNUP>SUBMITCM_" + cardType);
        } else {
            omn_rmaction("US:GABM:Thread:08Golf:HP","Link>ENEWS>SIGNUP>SUBMITPR");
        }

        form.submit();
		document.getElementById("content").style.display='none'	
		document.getElementById("message").style.display='block'
        omn_rmaction("US:GABM:Thread:08Golf:HP","Link>ENEWS>SIGNUP>TY")        
    }
	else{
		Dom.setStyle("errorMessage","visibility","visible");
        omn_rmaction("US:GABM:Thread:08Golf:HP","Link>ENEWS>SIGNUP>ERROR")
    }
}
function validateZip(zipcode){
	var valid=/^\d{5}$|^\d{5}-\d{4}$/;
	return zipcode.match(valid)	
}
function emailValidate(email){

    var emailRE = /^[a-zA-Z0-9_\+-]+(\.[a-zA-Z0-9_\+-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.([a-zA-Z]{2,4})$/;

    if (email.match(emailRE)){

        return true;

    }

    else {

        return false;

    }

}


Event.onDOMReady(init);