$(document).ready(function(){

	
	
	$('#title-banner').bxSlider({
		mode: 'fade',
		auto: 'true',
		controls: 'false',
		next_text: '',
		prev_text: '',
		speed: 1500,
		pause: 8500,
		width: 550,
		height: 30,
		wrapper_class: 'title-banner-container'
		
	});
	
	$('#content-tr-slides').bxSlider({
		mode: 'fade',
		auto: 'true',
		controls: 'false',
		next_text: '',
		prev_text: '',
		speed: 1500,
		pause: 8500,
		width: 550,
		wrapper_class: 'index-slides-container'
		
	});
	
	$('#comapnies-to-scroll').bxSlider({
		mode: 'slide',
		auto: 'true',
		controls: 'false',
		next_text: '',
		prev_text: '',
		speed: 1500,
		pause: 8500,
		width: 300,
		height: 150,
		auto_direction: 'right',
		wrapper_class: 'title-banner-container'	
	});	
	
	
	/********* features ********/
	
	$('#features-content:eq(0)> div:gt(0)').hide();
	
	$('#features-navigation li a').mouseover(
		function(){
			
			if($(this).attr('class')!='selected'){
				$(this).parent().css({"background-color":"#d9d9d9"});
				$(this).css({"color":"#ffffff"});
			}			
			
			return false;
	});
	
	$('#features-navigation li a').mouseout(
		function(){
			
			if($(this).attr('class')!='selected'){					
				$(this).parent().css({"background-color":"#fff"});
				$(this).css({"color":"#7c7c7c"});
			}
			return false;	
	});
	
	$('#features-navigation li a').click(
		function(){
					
			$('#features-navigation ul li a').removeClass('selected');
			$('#features-navigation ul li').css({"background-color":"#fff"});
			$('#features-navigation ul li a').css({"color":"#7c7c7c"});
			$(this).addClass('selected');			
			$(this).css({"color":"#fff"});
			
			$('#features-content').children($(this).attr("href")).fadeIn("slow").siblings().hide();
						
			return false;
	});
	
	
	/**************** content validation and submitting *******************/
		
	jQuery.iFormValidate = {
		build : function(user_options){
		
			var phpFile = "./assets/genContact.php";			
						
			return $(this).each(function(){
			
				var $inputs = $(this).find(":input").filter(":not(:submit)");
				
				$(this).find("#alert-box").hide();
				
				$(this).submit(function(){
					var isValid = jQuery.iFormValidate.validateForm($inputs);
										
					if(isValid == 0){
						return false;
					}else{
						$.post("scripts/genContact.php", $(this).serialize() ,function(data){						
							//alert("data loaded: "+ data);							
						});
						
						$(this).find("#alert-box").slideDown('fast').animate({opacity: '+=0'}, 5000).slideUp('fast');
						$(this).find("#divFormError").fadeOut('fast');
						$(this).find(":input").filter(":not(:submit)").val("");
						return false;

					}								
				});
				
				$inputs.filter("select").bind("change", jQuery.iFormValidate.validate);
				
			});
		},
		validateForm : function($inputs){
			
			var isValid = 1;
			
			$inputs.filter(".honeypot").each(jQuery.iFormValidate.botCheck);
			if($inputs.filter(".honeypot").hasClass("botdetected")){isValid = 0;}			
			$inputs.filter(".required").each(jQuery.iFormValidate.validate);
			if($inputs.filter(".required").hasClass("invalid")){isValid=0;}
			return isValid;
		},
		botCheck : function(){
			if($(this).val() != ""){
				$(this).addClass('botdetected');
				alert("no bots allowed - humans only");
			}
		},		
		validate : function(){
			
			var $val = $(this).val();
			var  isValid = true;
			var promptText = "";
						
			if($(this).hasClass('validate-text-presence')){
			
				if(!$(this).val()){
					isValid = false;
					promptText = "This field cannot be left blank";
				}
				
				
			}else if($(this).hasClass('validate-email-format')){
				var Regex =/^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
				if(!Regex.test($val)){
					isValid = false;
					promptText = "Please enter a valid email address.";
				}		
				
			}
			
			if(isValid){
				$(this).removeClass('invalid').addClass('valid');
				$(this).remove('.formError').remove('.formErrorContent');				
			}else{
				$(this).removeClass('valid').addClass('invalid');
				var divFormError = document.createElement('div');
				var formErrorContent = document.createElement('div');
				
				$(divFormError).addClass("formError");
				$(formErrorContent).addClass("formErrorContent");
				
				$('body').append(divFormError);
				$(divFormError).append(formErrorContent);
				
				var arrow = document.createElement('div');
				$(arrow).addClass("formErrorArrow");
				$(divFormError).append(arrow);
				$(arrow).html('<div class="line10"><!-- --></div><div class="line9"><!-- --></div><div class="line8"><!-- --></div><div class="line7"><!-- --></div><div class="line6"><!-- --></div><div class="line5"><!-- --></div><div class="line4"><!-- --></div><div class="line3"><!-- --></div><div class="line2"><!-- --></div><div class="line1"><!-- --></div>');
								
				$(formErrorContent).html(promptText);	
				
				tpo = $(this).offset().top;
				lpo = $(this).offset().left;
				cwidth = $(this).width();
				cheight = $(divFormError).height();
				
				$(divFormError).css({
					top: tpo += - cheight -10,
					left: lpo += cwidth -30,
					opacity: 0
				})
				
				$(divFormError).animate({"opacity":0.87});		
			}			
		}
	}		
	
	jQuery.fn.FormValidate = jQuery.iFormValidate.build;
	
});