var popvid = null;

// will store the window reference

function popWin(divId) {
	if (typeof(divId)=='string') {
		divId=document.getElementById(divId);
		}
	if (!popvid||popvid.closed) {
		popvid=window.open('','vidplayer','width=450,height=390,status=no');
		}
	popvid.document.body.style.backgroundColor='black';
	popvid.focus();
	popvid.document.body.innerHTML='<BR><center>'+divId.innerHTML+'</center>';
	return false;
	}
	window.onunload=function() {
	// if the user is navigating away from the page, check to see if we
	// opened a video window and if we did, make sure it's closed.
	if (popvid) {
		popvid.close();
	}
}

function getElementsByClass (searchClass) {
// This function returns an array of all HTML objects with the
// specified className.  Tag is optional
var returnArray = [];
var els = document.getElementsByTagName('*');
var pattern = new RegExp('(^|\\s)'+searchClass+'(\\s|$)');
for (var i = 0; i < els.length; i++) {
	if ( pattern.test(els[i].className) ){
		returnArray.push(els[i]);
	}
	}
return returnArray;
}

function popVideo(vid, darken) {
// This function accepts a division ID (vid), either a string or the actual
// object itself.   vid is mandatory.   darken is optional, if its true
// the page will be greyed out under the video.

var videos = getElementsByClass('video');

// Get all the videos on the page.

var isplaying=null;
for(i=0; i<videos.length; i++) {

// Loop through all the videos

if (videos[i].style.display=='block') {
	// This video is playing
	isplaying=videos[i].id;                   // remember its name
	var tmp=videos[i].innerHTML;              // Get the division contents
	videos[i].innerHTML='';                   // destroy the contents
	videos[i].style.display='none';           // Terminate the video.
	videos[i].innerHTML=tmp;                  // rebuild the contents.
}
}
// This handles the darkening of the background while a video is playing.
// First we see if the dark layer exists.
var dark=document.getElementById('darkenScreenObject');
if (!dark) {
// The dark layer doesnt exist, its never been created.  So well
// create it here and apply some basic styles.


var tbody = document.getElementsByTagName("body")[0];
var tnode = document.createElement('div');          // Create the layer.
tnode.style.backgroundColor='rgb(0, 0, 0)';     // Make it black.
tnode.style.opacity='0.7';                      // Set the opacity (firefox/Opera)
tnode.style.MozOpacity='0.70';                  // Firefox 1.5
tnode.style.filter='alpha(opacity=70)';         // IE.
tnode.style.zIndex='1';                         // Zindex of 50 so it "floats"
tnode.style.position='absolute';                // Position absolutely
tnode.style.top='0px';                          // In the top
tnode.style.left='0px';                         // Left corner of the page
tnode.style.overflow='hidden';                  // Try to avoid making scroll bars
tnode.style.display='none';                     // Start out Hidden
tnode.id='darkenScreenObject';                  // Name it so we can find it later
tbody.appendChild(tnode);                           // Add it to the web page
dark=document.getElementById('darkenScreenObject'); // Get the object.
}
dark.style.display='none';

if ((isplaying==vid)||(/^close$/i.test(vid))) {
return false;
}
if (typeof(vid)=="string") {
vid=document.getElementById(vid);
}
if (vid&&typeof(vid)=="object") {
	if (darken) {      // Calculate the page width and height
		if( window.innerHeight && window.scrollMaxY )  {
			var pageWidth = window.innerWidth + window.scrollMaxX;
			var pageHeight = window.innerHeight + window.scrollMaxY;
		} else if( document.body.scrollHeight > document.body.offsetHeight ) {
			var pageWidth = document.body.scrollWidth;
			var pageHeight = document.body.scrollHeight;
		} else {
			var pageWidth = document.body.offsetWidth + document.body.offsetLeft;
			var pageHeight = document.body.offsetHeight + document.body.offsetTop;
		}      //set the shader to cover the entire page and make it visible.
			dark.style.width= pageWidth+'px';
			dark.style.height= pageHeight+'px';
			dark.style.display='block';
		}

		// Make the video visible and set the zindex so its on top of everything else

		vid.style.zIndex='100';
		vid.style.display='block';
		var scrollTop = 0;

		if (document.documentElement && document.documentElement.scrollTop)
			scrollTop = document.documentElement.scrollTop;
		else if (document.body)
			scrollTop = document.body.scrollTop;

		// set the starting x and y position of the video

		var sm_left = 425;
		var sm_top = 350;

		//alert(sm_left);
		//alert(sm_top);

		vid.style.top=sm_top+scrollTop+Math.floor((document.documentElement.clientHeight/2)-(vid.offsetHeight/2))+'px';
		//alert(vid.style.top);
		vid.style.left=sm_left+Math.floor((document.documentElement.clientWidth/2)-(vid.offsetWidth/2))+'px';
		//alert(vid.style.left);
		}
	return false;
}


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];}
}

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_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];}}
}
