/*
 * BorderCollie Webseite
 * Script Version 1.1
 * Natalie Rainer
 */
 
var zivaM = false;
var scottM = false;
var royM = false;

function english(){
	alert("Hello english people!\nWe are working on our english sites.");
}

// Temporary variables to hold mouse x-y pos.s
var tempX = 0
var tempY = 0
// Detect if the browser is IE or not.

// If it is not IE, we assume that the browser is NS.
var IE = document.all?true:false;

// If NS -- that is, !IE -- then set up for mouse capture
if (!IE) document.captureEvents(Event.MOUSEMOVE);

// Main function to retrieve mouse x-y pos.s
function getMouseXY(e) {
  if (IE) { // grab the x-y pos.s if browser is IE    
    if (document.documentElement && document.documentElement.scrollTop){

    // IE6 +4.01 and user has scrolled
    tempX = event.clientX + document.documentElement.scrollLeft
    tempY = event.clientY + document.documentElement.scrollTop}
    else if (document.body && document.body.scrollTop){
    // IE5 or DTD 3.2
    tempX = event.clientX + document.body.scrollLeft
    tempY = event.clientY + document.body.scrollTop}
 } else {  // grab the x-y pos.s if browser is NS
    tempX = e.pageX
    tempY = e.pageY
 }  
  // catch possible negative values in NS4
  if (tempX < 0){tempX = 0}
  if (tempY < 0){tempY = 0}
  xFromMouse = -80; 
  yFromMouse = -60;
  var objPIC = document.getElementById("picoverD");
  if (objPIC != null) {objPIC.style.left = (tempX + xFromMouse) + "px"; objPIC.style.top  = (tempY + yFromMouse) + "px";}  
  return true;
}


function h(){document.getElementById("picoverD").style.display = "none";}
function showPic(pic) {document.getElementById("PicID").src = pic; new Effect.Appear(document.getElementById("picoverD"));} //.style.display = "";}

// Menü von Ziva und Scott
function zivaMenu(){
if (document.getElementById('ZivaTable').style.display == "none"){
	if (navigator.userAgent.indexOf("Safari") <= 0 && navigator.userAgent.indexOf("MSIE") <= 0){
		if (navigator.userAgent.indexOf("MSIE") > 0)
			document.getElementById('bottom').style.bottom = "-160px";
		new Effect.SlideDown(document.getElementById('ZivaTable'));
	}
	else {
		document.getElementById('ZivaTable').style.display = "";
		if (scottM == true) 
			document.getElementById('bottom').style.bottom = "-130px";
		else
			document.getElementById('bottom').style.bottom = "-100px";
	  }
	zivaM = true;
	}
else{
	if (navigator.userAgent.indexOf("Safari") <= 0 && navigator.userAgent.indexOf("MSIE") <= 0){
		new Effect.SlideUp(document.getElementById('ZivaTable')); 
		if (navigator.userAgent.indexOf("MSIE") > 0)
			setTimeout("document.getElementById('bottom').style.bottom = '-85px'",1250);
	}
	else {
		document.getElementById('ZivaTable').style.display = "none";
		if (scottM == true) 
			document.getElementById('bottom').style.bottom = "-100px";
		else
			document.getElementById('bottom').style.bottom = "-85px";
	  	}
	zivaM = false;
	}
}
function scottMenu(){
if (document.getElementById('scottTable').style.display == "none"){
	if (navigator.userAgent.indexOf("Safari") <= 0 && navigator.userAgent.indexOf("MSIE") <= 0){
		if (navigator.userAgent.indexOf("MSIE") > 0){
				setTimeout("document.getElementById('bottom').style.bottom = '-100px'",280);
				setTimeout("document.getElementById('bottom').style.bottom = '-180px'",330);
		}
		new Effect.SlideDown(document.getElementById('scottTable'));
	}
	else {
		document.getElementById('scottTable').style.display = "";
		if (zivaM == true) 
			document.getElementById('bottom').style.bottom = "-130px";
		else
			document.getElementById('bottom').style.bottom = "-100px";
		}
	scottM = true;}
else{
	if (navigator.userAgent.indexOf("Safari") <= 0 && navigator.userAgent.indexOf("MSIE") <= 0){
		new Effect.SlideUp(document.getElementById('scottTable')); 
		if (navigator.userAgent.indexOf("MSIE") > 0)
			setTimeout("document.getElementById('bottom').style.bottom = '-85px'",600);
	}
	else {
		document.getElementById('scottTable').style.display = "none";
		if (zivaM == true) 
			document.getElementById('bottom').style.bottom = "-100px";
		else
			document.getElementById('bottom').style.bottom = "-85px";
		}
	scottM = false;}
}

function royMenu(){
	if (document.getElementById('royTable').style.display == "none"){
		new Effect.SlideDown('royTable');
	} else {
		new Effect.SlideUp('royTable');
	}
}


function w(url){popup = window.open(url,'Bordercollie','scrollbars=no,resizable=yes,width=730,height=550'); popup.focus(); return false;}
function m(url){popup = window.open(url,'Movie','scrollbars=no,resizable=yes,width=440,height=490'); popup.focus(); return false;}
function m2(url){popup = window.open(url,'Movie','scrollbars=no,resizable=yes,width=630,height=490'); popup.focus(); return false;}

/*
 * Functions to generate OBJECT and EMBED tags for QuickTime content.
 * Resource: http://developer.apple.com/internet/ieembedfix.html
 */

/************** LOCALIZABLE GLOBAL VARIABLES ****************/


var gArgCountErr =	'The "%%" function requires an even number of arguments.'
				+	'\nArguments should be in the form "atttributeName", "attributeValue", ...';

/******************** END LOCALIZABLE **********************/

var gTagAttrs				= null;
var gQTGeneratorVersion		= 1.0;

function AC_QuickTimeVersion()	{ return gQTGeneratorVersion; }

function _QTComplain(callingFcnName, errMsg)
{
    errMsg = errMsg.replace("%%", callingFcnName);
	alert(errMsg);
}

function _QTAddAttribute(prefix, slotName, tagName)
{
	var		value;

	value = gTagAttrs[prefix + slotName];
	if ( null == value )
		value = gTagAttrs[slotName];

	if ( null != value )
	{
		if ( 0 == slotName.indexOf(prefix) && (null == tagName) )
			tagName = slotName.substring(prefix.length); 
		if ( null == tagName ) 
			tagName = slotName;
		return tagName + '="' + value + '" ';
	}
	else
		return "";
}

function _QTAddObjectAttr(slotName, tagName)
{
	// don't bother if it is only for the embed tag
	if ( 0 == slotName.indexOf("emb#") )
		return "";

	if ( 0 == slotName.indexOf("obj#") && (null == tagName) )
		tagName = slotName.substring(4); 

	return _QTAddAttribute("obj#", slotName, tagName);
}

function _QTAddEmbedAttr(slotName, tagName)
{
	// don't bother if it is only for the object tag
	if ( 0 == slotName.indexOf("obj#") )
		return "";

	if ( 0 == slotName.indexOf("emb#") && (null == tagName) )
		tagName = slotName.substring(4); 

	return _QTAddAttribute("emb#", slotName, tagName);
}


function _QTAddObjectParam(slotName, generateXHTML)
{
	var		paramValue;
	var		paramStr = "";
	var		endTagChar = (generateXHTML) ? ' />' : '>';

	if ( -1 == slotName.indexOf("emb#") )
	{
		// look for the OBJECT-only param first. if there is none, look for a generic one
		paramValue = gTagAttrs["obj#" + slotName];
		if ( null == paramValue )
			paramValue = gTagAttrs[slotName];

		if ( 0 == slotName.indexOf("obj#") )
			slotName = slotName.substring(4); 
	
		if ( null != paramValue )
			paramStr = '  <param name="' + slotName + '" value="' + paramValue + '"' + endTagChar + '\n';
	}

	return paramStr;
}

function _QTDeleteTagAttrs()
{
	for ( var ndx = 0; ndx < arguments.length; ndx++ )
	{
		var attrName = arguments[ndx];
		delete gTagAttrs[attrName];
		delete gTagAttrs["emb#" + attrName];
		delete gTagAttrs["obj#" + attrName];
	}
}

		

// generate an embed and object tag, return as a string
function _QTGenerate(callingFcnName, generateXHTML, args)
{
	// is the number of optional arguments even?
	if ( args.length < 4 || (0 != (args.length % 2)) )
	{
		_QTComplain(callingFcnName, gArgCountErr);
		return "";
	}
	
	// allocate an array, fill in the required attributes with fixed place params and defaults
	gTagAttrs = new Array();
	gTagAttrs["src"] = args[0];
	gTagAttrs["width"] = args[1];
	gTagAttrs["height"] = args[2];
	gTagAttrs["classid"] = "clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B";
	gTagAttrs["pluginspage"] = "http://www.apple.com/quicktime/download/";

	// set up codebase attribute with specified or default version before parsing args so
	//  anything passed in will override
	var activexVers = args[3]
	if ( (null == activexVers) || ("" == activexVers) )
		activexVers = "6,0,2,0";
	gTagAttrs["codebase"] = "http://www.apple.com/qtactivex/qtplugin.cab#version=" + activexVers;

	var	attrName,
		attrValue;

	// add all of the optional attributes to the array
	for ( var ndx = 4; ndx < args.length; ndx += 2)
	{
		attrName = args[ndx].toLowerCase();
		attrValue = args[ndx + 1];

		// "name" and "id" should have the same value, the former goes in the embed and the later goes in
		//  the object. use one array slot 
		if ( "name" == attrName || "id" == attrName )
			gTagAttrs["name"] = attrValue;

		else 
			gTagAttrs[attrName] = attrValue;
	}

	// init both tags with the required and "special" attributes
	var objTag =  '<object '
					+ _QTAddObjectAttr("classid")
					+ _QTAddObjectAttr("width")
					+ _QTAddObjectAttr("height")
					+ _QTAddObjectAttr("codebase")
					+ _QTAddObjectAttr("name", "id")
					+ _QTAddObjectAttr("tabindex")
					+ _QTAddObjectAttr("hspace")
					+ _QTAddObjectAttr("vspace")
					+ _QTAddObjectAttr("border")
					+ _QTAddObjectAttr("align")
					+ _QTAddObjectAttr("class")
					+ _QTAddObjectAttr("title")
					+ _QTAddObjectAttr("accesskey")
					+ _QTAddObjectAttr("noexternaldata")
					+ '>\n'
					+ _QTAddObjectParam("src", generateXHTML);
	var embedTag = '  <embed '
					+ _QTAddEmbedAttr("src")
					+ _QTAddEmbedAttr("width")
					+ _QTAddEmbedAttr("height")
					+ _QTAddEmbedAttr("pluginspage")
					+ _QTAddEmbedAttr("name")
					+ _QTAddEmbedAttr("align")
					+ _QTAddEmbedAttr("tabindex");

	// delete the attributes/params we have already added
	_QTDeleteTagAttrs("src","width","height","pluginspage","classid","codebase","name","tabindex",
					"hspace","vspace","border","align","noexternaldata","class","title","accesskey");

	// and finally, add all of the remaining attributes to the embed and object
	for ( var attrName in gTagAttrs )
	{
		attrValue = gTagAttrs[attrName];
		if ( null != attrValue )
		{
			embedTag += _QTAddEmbedAttr(attrName);
			objTag += _QTAddObjectParam(attrName, generateXHTML);
		}
	} 

	// end both tags, we're done
	return objTag + embedTag + '> </em' + 'bed>\n</ob' + 'ject' + '>';
}

// return the object/embed as a string
function QT_GenerateOBJECTText()
{
	return _QTGenerate("QT_GenerateOBJECTText", false, arguments);
}

function QT_GenerateOBJECTText_XHTML()
{
	return _QTGenerate("QT_GenerateOBJECTText_XHTML", true, arguments);
}

function QT_WriteOBJECT()
{
	document.writeln(_QTGenerate("QT_WriteOBJECT", false, arguments));
}

function QT_WriteOBJECT_XHTML()
{
	document.writeln(_QTGenerate("QT_WriteOBJECT_XHTML", true, arguments));
}