// Functions.js - this file collect smaller javascript functions used within www.stanford.edu homepage files

/*******************************************************************
Banner - this controls the banner on the Stanford homepage
********************************************************************/

// Used to display a random banner image on the homepage
// var numImages = last image number - 1

function writeBanner(){
	var numImages = 8;
        var i = Math.round(numImages*Math.random());
        i = i + 1;
		
<!--1 -->
document.write("<a href=\"\/slideshow\/\"><img src=\"\/images\/content\/homepage\/banner\/banner_" + i + "\.jpg\" alt=\"[Photo - Stanford Campus]\" class=\"image_banner\" \/><\/a>");	
}

/*******************************************************************
Expanded drawer - jQuery domready event along hide/show calls for the expanded navigation
********************************************************************/

	$(document).ready(function() { 
		$("#expanded_content").hide().addClass("hidden");
		$("#toggle").live("click", function(e) {
			e.preventDefault();
			$("#expanded_content").slideToggle();
			if ($("#expanded_content").hasClass("hidden")) {
				$("#expanded_content").addClass("visible").removeClass("hidden");
				$("#toggle").html('<img id="expanded_icon" src="http://www.stanford.edu/images/icon_expanded.jpg"/> Hide Expanded Menus');
			} else {
				$("#expanded_content").addClass("hidden").removeClass("visible");
				$("#toggle").html('<img id="expanded_icon" src="http://www.stanford.edu/images/icon_expanded.jpg"/> Show Expanded Menus');
			}
		});	
	});

/*******************************************************************
Carousel Tool - jQuery Tools powered carousel	
********************************************************************/

	// Functions.js - this file collect smaller javascript functions used within www.stanford.edu homepage files
	$(document).ready(function() {	
		$(".slidetabs").tabs(".atstanford > div", {	effect: 'fade', fadeOutSpeed: "slow", rotate: true }).slideshow({autoplay: true, interval: 8000});
	});


/*******************************************************************
Social Icons - fade in and out	
********************************************************************/

	$(document).ready(function() { 	$("#social img").fadeTo("fast", 1.0); // This sets the opacity of the thumbs to fade down to 60% when the page loads
	$("#social img").hover(function(){
		$(this).stop().fadeTo("fast", 0.6); // This should set the opacity to 100% on hover
	},function(){
		$(this).stop().fadeTo("fast", 1.0); // This should set the opacity back to 60% on mouseout
	});
	});


/*******************************************************************
CEE Box - JQuery powered lightbox effect
********************************************************************/
$(document).ready(function(){ 
	$(".event-box").ceebox({titles:false});
	$(".lightbox").ceebox({});
	});

/*******************************************************************
Search Box - focus and remove guide text
********************************************************************/
$(document).ready(function(){
	//global vars
	var sb = $("#search_string");
	var sbDefault = "Search web or people...";
	
	//Effects for both searchbox
	sb.focus(function(e){
		$(this).addClass("active");
	});
	sb.blur(function(e){
		$(this).removeClass("active");
	});
	
	//Searchbox2 show/hide default text if needed
	sb.focus(function(){
		if($(this).attr("value") == sbDefault) $(this).attr("value", "");
	});
	sb.blur(function(){
		if($(this).attr("value") == "") $(this).attr("value", sbDefault);
	});
});

/*******************************************************************
Search Box - drop down for Web / People
Uses hoverIntent r6 // 2011.02.26 // jQuery 1.5.1+ 
<http://cherne.net/brian/resources/jquery.hoverIntent.html>
********************************************************************/

(function($){$.fn.hoverIntent=function(f,g){var cfg={sensitivity:7,interval:100,timeout:0};cfg=$.extend(cfg,g?{over:f,out:g}:f);var cX,cY,pX,pY;var track=function(ev){cX=ev.pageX;cY=ev.pageY};var compare=function(ev,ob){ob.hoverIntent_t=clearTimeout(ob.hoverIntent_t);if((Math.abs(pX-cX)+Math.abs(pY-cY))<cfg.sensitivity){$(ob).unbind("mousemove",track);ob.hoverIntent_s=1;return cfg.over.apply(ob,[ev])}else{pX=cX;pY=cY;ob.hoverIntent_t=setTimeout(function(){compare(ev,ob)},cfg.interval)}};var delay=function(ev,ob){ob.hoverIntent_t=clearTimeout(ob.hoverIntent_t);ob.hoverIntent_s=0;return cfg.out.apply(ob,[ev])};var handleHover=function(e){var ev=jQuery.extend({},e);var ob=this;if(ob.hoverIntent_t){ob.hoverIntent_t=clearTimeout(ob.hoverIntent_t)}if(e.type=="mouseenter"){pX=ev.pageX;pY=ev.pageY;$(ob).bind("mousemove",track);if(ob.hoverIntent_s!=1){ob.hoverIntent_t=setTimeout(function(){compare(ev,ob)},cfg.interval)}}else{$(ob).unbind("mousemove",track);if(ob.hoverIntent_s==1){ob.hoverIntent_t=setTimeout(function(){delay(ev,ob)},cfg.timeout)}}};return this.bind('mouseenter',handleHover).bind('mouseleave',handleHover)}})(jQuery);

 $(function(){
    var config = {  sensitivity: 3, interval: 200, over: doOpen, timeout: 1000, out: doClose   
    };
    
    function doOpen() {
        $('.sb_dropdown',this).fadeIn();
    }
 
    function doClose() {
        $('.sb_dropdown',this).fadeOut();
    }

    $("#container_search").hoverIntent(config);
});
 
/*******************************************************************
Rollover image swaps - used for slide show image link
********************************************************************/

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}


