	var upgradeHtml;
	var blank_gif_path = '/staticfiles/Admin%20Content/Resources/Consumers/img/blank.gif';
	
	function fixSrc(el,setDimensions) {
 		if (Browser.Engine.trident4) {
 			var imgSrc = el.getProperty('src');
 			if (imgSrc.contains('.png') && !el.retrieve('pngFixed')) {
 				method = "image";
 				if (el.retrieve('method')) {
 					method = el.retrieve('method');
 				}
 				el.set('src',blank_gif_path);
 				el.setStyles({
 					backgroundImage: 'none',
 					filter: 'progid:DXImageTransform.Microsoft.AlphaImageLoader(src="' + imgSrc + '", sizingMethod="'+method+'")'
 				});
 				if (!setDimensions) { return; }
 				var img = new Image();
 				img.onload = function(loaded) { el.set({width:loaded.width,height:loaded.height}); };
 				img.src = imgSrc;
 			}
 		}
 	}
	
	function flashUpgrade(container,loadFcn) {
		var req;
		if (upgradeHtml) {
			document.getElementById("flashContent").innerHTML = upgradeHtml;
			fixSrc($$('img[src$=png]')[0]);
		} else {
			req = new Request({url:'/consumers/b2c/includes/flashUpgrade.jsp?localeId='+localeId,method:'get',onSuccess:flashUpgradeRequestSuccess.bindWithEvent(this,[container,loadFcn])});
			req.send();
		}
	}
	
	function flashUpgradeRequestSuccess(responseText) {
		upgradeHtml = responseText;
		flashUpgrade();
	}
	
	function checkFlashInstalled(version) {
		if (!isFlashInstalled(version)) {
			flashUpgrade(null, null);
			return false;
		}
		
		return true;
	}

	function isFlashInstalled(version) {
		var major = 9, build = 114;
		var parts = version ? version.match(/^(\d+).*\.(\d+)$/) : null;
		if (parts) {
			major = parseInt(parts[1]);
			build = parseInt(parts[2]);
		}
		
		var installed = Browser.Plugins.Flash && Browser.Plugins.Flash.version > major || (Browser.Plugins.Flash.version === major && Browser.Plugins.Flash.build >= build);
		return installed;
	}
