parent
							
								
									83882b18d9
								
							
						
					
					
						commit
						db2592a84b
					
				| @ -1,269 +0,0 @@ | ||||
| // Flash Player Version Detection - Rev 1.5
 | ||||
| // Detect Client Browser type
 | ||||
| // Copyright(c) 2005-2006 Adobe Macromedia Software, LLC. All rights reserved.
 | ||||
| var isIE  = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false; | ||||
| var isWin = (navigator.appVersion.toLowerCase().indexOf("win") != -1) ? true : false; | ||||
| var isOpera = (navigator.userAgent.indexOf("Opera") != -1) ? true : false; | ||||
| 
 | ||||
| function ControlVersion() | ||||
| { | ||||
| 	var version; | ||||
| 	var axo; | ||||
| 	var e; | ||||
| 
 | ||||
| 	// NOTE : new ActiveXObject(strFoo) throws an exception if strFoo isn't in the registry
 | ||||
| 
 | ||||
| 	try { | ||||
| 		// version will be set for 7.X or greater players
 | ||||
| 		axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7"); | ||||
| 		version = axo.GetVariable("$version"); | ||||
| 	} catch (e) { | ||||
| 	} | ||||
| 
 | ||||
| 	if (!version) | ||||
| 	{ | ||||
| 		try { | ||||
| 			// version will be set for 6.X players only
 | ||||
| 			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6"); | ||||
| 			
 | ||||
| 			// installed player is some revision of 6.0
 | ||||
| 			// GetVariable("$version") crashes for versions 6.0.22 through 6.0.29,
 | ||||
| 			// so we have to be careful. 
 | ||||
| 			
 | ||||
| 			// default to the first public version
 | ||||
| 			version = "WIN 6,0,21,0"; | ||||
| 
 | ||||
| 			// throws if AllowScripAccess does not exist (introduced in 6.0r47)		
 | ||||
| 			axo.AllowScriptAccess = "always"; | ||||
| 
 | ||||
| 			// safe to call for 6.0r47 or greater
 | ||||
| 			version = axo.GetVariable("$version"); | ||||
| 
 | ||||
| 		} catch (e) { | ||||
| 		} | ||||
| 	} | ||||
| 
 | ||||
| 	if (!version) | ||||
| 	{ | ||||
| 		try { | ||||
| 			// version will be set for 4.X or 5.X player
 | ||||
| 			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3"); | ||||
| 			version = axo.GetVariable("$version"); | ||||
| 		} catch (e) { | ||||
| 		} | ||||
| 	} | ||||
| 
 | ||||
| 	if (!version) | ||||
| 	{ | ||||
| 		try { | ||||
| 			// version will be set for 3.X player
 | ||||
| 			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3"); | ||||
| 			version = "WIN 3,0,18,0"; | ||||
| 		} catch (e) { | ||||
| 		} | ||||
| 	} | ||||
| 
 | ||||
| 	if (!version) | ||||
| 	{ | ||||
| 		try { | ||||
| 			// version will be set for 2.X player
 | ||||
| 			axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash"); | ||||
| 			version = "WIN 2,0,0,11"; | ||||
| 		} catch (e) { | ||||
| 			version = -1; | ||||
| 		} | ||||
| 	} | ||||
| 	
 | ||||
| 	return version; | ||||
| } | ||||
| 
 | ||||
| // 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]; | ||||
| 			if ( descArray[3] != "" ) { | ||||
| 				tempArrayMinor = descArray[3].split("r"); | ||||
| 			} else { | ||||
| 				tempArrayMinor = descArray[4].split("r"); | ||||
| 			} | ||||
| 			var versionRevision = tempArrayMinor[1] > 0 ? tempArrayMinor[1] : 0; | ||||
| 			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 AC_AddExtension(src, ext) | ||||
| { | ||||
|   if (src.indexOf('?') != -1) | ||||
|     return src.replace(/\?/, ext+'?'); 
 | ||||
|   else | ||||
|     return src + ext; | ||||
| } | ||||
| 
 | ||||
| function AC_Generateobj(objAttrs, params, embedAttrs) 
 | ||||
| { 
 | ||||
|     var str = ''; | ||||
|     if (isIE && isWin && !isOpera) | ||||
|     { | ||||
|   		str += '<object '; | ||||
|   		for (var i in objAttrs) | ||||
|   			str += i + '="' + objAttrs[i] + '" '; | ||||
|   		for (var i in params) | ||||
|   			str += '><param name="' + i + '" value="' + params[i] + '" /> '; | ||||
|   		str += '></object>'; | ||||
|     } else { | ||||
|   		str += '<embed '; | ||||
|   		for (var i in embedAttrs) | ||||
|   			str += i + '="' + embedAttrs[i] + '" '; | ||||
|   		str += '> </embed>'; | ||||
|     } | ||||
| 
 | ||||
|     document.write(str); | ||||
| } | ||||
| 
 | ||||
| function AC_FL_RunContent(){ | ||||
|   var ret = 
 | ||||
|     AC_GetArgs | ||||
|     (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" | ||||
|      , "application/x-shockwave-flash" | ||||
|     ); | ||||
|   AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs); | ||||
| } | ||||
| 
 | ||||
| function AC_GetArgs(args, ext, srcParamName, classid, mimeType){ | ||||
|   var ret = new Object(); | ||||
|   ret.embedAttrs = new Object(); | ||||
|   ret.params = new Object(); | ||||
|   ret.objAttrs = new Object(); | ||||
|   for (var i=0; i < args.length; i=i+2){ | ||||
|     var currArg = args[i].toLowerCase();    
 | ||||
| 
 | ||||
|     switch (currArg){	
 | ||||
|       case "classid": | ||||
|         break; | ||||
|       case "pluginspage": | ||||
|         ret.embedAttrs[args[i]] = args[i+1]; | ||||
|         break; | ||||
|       case "src": | ||||
|       case "movie":	
 | ||||
|         args[i+1] = AC_AddExtension(args[i+1], ext); | ||||
|         ret.embedAttrs["src"] = args[i+1]; | ||||
|         ret.params[srcParamName] = args[i+1]; | ||||
|         break; | ||||
|       case "onafterupdate": | ||||
|       case "onbeforeupdate": | ||||
|       case "onblur": | ||||
|       case "oncellchange": | ||||
|       case "onclick": | ||||
|       case "ondblClick": | ||||
|       case "ondrag": | ||||
|       case "ondragend": | ||||
|       case "ondragenter": | ||||
|       case "ondragleave": | ||||
|       case "ondragover": | ||||
|       case "ondrop": | ||||
|       case "onfinish": | ||||
|       case "onfocus": | ||||
|       case "onhelp": | ||||
|       case "onmousedown": | ||||
|       case "onmouseup": | ||||
|       case "onmouseover": | ||||
|       case "onmousemove": | ||||
|       case "onmouseout": | ||||
|       case "onkeypress": | ||||
|       case "onkeydown": | ||||
|       case "onkeyup": | ||||
|       case "onload": | ||||
|       case "onlosecapture": | ||||
|       case "onpropertychange": | ||||
|       case "onreadystatechange": | ||||
|       case "onrowsdelete": | ||||
|       case "onrowenter": | ||||
|       case "onrowexit": | ||||
|       case "onrowsinserted": | ||||
|       case "onstart": | ||||
|       case "onscroll": | ||||
|       case "onbeforeeditfocus": | ||||
|       case "onactivate": | ||||
|       case "onbeforedeactivate": | ||||
|       case "ondeactivate": | ||||
|       case "type": | ||||
|       case "codebase": | ||||
|         ret.objAttrs[args[i]] = args[i+1]; | ||||
|         break; | ||||
|       case "id": | ||||
|       case "width": | ||||
|       case "height": | ||||
|       case "align": | ||||
|       case "vspace": 
 | ||||
|       case "hspace": | ||||
|       case "class": | ||||
|       case "title": | ||||
|       case "accesskey": | ||||
|       case "name": | ||||
|       case "tabindex": | ||||
|         ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1]; | ||||
|         break; | ||||
|       default: | ||||
|         ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1]; | ||||
|     } | ||||
|   } | ||||
|   ret.objAttrs["classid"] = classid; | ||||
|   if (mimeType) ret.embedAttrs["type"] = mimeType; | ||||
|   return ret; | ||||
| } | ||||
| 
 | ||||
| 
 | ||||
					Loading…
					
					
				
		Reference in new issue