jQuery.fn.vjustify=function() {
    var maxHeight=0;
    this.each(function(){
        if (this.offsetHeight>maxHeight) {maxHeight=this.offsetHeight;}
    });
    this.each(function(){
        $(this).height(maxHeight + "px");
        if (this.offsetHeight>maxHeight) {$(this).height((maxHeight-(this.offsetHeight-maxHeight))+"px");}
    });
};
$(function() {
	var zIndexNumber = 1000;
	$('div').each(function() {
		$(this).css('zIndex', zIndexNumber);
		zIndexNumber -= 10;
	});
});
(function($){

$.fn.placeholder = function(){

	return this.each(function(){

		var $this = $(this);
		
		$this.parents("form").attr("autocomplete","off");
		
		if($this.val() != "") {$this.prev().hide();}

		$this.keyup(function(){
			if($(this).val() == "")
				$(this).prev().show();
			else
				$(this).prev().hide();
		});
		$this.focus(function(){
			if($(this).val() == "")
				$(this).prev().addClass("focus").fadeTo(250,.4);
				$(this).addClass("focus");
		});
		$this.blur(function(){
			if($(this).val() == "") {
				$(this).prev().removeClass("focus").stop(true,true).css('opacity','1').show();
				$(this).removeClass("focus");
			}
		});
		$this.keypress(function(e){
			if (e.keyCode == '9') return;

			$(this).prev().hide();
		});

	});
};

})(jQuery);

$(document).ready(function() {
	$("a[href^='http:']").not("[href*='gssolutions.com']").attr('target','_blank');
	
	$("#site-nav li:first-child").addClass("first");
	$("#sidebar ul li:first").addClass("first");
	$("ul li:last-child").addClass("last");
	
	$("#site-nav > li a").wrap("<div><span></span></div>");
	
	$(".homepage-location ul li").click(function() {
		var current = $(".homepage-location ul li.selected").attr("id");
		$(".homepage-location ul li").removeClass("selected");
		$(this).addClass("selected");
		var clicked = $(this).attr("id");
		if(current != clicked) {
			$(".homepage-location #"+current+"-address").fadeOut('fast', function() {
				$(".homepage-location #"+clicked+"-address").fadeIn('fast');
			});
		}
	});
	
	$("#sidebar-form input, #sidebar-form textarea").placeholder();
	
	$("#homepage-flash").flash({
		swf: '/assets/flash/homepage.swf'
		,height:276
		,width:955
		,params: {
			wmode: 'transparent'
		}
		,flashvars: {
			url_mobility: 'http://gssolutions.com/go/systems-storage/',
			url_systems: 'http://gssolutions.com/go/wireless-mobility/',
			url_leasing: 'http://gssolutions.com/go/leasing/'
		}
	});
	$("#wireless-mobility-flash").flash({
		swf: '/uploads/wireless.swf'
		,height:135
		,width:691
		,params: {
			wmode: 'transparent'
		}
	});
	$("#systems-storage-flash").flash({
		swf: '/uploads/systems.swf'
		,height:135
		,width:691
		,params: {
			wmode: 'transparent'
		}
	});
	$("#leasing-flash").flash({
		swf: '/uploads/leasing.swf'
		,height:135
		,width:691
		,params: {
			wmode: 'transparent'
		}
	});
	bannerSWF = $('.flash-banner').attr('data-swf');
	$(".flash-banner").flash({
		swf: bannerSWF
		,height:135
		,width:691
		,params: {
			wmode: 'transparent'
		}
	});
	
	$('.wireless-mobility > .whitepaper:odd').addClass('odd');
	$('.systems-storage > .whitepaper:odd').addClass('odd');
	$('.leasing > .whitepaper:odd').addClass('odd');
	$('.wireless-mobility > .casestudy:odd').addClass('odd');
	$('.systems-storage > .casestudy:odd').addClass('odd');
	$('.leasing > .casestudy:odd').addClass('odd');
	$('.upcoming-webinars > .webinar:odd').addClass('odd');
	$('.past-webinars > .webinar:odd').addClass('odd');
	$('.partners > .systems-storage > .partner:odd').addClass('odd');
	$('.partners > .wireless-mobility > .partner:odd').addClass('odd');
	$('#career-listings tr:even').addClass('even');
	
	$(".resources .column").vjustify(); 
	$(".featured-inner a").vjustify(); 
	$(".products .product a").vjustify(); 
	$(".products .service a").vjustify(); 
	
	$("#sidebar-submit").click(function(){
		var hasError = false;
		var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
		var nameValue = $("#name").val();
		var emailValue = $("#email").val();
		var phoneValue = $("#phone").val();
		
		if(nameValue == '') {
			$("#name").addClass('error');
			$(".error").fadeIn();
			hasError = true;
		}
		if(emailValue == '') {
			$("#email").addClass('error');
			hasError = true;
		} else if(!emailReg.test(emailValue)) {
			$("#email").addClass('error');
			$(".error").fadeIn();
			hasError = true;
		}	
		if(phoneValue == '') {
			$("#phone").addClass('error');
			$("div.error").fadeIn();
			hasError = true;
		}
		
		if(hasError == false) {
			$(this).parents('form').ajaxSubmit({
				target:"#hidden", 
				iframe: true,
				beforeSubmit:function() {
					$("div.error").hide();
				    $("#msg").removeClass("error").html("Sending...");
				},
				success:function(response) {
					if (/<title>Error<\/title>/gi.test(response)) {
						$("#msg").empty().addClass("error").append("<ul/>");
						$("#msg ul").html($("#hidden #content ul").html());
						$("#hidden").empty(); 
					} else {
						$("#sidebar-form").fadeOut(250,function(){
							$(this).remove();
							$("#msg").empty().removeClass("error").addClass("thanks");
							$("#msg").html("Thank you for contacting us. Your message has been received and will be answered within 24-48 hours.");
						});
					}
				}
			});
		}
		return false;
	});

	$("#submit").click(function(){
		var hasError = false;
		var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
		var nameValue = $("#name").val();
		var emailValue = $("#email").val();
		var cityValue = $("#city").val();
		var stateValue = $("#state").val();
		var zipValue = $("#zip").val();
		var interestValue = $("#interested_in");
		
		if(nameValue == '') {
			$("#name").addClass('error');
			$(".error").fadeIn();
			hasError = true;
		}
		if(emailValue == '') {
			$("#email").addClass('error');
			hasError = true;
		} else if(!emailReg.test(emailValue)) {
			$("#email").addClass('error');
			$(".error").fadeIn();
			hasError = true;
		}	
		if(cityValue == '') {
			$("#city").addClass('error');
			$("div.error").fadeIn();
			hasError = true;
		}
		if(stateValue == '') {
			$("#state").addClass('error');
			$("div.error").fadeIn();
			hasError = true;
		}
		if(zipValue == '') {
			$("#zip").addClass('error');
			$("div.error").fadeIn();
			hasError = true;
		}
		
		if(hasError == false) {
			var areaCode = $("#areacode").val();
			var phone1 = $("#phone1").val();
			var phone2 = $("#phone2").val();
			var ext = $("#ext").val();
			var checkedVal = "";
			
			$("#phone").val(areaCode + '-' + phone1 + '-' + phone2 + ' ext. ' + ext);
			
			this.form.submit();
		}
		return false;
	});
	
	$("#register").click(function(){
		var hasError = false;
		var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
		var nameValue = $("#name").val();
		var titleValue = $("#title").val();
		var companyValue = $("#company").val();
		var emailValue = $("#email").val();
		var addressValue = $("#address").val();
		var cityValue = $("#city").val();
		var stateValue = $("#state").val();
		var zipValue = $("#zip").val();
		var areaCode = $("#areacode").val();
		var phone1 = $("#phone1").val();
		var phone2 = $("#phone2").val();
		var ext = $("#ext").val();
		var interestValue = $("#interested_in");

		$("#phone").val(areaCode + '-' + phone1 + '-' + phone2 + ' ext. ' + ext);
		var phoneValue  = $("#phone").val();
		
		if(nameValue == '') {
			$("#name").addClass('error');
			$(".error").fadeIn();
			hasError = true;
		}
		if(companyValue == '') {
			$("#company").addClass('error');
			$(".error").fadeIn();
			hasError = true;
		}
		if(titleValue == '') {
			$("#title").addClass('error');
			$(".error").fadeIn();
			hasError = true;
		}
		if(emailValue == '') {
			$("#email").addClass('error');
			hasError = true;
		} else if(!emailReg.test(emailValue)) {
			$("#email").addClass('error');
			$(".error").fadeIn();
			hasError = true;
		}
		if(addressValue == '') {
			$("#address").addClass('error');
			$("div.error").fadeIn();
			hasError = true;
		}
		if(cityValue == '') {
			$("#city").addClass('error');
			$("div.error").fadeIn();
			hasError = true;
		}
		if(stateValue == '') {
			$("#state").addClass('error');
			$("div.error").fadeIn();
			hasError = true;
		}
		if(zipValue == '') {
			$("#zip").addClass('error');
			$("div.error").fadeIn();
			hasError = true;
		}
		if(phoneValue.length < 12) {
			$("#areacode").addClass('error');
			$("#phone1").addClass('error');
			$("#phone2").addClass('error');
			
			$("div.error").fadeIn();
			hasError = true;
		}
		if(interestValue.is(":selected") == false) {
			$("#interested_in").addClass('error');
			$("div.error").fadeIn();
			hasError = true;
		}
				
		if(hasError == false) {this.form.submit();}
		return false;
	});
});
