var isactive = "none";
var slider_visible = false;
var home_slider_visible = false; // workaround because $("#background-image").load is running twice

$(function(){
	
	/* HEADER IMAGE LOADER */
	$("#background-image").hide();
	var imglocation = $("#background-image").attr('src');
	$("#header-wrapper").css("backgroundImage", "url(ui/load-header.gif)"); //load loading image
	$(".home #slider-container").hide(); //hide slider while image is loading
	$("#background-image").load(function(){
		$("#background-image").show();
		$('#header-wrapper').css("background", "none");  //remove loader
		if ($("#header-wrapper").hasClass("home") && home_slider_visible == false){ ShowHomeSlider(); }
	}).attr('src', imglocation);
	
});

$(document).ready(function(){
	
	resizeBg();
	
	/* GALLERY CAPTIONS */
	$("#image-caption").hide();
	
	$("#more-info").click(function(){
		$('#image-caption').slideToggle();
	});


	
	$(".gallery-thumb").bind("click", function(){
		if ($(this).hasClass("active")) {
			return false;
		} else {
			var imglocation = $(this).attr('href');
			$("#image-title").empty();
			$("#image-caption").empty();
			$("#image-title").append($(this).children("img").attr('alt'));
			$("#image-caption").append($(this).children("img").attr('title'));
			if ($(this).children("img").attr('title')) {
				$("#image-caption").hide();
				$("#more-info").show();
			} else {
				$("#image-caption").hide();
				$("#more-info").hide();
			}
			$(".gallery-thumb").removeClass("active");
			$(this).addClass("active");
			$("#gallery-image-container img").hide();
			$("#gallery-image-container img").load(function(){
				$("#gallery-image-container img").fadeIn()
			}).attr('src', imglocation);
			return false;
		}
	});



	/* COMPANY NAV TOGGLING */

	/* about */
	$("#about").click(function(){
	
		$("#company-nav li a").removeClass("active");
		$(this).addClass("active"); //set active class
		
		EmptySlider();
		
		//load content
		$(".slider-content-container").load("slider-pages/about-overview.php", {}, function(){
	
			//nav load nested after content load
			$("#slider-nav").load("slider-pages/about-nav.php", function(){initSliderBinding();});

			$(".slider-content-frame").css("backgroundImage", "none");

			// slide enlargement/show/hide
			if (slider_visible == false && isactive != "about"){
				ShowLargeSlider();
				isactive = "about";
			} else if (slider_visible == true && isactive != "about") {
				EnlargetoLargeSlider();
				isactive = "about";
			} else {
				HideLargeSlider();
				$("#about").removeClass("active");
			}

		});
		
		return false;
	});

	/* contact */
	$("#contact").click(function(){
		$("#company-nav li a").removeClass("active");
		$(this).addClass("active"); //set active class
		EmptySlider();
		//load content
		$(".slider-content-container").load("slider-pages/contact-form.php", {}, function(){
			//nav load nested after content load
			$("#slider-nav").load("slider-pages/contact-nav.php", function(){initSliderBinding();});
			$(".slider-content-frame").css("backgroundImage", "none");
			// slide enlargement/show/hide
			if (slider_visible == false && isactive != "contact"){
				ShowLargeSlider();
				isactive = "contact";
			} else if (slider_visible == true && isactive != "contact") {
				EnlargetoLargeSlider();
				isactive = "contact";
			} else {
				HideLargeSlider();
				$("#contact").removeClass("active");
			}
			contactFormProcessing();
			initSliderBinding();
		});
		return false;
	});

	/* NEWS LIGHTBOX */
	$(".news-item a").fancybox({
		'frameWidth': 501,
		'frameHeight': 626,
		'padding': 14,
		'overlayOpacity': 0.5,
		'hideOnContentClick': false,
		'centerOnScroll': false
	});

	/* SAMPLE IMAGE LIGHTBOX */
	$("#product-details-photo-container a").fancybox({
		'zoomOpacity': true,
		'zoomSpeedIn': 500,
		'padding': 14,
		'overlayShow': false,
		'hideOnContentClick': false,
		'centerOnScroll': false
	});

	/* TERMS AND CONDITIONS LIGHTBOX */
	$("#terms-conditions").fancybox({
		'frameWidth': 501,
		'frameHeight': 626,
		'padding': 14,
		'overlayOpacity': 0.5,
		'hideOnContentClick': false,
		'centerOnScroll': false
	});

	/* SLIDER */
	var $panels = $('#slider-content .slider-content-container > div');
	var $container = $('#slider-content .slider-content-container');
	var horizontal = true;
	if (horizontal) {
		$panels.css({
			'float' : 'left',
			'position' : 'relative'
		});
		$container.css('width', 946 * $panels.length);
	}
	var $scroll = $('#slider-content .slider-content-frame').css('overflow', 'hidden');
	$scroll
		.before('<a class="scrollButtons left" href="#" />')
		.after('<a class="scrollButtons right" href="#" />');

	function selectNav() {
		$(this).parents('ul:first').find('a').removeClass('active').end().end().addClass('active');
	}
	
	function trigger(data) {
		var el = $('#slider-nav').find('a[href$="' + data.id + '"]').get(0);
		selectNav.call(el);
	}
	
	var offset = parseInt((horizontal ? 
		$container.css('paddingTop') : 
		$container.css('paddingLeft')) 
		|| 0) * -1;
	var scrollOptions = {
		target: $scroll,
		items: $panels,
		prev: 'a.left', 
		next: 'a.right',
		axis: 'xy',
		onAfter: trigger,
		offset: offset,
		duration: 1000,
		easing: 'swing'
	};
	$('#slider-content').serialScroll(scrollOptions);
	$.localScroll(scrollOptions);
});






	/* SLIDER FUNCTIONS */
	function ShowHomeSlider(){
		$(".scrollButtons").hide();
		$(".home #header-wrapper").animate({height: "416px"}, 1000);
		$(".home #slider-container").animate({opacity: "1"}, 1000).show('slide', {direction: 'down'}, 1000, function(){$(".scrollButtons").fadeIn();});
		slider_visible = true;
		home_slider_visible = true;
	}
	
	function ShowLargeSlider(){
		$("#slider").css("height", "546px");
		$("#slider-nav").css("height", "35px");
		$("#slider-content").css("height", "504px");
		$(".slider-content-container").css("width", "auto");
		$(".scrollButtons").hide();
		$("#header-wrapper").animate({height: "642px"}, 1000, function(){$("#slider-container").show("slide", {direction: "down"}, 1000);});
		slider_visible = true;
	}

	function EnlargetoLargeSlider(){
		$(".scrollButtons").hide();
		$("#slider-container").css("display", "block");
		$(".slider-content-container").css("width", "auto");
		$("#header-wrapper").animate({height: "642px"}, 1000);
		$("#slider-nav").animate({height: "35px"}, 1000);
		$("#slider-content").animate({height: "504px"}, 1000, function(){$(".scrollButtons").hide();});
		slider_visible = true;
	}

	function HideLargeSlider(){
		$("#slider").css("height", "546px");
		$("#slider-container").hide("slide", {direction: "down"}, 1000, function(){$("#header-wrapper").animate({height: "120px"}, 1000);});
		slider_visible = false;
		isactive = "";
	}

	function EmptySlider(){
		$("#slider-nav").empty();
		$(".slider-content-container").empty();
		$(".slider-content-frame").css("backgroundImage", "url(ui/load-body.gif)");
		return false;
	}

	/* LINK BINDING */
	function initSliderBinding(){
		$("#slider-nav li a").bind("click", function(){
			var contentlocation = $(this).attr('href');
			$(".slider-content-container").empty();
			$(".slider-content-frame").css("backgroundImage", "url(ui/load-body.gif)");
			$("#slider-nav li a").removeClass("active");
			$(this).addClass("active");
			$(".slider-content-container").load(contentlocation, function(){
				$(".slider-content-frame").css("backgroundImage", "none")
			});
			return false;
		});
		$("#slider-close a").bind("click", function(){
			$(".slider-content-container").empty();
			$(".slider-content-frame").css("backgroundImage", "url(ui/load-body.gif)");
			$("#company-nav li a").removeClass("active");
			HideLargeSlider();
		});
	}
	
	
	/* BACKGROUND IMAGE */
    function resizeBg(){ 
        var h = self.innerHeight || document.documentElement.clientHeight || document.body.clientHeight; 
        var w = self.innerWidth || document.documentElement.clientWidth || document.body.clientWidth; 
        var elem = document.getElementById('background-image'); 
        if(w > h){ 
                elem.width = w; 
                elem.height = w; 
        }else{ 
                elem.height = h; 
                elem.width = h; 
        } 
    } 
	
	/* CONTACT FORM VALIDATION AND PROCESSING */
	function contactFormProcessing(){
		    $("#contact-form").validation();

	    var paraTag = $('input#contact-submit').parent('form');
	    $(paraTag).children('input#contact-submit').remove();
	    $(paraTag).append('<input type="button" name="submit" id="contact-submit" class="typo-tahoma-11-block input-submit float-right" value="Send" />');

	    $('#contact-form #contact-submit').click(function(){
	        $('#contact-form').append('<img src="ui/load-body.gif" class="loaderIcon" alt="Loading..." />');
	        var name = $('input#input-name').val();
	        var companyname = $('input#input-company-name').val();
	        var address = $('input#input-address').val();
	        var suburb = $('input#input-suburb').val();
	        var postcode = $('input#input-postcode').val();
	        var country = $('input#input-country').val();
	        var phone = $('input#input-phone').val();
	        var mobile = $('input#input-mobile').val();
	        var email = $('input#input-email').val();
	        var comments = $('textarea#input-message').val();
	
	        $.ajax({
	            type: 'post',
	            url: 'includes/sendmail.php',
	            data: 'name=' + name + '&companyname=' + companyname + '&address=' + address + '&suburb=' + suburb + '&postcode=' + postcode + '&country=' + country + '&phone=' + phone + '&mobile=' + mobile + '&email=' + email + '&comments=' + comments,
	
	            success: function(results) {
		            $('#contact-form img.loaderIcon').fadeOut(1000);
	            	if(results == "success") {
						$('#contact-header').empty().html("Thank You");
						$('#contact-form input').fadeOut();
						$('#contact-form label').fadeOut();
						$('#contact-form textarea').fadeOut();
		                $('p#contact-reponse').fadeIn().removeClass('error').html("We will be in contact shortly.");
	            	} else {
/* 		                $('p#contact-reponse').fadeIn().addClass('error').html(results); */
		            }
	            }
	        });
	    });
	}
	