pluginFound      = false 
activeXFound     = false
plgIe4Mac = false

function getPlugIn() {
	allFound = false
    plugInsCollection = navigator.plugins
	for (i=0;i<plugInsCollection.length;i++) {
        plugInDescription = " " + plugInsCollection[i].description
		plugInName = " " + plugInsCollection[i].name
		for (j=0;j<arguments.length;j++) {
			if (plugInDescription.indexOf(" " + arguments[j])!=-1 || plugInName.indexOf(" " + arguments[j])!=-1) {
				allFound = true
			} else {
				allFound = false
				break
			}
		}
		if (allFound) {return true} // nalezeno
    }
	return false
}

if (navigator.appVersion.indexOf("PPC")!=-1 && navigator.userAgent.indexOf("MSIE 4")!=-1) {plgIe4Mac = true}
plgIeWin = false
if ( (navigator.userAgent.indexOf('MSIE') != -1) && (navigator.userAgent.indexOf('Win') != -1) ) {plgIeWin = true}

function getWmp() {
	// If IE4 Mac, plugins can't be detected
	if(plgIe4Mac) {return false}
	plugInFound = getPlugIn("Windows","Media","Player","Plug-in")
	if (plgIeWin) {activeXFound=new ActiveXObject("MediaPlayer.MediaPlayer.1");} else {activeXFound=false;}
	if (plugInFound || activeXFound) {return true} else {return false}	
}

function getReal() {
	if(plgIe4Mac) {return false}
	plugInFound = getPlugIn("RealPlayer","G2","Plug-In");
	try {
		testObject = new ActiveXObject("rmocx.RealPlayer G2 Control.1")
		embedVersion = testObject.GetVersionInfo()
		versionArray = embedVersion.split(".")
		conditionA = versionArray[0]>=6
		conditionB = versionArray[1]>=0
		conditionC = versionArray[2]>=6
		conditionD = versionArray[3]>=131
		
		if (conditionA && conditionB && conditionC && conditionD) {
			activeXFound = true	// je nainstalovan jako ACTIVEX
		} else {
			activeXFound = false // neni nainstalovan jako ACTIVEX
		}		

	} catch(e) {
		activeXFound = false // neni nainstalovan jako ACTIVEX
	}
	
	if (plugInFound || activeXFound) {return true} else {return false}	
}

function getFL(requiredVersion) {
	plugInFound=detectFlash('','','','',requiredVersion);
	if(plugInFound==true){return true;}else{return false;}
}

function getQT(requiredVersion) {
	if(plgIe4Mac) {return false;}
	if (typeof(requiredVersion)!="undefined") {quickTimeSupportedVersion = requiredVersion}
	quickTimeSupportedVersion+="";
	plugInFound = false;
	var isLatestVersion;
	var latestQuickTimeVersion;
	checkedVersion  = quickTimeSupportedVersion;
	isLatestVersion = checkedVersion == latestQuickTimeVersion;
	//alert(isLatestVersion);

	for (jj=0;jj<requiredVersion;jj++) {
		plugInFound = getPlugIn("QuickTime",jj)
		if (isLatestVersion) {break;}
		if (!isLatestVersion) {
			checkedVersion++;
			isLatestVersion = checkedVersion == latestQuickTimeVersion;
		}
	}
	
	if (plgIeWin) {
		try {
			testObject = new ActiveXObject("QuickTimeCheckObject.QuickTimeCheck.1")
			activeXFound = testObject.IsQuickTimeAvailable(0);
		} catch(e) {
			activeXFound = false;
		}
	}

	if (plugInFound || activeXFound) {return true;} else {return false;}
}

function getTestPlayer(typ){
	if(typ=="wmv" || typ=="asx" || typ=="avi" || typ=="mpg"){
		if (getWmp()) {
			result = 1;
		} else {
			result = 0;
		}
	}
	if(typ=="rm" || typ=="ra" || typ=="rpm"){
		if (getReal()) {
			result = 1;
		} else {
			result = 0;
		}
	}
	if(typ=="mov" || typ=="ai"){
		if (getQT(4)) {
			result = 1;
		} else {
			result = 0;
		}
	}
	
	if(typ=="flv" || typ=="swf"){
		if (getFL(7)) {
			result = 1;
		} else {
			result = 0;
		}
	}	
	return result;
}
