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