jQuery(document).ready(function(){
	jQuery("a[rel^='prettyPhoto']").prettyPhoto({theme:'dark_square'});
	jQuery('#success').hide();
	jQuery('#error').hide();
});

jQuery(function() {
	jQuery('#slideshow').cycle({
		speed:       fade_speed,
		timeout:     delay_time,
		delay:       0, 
		pager:      '#nav',
		pagerEvent: 'click',
		pauseOnPagerHover: true,
		pagerAnchorBuilder: function(idx, slide) {
			return '#recentimages li:eq(' + idx + ')';
		} 
	});

	jQuery('#news_ticker').cycle({ 
		cleartype:  10,
		cleartypeNoBg: true
	});
});
jQuery.fn.cycle.updateActivePagerLink = function(pager, currSlideIndex) {
	jQuery(pager).find('li').removeClass('selected').filter('li:eq('+currSlideIndex+')').addClass('selected');
};

/* Starting the site scripts */
jQuery(document).ready(function(){ 
	if(disable_submenu_effect == 1){
		superfish_dropdown();
	}
	if(disable_menu_effect == 1){
		menu_background_effect();
	}
	banner_buttons();   
	slideshow_control();   
	go_top();
	portfolio_zoom();
	
	jQuery(".activefocus").focus(function () {
			if (jQuery(this).attr("value") == jQuery(this).attr("defaultValue")) {
					jQuery(this).attr("value", '');
			}

	});

	jQuery(".activefocus").blur(function () {
			if (jQuery(this).attr("value") == '') {
					jQuery(this).attr("value", jQuery(this).attr("defaultValue"));
			}

	});
});


/* DropDown Menu */
function superfish_dropdown(){
	jQuery("ul.main_menu").superfish();
}

/* Main Menu Background Effect */
function menu_background_effect(){
	 jQuery('.main_menu li a').append('<div class="hover"></div>');  
	 jQuery('.main_menu li a').hover(  
		 function() {
			jQuery('ul li:last', this).css('background','none');
			jQuery(this).children('div').fadeIn('500');   
		},function() {  
			jQuery(this).children('div').fadeOut('500');      
		});
}

/* Banner Button Effect */
function banner_buttons(){
	jQuery('#recentimages li').append('<div class="hover"></div>');  
	jQuery('#recentimages li').hover(  
		function() {  
			jQuery(this).children('div').fadeIn('500');   
		},   
		function() {  
			jQuery(this).children('div').fadeOut('500');      
		}).click(function () {
			jQuery('#recentimages li').removeClass('selected');
			jQuery(this).addClass('selected');
			return false;
		});

	jQuery('#recentimages_details li').append('<div class="hover_details"></div>');  
	jQuery('#recentimages_details li').hover(  
		function() {  
			jQuery(this).children('div').fadeIn('500');   
		},   
		function() {  
			jQuery(this).children('div').fadeOut('500');      
		}).click(function () {
			jQuery('#recentimages_details li').removeClass('selected');
			jQuery(this).addClass('selected');
			return false;
		});

}

function portfolio_zoom(){

	jQuery('.portfolio_box_anime').hover(function(){
		jQuery(".portfolio_zoom", this).fadeIn('500');
	
	}, function() {
		jQuery(".portfolio_zoom", this).fadeOut('500');
	});
}


/* Slide show play & pause */
function slideshow_control(){
	jQuery('#slideshow').hover(  
		function() {
			jQuery('#slideshow').cycle('pause')
		},   
		function() {  
		 	jQuery('#slideshow').cycle('resume')
	});
	jQuery('#slideshow_details').hover(  
		function() {
			jQuery('#slideshow_details').cycle('pause')
		},   
		function() {  
		 	jQuery('#slideshow_details').cycle('resume')
	});
}


function go_top(){
	 jQuery('a[href^=#]').bind("click", function(event) {
        event.preventDefault();
        var ziel = jQuery(this).attr("href");

        jQuery('html,body').animate({
                scrollTop: jQuery(ziel).offset().top
        }, 1000);
        return false;
    });	
}


jQuery.iFormValidate = {
	build : function(options)
	{
		var defaults = {
			phpFile:"mail.php",
			ajax: true
		};
		var options = jQuery.extend(defaults, options); 
		return jQuery(this).each(
			function() {
			$inputs = jQuery(this).find(":input").filter(":not(:submit)");
			jQuery(this).submit(function(){
				var isValid = jQuery.iFormValidate.validateForm($inputs);
				if(!isValid){
					jQuery('#error').fadeIn("slow");
					jQuery('#success').fadeOut("slow");
					return false;
				};
				if(options.ajax){
					var data = {};
					$inputs.each(function(){
						data[this.name] = this.value
					});
					$inputs.each(function(){
						data[this.name] = this.value
						
					});
					
						jQuery('#error').fadeOut("slow");
						jQuery('#result').load(options.phpFile, data, function(){
						jQuery('#success').fadeIn("slow");
						
						
						jQuery(':input','#myform')
						 .not(':button, :submit, :reset, :hidden')
						 .val('')
						 .removeAttr('checked')
						 .removeAttr('selected');

					});
					return false;
				}else{
					return true;
				}
			});
			
			$inputs.bind("keyup", jQuery.iFormValidate.validate);
			$inputs.filter("select").bind("change", jQuery.iFormValidate.validate);
		});
	},
	validateForm : function($inputs)
	{
		var isValid = true; //benifit of the doubt?
		$inputs.filter(".is_required").each(jQuery.iFormValidate.validate);
		if($inputs.filter(".is_required").hasClass("invalid")){isValid=false;}
		return isValid;
	},
		
	validate : function(){
		var $val = jQuery(this).val();
		var isValid = true;
		

		
		if(jQuery(this).hasClass('vdate')){
			var Regex = /^([\d]|1[0,1,2]|0[1-9])(\-|\/|\.)([0-9]|[0,1,2][0-9]|3[0,1])(\-|\/|\.)\d{4}$/;
			isValid = Regex.test($val);
		}else if(jQuery(this).hasClass('vemail')){
			var Regex =/^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
			if(!Regex.test($val)){isValid = false;};
		}else if(jQuery(this).hasClass('vname')){
			if($val == "name" || $val == ""){
				isValid = false;
				jQuery('.vname').val('name');
				jQuery('.vsemail').val('email address');
				jQuery('.vsubject').val('subject');
				jQuery('.vmessage').val('message');
			};
		}else if(jQuery(this).hasClass('vsemail')){
			if($val == "email address" || $val == ""){
				isValid = false;
			};
		}else if(jQuery(this).hasClass('vsubject')){
			if($val == "subject" || $val == ""){
				isValid = false;
			};
		}else if(jQuery(this).hasClass('vmessage')){
			if($val == "message" || $val == ""){
				isValid = false;
			};
		}else if(jQuery(this).hasClass('vphone')){
			var Regex =/^([0-9a-zA-Z]+([_+.-]?[0-9a-zA-Z]+)*@[0-9a-zA-Z]+[0-9,a-z,A-Z,.,-]*(.){1}[a-zA-Z]{2,4})+$/;
			if(!Regex.test($val)){isValid = false;}
		}else if($val.length == 0){
			isValid = false;
		}
		
		if(isValid){
			jQuery(this).removeClass("invalid");
			jQuery(this).addClass("valid");
		}else{
			jQuery(this).removeClass("valid");
			jQuery(this).addClass("invalid");
		}
		return isValid;
	}	
}
jQuery.fn.FormValidate = jQuery.iFormValidate.build;
