$(document).ready(function(){
	
	//main nav sub nav triggers
	$('ul#mainNavUl li').hover(function () {
		$(this).children('ul').show();
	},
	// on mouse out
	function () {
		$(this).children('ul').hide();
	});

	//hack to keep main nav top item on when browsing the child ul
	$('ul#mainNavUl li').hover(function () {
		$(this).children('ul').show();
		$(this).children('a').addClass('tmpOn');
	},
	// on mouse out
	function () {
		$(this).children('ul').hide();
		$(this).children('a').removeClass('tmpOn');
	});



	//left nav accordion
	//$('ul#leftNavOuterUl ul').hide();
	$('ul#leftNavOuterUl > li').hover(function(){
		//$(this).children('ul').slideToggle('normal');
	}, 
	function(){
		//$(this).children('ul').slideToggle('normal');
	});

	//offices expand
	$('#offices div.officeDetails').hide();
	$('#offices div.office div.opener').text('+');
	$('#offices div.office').click(function(){
		$(this).next().slideToggle('normal');
		if ($('div.opener', this).text().charAt(0) == '-'){
			$('div.opener', this).text('+');
		} else {
			$('div.opener', this).text('-');
		}
	});

	//related items expand
	$('#relatedItems div.relatedDetails, div.membersInvolved div.relatedDetails, div#memberBottomLeft div.relatedDetails').hide();
	$('#relatedItems div.relatedHeader div.opener img, div.membersInvolved div.relatedHeader div.opener img, div#memberBottomLeft div.relatedHeader div.opener img').attr('src', '/media/23610/plus.jpg');
	$('#relatedItems div.relatedHeader, div.membersInvolved div.relatedHeader, div#memberBottomLeft div.relatedHeader').click(function(){
		$(this).next().slideToggle('normal');
		if ($('div.opener img', this).attr('src') == '/media/23610/plus.jpg'){
			$('div.opener img', this).attr('src', '/media/23616/plus.jpg');;
		} else {
			$('div.opener img', this).attr('src', '/media/23610/plus.jpg');;
		}
	});


	//current campaigns expand
	$('#xsltsearchMembers div.relatedDetails').hide();
	$('#xsltsearchMembers div.relatedHeader div.opener img').attr('src', '/media/23610/plus.jpg');
	$('#xsltsearchMembers div.relatedHeader').click(function(){
		$(this).next().slideToggle('normal');
		if ($('div.opener img', this).attr('src') == '/media/23610/plus.jpg'){
			$('div.opener img', this).attr('src', '/media/23616/plus.jpg');;
		} else {
			$('div.opener img', this).attr('src', '/media/23610/plus.jpg');;
		}
	});


	//set search box dimensions based on browser
	if ($.browser.safari){
		$('div#header ul li.searchbox input').css('height', '13px');
	}

	//featured member expand
	$('div#featuredMembers div.subPage, div#featuredMembers div.subPageWithBorder').each(function(){
		if ($('div.subPageList > div').index(this) > 2){
			$(this).hide();
		}
	});
	$('a#expand').show();
	$('a#expand').attr('request', 'globalCurrentMembers');
	$('a#expand').click(function(){
		$('div.subPageList > div').each(function(){
			if ($('div.subPageList > div').index(this) > 2){
				$(this).toggle();
			}
		});
		$(this).load('/retrieve-text?id=' + $('a#expand').attr('request'));
		$('a#expand').attr('request') == 'globalCurrentMembers' ? $('a#expand').attr('request', 'globalPreviousMembers') : $('a#expand').attr('request', 'globalCurrentMembers');
		return false;
	});

	//activate watermark
	$('input, textarea').each(function() {
        	$(this).watermark($(this).attr('watermark'));
	});

	//Login button enter functionality
	$(function() {  
		$("input.login_username, input.login_password").keypress(function (e) {  
			if ((e.which && e.which == 13) || (e.keyCode && e.keyCode == 13)) {  
				$('input.login_button').click();  
				return false;  
			} else {  
				return true;  
			}  
		});  
	});  


	//issues custom scrollbars
	$('#issues').jScrollHorizontalPane({showArrows:true, scrollbarHeight: 19, arrowSize: 18});


	//main search
	$('#mainSearchButton').click(function(){
		window.location = "/search?search=" + $('#mainSearchText').val();
		return false;
	});
	$("#mainSearchText").keyup(function(event){
		if(event.keyCode == 13){
			window.location = "/search?search=" + $('#mainSearchText').val();
			return false;
		}
	});


	//search page search
	$('#searchButton').click(function(){
		window.location = "/search?search=" + $('#searchText').val();
		return false;
	});
	$("#searchText").keyup(function(event){
		if(event.keyCode == 13){
			window.location = "/search?search=" + $('#searchText').val();
			return false;
		}
	});


	//member page search
	$('.searchButtonMembers').click(function(){
		var c = $('div.relatedDetails input:checked').serialize().replace(/&/gi, ",").replace(/campaigns=/gi, "");
		var searchText = "";
		if ($('#searchTextMembers').val() != $('#searchTextMembers').attr('watermark')){
			searchText = $('#searchTextMembers').val();
		}
		window.location = "/our-members/member-directory?search=" + searchText + "&region=" + $('#regions').val() + "&type=" + $('#memberTypes').val() + "&country=" + $('#countries').val() + "&campaigns=" + c + '#resultsAnchor';
		return false;
	});
	$("#searchTextMembers, #regions, #memberTypes, #countries, .relatedDetails input").keyup(function(event){
		if(event.keyCode == 13){
			var c = $('div.relatedDetails input:checked').serialize().replace(/&/gi, ",").replace(/campaigns=/gi, "");
			var searchText = "";
			if ($('#searchTextMembers').val() != $('#searchTextMembers').attr('watermark')){
				searchText = $('#searchTextMembers').val();
			}
			window.location = "/our-members/member-directory?search=" + searchText + "&region=" + $('#regions').val() + "&type=" + $('#memberTypes').val() + "&country=" + $('#countries').val() + "&campaigns=" + c + '#resultsAnchor';
			return false;
		}
	});


	//member search: selected campaigns functionality
	var selCampaigns = $('div.relatedDetails input:checked').size();
	$('#selectedCampaigns').html(selCampaigns);
	if (selCampaigns > 0){
		$('#selectedCampaigns, .selectedCampaignsText').show();
	}
	$('div.relatedDetails input').each(function(){
		$(this).click(function(){
			var campaigns = parseInt($('#selectedCampaigns').html());
			if ($(this).attr('checked')){
				campaigns += 1;
				$('#selectedCampaigns').html(campaigns);
				$('#selectedCampaigns, .selectedCampaignsText').show();
			}else{
				campaigns -= 1;
				$('#selectedCampaigns').html(campaigns);
				if (campaigns == 0){
					$('#selectedCampaigns, .selectedCampaignsText').hide();
				}
			}
		});
	});


	//member quick search
	$('#quickMemberSearch').hide();
	$('#quickMemberSearch').click(function(event){
		$('#quickMemberSearch').hide();
	});
	// set the position of the overlay
	$("#quickMemberSearchButton").click(function(e){
		var position = $(this).parent().position();
		$("#quickMemberSearch").css({"left" : position.left-200,"top" : position.top-10});
		$("#quickMemberSearch").show();
		return false;
	});
	$('#quickMemberSearchSubmit').click(function(){
		window.location = "/our-members/member-directory?search=" + $('#quickMemberSearchText').val() + "&region=0&type=0&country=0&campaigns=";
		return false;
	});
	$("#quickMemberSearchText").keyup(function(event){
		if(event.keyCode == 13){
			window.location = "/our-members/member-directory?search=" + $('#quickMemberSearchText').val() + "&region=0&type=0&country=0&campaigns=";
			return false;
		}
		return false;
	});
	$("#quickMemberSearchText").bind('click', function(){
		//prevents bubbling up
		return false;
	});

	$('#popUpLanguageDocuments').css({'display' : 'none', 'position' : 'absolute'});
	$('#languageDocumentsSelector').hover(function () {
		var offset= $(this).offset();
		$('#popUpLanguageDocuments').css({'top' : offset.top + $(this).height() - 6});
		$('#popUpLanguageDocuments').fadeIn();
		return false;
	},
	function () {
		$('#popUpLanguageDocuments').fadeOut();
	});
});

redirectDropDownFilter = function(dropdown){
	window.location = dropdown.value;
}

function initializeMap() {
    var wslIcon = new GIcon(G_DEFAULT_ICON);
    wslIcon.image = "/images/global/map_pin.png";
    markerOptions = { icon: wslIcon };

    var fm = {};
    fm.maps = new Array();
    $('div[class=map]').each(function() {
        var mapId = $(this).attr('id');
        fm.maps[fm.maps.length] = new google.maps.Map2(document.getElementById(mapId));
        var m = fm.maps[fm.maps.length - 1];

        // Centre map at maximum zoom
        m.setCenter(new google.maps.LatLng(21.9430, 0.7031), 2);

        //add map types
        m.addControl(new GLargeMapControl());
    });

    $('div[class=point]').each(function() {
        var m = fm.maps[fm.maps.length - 1];
        var value = $(this).html();
        value = $.trim(value);
        var values = value.split('|');
        var point = values[0].split(',');

        var lat = parseFloat(point[0]);
        var lon = parseFloat(point[1]);
        var name = values[1];
        var website = values[2];
        var country = values[3];
        var memberType = values[4];
        var html = '';
        if (website != '')
	    html += '<a href="http://' + website + '">' + name + '</a><br />';
        else
            html += name + '<br />';
        html += country + '<br />';
        html += memberType + '<br />';
        html = '<div>' + html + '</div>';

        var p = new google.maps.LatLng(lat, lon);
        var marker = new GMarker(p, markerOptions);

        GEvent.addListener(marker, "click", function() {
            $("#mapcontent").load(name);
        });

        GEvent.addListener(marker, "click", function() {
            marker.openInfoWindowHtml(html);
        });

        m.addOverlay(marker);

    });

}
