var requiredMajorVersion = 8;
var requiredMinorVersion = 0;
var requiredRevision = 24;
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;
    try {
        axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
        version = axo.GetVariable("$version");
    } catch (e) {
    }
    if (!version) {
        try {
            axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");
            version = "WIN 6,0,21,0";
            axo.AllowScriptAccess = "always";
            version = axo.GetVariable("$version");
        } catch (e) {
        }
    }
    if (!version) {
        try {
            axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
            version = axo.GetVariable("$version");
        } catch (e) {
        }
    }
    if (!version) {
        try {
            axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
            version = "WIN 3,0,18,0";
        } catch (e) {
        }
    }
    if (!version) {
        try {
            axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
            version = "WIN 2,0,0,11";
        } catch (e) {
            version = -1;
        }
    }
    return version;
}


function GetSwfVer() {
    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] != "") {
                var tempArrayMinor = descArray[3].split("r");
            } else {
                var tempArrayMinor = descArray[4].split("r");
            }
            var versionRevision = tempArrayMinor[1] > 0 ? tempArrayMinor[1] : 0;
            var flashVer = versionMajor + "." + versionMinor + "." + versionRevision;
        }
    } else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") != -1) {
        flashVer = 4;
    } else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") != -1) {
        flashVer = 3;
    } else if (navigator.userAgent.toLowerCase().indexOf("webtv") != -1) {
        flashVer = 2;
    } else if (isIE && isWin && !isOpera) {
        flashVer = ControlVersion();
    }
    return flashVer;
}


function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision) {
    var versionStr = GetSwfVer();
    if (versionStr == -1) {
        return false;
    } else if (versionStr != 0) {
        if (isIE && isWin && !isOpera) {
            tempArray = versionStr.split(" ");
            tempString = tempArray[1];
            var versionArray = tempString.split(",");
        } else {
            var versionArray = versionStr.split(".");
        }
        var versionMajor = versionArray[0];
        var versionMinor = versionArray[1];
        var versionRevision = versionArray[2];
        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;
    }else{
		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, con) {
    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.getElementById(con).innerHTML = 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, ret.cont);
}


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":
          case "id":
            ret.objAttrs[args[i]] = args[i + 1];
            break;
          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;
          case "con":
            ret.cont = args[i + 1];
            ret.embedAttrs.id = args[i + 1] + "_swf";
            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;
}


function checkFlash(src, alt, linktarget, width, height, cont, alturl, backIMG) {
    var flashvars = "";
    if (window.location.search) {
        var affpar = window.location.search.substr(1, window.location.search.length).split("&");
        flashvars = "affPar=" + affpar + "&";
    }
    flashvars += "linkTarget=" + linktarget + "&backImage=" + backIMG + "&isIE=" + isIE;
    var hasProductInstall = DetectFlashVer(6, 0, 65);
    var hasReqestedVersion = DetectFlashVer(requiredMajorVersion, requiredMinorVersion, requiredRevision);
    if (hasProductInstall && !hasReqestedVersion) {
        var MMPlayerType = isIE == true ? "ActiveX" : "PlugIn";
        var MMredirectURL = window.location;
        document.title = document.title.slice(0, 47) + " - Flash Player Installation";
        var MMdoctitle = document.title;
        AC_FL_RunContent("src", "http://ad.jamba.net/int_o_flash/flash_detection/swf/playerProductInstall", "FlashVars", "" + flashvars + "&MMredirectURL=" + MMredirectURL + "&MMplayerType=" + MMPlayerType + "&MMdoctitle=" + MMdoctitle + "&altURL=" + alturl + "", "width", "300", "height", "200", "align", "middle", "id", "detectionExample", "quality", "best", "bgcolor", "#ffffff", "name", "detectionExample", "allowScriptAccess", "sameDomain", "type", "application/x-shockwave-flash", "pluginspage", "http://www.adobe.com/go/getflashplayer", "con", cont);
    } else {
        if (hasReqestedVersion) {
			var wmodeValue;
			isIE == true ? wmodeValue="window" : wmodeValue="opaque";
            AC_FL_RunContent("src", src, "width", width, "height", height, "align", "middle", "quality", "best", "bgcolor", "#FFFFFF", "allowScriptAccess", "always", "type", "application/x-shockwave-flash", "codebase", "http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab", "pluginspage", "http://www.adobe.com/go/getflashplayer", "con", cont, "FlashVars", flashvars, "id", cont + "_swf", "name", cont + "_swf", "wmode", wmodeValue);
            if (document.getElementById("flashInit")) {
                document.getElementById("flashInit").value = "true";
            }
        } else {
            var alternateContent = "<a href=\"" + alturl + window.location.search + "\" target=\"_blank\" ><img src=\"" + alt + "\" alt=\"wrong flash version detected!\" border=\"0\" /></a>";
            document.getElementById(cont).innerHTML = alternateContent;
        }
    }
}