/*
 * Fix für das Problem "Click to activate control"
 *
 * @version: 2007-11-21
 * @author: Andreas Bimminger <andreas@bimminger.at>
 */

//Nur wenn outerHTML und ElementsByTagName unterstützt wird
function fixFlashActivation() {
	var htmlString = null;
	var htmlStringInner = null;
	var suchergebnis = null;
	var alleObjects = null;
	var oneObject = null;

	//Nur wenn getElementsByTagName und outerHTML unterstützt wird
	if (document.getElementsByTagName && document.body.outerHTML) {
		alleObjects = document.getElementsByTagName("object");
		//Alle Objekte abarbeiten
		for (var i = 0; i < alleObjects.length; i++) {
			oneObject = alleObjects[i];
			//Nur klar definierte Objekte abarbeiten (class="fixflashactivation")
			if(oneObject.className.match(/^fixflashactivation$/)) {
				htmlString = oneObject.outerHTML;
				suchergebnis = htmlString.match(/</g);

				//Existieren Kind-Elemente sind aber im outerHTML nur max. zwei Tags offen (
			

				//Das betrifft halt vor allem den Verursacher des Problems den IE
				if(oneObject.hasChildNodes() == true && suchergebnis.length < 3) {
					//... dann müssen die Kindelemente wieder hinzu
					htmlStringInner = "";
					for(var j = 0; j < oneObject.childNodes.length; j++) {
						htmlStringInner += oneObject.childNodes[j].outerHTML;
					}
					//Verschachtelte Unterelemente werden allerdings einfach ignoriert

					alleObjects[i].outerHTML = htmlString.replace('>', '>' + htmlStringInner);
				}
				else {
					//ansonsten einfach alles übernehmen
					alleObjects[i].outerHTML = htmlString;
				}
			}
		}
	}
}

//Damit der IE nicht Probleme beim laden bekommt:
// (Noch 2 Elemente) Auf ... wird gewartet.
window.setTimeout("fixFlashActivation()", 200);
