var bannerDuration = 3000;
var slideshowRotator;
var restart = false;

function isValidEmail(emailAddress) {
	var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
	return pattern.test(emailAddress);
}

$(document).ready(function(){

	function rotateBanner(t){
		if (!t)
			t=null;
		
		if(t==null)	{
			var current = $("#banner nav ul li.active");
			var s = $("#banner nav ul li").length;
			var ci = current.index();
			
			if((s-ci)==1){
				t= $("#banner nav ul li").eq(0);
				clearInterval(slideshowRotator);
				restart = true;
			}
			else{
				t= $("#banner nav ul li").eq(ci+1);
			}
			current.removeClass('active');
			$("#banners li.active").fadeOut(1000);
			$("#banners li.active").removeClass('active');
			t.addClass('active');
			var i = t.index();
			updateIndicator(t);
			
			$('#banners li').eq(i).fadeIn(1000, function(){
				$(this).addClass('active');
			});
		}
		else if (!t.hasClass('active')){
			clearInterval(slideshowRotator);
			var ci = $("nav ul li.active").index();
			$("#banners li.active").fadeOut(300);
			$("#banners li.active").removeClass('active');
			$("#banner nav ul li.active").removeClass('active');
			t.addClass('active');
			var i = t.index();
			updateIndicator(t);
			$('#banners li').eq(i).fadeIn(1000, function(){
				$(this).addClass('active');
			});
		}
	}
	function updateIndicator(t){
		$("#indicator").stop();
		var p = t.parent().offset().left;
		var w = t.width();
		var o = t.offset().left-p;
		$("#indicator").animate({width:w,left: o}, 400, 'linear');
	}
	$("#banner nav ul li").hover(function(){
		$("#indicator").stop();
		var p = $(this).parent().offset().left;
		var w = $(this).width();
		var o = $(this).offset().left-p;
		
		$("#indicator").animate({width:w,left: o}, 400, 'linear');
		
	}, function(){
		if(!$(this).hasClass('active')){
			$("#indicator").stop();
			var w = $("#banner nav ul li.first").width();
			//$("#indicator").animate({width:w,left: 0}, 400, 'linear');
		}
	});
	
	$("#banner nav ul li").click(function(){
		rotateBanner($(this));
	});
	
	$("#banner nav ul").hover(function(){},function(){
		//$("#indicator").stop();
		var w = $("#banner nav ul li.active").width();
		var p = $("#banner nav ul li.active").parent().offset().left;
		var o = $("#banner nav ul li.active").offset().left-p;
		
		$("#indicator").animate({width:w,left: o}, 400, 'linear');
	});
	
	$("ul.tip li").hover(function(){
		
		var t = $(this);
		
		var id = t.attr('id');
		var link = null;
		if (t.attr('link'))
			link = t.attr('link');
			
		var text = t.attr('pop');
		
		
		//console.log(text);
		var pop = $("#pop-"+id);
		
		if(pop.length == 0){
			var l = "";
			if(link!=null)
				l = $("<a></a>").attr("href",link).html('Learn More >');
			
			var p = $("<div></div>").attr("id","pop-"+id).addClass('role-tooltip').html("<p>"+text+"</p>").append(l).appendTo(t);
		}
		else{
			pop.fadeIn('fast')
		}
	},function(){
		var id = $(this).attr('id');
		$("#pop-"+id).fadeOut('fast');
	});
	
	$("body.home #roles ul li").click(function(){
		window.location = $(this).attr('link');
		return false;
	});
	
	$(".collapsible h4").click(function(){
		$(this).parent().toggleClass("collapsed");
	});
	
	$('body.page-id-11 #roles ul li').click(function(){
		var t = $(this);
		var id = t.attr('id');
		if(!t.hasClass('active')){
			$("#roles ul li.active").removeClass('active');
			$(".role-info.active").removeClass('active');
			t.addClass('active');
			$("#vp-"+id).addClass('active');
		}
	});
	
	if($("body.page-id-11").length >0){
		var h = location.hash;		
		$(h).click();
	}
	$("#market_impact").click(function(){
		console.log("test");
		if($("#impact_map").length < 1){
			var l = $("#menu-item-442 a").attr("href");
			console.log(l);
			$("<div></div>").attr("id","impact_map")
							.append("<h2>Markets Being Impacted by iCrete</h2>")
							.append('<nav><ul><li class="close"><a href="#" id="close_map">Close</a></li><li style="margin:0;"><a href="'+l+'">Contact iCrete</li></ul></nav>')
							.append('<ul id="city_list"><li>NEW YORK</li><li>FLORIDA</li><li>UNITED KINGDOM</li><li>DENMARK</li><li>SPAIN</li><li>UAE</li><li>HONG KONG</li></ul>')
							.append('<div id="map_container"></div>')
							.appendTo($("#wrapper"))
							.before('<div id="map_overlay"></div>')
							.before('<div id="mini_map_overlay"></div>');

			$("#map_container").gMap({ 
				  controls: false,
                  scrollwheel: true,
                  markers: [{address: "Spain"},
                            {address: "New York, NY"},
                            {address: "Orlando, FL"},
                            {address: "London"},
                            {address: "Denmark"},
                            {address: "United Arab Emirates"},
                            {address: "Hong Kong"}],
                  icon: { image: "/wp/wp-content/themes/icrete/images/pin.png", 
                          iconsize: [30, 30],
                          iconanchor: [12, 12],
                          infowindowanchor: [12, 0] },
                  latitude: 47.58969,
                  longitude: -4,
                  zoom: 2
             });
                  
        	$('#close_map, #map_overlay').click(function(){
        		$("#impact_map, #map_overlay, #mini_map_overlay").hide();
        		return false;
        	});
		}
		else{
			$("#impact_map, #map_overlay, #mini_map_overlay").show();
		}
		return false;
	});
	
	$('#soloverview ul li').hover(function(){
		var ind = $(this).index();
		$('#soloverview #icsol ul li').eq(ind).addClass('highlight');
		$('#soloverview #roadmap ul li').eq(ind).addClass('highlight');
	},function(){
		$('#soloverview ul li.highlight').removeClass('highlight');
	})
	
	$('#soloverview ul li').click(function(){
		if($(this).children('a').length==0){
			window.location = $('#soloverview #icsol ul li a').eq($(this).index()).attr('href');
		}
	});
	
	$("a#v1img,a#v2img, a#v3img").fancybox();
	
	$("a[rel=visualize]").fancybox();
	
	// Form submit
	
	$("form.contact").submit(function(){
		
		$.post('/send.php',
			{	firstName: $(".firstName").val(),
				lastName: $(".lastName").val(),
				company: $(".company").val(),
				role: $(".role").val(),
				subject: $(".subject").val(),
				message: $(".message").val(),
				email: $(".email2").val()},
			function(d){
				alert(d);
				$("#modal").fadeOut();
			}
		)
		
		return false;
	});
	
	/*
	if($('#banner').length>0)
		slideshowRotator = setInterval(rotateBanner, bannerDuration);
	*/
	
});
