var minQTVersion = "5.0.0";			//sets minimal version checked for QuickTime
var minDevalVRVersion = "0,3,3,0";  //sets minimal version checked for DevalVR

var isIE=(document.all!=null && navigator.userAgent.indexOf('Opera')==-1);
var isWindows=(navigator.platform.indexOf('Win')!=-1);
var isMac=(navigator.platform.indexOf('Mac')!=-1 || navigator.platform.indexOf('PowerPC')!=-1);
var pluginDevalVRInstalled = 0;
var pluginQTInstalled = 0;
var javaInstalled=navigator.javaEnabled();
var favoriteViewer=getCookie("viewer");
if(!favoriteViewer) favoriteViewer="DETECT";  //DEVALVR , QT, JAVA, or DETECT

function writevrcode(movfile,javafile)
{
	if(isWindows)
	{
		if (!isIE) 
		{
			if (navigator.mimeTypes && navigator.mimeTypes["application/x-devalvrx"] && navigator.mimeTypes["application/x-devalvrx"].enabledPlugin)
			{
				var words = navigator.plugins["DevalVR 3D Plugin"].description.split(" ");
				var version = words[3].split(",");
				var min = minDevalVRVersion.split(",");
				for (var i = 0; i < 4; i++)
				{
					if(parseInt(version[i])>parseInt(min[i])) 
					{
						pluginDevalVRInstalled=1;
						break;
					}
					else if(parseInt(version[i])<parseInt(min[i]))
					{
						break;
					}
					else if(parseInt(version[i])==parseInt(min[i]) && i==3)
						pluginDevalVRInstalled=1;
				}
			}	
		    if(navigator.mimeTypes && navigator.mimeTypes["video/quicktime"] && navigator.mimeTypes["video/quicktime"].enabledPlugin)
		    {
				var qtnumber=-1;
				for (var i = 0; i < navigator.plugins.length; i++)
				{
					if(navigator.plugins[i].name.indexOf("QuickTime Plug-in")!=-1)
					{
						qtnumber=i;
						break;
					}
				}
				if(qtnumber!=-1)
				{
					var words = navigator.plugins[qtnumber].name.split(" ");
					var version = words[2].split(".");
					var min = minQTVersion.split(".");
					for (var i = 0; i < 3; i++)
					{
						if(parseInt(version[i])>parseInt(min[i])) 
						{
							pluginQTInstalled=1;
							break;
						}
						else if(parseInt(version[i])<parseInt(min[i]))
						{
							break;
						}
						else if(parseInt(version[i])==parseInt(min[i]) && i==2)
							pluginQTInstalled=1;
					}
				}
			}
		}
		else 
		{
			var devalvrobj=null;
			var objQuickTime=null;
			try{
				devalvrobj=new ActiveXObject('DevalVRXCtrl.DevalVRXCtrl.1');
				if(devalvrobj) 
				{
					pluginDevalVRInstalled=1;
				}
			}catch(e){}
			try
			{
				objQuickTime=new ActiveXObject('QuickTimeCheckObject.QuickTimeCheck.1');
				if (objQuickTime)
				{
					if(objQuickTime.IsQuickTimeAvailable(0))
					{
						pluginQTInstalled=1;
					}
				}
			}catch(e){}
		}
		
	}
	
	var str='';
	var writeDevalVR=0;
	var writeQT=0;
	var writeJAVA=0;
	
	if(isWindows)
	{
		if(favoriteViewer=="DETECT" || (favoriteViewer=="JAVA" && !javafile))
		{
			if(pluginDevalVRInstalled) writeDevalVR=1; 
			else if(pluginQTInstalled) writeQT=1;
			else if(javaInstalled && javafile) writeJAVA=1;
			else writeDevalVR=1;	//If no plugins download DevalVR (smallest download)
		}
		else if(favoriteViewer=="DEVALVR")
		{
			if(isWindows) writeDevalVR=1;
			else writeQT=1;
		}
		else if(favoriteViewer=="QT") writeQT=1;
		else if(favoriteViewer=="JAVA") writeJAVA=1;
	}
	else if(isMac) writeQT=1;
	else writeJAVA=1;

	if(writeDevalVR)
	{
		str='<OBJECT codeBase="http://www.devalvr.com/instalacion/plugin/devalocx.cab#version='+minDevalVRVersion+'" classid=clsid:5D2CF9D0-113A-476B-986F-288B54571614 style="WIDTH: 100%; HEIGHT: 94%" width="100%" height="94%">';		str+='<PARAM NAME="src" VALUE="'+movfile+'">';
		str+='<PARAM NAME="filter" VALUE="0">';		str+='<EMBED TYPE="application/x-devalvrx" PLUGINSPAGE="http://www.devalvr.com/instalacion/plugin/install.html" src="'+movfile+'" filter="0" width="100%" height="94%"></EMBED></OBJECT>';
	}
	else if(writeQT)
	{
		str='<OBJECT codeBase=http://www.apple.com/qtactivex/qtplugin.cab classid=clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B  style="WIDTH: 100%; HEIGHT: 94%" width="100%" height="94%">';
		str+='<PARAM NAME="src" VALUE="'+movfile+'">';
		str+='<PARAM NAME="scale" VALUE="tofit">';
		str+='<PARAM NAME="autostart" VALUE="true">';
		str+='<PARAM NAME="loop" VALUE="false">';
		str+='<PARAM NAME="controller" VALUE="true">';
		str+='<embed src="'+movfile+'" width="100%" height="94%" scale="tofit" type="video/quicktime" autostart="true" loop="false" controller="true" pluginspage="http://www.apple.com/quicktime/download/indext.html"></embed></OBJECT>';
	}
	else if(writeJAVA)
	{
		str='<applet code="ptviewer.class" archive="ptviewer.jar" width=100% height=94%>';
		str+='<param name=file value="'+javafile+'">';
		str+='<param name=cursor value="MOVE">';
		str+='<param name=showToolbar value="true">';
		str+='<param name=imgLoadFeedback value="false">';
		str+='</applet>';
	}
	document.write(str);
}

function getCookie(nombre)
{
	var dcookie=document.cookie;
	var cname=nombre+"=";
	var longitud=dcookie.length;
	var inicio=0;
	while(inicio<longitud)
	{
		var vbegin=inicio+cname.length;
		if(dcookie.substring(inicio,vbegin)==cname)
		{
			var vend=dcookie.indexOf(";",vbegin);
			if(vend==-1) vend=longitud;
			return unescape(dcookie.substring(vbegin,vend));
		}
		inicio=dcookie.indexOf(" ",inicio)+1;
		if(inicio==0) break;
	}
	return null;
}

function setCookie(name, value, expires)
{
	if(!expires)
	{ 
		expires=new Date();
		expires.setTime(expires.getTime()+(24*3600*1000*365));
	}
	document.cookie=name+"="+escape(value)+"; expires=" + expires.toGMTString()+ "; path=/";
}


