// JavaScript Document

//***********************************
function getFlashMovieObject(movieName){
//***********************************
	//alert("getFlashMovieObject");
	if (window.document[movieName]) 
	{
	//alert("1: "+parent.window.document[movieName]);
	return window.document[movieName];
	}
	if (navigator.appName.indexOf("Microsoft Internet")==-1)
	{
	if (document.embeds && document.embeds[movieName])
	//alert("2: ");
	  return document.embeds[movieName]; 
	}
	else // if (navigator.appName.indexOf("Microsoft Internet")!=-1)
	{
	//alert("3: ");
	return document.getElementById(movieName);
	}
}


//***********************************
function getFlashMovieObjectFromParent(movieName){
//***********************************
  if (parent.window.document[movieName]) 
  {
    //alert("1: "+parent.window.document[movieName]);
	return parent.window.document[movieName];
  }
  if (navigator.appName.indexOf("Microsoft Internet")==-1)
  {
    if (parent.document.embeds && parent.document.embeds[movieName])
		//alert("2");
		return parent.document.embeds[movieName]; 
  }
  else // if (navigator.appName.indexOf("Microsoft Internet")!=-1)
  {
    //alert("3");
    return parent.document.getElementById(movieName);
  }
}


//***********************************
function openWindow(theURL,winName,features) { //v2.0
//***********************************
	//window.defaultStatus="theURL: "+theURL+" winName: "+winName+" features: "+features+ "opener: "+winName.opener;
	//window.defaultStatus="opener: "+winName.opener;

	if (typeof features == "undefined")
	{
		features="status=no"
	}
	var winName=window.open(theURL,winName,features);
	winName.focus();
	//alert("warten");

}
function closeWindow(winName) { //v2.0
	winName.close();
}


//***********************************
function send2Flash(string,trigger){
//***********************************
	//die flash id muss sich von der div id unterscheiden sonst geht import flash.external.*; im flash nicht
	//alert("send2Flash\n"+document.referrer);
	
	if (typeof trigger =="undefined"){
		trigger="debugVars.trigger1";
	}
	var flashMovie=getFlashMovieObjectFromParent("mainFlash");
	if (typeof flashMovie == "undefined") return(false);
	//kommt von nicht flash seite
	if (document.referrer.match(/pirchnerhof.php$/)) return(false);
	
	//var flashMovie = getFlashMovieObject("test");
	//flashMovie.Play();
	
	//alert(window.location.href+"=> "+trigger+": "+string);
	//flashMovie.SetVariable(trigger,string);


	try {
		flashMovie.SetVariable(trigger,string);
	} catch (e) {
		return(false);
	}
}


//***********************************
function sendHeader(){
//***********************************
	if (document.getElementsByTagName("h1")[0].firstChild){
	parent.document.getElementById('headerLinks').getElementsByTagName("h1")[0].firstChild.data = document.getElementsByTagName("h1")[0].firstChild.data;
	}
	if (document.getElementsByTagName("h1")[1].firstChild){
	parent.document.getElementById('headerRechts').getElementsByTagName("h1")[0].firstChild.data = document.getElementsByTagName("h1")[1].firstChild.data;
	}
}
//***********************************
function writeFlash(file, breite, hoehe, id, wmode){
//***********************************
	if (typeof id =="undefined"){
		id="mainFlash";
	}
	if (typeof wmode =="undefined"){
		wmode="transparent";
	}
	//alert(id);
	document.write('<OBJECT id="'+id+'" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="'+breite+'" height="'+hoehe+'">\n');
	document.write('<PARAM name="movie" value="'+file+'">\n');
	document.write('<PARAM name="quality" value="high">\n');
	document.write('<PARAM name="menu" value="false">\n');
	document.write('<PARAM name="allowScriptAccess" value="always">\n');

	document.write('<PARAM name="wmode" value="'+wmode+'">\n');
	document.write('<PARAM name="swliveconnect" value="true">\n');

	document.write('<EMBED NAME="'+id+'" src="'+file+'" width="'+breite+'" height="'+hoehe+'" TYPE="application/x-shockwave-flash" QUALITY="high" MENU="false" WMODE="'+wmode+'" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer" allowScriptAccess="always" swliveconnect="true" ></embed>\n');
	document.write('</OBJECT>\n');
}


//***********************************
function evalInputFields(feld, sprache){
//***********************************
	//alert("1: "+feld+" "+sprache);
	text = "";
	
	switch (sprache) {
		case 'de':
			var myMeldung = "Folgende Angaben brauchen wir um Ihre Anfrage bearbeiten zu können:\n";
			var myVorname = "Vorname";
			var myNachname = "Nachname";
			var myZeit = "Zeitraum";
			var myNummer = "Tel. Nummer";
			var myPlz = "PLZ";
			var myOrt = "Ort";
			var myStrasse = "Strasse";
			var myMail = "eMail-Adresse";
			var myText = "Nachrichtentext";
			var myLand = "Land";
			var myCardText = "Bitte Kartennummer eingeben!"
			var myPersonen = "Ungültige Anzahl von Personen oder ungültiges Alter der Kinder";

			var myMailText = "\n\n\tDie eMailadresse entspricht nicht dem Format:\n\tTeil1[.Teil2]@Teil3.Teil4 ([] = optional)\n\tTeile1-3 dürfen nur \"A-Z\", \"a-z\", \"_\" oder \"-\" enthalten.\n\tTeil 4 darf nur \"A-Z\" und \"a-z\" enthalten.";
			var myMailText2 = "\n\n\tZuviele Punkte in der eMail-Adresse hinter dem \"@\"";
			var myMailText3 = "\n\n\tDer letzte Teil der eMail-Adresse (Top Level Domain) ist\n\tkleiner als 2 oder größer als 4 Zeichen lang,\n\toder er enthält andere Zeichen als \"A-Z\" und \"a-z\".";
			break;
		case 'en':
			var myMeldung = "We need following informations to edit your request:\n";
			var myVorname = "First Name";
			var myNachname = "Name";
			var myZeit = "Duration";
			var myNummer = "Phone Number";
			var myPlz = "ZIP Code";
			var myOrt = "City";
			var myStrasse = "Street";
			var myMail = "eMail";
			var myText = "Comment";
			var myLand = "Country";
			var myCardText = "Please enter card number!"
			var myPersonen = "Improper number of adults or age of kids";

			var myMailText = "\n\n\tThe eMail-Adress doesnt match the format:\n\tPart1[.Part2]@Part3.Part4 ([] = optional)\n\tPart1-3 may contain \"A-Z\", \"a-z\", \"_\" or \"-\".\n\tPart 4 may only contain \"A-Z\" and \"a-z\".";
			var myMailText2 = "\n\n\tToo much dots in your eMail-Adress behind the \"@\"";
			var myMailText3 = "\n\n\tThe last part of the eMail-Adress (Top Level Domain) is\n\tshorter than 2 or longer than 4  letters,\n\tor it contents other letters than \"A-Z\" and \"a-z\".";
			break;
		case 'fr':
			var myMeldung = "Les données suivantes sont nécessaires pour pouvoir traiter votre demande:\n";
			var myVorname = "Prénom";
			var myNachname = "Nom";
			var myZeit = "Période";
			var myNummer = "Numéro de téléphone";
			var myPlz = "Code postal";
			var myOrt = "Ville";
			var myStrasse = "Rue";
			var myMail = "eMail";
			var myText = "Commentaire";
			var myLand = "Pays";
			var myCardText = "Metter votre numero de card!"
			var myPersonen = "Faux numero d'adulte ou faux age des enfants";

			var myMailText = "\n\n\tL’adresse e-mail ne correspond par au format : partie 1 optionnel\n\tPartie 1-3 ne peuvent comporter que \"A-Z\", \"a-z\", \"_\" ou \"-\".\n\tPartie 4 ne peuvent comporter \"A-Z\" ou \"a-z\".";
			var myMailText2 = "\n\n\tTrop de points dans l’adresse e-mail après \"@\"";
			var myMailText3 = "\n\n\tLa dernière partie de l’adresse e-mail (Top Level Domain) est\n\tplus petite que 2 ou plus longue que 4 caractères\n\tou plus longue que 4 caractères ou contient des caractères autres que \"A-Z\" et \"a-z\".";
			break;
		default:
			alert ("Falsche Sprache angegeben!")
	}
		
	
	if (document.getElementsByName("vorname")[0].value=="debugShowVars" ||
		document.getElementsByName("vorname")[0].value=="debugSendPrima" ||
		document.getElementsByName("vorname")[0].value=="debugSendPrimaAndShowError" ||
		document.getElementsByName("vorname")[0].value=="debugSendPrimaAndShowErrorExt" ||
		document.getElementsByName("vorname")[0].value=="debugSendPrimaAndShowVars" ||
		document.getElementsByName("vorname")[0].value=="debugShowError")
	{
		return (true);
	}

	switch (feld)
	{
		case 'undefined':
			alert("Parameter zur Überprüfung fehlt!");

	// ============================================================================
		case 'verleih':
	// ============================================================================
			text += (document.getElementsByName("vorname")[0].value=="") ? "\n\tVorname" : "";
			text += (document.getElementsByName("name")[0].value=="") ? "\n\tFamilienname" : "";
			text += (document.getElementsByName("verleihAbholTag")[0].value=="") ? "\n\tTag der Abholung" : "";
			text += (document.getElementsByName("verleihAbholZeit")[0].value=="") ? "\n\tZeit der Abholung" : "";
			
			if (document.getElementsByName("verleih1Anzahl")[0].value=="0" &&
				document.getElementsByName("verleih2Anzahl")[0].value=="0" &&
				document.getElementsByName("verleih3Anzahl")[0].value=="0"){
				text +="\n\tAnzahl der Sportgeräte";
			} else {
				if ((document.getElementsByName("verleih1Anzahl")[0].value!="0" && document.getElementsByName("verleih1Tage")[0].value=="0") ||
				    (document.getElementsByName("verleih2Anzahl")[0].value!="0" && document.getElementsByName("verleih2Tage")[0].value=="0") ||
					(document.getElementsByName("verleih3Anzahl")[0].value!="0" && document.getElementsByName("verleih3Tage")[0].value=="0")){
					text +="\n\tAnzahl der Verleihtage";
				}

				if ((document.getElementsByName("verleih1Anzahl")[0].value!="0" && document.getElementsByName("verleih1Ware")[0].value=="") ||
				    (document.getElementsByName("verleih2Anzahl")[0].value!="0" && document.getElementsByName("verleih2Ware")[0].value=="") ||
					(document.getElementsByName("verleih3Anzahl")[0].value!="0" && document.getElementsByName("verleih3Ware")[0].value=="")){
					text +="\n\tArt des Sportgeräts";
				}
			}
			
			
	// ============================================================================
		case 'buchung':
		case 'buchungAnfrage':
	// ============================================================================
			
			// ============================================================================
			// bezahloptionen
			// ============================================================================
			if (feld=="buchung"){
				myBezahlung=document.forms[0].bezahlung.value;
	
				if (myBezahlung != "Visa" && myBezahlung != "MasterCard" && myBezahlung != "Diners Club" && myBezahlung != "American Express"){
					myBezahlung="Rechnung";
				}
	
				if (!validateCard(document.forms[0].kartenNummer.value, myBezahlung, document.forms[0].monat.value,document.forms[0].jahr.value, myCardText)){
					return false;
				}
			}

			// ============================================================================
			// persönliche daten
			// ============================================================================
			text += (document.getElementsByName("vorname")[0].value=="") ? "\n\t" + myVorname : "";
			text += (document.getElementsByName("name")[0].value=="") ? "\n\t" + myNachname : "";
			text += (document.getElementsByName("tel")[0].value=="") ? "\n\t" + myNummer : "";
			text += (document.getElementsByName("plz")[0].value=="") ? "\n\t" + myPlz : "";
			text += (document.getElementsByName("ort")[0].value=="") ? "\n\t" + myOrt : "";
			text += (document.getElementsByName("strasse")[0].value=="") ? "\n\t" + myStrasse : "";

			text += (document.getElementsByName("von")[0].value=="") ? "\n\t" + myZeit : "";

			// ============================================================================
			// anzahl gäste
			// ============================================================================
			if (document.getElementsByName("kidsBornPrice")[0].value != ""){
				if (document.getElementsByName("kidsBorn")[0].value > 0){  // vorgegebene anzahl von kindern
					for (var i = 1; i <= iteration(); i++){
						if(parseInt(document.getElementsByName('kindSelect'+i)[0].value,10) <= 1){
							text +="\n\t" + myPersonen;
							break;
						}
					}
				}else{ // es können auch felder freibleiben
					/*if(document.getElementsByName("kindSelect1")[0].value+document.getElementsByName("kindSelect2")[0].value+document.getElementsByName("kindSelect3")[0].value==""){
						text +="\n\t" + myPersonen;
					}*/
				}
			}else{
				anzahlGaeste=false;
				//alert(parseInt(document.getElementsByName("erwachsene")));
				if (!(parseInt(document.getElementsByName("erwachsene")[0].value)==0) || (isNaN(parseInt(document.getElementsByName("erwachsene")[0].value)==0))){
						anzahlGaeste=true;
				}
				
				if (document.getElementsByName("kind1")[0] && document.getElementsByName("kind1")[0].value != ""){
						anzahlGaeste++;
				}
				
				if (document.getElementsByName("kind2")[0] && document.getElementsByName("kind2")[0].value != ""){
						anzahlGaeste++;
				}
				
				
				if (document.getElementsByName("kind3")[0] && document.getElementsByName("kind3")[0].value != ""){
						anzahlGaeste++;
				}
				
				if (anzahlGaeste == ""){
					text +="\n\t" + myPersonen;
				}
				
					/*? document.getElementsByName("kind1")[0].value: 0 + (document.getElementsByName("kind2")[0]) ? document.getElementsByName("kind2")[0].value:0 + (document.getElementsByName("kind3")[0]) ? document.getElementsByName("kind3")[0].value: 0 == 0)){
					text +="\n\t" + myPersonen;*/
				
				
			/*if (document.getElementsByName("kind1")[0].value=="")){
					text +="\n\t" + myPersonen;*/
			}

			if (parseInt(document.getElementsByName("erwachsene")[0].value)>4 ){
				text +="\n\t" + myPersonen;
			} 			
			
			// ============================================================================
			// email
			// ============================================================================
			if (document.getElementsByName("email")[0].value==""){
				text +="\n\t" + myMail + "";
			} else {
				if (document.getElementsByName("email")[0].value!=""){
					text +=checkEmail(document.getElementsByName("email")[0].value,myMailText,myMailText2,myMailText3)
				}
			}
			
			if (!text=="")
			{
				text = myMeldung + text + "";
				alert (text);
				return (false);
			}
			else{
				return (true);
			}

	// ============================================================================
		case 'anfrage':
	// ============================================================================
			text += (document.getElementsByName("vorname")[0].value=="") ? "\n\t" + myVorname : "";
			text += (document.getElementsByName("name")[0].value=="") ? "\n\t" + myNachname : "";
			text += (document.getElementsByName("text")[0].value=="") ? "\n\t" + myText : "";
			
			if (document.getElementsByName("email")[0].value==""){
				text +="\n\t" + myMail + "";
			} else {
				text +=checkEmail(document.getElementsByName("email")[0].value,myMailText,myMailText2,myMailText3)
			}

			if (!text=="")
			{
				text = myMeldung + text + "";
				alert (text);
				return (false);
			}
			else{
				return (true);
			}

	// ============================================================================
	case 'call_back':
	// ============================================================================
			text += (document.getElementsByName("vorname")[0].value=="") ? "\n\tVorname" : "";
			text += (document.getElementsByName("name")[0].value=="") ? "\n\tFamilienname" : "";
			//text += (document.getElementsByName("text")[0].value=="") ? "\n\tNachrichtentext" : "";
			text += (document.getElementsByName("telNr")[0].value=="") ? "\n\tTel. Nr." : "";
			
			
			if (!text=="")
			{
				text = myMeldung + text + "";
				alert (text);
				return (false);
			}
			else{
				return (true);
			}

	// ============================================================================
		case 'gewinnspiel':
	// ============================================================================
			text += (document.getElementsByName("vorname")[0].value=="") ? "\n\t" + myVorname : "";
			text += (document.getElementsByName("name")[0].value=="") ? "\n\t" + myNachname : "";
			text += (document.getElementsByName("plz")[0].value=="") ? "\n\t" + myPlz : "";
			text += (document.getElementsByName("ort")[0].value=="") ? "\n\t" + myOrt : "";
			text += (document.getElementsByName("land")[0].value=="") ? "\n\t" + myLand : "";
			text += (document.getElementsByName("strasse")[0].value=="") ? "\n\t" + myStrasse : "";
			
			if (document.getElementsByName("email")[0].value==""){
				text +="\n\t" + myMail + "";
			} else {
				text +=checkEmail(document.getElementsByName("email")[0].value,myMailText,myMailText2,myMailText3)
			}

			if (!text=="")
			{
				text = myMeldung + text + "";
				alert (text);
				return (false);
			}
			else{
				return (true);
			}

	// ============================================================================
		case 'katalog':
	// ============================================================================
			text += (document.getElementsByName("vorname")[0].value=="") ? "\n\t" + myVorname : "";
			text += (document.getElementsByName("name")[0].value=="") ? "\n\t" + myNachname : "";
			text += (document.getElementsByName("land")[0].value=="") ? "\n\t" + myLand : "";
			/*text += (document.getElementsByName("text")[0].value=="") ? "\n\tNachrichtentext" : "";*/
			text += (document.getElementsByName("plz")[0].value=="") ? "\n\t" + myPlz : "";
			text += (document.getElementsByName("ort")[0].value=="") ? "\n\t" + myOrt : "";
			text += (document.getElementsByName("strasse")[0].value=="") ? "\n\t" + myStrasse : "";

			
			/*if (document.getElementsByName("email")[0].value==""){
				text +="\n\teMail-Adresse";
			} else {
				text +=checkEmail(document.getElementsByName("email")[0].value)
			}*/

			if (!text==""){
				text = myMeldung + text;
				alert (text);
				return (false);
			}else{
				return (true);
			}

	// ============================================================================
		case 'newsletter':
	// ============================================================================
			if (document.getElementsByName("email")[0].value==""){
				text +="\n\t" + myMail + "";
			} else {
				text +=checkEmail(document.getElementsByName("email")[0].value,myMailText,myMailText2,myMailText3)
			}

			if (!text==""){
				text = myMeldung + text;
				alert (text);
				return (false);
			}else{
				return (true);
			}

	// ============================================================================
		case 'newsletterOut': //brauchts, weil sonst 2x email in 2 formularen
	// ============================================================================
			//alert("newsletterOut\n"+document.getElementsByName("email")[1]+"\nFertig!");
			if (document.getElementsByName("email")[1].value==""){
				text +="\n\t" + myMail + "";
			} else {
				text +=checkEmail(document.getElementsByName("email")[1].value,myMailText,myMailText2,myMailText3)
			}

			if (!text==""){
				text = myMeldung + text;
				alert (text);
				return (false);
			}else{
				return (true);
			}

		} //end switch case
}// end function

//***********************************
function checkEmail(eMail, myMailText, myMailText2, myMailText3){
//***********************************

	//Format: Teil1[.Teil2]@Teil3.Teil4 pruefen
	suche = /^([_a-zA-z0-9-])+(\.[_a-zA-z0-9-]+)*@([_a-zA-z0-9-]+\.)+([a-zA-Z]{0,})/;
	text=""
	ergebnis=suche.test(eMail)

	if (!ergebnis){
		text += myMailText;
	}
	
	//teil hinter dem @
	teile=eMail.split("@")
	//durch '.' getrennte segmente holen
	teile=teile[teile.length-1].split(".")

	//auf mehr als 2 segmente pruefen
	if (teile.length>2){
		text += myMailText2;
	}

	if (teile){
		//letztes segment = TLD holen
		teil=teile[teile.length-1]

		//lÃ¤nge und A-Z pruefen
		suche=/[a-zA-Z]{2,4}/
		if (suche.exec(teil) != teil){
		text += myMailText3;
		}
	}

	return(text)
}

//========================================================================================
function mod10( cardNumber ) { // LUHN Formula for validation of credit card numbers.
//========================================================================================
	var ar = new Array( cardNumber.length );
	var i = 0,sum = 0;

	for( i = 0; i < cardNumber.length; ++i ) {
		ar[i] = parseInt(cardNumber.charAt(i));
	}
	for( i = ar.length -2; i >= 0; i-=2 ) { // you have to start from the right, and work back.
		ar[i] *= 2;							 // every second digit starting with the right most (check digit)
		if( ar[i] > 9 ) ar[i]-=9;			 // will be doubled, and summed with the skipped digits.
	}										 // if the double digit is > 9, ADD those individual digits together 

	for( i = 0; i < ar.length; ++i ) {
		sum += ar[i];						 // if the sum is divisible by 10 mod10 succeeds
	}
	return (((sum%10)==0)?true:false);	 	
}

//========================================================================================
function expired( month, year ) {
//========================================================================================
	var now = new Date();							// this function is designed to be Y2K compliant.
	var expiresIn = new Date(year,month,0,0,0);		// create an expired on date object with valid thru expiration date
	expiresIn.setMonth(expiresIn.getMonth()+1);		// adjust the month, to first day, hour, minute & second of expired month
	if( now.getTime() < expiresIn.getTime() ) return false;
	return true;									// then we get the miliseconds, and do a long integer comparison
}

//========================================================================================
function validateCard(cardNumber,cardType,cardMonth,cardYear,cardText) {
//========================================================================================
	
	if (cardType=='Rechnung'){
		return true;
	}
	
	if( cardNumber.length == 0 ) {						//most of these checks are self explanitory
		alert(cardText);
		return false;				
	}
	for( var i = 0; i < cardNumber.length; ++i ) {		// make sure the number is all digits.. (by design)
		var c = cardNumber.charAt(i);
		if( c < '0' || c > '9' ) {
			alert("Bitte nur Ziffern, keine Leerzeichen oder Trennstriche eingeben.\n\nUse only digits. do not use spaces or hyphens.");
			return false;
		}
	}
   	var length = cardNumber.length;			//perform card specific length and prefix tests

	switch( cardType ) {
		case 'American Express':
			errorText="Bitte geben Sie eine gültige American Express Kartennummer ein.\n\nPlease enter a valid American Express card number.";
		
			if( length != 15 ) {
				alert(errorText);
				return;
			}
			var prefix = parseInt( cardNumber.substring(0,2));
			if( prefix != 34 && prefix != 37 ) {
				alert(errorText);
				return;
			}
			break;
		case 'Discover Card':
			errorText="Bitte geben Sie eine gültige Discover Card Kartennummer ein.\n\nPlease enter a valid Discover Card number.";
			if( length != 16 ) {
				alert(errorText);
				return;
			}
			var prefix = parseInt( cardNumber.substring(0,4));
			if( prefix != 6011 ) {
				alert(errorText);
				return;
			}
			break;
		case 'MasterCard':
			errorText="Bitte geben Sie eine gültige MasterCard Kartennummer ein.\n\nPlease enter a valid MasterCard number.";
			if( length != 16 ) {
				alert(errorText);
				return;
			}
			var prefix = parseInt( cardNumber.substring(0,2));
			if( prefix < 51 || prefix > 55) {
				alert(errorText);
				return;
			}
			break;

		case 'Visa':
			errorText="Bitte geben Sie eine gültige Visa Kartennummer ein.\n\nPlease enter a valid Visa card number.";
			if( length != 16 && length != 13 ) {
				alert(errorText);
				return;
			}
			var prefix = parseInt( cardNumber.substring(0,1));
			if( prefix != 4 ) {
				alert(errorText);
				return;
			}
			break;

		case 'Diners Club':
			errorText="Bitte geben Sie eine gültige Diners Club Kartennummer ein.\n\nPlease enter a valid Diners Club card number.";
			if( length != 14 && length != 17 ) {
				alert(errorText);
				return;
			}
			var prefix = parseInt( cardNumber.substring(0,2));
			if( prefix != 30 && prefix != 36 && prefix != 38) {
				alert(errorText);
				return;
			}
			break;
		}

		if( !mod10( cardNumber ) ) { 		// run the check digit algorithm
			alert("Sorry! this is not a valid credit card number.");
			return false;
		}
		if( expired( cardMonth, cardYear ) ) {							// check if entered date is already expired.
			alert("Sorry! The expiration date you have entered would make this card invalid.");
			return false;
		}
		
		return true; // at this point card has not been proven to be invalid
}


// JavaScript helper required to detect Flash Player PlugIn version information
function GetSwfVer(){
	// NS/Opera version >= 3 check for Flash plugin in plugin array
	var flashVer = -1;
	
	if (navigator.plugins != null && navigator.plugins.length > 0) {
		if (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]) {
			var swVer2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
			var flashDescription = navigator.plugins["Shockwave Flash" + swVer2].description;
			var descArray = flashDescription.split(" ");
			var tempArrayMajor = descArray[2].split(".");			
			var versionMajor = tempArrayMajor[0];
			var versionMinor = tempArrayMajor[1];
			var versionRevision = descArray[3];
			if (versionRevision == "") {
				versionRevision = descArray[4];
			}
			if (versionRevision[0] == "d") {
				versionRevision = versionRevision.substring(1);
			} else if (versionRevision[0] == "r") {
				versionRevision = versionRevision.substring(1);
				if (versionRevision.indexOf("d") > 0) {
					versionRevision = versionRevision.substring(0, versionRevision.indexOf("d"));
				}
			}
			var flashVer = versionMajor + "." + versionMinor + "." + versionRevision;
		}
	}
	// MSN/WebTV 2.6 supports Flash 4
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") != -1) flashVer = 4;
	// WebTV 2.5 supports Flash 3
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") != -1) flashVer = 3;
	// older WebTV supports Flash 2
	else if (navigator.userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 2;
	else if ( isIE && isWin && !isOpera ) {
		flashVer = ControlVersion();
	}	
	return flashVer;
}

// When called with reqMajorVer, reqMinorVer, reqRevision returns true if that version or greater is available
function detectFlashVer(reqMajorVer, reqMinorVer, reqRevision)
{
	versionStr = GetSwfVer();
	if (versionStr == -1 ) {
		return false;
	} else if (versionStr != 0) {
		if(isIE && isWin && !isOpera) {
			// Given "WIN 2,0,0,11"
			tempArray         = versionStr.split(" "); 	// ["WIN", "2,0,0,11"]
			tempString        = tempArray[1];			// "2,0,0,11"
			versionArray      = tempString.split(",");	// ['2', '0', '0', '11']
		} else {
			versionArray      = versionStr.split(".");
		}
		var versionMajor      = versionArray[0];
		var versionMinor      = versionArray[1];
		var versionRevision   = versionArray[2];

        	// is the major.revision >= requested major.revision AND the minor version >= requested minor
		if (versionMajor > parseFloat(reqMajorVer)) {
			return true;
		} else if (versionMajor == parseFloat(reqMajorVer)) {
			if (versionMinor > parseFloat(reqMinorVer))
				return true;
			else if (versionMinor == parseFloat(reqMinorVer)) {
				if (versionRevision >= parseFloat(reqRevision))
					return true;
			}
		}
		return false;
	}
}







//***********************************
function doPassVar(args){
//***********************************
/*
	if(parent.document.mainFlash){
	alert("doPassVar IE: "+args+"-@-");
		parent.document.mainFlash.SetVariable("debugVars.myVar", args);
	}
	if(parent.window.mainFlash) {
*/

    var flashMovie=getFlashMovieObject("mainFlash");
	//alert(flashMovie);
     
	 
	flashMovie.SetVariable("debugVars.myVar", "test");
	//flashMovie.SetVariable("1", "2");

		
		
		alert(parent.window.document.flash.embeds[mainFlash]   )
		obj=parent.document.getElementById("mainFlash");
		obj.SetVariable("debugVars.myVar", "test");
}


