
/*
========================================================
============ Forms- Validator and functions ============ 
========================================================

Files Required: None
Forms should be mapped in http://admin.plasticsurgerystudios.com/

-------------------------------------------------- */

// CLEAR FORM FUNCTION

function clearText(thefield) {
if (thefield.defaultValue==thefield.value) { thefield.value = "" }
} function replaceText(thefield) {
if (thefield.value=="") { thefield.value = thefield.defaultValue }
}

// FORM VALIDATOR

function MM_validateForm() { //v4.0
	if (document.getElementById){
		var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
		for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=document.getElementById(args[i]);
			if (val) { nm=val.name; if ((val=val.value)!="") {
				if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
					if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
				} else if (test!='R') { num = parseFloat(val);
					if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
					if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
						min=test.substring(8,p); max=test.substring(p+1);
						if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
		} } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
	} if (errors) alert('The following error(s) occurred:\n'+errors);
	document.MM_returnValue = (errors == '');
} }




(function( $ ){

  $.fn.ExpandTop = function() {
		
		
		// Defines what to preform the script on.  
		ExpT = this;
		ExpTph = ExpT.outerHeight(true);
		
		//        
		TopDrop = ExpT.next();
		tdChild = TopDrop.children();
		
		
		
		ExpT.after('<div class="TopBarPlaceholder" />');
		$('.TopBarPlaceholder').height(ExpTph);
		
		TopDrop.css({'position':'fixed','top':ExpTph});
		aSpeed = 600;
		toSpeed = 500;
		
		
		ExpT.mouseenter(function(){
			TopDrop.slideDown(aSpeed);
		});
		
		TopDrop.mouseover(function(){
			if (TopDrop.css({'display':'block'})){
				clearTimeout(timeOut);
				}
			else{return false;}
		}).mouseout(function(){
			timeOut = setTimeout(function(){
					TopDrop.slideUp(aSpeed);
				},toSpeed);
			});

  };
})( jQuery );//End Expand



(function( $ ){

  $.fn.FixedScroll = function() {
  		
		var Ele = this;
		placeHolderName = 'NavPlaceholder';
		classFixedName = 'fixed';
		
		Ele.after('<div class="'+placeHolderName+'" />');
		plhold = $('.'+placeHolderName);
		plhold.hide().css({'height':Ele.outerHeight(true) +'px'});
		place = Ele.offset().top - 12;//NOTE*** CHANGE 12 to be whateverthe height of the very top bar is
		
		$(window).scroll(function(){
			var wo = (window.scrollY) ? window.scrollY : document.documentElement.scrollTop;
			if(wo >= place){
				plhold.show();
				Ele.addClass(classFixedName);
				topVis = true;
			}
			else if(wo < place){
				plhold.hide();
				Ele.removeClass(classFixedName);
				topVis = false;
			}
			
		});
		


  };
})( jQuery );//End Fixed Navigation









$(document).ready(function() {
		
		
		// Define the Fixed navigation *** Note: currently set to element with "class='Navigation'.  
		$('.TopBar').ExpandTop();

		// Define the Fixed navigation *** Note: currently set to element with "class='Navigation'.  
		$('.Nav').FixedScroll();


		
	/* 
	============================================================
	============ Multi-Tiered Dropdowns - Superfish ============ 
	============================================================
	
	Files Required: 
	jquery-1.3.2.min.js
	superfish.js
	
	-------------------------------------------------- */
	
	
	
					$("ul.Nav").superfish({
						delay:         1000,                // the delay in milliseconds that the mouse can remain outside a submenu without it closing 
						animation:     {opacity:'show',height:'show'},   // an object equivalent to first parameter of jQuery’s .animate() method 
						speed:         'normal',           // speed of the animation. Equivalent to second parameter of jQuery’s .animate() method 
						autoArrows:    true                // if true, arrow mark-up generated automatically = cleaner source code at expense of initialisation performance 
					});
	
	
	
	
	/* 
============================================================
============ Image Slideshow- Fading In and Out ============ 
============================================================

Files Required: 
jquery-1.3.2.min.js
jquery.cycle.all.js

-------------------------------------------------- */
	
	
	
	/* 
	============================================================
	=================== Light box - FancyBox ===================
	============================================================
	
	Files Required: 
	jquery-1.3.2.min.js
	jquery.fancybox-1.3.1.js
	
	Just add the class of fancybox, iframe or inline to any element.
	-------------------------------------------------- */
	
	$("a.fancybox").fancybox({
			'transitionIn'	:	'elastic',
			'transitionOut'	:	'elastic',
			'speedIn'		:	600, 
			'speedOut'		:	200 
		});
	
	
	
	$("a.iframe").fancybox({
					'width'				: '75%',
					'height'			: '75%',
					'autoScale'			: false,
					'transitionIn'		: 'elastic',
					'transitionOut'		: 'elastic',
					'type'				: 'iframe'
				});
		
	$("a.inline").fancybox({
					'autoDimensions'    : false,
					'autoScale'			: false,
					'transitionIn'		: 'elastic',
					'transitionOut'		: 'elastic'
				});
	
	$("a.SSP").fancybox({
					'autoDimensions'    : true,
					'autoScale'			: false,
					'transitionIn'		: 'elastic',
					'transitionOut'		: 'elastic'
				});	
	
	$("a.popup").fancybox({
						'width'				: 500,
						'height'			: 292,
						'autoScale'			: false,
						'transitionIn'		: 'elastic',
						'transitionOut'		: 'elastic'
					});	
		
	/* 
	============================================================
	============ Image Slideshow- Fading In and Out ============ 
	============================================================
	
	Files Required: 
	jquery-1.3.2.min.js
	jquery.cycle.all.js
	
	-------------------------------------------------- */
	$(".LogoFade").css(
		'display','block'			 
					 
					 );	
	$(".Fade").cycle({ 
		fx: "fade",			/* controls transition effect -- see below for more effects */
		speed:  2500,		/* controls speed of transition */	
		pause: 1
	
	});
	
	$(".Shuffle").cycle({ 
		fx: "zoom",			/* controls transition effect -- see below for more effects */
		speed:  4500, 		/* controls speed of transition */	
		pause: 1
	});



	$('p:last-child').addClass('Last');

	$('.carousel-images img').imgpreload(function(){
		$("#waterwheel-carousel-horizon").waterwheelCarousel({
			startingWaveSeparation: 0,
			centerOffset: 30,
			startingItemSeparation: 150,
			itemSeparationFactor: .7,
			itemDecreaseFactor: .75
		});
		
	});
	$(".ProcMorph").cycle({ 
		fx: "fade",			/* controls transition effect -- see below for more effects */
		timeout: 4000,		/* milliseconds between slide transitions  */	
		speed:  1000,		/* controls speed of transition */	
		pause: 1
	
	});
		$(".MediaLoop").css(
		'display','block'			 
					 );	
	$(".MediaLoop").cycle({ 
		fx: "fade",			/* controls transition effect -- see below for more effects */
		timeout: 5000,		/* milliseconds between slide transitions  */	
		speed:  1000,		/* controls speed of transition */	
		pause: 1
	
	});	

	
});	


