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;
	});
});
$(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');
			});
		}
	});
	
	$("#homepage-flash").flash({
		swf: '/assets/flash/homepage.swf'
		,height:276
		,width:955
		,params: {
			wmode: 'transparent'
		}
		,flashvars: {
			url_mobility: 'http://www.gssolutions.com/go/systems-storage/',
			url_systems: 'http://www.gssolutions.com/go/wireless-mobility/',
			url_leasing: 'http://www.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'
		}
	});
	
	$('.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(); 
	

	$("#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;
	});
});