var displayList;
var weddingDateList;
weddingDateList = new weddingDateDropDown();
displayList = new regionListing();

function tabCookies() {
	var cookieVar = 'jive.cookieTab';
	this.initialize = function() {
		if (!readCookie()) {
			this.setCookie('allforums');
			cookieTabs.setCookie('allforums');
			toggleTabs.showPanel('allforums');
		} else {
			if (!toggleTabs.showPanel(readCookie())) {
				toggleTabs.showPanel('allforums');
			}

		}
	}

	this.setCookie = function(value) {
		tabSetCookie(cookieVar, value);
	}

	this.getCookie = function() {
		return readCookie();
	}

	function readCookie() {
		return tabGetCookie(cookieVar);
	}

	function tabSetCookie(name, value, expires, path, domain, secure) {
		var today = new Date();
		today.setTime( today.getTime() );
		if ( expires ){
		expires = expires * 1000 * 60 * 60 * 24;
		}
		var expires_date = new Date( today.getTime() + (expires) );

		path="/";
		document.cookie= name + "=" + escape(value) +
			((expires) ? "; expires=" + expires_date.toGMTString() : "") +
			((path) ? "; path=" + path : "") +
			((domain) ? "; domain=" + domain : "") +
			((secure) ? "; secure" : "");
	}

	function tabGetCookie(name) {
		var dc = document.cookie;
		var prefix = name + "=";
		var begin = dc.indexOf("; " + prefix);
		if (begin == -1) {
			begin = dc.indexOf(prefix);
			if (begin != 0) return null;
		} else {
			begin += 2;
		}
		var end = document.cookie.indexOf(";", begin);
		if (end == -1) {
			end = dc.length;
		}
		return unescape(dc.substring(begin + prefix.length, end));
	}
}

var toggleTabs = new ToggleTabs('tabsContainer', 'sectionContents');
var cookieTabs = new tabCookies();

function setForumTab(elId, noTrackTab) {
	if(noTrackTab == null) {
		page.trackLocationWithAdRefresh(document.location.pathname + '/?tabSection=' + elId);
	}
	if (toggleTabs.showPanel(elId)) {
	   cookieTabs.setCookie(elId);
	} else {
	   toggleTabs.showPanel('allforums');
	   cookieTabs.setCookie('allforums');
	}
}

function anchorTab(defaultVal) {
	setForumTab(defaultVal, 'noTrack');
	//location.href = location.href.replace(/(#goalforums)/g, '') + '#goallforums';
}

jQuery(document).ready(function() {
	cookieTabs.initialize();

	var pqs = new ParsedQueryString();
	if (pqs.param('defaultTab')) {
		anchorTab(pqs.param('defaultTab'));
	}
	jQuery('#tabsContainer li a').click(function() {
		setForumTab(this.id);
	});
}); 

function populateLocalTab(){
    initRegionDropdown();
}

function populateWeddateTab(){
    monthAry = new Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December");
    tdate = new Date();

    //Setting Default Values
    tmonth = tdate.getMonth();
    tyear = tdate.getFullYear()+1;

    if(userData.loggedIn == true){
        if (userData.weddingDate) {
            tdate = new Date(userData.weddingDate);
            tmonth = tdate.getMonth();
            tyear = tdate.getFullYear();
        }
    }

    weddingDate =  tmonth + 1 + "_" + tyear;
    initDateDropdown(monthAry[tmonth] + " " + tyear);

}


function initRegionDropdown() {
    displayList.setTargetDropDown('regionList').targetUrl('tag.jspa', 'tagName').displayListing();
}

function initDateDropdown(tDate) {
    if (typeof tDate == 'undefined') {
        monthAry = new Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December");
        defaultDate = new Date();
        defaultYear = defaultDate.getFullYear()+1;
        defaultDate = monthAry[defaultDate.getMonth()] + " " + defaultYear;
    } else {
        defaultDate = tDate.toLowerCase();
    }

    weddingDateList.setTargetField('weddingdatedropdown')
        .setMonthLimit(18)
        .generateDateList()
        .targetUrl('tag.jspa', 'tagName')
        .defaultTo(defaultDate);
}


function hideFromNonCommunityUsers() {
	if (userData ==null){
		setTimeout("hideFromNonCommunityUsers()", 500);
	}else{
		if (userData.loggedIn == true){
			$('localLoginCallout').style.display="none";
			$('weddateLoginCallout').style.display="none";
		}else{
			$('wedLocation').style.display="none";
		}
	}

}

// Run any activities dependant on onload and/or user data returning
function fetchTabDataOnLoad() {
	jQuery(document).ready(function() {
		hideFromNonCommunityUsers();	
		populateWeddateTab();
		populateLocalTab();

    	});
}
userDataEventRegistry.add('fetchTabDataOnLoad()');