﻿// (c) unternehmen online GmbH & Co. KG
// 04 / 2009
// author: Agis Wichert

function UO_HideContainer(containerID, useBlock) {
    var container = UO(containerID);

    if (container) {
        container.style.visibility = "hidden";
        if (useBlock)
            container.style.display = "none";
    }
}

function UO_ShowContainer(containerID, useBlock) {
    var container = UO(containerID);
    if (container) {
        container.style.visibility = "visible";
        if (useBlock)
            container.style.display = "block";
    }
}

function UO_ToggleVisibility(containerID, useBlock) {
    var container = UO(containerID);
    if (container) {
        if (container.style.visibility == "hidden") {
            UO_ShowContainer(container, useBlock);
        }
        else {
            UO_HideContainer(container, useBlock);
        }
    }
}

function UO_ToggleText(containerID, text1, text2) {
    var container = UO(containerID);
    if (container) {
        if (container.firstChild.nodeValue == text1) {
            container.firstChild.nodeValue = text2;
        }
        else if (container.firstChild.nodeValue == text2) {
            container.firstChild.nodeValue = text1;
        }
    }
}

function UO_SwapImage(containerID) {
    var container = UO(containerID);
    var dom = location.protocol + "//" + document.domain;

    if (container) {
        if (arguments.length > 2) {
            for (var i = 1; i < arguments.length; i++) {
                var arg = arguments[i] + '';
                if (arg.indexOf("http") == -1 && dom.indexOf("http") != -1) {
                    arg = dom + arg;
                }
                if (container.src == arg) {
                    if (arguments.length > (i + 1)) {
                        container.src = arguments[i + 1];
                        break;
                    }
                    else {
                        container.src = arguments[1];
                        break;
                    }
                }
            }
        }
        else if (arguments.length == 2) {
            container.src = arguments[1];
        }
    }
}


function UO_ToggleCss(containerID) {
    var container = UO(containerID);
    
    if (container) {
        if (arguments.length > 2) {
            for (var i = 1; i < arguments.length; i++) {
                var arg = arguments[i] + '';
                if (container.className == arg) {
                    if (arguments.length > (i + 1)) {
                        container.className = arguments[i + 1];
                        break;
                    }
                    else {
                        container.className = arguments[1];
                        break;
                    }
                }
            }
        }
        else if (arguments.length == 2) {
            container.className = arguments[1];
        }
    }
}

function UO_HTMLDecode(value) {
    value = value.replace(/&lt;/g, "<");
    value = value.replace(/&gt;/g, ">");
    value = value.replace(/&quot;/g, "\"");
    value = value.replace(/&apos;/g, "'");
    value = value.replace(/&amp;/g, "&");
    return value
}


// findet anhand der id eines elements das passende formular
function UO_FindForm(containerID) {
    var container = UO(containerID);
    
    var formulare = document.getElementsByTagName("form");
    var name = container.name;
    for (var i = 0; i < formulare.length; i++) {
        for (var t = 0; t < formulare[i].elements.length; t++) {
            if (formulare[i].elements[t].name == name) {
                return formulare[i];
                break;
            }
        }
    }
    return false;
}

// liefert das dom-object zurück
function UO(containerID) {
    var container = false;
    if ((typeof containerID).toLowerCase() == "object") {
        container = containerID;
    }
    else if ((typeof containerID).toLowerCase() == "string") {
        container = document.getElementById(containerID);
    }
    return container;
}


/* Flash player suchen */
// Flash Player Version Detection - Rev 1.5
// 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 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 ShowFlashAlt(altID, controlID, src, width, height, quality, bgcolor, align, params) {
    if (DetectFlashVer(7, 0, 0)) {
        ShowFlash(controlID, src, width, height, quality, bgcolor, align, params);
    } else {
        document.write("<img src=\"/mstream.ashx?id=" + altID + "\" style=\"width:" + width + "px;height:" + height + "px\">");
    }
}

// FlashScript
function ShowFlash(controlID, src, width, height, quality, bgcolor, align, params) {
	document.write(AssembleFlashHtml(controlID, src, width, height, quality, bgcolor, align, params));
}
function InjectFlash(controlID, src, width, height, quality, bgcolor, align, params, elementid) {
	document.getElementById(elementid).innerHTML = AssembleFlashHtml(controlID, src, width, height, quality, bgcolor, align, params);
}

function AssembleFlashHtml(controlID, src, width, height, quality, bgcolor, align, params) {
	if(!align)
		align = "middle"
	if(!bgcolor)
		bgcolor = "#ffffff"
	if(!quality)
		quality = "high"

	var output = "";

	output += '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="https://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0"';


	if(width != '')
		output += ' width="' + width + '"';
	if(height != '')
		output += ' height="' + height + '"';

	output += ' id="' + controlID + '" align="' + align + '">';

	output += '<param name="allowScriptAccess" value="sameDomain" />';
	output += '<param name="movie" value="' + src + '" />';
	output += '<param name="quality" value="' + quality + '" />';
	output += '<param name="bgcolor" value="' + bgcolor + '" />';

	var embedVars = "";
	if(params) {
		for(var i = 0; i < params.length; i++) {
			output += '<param name="' + params[i]['Key'] + '" value="' + params[i]['Value'] + '" />';
			embedVars += params[i]['Key'] + "=\"" + params[i]['Value'] + "\"";
		}
	}

	output += '<embed src="' + src + '" quality="' + quality + '"';

	if(width != '')
		output += ' width="' + width + '"';
	if(height != '')
		output += ' height="' + height + '"'

	output += ' bgcolor="' + bgcolor + '" name="' + controlID + '" align="' + align + '" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="https://www.macromedia.com/go/getflashplayer" ' + embedVars + '></embed>';

	output += '</object>';
	return output;
}

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;
}

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 ShowFlashIpsen(controlID, src, width, height, quality, bgcolor, align, params, version) {
    if (!align)
        align = "middle";
    if (!bgcolor)
        bgcolor = "#ffffff";
    if (!quality)
        quality = "high";

    var output = "";

    if (!version) {
        output += '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="https://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0"';
    } else {
        output += '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="https://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=' + version + ',0,0,0"';
    }

    if (width != '')
        output += ' width="' + width + '"';
    if (height != '')
        output += ' height="' + height + '"';

    output += ' id="' + controlID + '" align="' + align + '">';

    output += '<param name="allowScriptAccess" value="sameDomain" />';
    output += '<param name="movie" value="' + src + '" />';
    output += '<param name="quality" value="' + quality + '" />';
    output += '<param name="bgcolor" value="' + bgcolor + '" />';

    var embedVars = "";
    if (params) {
        for (var i = 0; i < params.length; i++) {
            output += '<param name="' + params[i]['Key'] + '" value="' + params[i]['Value'] + '" />';
            embedVars += params[i]['Key'] + "=\"" + params[i]['Value'] + "\"";
        }
    }

    output += '<embed src="' + src + '" quality="' + quality + '"';

    if (width != '')
        output += ' width="' + width + '"';
    if (height != '')
        output += ' height="' + height + '"'

    output += ' bgcolor="' + bgcolor + '" name="' + controlID + '" align="' + align + '" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="https://www.macromedia.com/go/getflashplayer" ' + embedVars + '></embed>';

    output += '</object>';

    document.write(output);
}

function DropDownSelect(formName, elementName) {
    var value = document.forms[formName].elements[elementName].value;

    // der Link unterteilt sich in Link und Target
    var valueA = value.split(" ");

    var targetID = valueA[1];
    var link = valueA[0];

    //alert(targetID);
    location.href = link;
    
    /*
    if (targetID < 3)
        location.href = link;
    if (targetID == 3)
        window.open(link);
    if (targetID == 4 && targetID == 5)
        openContent(link, targetID);
    if (targetID > 5)
        openPopup(link, targetID, -1);
        */
}

