// Replace voor Flashheaders
// Datum: 17-04-2008
// Auteur: BS
// Functies: replaceTagForFlashHeader(), replaceTag(document.getElementsByTagName(tag_name),m_name,m_path,m_width,m_lineheight,m_linespacing,parameters,spec_id_replace)
// EXTRA Toelichting parameters voor 'replaceTag':
// 1. tag_name = de tag om te replacen voor de swf
// 2. m_name   = de naam van de swf
// 3. m_path   = het path van de swf
// 4. m_width  = de breedte van de swf
// 5. m_lineheight = hoogte van een regel binnen de swf (benodigd voor de berekening van de hoogte van de swf)
// 6. m_linespacing = ruimte tussen een regel binnen de swf (benodigd voor de berekening van de hoogte van de swf)
// 7. m_charwidth = breedte van een karakter binnen de swf
// 8. opt_parameters = (optioneel) extra parameters die meegegeven worden (buiten de al meegegeven current_value parameter deze bevat de originele waarde van de tag zelf)
// 9. spec_id_replace = optie: 'all' hierbij worden alle bij de 'tag_name' tags vervangen in de pagina, of vervang alleen de bij 'tag_name' opgeven tags met een specifieke id bijvoorbeeld 'test'
// 10. id_or_class = indien er gebruik word gemaakt van classes deze gevuld met 'class', anders indien het gaat om id's is deze gevuld met 'id'

function replaceTagForFlashHeader(TagName,MovieName,MoviePath,MovieWidth,LineHeight,LineSpacing,CharWidth,Opt_Parameters,spec_id_replace,id_or_class){
	var W3CDOM = (document.createElement && document.getElementsByTagName);
	if (!W3CDOM) return;
	replaceTag(document.getElementsByTagName(TagName),MovieName,MoviePath,MovieWidth,LineHeight,LineSpacing,CharWidth,Opt_Parameters,spec_id_replace,id_or_class);
}

function calculateMovieHeight(TagValue,LineHeight,LineSpacing,CharWidth,MovieWidth){
	sum = 0;
	MovieHeight = 0;
	totalheight_of_a_row = 0;
	sum = TagValue.length*CharWidth; // berekend de totale breedte in pixels indien het 1 regel zou zijn
	if(sum<MovieWidth){
		MovieHeight = Math.round(LineHeight,LineSpacing); // totale hoogte van 1 regel berekenen
	}else{
		sum = Math.round(sum/MovieWidth); // berekend aantal regels
		totalheight_of_a_row = parseInt(LineHeight) + parseInt(LineSpacing); // totale hoogte van 1 regel berekenen
		MovieHeight = Math.round(sum*totalheight_of_a_row);
	}
	
}
	
function replaceTag(TagName,MovieName,MoviePath,MovieWidth,LineHeight,LineSpacing,CharWidth,Opt_Parameters,spec_id_replace,id_or_class){
	var replace = document.createElement('object');
	for (var i=0;i<TagName.length;i++){
		
	if(spec_id_replace!='all'){
			
			if(id_or_class=="id"){
				if (TagName[i].id == spec_id_replace){
					var TagValue = document.getElementById(TagName[i].id).innerHTML;
					calculateMovieHeight(TagValue,LineHeight,LineSpacing,CharWidth,MovieWidth);
					var y = replace.cloneNode(true);
					y.width = '';
					y.height = '';
					y.width = MovieWidth+'px';
					y.height = MovieHeight+'px';
					var currentID = TagName[i].id;
					var newID = currentID+"_"+MovieName;
					TagName[i].replaceChild(y,TagName[i].firstChild);
					var parameters = '';
					var parameters = '<param value="/swf/blokheader.swf?titel='+TagValue+'" name="movie"/>';
					var parameters = parameters+'<param value="transparent" name="wmode"/>';
					var parameters = parameters+'<param value="high" name="quality"/>';
					var embed = '';
					var embed = '<embed width="'+y.width+'px" height="'+y.height+'px" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" quality="high" src="'+MoviePath+'?current_value='+TagValue+'&'+Opt_Parameters+'&mov_height='+MovieHeight+'" wmode="transparent"/>';
					document.getElementById(currentID).innerHTML = parameters + embed;
				}
			}
			
			if(id_or_class=="class"){
				if (TagName[i].className == spec_id_replace){
					var TagValue = TagName[i].innerHTML;
					// Indien InnerHTML van desbetreffende ID is een link de link en tekst in aparte variabele plaatsen
					firstTwoChars = TagValue.charAt(0),TagValue.charAt(1);
					if(firstTwoChars=='<'){
						href = TagName[i].getElementsByTagName('a')[0].getAttribute('href'); // href van link
						var hrefArray = href.split("?");
						var href = "?"+hrefArray[1];
						TagValue = TagName[i].getElementsByTagName('a')[0].getAttribute('alt'); // alt van link
						Opt_Parameters = Opt_Parameters+'&button_url=default.asp'+href;
					}
					
					calculateMovieHeight(TagValue,LineHeight,LineSpacing,CharWidth,MovieWidth);
					var y = replace.cloneNode(true);
					y.width = '';
					y.height = '';
					y.width = MovieWidth+'px';
					y.height = MovieHeight+'px';
					y.className = TagName[i].className+"_"+MovieName;
					TagName[i].replaceChild(y,TagName[i].firstChild);
					var parameters = '';
					var parameters = '<param value="/swf/blokheader.swf?titel='+TagValue+'" name="movie"/>';
					var parameters = parameters+'<param value="transparent" name="wmode"/>';
					var parameters = parameters+'<param value="high" name="quality"/>';
					var embed = '';
					var embed = '<embed width="'+y.width+'px" height="'+y.height+'px" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" quality="high" src="'+MoviePath+'?current_value='+TagValue+'&'+Opt_Parameters+'&mov_height='+MovieHeight+'" wmode="transparent"/>';
					TagName[i].innerHTML = parameters;
					TagName[i].innerHTML = embed;
				}
			}
		}
		if(spec_id_replace=='all'){
			if(id_or_class=="id"){
				if (TagName[i].id){
					if (TagName[i].id!='active'){//is het geval indien menu active item al geplaatst is
						var TagValue = document.getElementById(TagName[i].id).innerHTML;
						calculateMovieHeight(TagValue,LineHeight,LineSpacing,CharWidth,MovieWidth);
						var y = replace.cloneNode(true);
						y.width = '';
						y.height = '';
						y.width = MovieWidth+'px';
						y.height = MovieHeight+'px';
						y.id = TagName[i].id+"_"+MovieName;
						TagName[i].replaceChild(y,TagName[i].firstChild);
						alert(TagValue);
						var parameters = '';
						var parameters = '<param value="/swf/blokheader.swf?titel='+TagValue+'" name="movie"/>';
						var parameters = parameters+'<param value="transparent" name="wmode"/>';
						var parameters = parameters+'<param value="high" name="quality"/>';
						var embed = '';
						var embed = '<embed width="'+y.width+'px" height="'+y.height+'px" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" quality="high" src="'+MoviePath+'?current_value='+TagValue+'&'+Opt_Parameters+'&mov_height='+MovieHeight+'" wmode="transparent"/>';
						document.getElementById(y.id).innerHTML = parameters;
						document.getElementById(y.id).innerHTML = document.getElementById(y.id).innerHTML + embed;
					}
				}
			}
		}
		
	}
}
