jQuery(document).ready(function(){

    jQuery('.slidingDiv').hide();
	
	jQuery('.dataBox a.show_hide').click(function(){
		if (jQuery(this).attr('href') == undefined || jQuery(this).attr('href') == "") {
			jQuery(this).closest('.dataBox').children('.slidingDiv').slideToggle();
			//toggle text and class on button
			toggleButton(jQuery(this));
			
		}
	});
	
	jQuery('#geoMapWrap1 a.show_hide').click(function(){
		jQuery('#geoMapWrap1').children('.slidingDiv').slideToggle();
	});
	
	jQuery('.containerMore a.button').click(function(){
		jQuery(this).closest('.containerMore').children('.slidingDiv').slideToggle();
		
		//toggle text and class on button
		toggleButton(jQuery(this));
	});
	
	function toggleButton($button) {
		if (jQuery($button).hasClass('activated')) {
			jQuery($button).children('span').text(jQuery($button).attr('rel'));
		} else {
			var originalTxt = jQuery($button).children('span').text();
			jQuery($button).attr('rel',originalTxt)
			jQuery($button).children('span').text('Close');
		}
		
		jQuery($button).toggleClass('activated');
	}
	
	//animated scroll to anchor
	jQuery('.contentMenu a:not(.anchorLink)').click(function(event){
		event.preventDefault();
		
		var targetAnchor = jQuery(this).attr('href').split('#')[1];

		jQuery('html,body').animate({scrollTop: $('a[name="' + targetAnchor + '"]').offset().top - 20}); //animated scroll to top of target anchor minus offset
	});
	
	//opening of sliding div from anchor navigation with animated scroll to div
	jQuery('a.anchorLink').click(function(event){
		event.preventDefault();

		var targetDiv = jQuery(this).attr('rel');
		jQuery('#' + targetDiv +' .slidingDiv').slideDown();
		
		if (!jQuery('#' + targetDiv +" a.show_hide").hasClass('activated')) toggleButton(jQuery('#' + targetDiv +' a.show_hide'));
		
		jQuery('html,body').animate({scrollTop: $('#' + targetDiv).offset().top}); //animated scroll to top of target div
	});
	
	//toggle responsive design
	jQuery('#responsiveOnOff a').click(function(){
		jQuery('body').toggleClass('responsive');
		var value = jQuery(this).children('span').text();
		
		if (jQuery(this).hasClass('activated')) {
			jQuery(this).children('span').text(value.replace('on','off'));
			// Delete/erase my cookie
			deleteCookie('responsiveOFF');
		} else {
			jQuery(this).children('span').text(value.replace('off','on'));
			// Create/write a cookie and store it for 1 year
			setCookie('responsiveOFF', 'true', 365);
		}
		
		jQuery(this).toggleClass('activated');
	});
	
	//custom dropdown
	jQuery("SELECT").selectbox();
	
	//dropdown extra handling
	jQuery('.sbHolder a').click(
		function() {
			var holder = jQuery(this).closest('.sbHolder');
			jQuery(holder).toggleClass('open');
			
			//if we're clicking on ul li a inside dropdown
			if (jQuery(this).parent().get(0).tagName == "LI") {
				jQuery(holder).children('.sbSelector').truncate();
			}
		}
	);
	
	//close dropdown on click outside
	jQuery("div").live('click', 
		function(e) {
			e.stopPropagation();
			
			if (!jQuery(this).hasClass('sbHolder') && !jQuery(this).hasClass('sbToggle') && !jQuery(this).hasClass('sbSelector') && !jQuery(this).hasClass('sbOptions')) {            	jQuery("select").selectbox('close');
			} 
		}
	);

	//get my cookie and set mobile button based on cookie
	if (getCookie('responsiveOFF') == 'true') {
		jQuery('#responsiveOnOff a').toggleClass('activated');
		jQuery('body').toggleClass('responsive');
		var value = jQuery('#responsiveOnOff a').children('span').text();
		jQuery('#responsiveOnOff a').children('span').text(value.replace('off','on'));
	}
	//

	jQuery('#contactsList').accordion({
		header:      'li h3',
		active:      false,
		autoHeight:  false
	});
	
	jQuery('#geoMapWrap').cycle({
        fx:    'fade',
        speed:  500,
        timeout:  5000
    });
});

//COOKIE HANDLING FUNCTIONS

function setCookie(name,value,days) {
    if (days) {
        var date = new Date();
        date.setTime(date.getTime()+(days*24*60*60*1000));
        var expires = "; expires="+date.toGMTString();
    }
    else var expires = "";
    document.cookie = name+"="+value+expires+"; path=/";
}

function getCookie(name) {
    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for(var i=0;i < ca.length;i++) {
        var c = ca[i];
        while (c.charAt(0)==' ') c = c.substring(1,c.length);
        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
    }
    return null;
}

function deleteCookie(name) {
    setCookie(name,"",-1);
}
