var iPos = -80;
var XmlMenue;
var XmlTermine;
var XmlNews;
var XmlKontakte;
var GWechselFarbe;

/*
********************************************************************
* Name: ...
* 
* Dienstfunktionen
********************************************************************/
function AddTage( ADatum, ATage ) 
{
	return new Date( ADatum.getTime() + ATage * 24 * 60 * 60 * 1000 );
}

function GetAttributValue( AXmlKnoten, AAttribut )
{
	var sErgebnis = "";

	if ( AXmlKnoten != null )
		if ( AXmlKnoten.attributes != null )
      sErgebnis = AXmlKnoten.getAttribute( AAttribut );

	return sErgebnis;
}

function AddTabellenZeile( ATitel, ADaten )
{
	var	sErgebnis = "";
	
	sErgebnis	+= "  <TR>";
	sErgebnis	+= "    <TD width='10'></TD>";
	sErgebnis	+= "    <TD id='NormalTabelle' valign='top'>" + ATitel + "</TD>";
	sErgebnis	+= "    <TD id='NormalTabelle' valign='top'>" + ADaten + "</TD>";
	sErgebnis	+= "  </TR>";

	return sErgebnis;
}

function IfThenText( AText, APrefix, ASuffix )
{
	var	sErgebnis = "";

	if ( AText != "" && AText != " " )
		sErgebnis	= APrefix + AText + ASuffix;
	
	return sErgebnis;
}

function IfThenEmail( AMail, APrefix, ASuffix )
{
	var	sErgebnis = "";

	if ( AMail != "" )
		sErgebnis	= APrefix + "<a href='mailto:"+ AMail +"'>" + AMail + "</a>" + ASuffix;
	
	return sErgebnis;
}

function LoadXml( ADateiname )
{
	var xmlDoc;

	/* code fuer Mozilla, Firefox, Opera, etc. */
	if ( document.implementation && document.implementation.createDocument )
		xmlDoc	= document.implementation.createDocument( "", "", null );

	/* code fuer den Internet-Explorer */
	else if ( window.ActiveXObject )
		xmlDoc	= new ActiveXObject( "Microsoft.XMLDOM" );

	else
		alert( "Ihr Browser unterstützt dieses Script nicht (min. Netscape 6.0 noch Explorer 5.0)!" );
	
	xmlDoc.async	= false;
	xmlDoc.load( ADateiname );
	return( xmlDoc );
}



/*
********************************************************************
* Name: OnLoadDokument
* 
* onload-Ereignis fuer jedes Dokument
********************************************************************/
function OnLoadDokument( AAbteilung, AGruppeHtmlPos, AGruppe )
{
	XmlMenue		= LoadXml( "./daten/Menue.xml" );
	XmlTermine	= LoadXml( "./daten/Termine.xml" );
	XmlNews			= LoadXml( "./daten/News.xml" );
	XmlKontakte	= LoadXml( "./daten/Kontakte.xml" );
	
	LadeMenueStruktur();
	LadeTerminInfos();
	LadeNewsInfos();
	TitelMoveIn();
	LadeUebungsleiterGesucht();
  if ( AGruppeHtmlPos != "" )
  	LadeGruppenDaten( AGruppeHtmlPos, AGruppe );
	LadeTermine( );
	LadeNews( );
	GetChefAdresse( "WintersportChef", "Wintersport" );
	GetChefAdresse( "TurnenChef", "Turnen" );
	GetChefAdresse( "TischtennisChef", "Tischtennis" );
	GetChefAdresse( "GesamtChef", "Gesamt" );
	LadeKontakte( AAbteilung );
}

/*
********************************************************************
* Name: LadeMenueStruktur
* 
* Laedt die Menuestruktur aus dem XML-Objekt
********************************************************************/
function LadeMenueStruktur()
{	var MenuePunkt;
	var SubMenuePunkt;
	var Element;
	var sErgebnis	= "<DIV class='Menue'><UL>";
	var Hochkomma = '"';
	
	/* Hauptmenuepunkt eintragen */
	for( iMenue = 0; iMenue < XmlMenue.documentElement.childNodes.length; iMenue++ )
		{
		MenuePunkt	= XmlMenue.documentElement.childNodes[ iMenue ];
		if ( MenuePunkt.attributes != null )
			{
			sErgebnis	+= "<LI><A href='" + GetAttributValue( MenuePunkt, "Link" ) + "' ";
			sErgebnis	+= "onmouseover='MenueShow( " + Hochkomma + "SubMenue" + ( iMenue + 1 ) + Hochkomma + " );' ";
			sErgebnis	+= "onmouseout='MenueHide( " + Hochkomma + "SubMenue" + ( iMenue + 1 ) + Hochkomma + ");'>";
			sErgebnis	+= GetAttributValue( MenuePunkt, "Caption" );
			sErgebnis	+= "</a>";
		
			/* Untermenuepunkte eintragen */ 
			if ( MenuePunkt.childNodes.length > 0 )
				{
				sErgebnis	+= "<UL id='SubMenue" + ( iMenue + 1 ) + "' ";
				sErgebnis	+= "onmouseover='MenueShow( " + Hochkomma + "SubMenue" + ( iMenue + 1 ) + Hochkomma + ");' ";
				sErgebnis	+= "onmouseout='MenueHide( " + Hochkomma + "SubMenue" + ( iMenue + 1 ) + Hochkomma + ");'>";
				for( iSubMenue = 0; iSubMenue < MenuePunkt.childNodes.length; iSubMenue++ )
					{
					SubMenuePunkt	= MenuePunkt.childNodes[ iSubMenue ];
					if ( SubMenuePunkt.attributes != null )
						sErgebnis	+= "<li><a href='" + GetAttributValue( SubMenuePunkt, "Link" ) + "'>" + GetAttributValue( SubMenuePunkt, "Caption" ) + "</a></li>";
					}	
				if ( MenuePunkt.childNodes.length > 0 )
					sErgebnis	+= "</UL>";
				}
			sErgebnis	+= "</LI>";
			}
		}

	/* Hauptmenue abschliessen */
	sErgebnis += "</UL></DIV>";

	/* Menue einfuegen */
	document.getElementById( "MenueAnzeige" ).innerHTML = sErgebnis;
}

/*
********************************************************************
* Name: LadeTerminInfos
*
* Laedt die aktuellen Termine fuer die Info-Leiste
********************************************************************/
function LadeTerminInfos()
{	var Termin;
	var sErgebnis	= "<DIV id='InfoLeisteText'>";
	var Jetzt = new Date();
	var EintragZeit = new Date( 0 );
	var iAnzahl = 0;

	/* Zeit aus den Datumsvariablen eliminieren */	
	EintragZeit.setHours( 23 );
	EintragZeit.setMinutes( 59 );
	Jetzt.setHours( 0 );
	Jetzt.setMinutes( 0 );
	
	/* Termine eintragen */
	for( iTermin = 0; iTermin < XmlTermine.documentElement.childNodes.length; iTermin++ )
		{
		if ( iAnzahl < 5 )
			{

			/* Daten des Eintrags ermitteln */
			Termin = XmlTermine.documentElement.childNodes[ iTermin ];
			if ( Termin.attributes != null )
				{
				sDatum			= GetAttributValue( Termin, "Datum" );
				sAbteilung	= GetAttributValue( Termin, "Abteilung" );
				sCaption		= GetAttributValue( Termin, "Caption" );

				/* Datum des Eintrags ermitteln */
				EintragZeit.setDate( parseInt( sDatum.substr( 0, 2 ) ) );
				EintragZeit.setMonth( parseInt( sDatum.substr( 3, 2 ) ) - 1 );
				EintragZeit.setYear( parseInt( sDatum.substr( 6, 4 ) ) );

				/* Nur Termine, die neuer sind wie gestern werden angezeigt */
				if ( EintragZeit >= Jetzt )
					{
					sErgebnis	+= "- " + sDatum + " " + sCaption + "<BR>";
					iAnzahl	+= 1;
					}
				}
			}
		}
	if ( iAnzahl == 0 )
		sErgebnis	+= "----------";
	else
		sErgebnis	+= "&gt;&gt;<a href='termine.htm'>mehr</a>&lt;&lt;";
	sErgebnis	+= "</DIV>";
	
	/* Terimne einfuegen */
	document.getElementById( "TerminInfosAnzeige" ).innerHTML = sErgebnis;
}

/*
********************************************************************
* Name: LadeNewsInfos
* 
* Laedt die aktuellen News fuer die Info-Leiste
********************************************************************/
function LadeNewsInfos()
{	var Eintrag;
	var sErgebnis	= "<DIV id='InfoLeisteText'>";
	var Jetzt = new Date();
	var EintragZeit = new Date( 0 );
	var iAnzahl = 0;
	
	/* News eintragen */
	for( iIndex = 0; iIndex < XmlNews.documentElement.childNodes.length; iIndex++ )
		{
		if ( iAnzahl < 5 )
			{
			/* Daten des Eintrags ermitteln */
			Eintrag = XmlNews.documentElement.childNodes[ iIndex ];
			if ( Eintrag.attributes != null )
				{
				sDatum				= GetAttributValue( Eintrag, "Datum" );
				sAbteilung		= GetAttributValue( Eintrag, "Abteilung" );
				sTicker				= GetAttributValue( Eintrag, "Ticker" );
				sAusfuehrlich	= GetAttributValue( Eintrag, "Ausfuehrlich" );

				/* Datum des Eintrags ermitteln */
				EintragZeit.setDate( parseInt( sDatum.substr( 0, 2 ) ) );
				EintragZeit.setMonth( parseInt( sDatum.substr( 3, 2 ) ) - 1 );
				EintragZeit.setYear( parseInt( sDatum.substr( 6, 4 ) ) );
				EintragZeit	= AddTage( EintragZeit, 180 ); 

				/* Nur News, die neuer einem Monat sind werden angezeigt */
				if ( EintragZeit > Jetzt )
					{
					sErgebnis	+= "- " + sDatum + " " + sTicker + "<BR>";
					iAnzahl	+= 1;
					}
				}
			}
		}
	if ( iAnzahl == 0 )
		sErgebnis	+= "----------";
	else
		sErgebnis	+= "&gt;&gt;<a href='news.htm'>mehr</a>&lt;&lt;";
	sErgebnis	+= "</DIV>";
	
	/* News einfuegen */
	document.getElementById( "NewsInfosAnzeige" ).innerHTML = sErgebnis;
}

/*
********************************************************************
* Name: GetGesuchtEintrag
*
* Laedt einen Eintrag für die Suche nach Uebungsleitern einer
* bestimmten Abteilung
********************************************************************/
function GetGesuchtEintrag( AXmlKnoten, ATitel, AAbteilung )
{
	var Eintrag;
	var Funktion;
	var sErgebnis = "<DIV id='NormalTitel'>Übungsleiter bzw. Helfer";
	var iAnzahl = 0;
	var sChef = "";
	
	if ( AAbteilung == "TU" )
		sErgebnis += "in der Turnabteilung";
	else if ( AAbteilung == "TT" )
		sErgebnis += "beim Tischtennis";
	else if ( AAbteilung == "WS" )
		sErgebnis += "beim Wintersport";
	sErgebnis += "</DIV><BR>";
	sErgebnis += "Wir suchen zur Vertärkung unseres Teams Übungsleiter bzw. Helfer für folgende Gruppen:<P>";

	for( iIndex = 0; iIndex < AXmlKnoten.documentElement.childNodes.length; iIndex++ )
		{

		/* Daten des Eintrags ermitteln */
		Eintrag = AXmlKnoten.documentElement.childNodes[ iIndex ];
		if ( Eintrag.attributes != null )
			{
		
			/* Den Dummyeintrag fuer offene Stellen suchen */
			if ( GetAttributValue( Eintrag, "Vorname" ) == "" )
				{
				for( iFunktion = 0; iFunktion < Eintrag.childNodes.length; iFunktion++ )
					{
					Funktion = Eintrag.childNodes[ iFunktion ];
					if ( GetAttributValue( Funktion, "Abteilung" ) == AAbteilung )
						{
						sErgebnis	+= "- " + GetAttributValue( Funktion, "Funktion" ) + " / ";
						sErgebnis	+= GetAttributValue( Funktion, "Bezeichnung" ) + " ";
						sErgebnis	+= GetAttributValue( Funktion, "Alter" ) + "<BR>";
						iAnzahl	+= 1;
						}
					}
				}

			/* Den Abteilungsleiter suchen */
			else
				{
				for( iFunktion = 0; iFunktion < Eintrag.childNodes.length; iFunktion++ )
					{
					Funktion = Eintrag.childNodes[ iFunktion ];
					if ( GetAttributValue( Funktion, "Abteilung" ) == AAbteilung && GetAttributValue( Funktion, "Funktion" ) == "1. Vorstand" )
						{
							sChef = GetAttributValue( Eintrag, "Vorname" ) + " ";
							sChef += GetAttributValue( Eintrag, "Nachname" ) + " ";
							if ( GetAttributValue( Eintrag, "Telefon" ) != "" )
								sChef += "Tel: " + GetAttributValue( Eintrag, "Telefon" );
						}
					}
				}
			}
		}
	sErgebnis	+= "<TABLE border='0' cellpadding='3' cellspacing='3'>";
	sErgebnis	+= "  <TR>";
  sErgebnis	+= "    <TD id='NormalTabelle' valign='top' width='540'>";
	sErgebnis	+= "      <P>Wenn Sie Zeit und Interesse haben, die Kinder als Übungsleiter oder Helfer in den aufgeführten Gruppen zu betreuen, melden Sie sich bitte bei, " + sChef + "<P>";
	sErgebnis	+= "    </TD>";
	sErgebnis	+= "</TR>";
	sErgebnis	+= "</TABLE>";
	if ( iAnzahl == 0 )
		return "";
	else
		return sErgebnis;
}

/*
********************************************************************
* Name: LadeUebungsleiterGesucht
* 
* Laedt die aktuellen Daten für die Suche nach Uebungsleitern
********************************************************************/
function LadeUebungsleiterGesucht()
{	var Eintrag;
	var iAnzahl = 0;

	HtmlPosition = document.getElementById( "UebungsleiterGesucht" );
	if ( HtmlPosition != null )
		{
		/* Einleitung für die Bedarfanzeige eintragen */
		sErgebnis	= "<DIV id='Normal' align='justify'>";
		sErgebnis	+= "<HR>";
		sErgebnis	+= "<P>";
		sErgebnis	+= "Wir brauchen Ihre Unterstützung. Wo es ganz besonders »brennt«, lesen Sie bitte hier.<P>";

		if ( XmlKontakte != null )
			{
			sAbteilung = GetGesuchtEintrag( XmlKontakte, "Übungsleiter bzw. Helfer in der Turnabteilung", "Turnen" );
			if ( sAbteilung != "" )
				{
				sErgebnis	+= sAbteilung
				iAnzahl += 1;
				}
			sAbteilung = GetGesuchtEintrag( XmlKontakte, "Übungsleiter bzw. Helfer in der Tischtennisabteilung", "Tischtennis" );
			if ( sAbteilung != "" )
				{
				sErgebnis	+= sAbteilung
				iAnzahl += 1;
				}
			sAbteilung = GetGesuchtEintrag( XmlKontakte, "Übungsleiter bzw. Helfer in der Wintersportabteilung", "Wintersport" );
			if ( sAbteilung != "" )
				{
				sErgebnis	+= sAbteilung
				iAnzahl += 1;
				}
			}

		/* Block abschließen */
		if ( iAnzahl == 0 )
			sErgebnis	= "";
		else
			sErgebnis	+= "</DIV>";

		/* News einfuegen */
		HtmlPosition = document.getElementById( "UebungsleiterGesucht" );
		}
	if ( HtmlPosition != null )
		HtmlPosition.innerHTML = sErgebnis;
}

/*
********************************************************************
* Name: MenueShow
*
* Das Submenue wird angezeigt
********************************************************************/
function MenueShow( AId )
{	var Element;

	if ( document.getElementById )
		Element	= document.getElementById( AId );
	else if ( document.all )
		Element	= all[ AId ];
	if ( Element != null )
		Element.style.display = "block";
}

/*
********************************************************************
* Name: MenueHide
* 
* Das Submenue wird ausgeblendet
********************************************************************/
function MenueHide( AId )
{	var Element;

	if ( document.getElementById )
		Element	= document.getElementById( AId );
	else if ( document.all )
		Element	= all[ AId ];
	if ( Element != null )
		Element.style.display = "none";		
}

/*
********************************************************************
* Name: TitelMoveIn
* 
* Dir Titel wird eingefahren
********************************************************************/
function TitelMoveIn()
{	var Element = document.getElementById( "Subtitel" );
		
	if ( Element != null )
		{
		if ( iPos < -40 )
			iPos	+= 4;
		else if ( iPos < -10 )
			iPos	+= 3;
		else if ( iPos < 10 )
			iPos	+= 2;
		else
			iPos	+= 1;
		Element.style.top	= iPos + "px";
		if ( iPos < 43 )
			window.setTimeout( "TitelMoveIn();", 10 );
		}
}

/*
********************************************************************
* Name: LadeGruppenDaten
* 
* Laedt Kontakte und Inormationen zu der angegebene Gruppen
********************************************************************/
function LadeGruppenDaten( AHtmlPos, AGruppe )
{	var Eintrag;
	var Funktion;
	var Zeit;
	
	HtmlPosition = document.getElementById( AHtmlPos );
	if ( HtmlPosition != null )
		{
		/* Einleitung für die Bedarfanzeige eintragen */
		sErgebnis	= "";

		if ( XmlKontakte != null )
			{
			for( iIndex = 0; iIndex < XmlKontakte.documentElement.childNodes.length; iIndex++ )
				{

				/* Daten des Eintrags ermitteln */
				Eintrag = XmlKontakte.documentElement.childNodes[ iIndex ];
				if ( Eintrag.attributes != null )
					{

					/* Den Daten der Gruppe suchen */
          //alert( AGruppe );
					for( iFunktion = 0; iFunktion < Eintrag.childNodes.length; iFunktion++ )
						{
						Funktion  = Eintrag.childNodes[ iFunktion ];
            sFunktion = GetAttributValue( Funktion, "Funktion" );
  					if
            ( Funktion.attributes != null &&
              GetAttributValue( Funktion, "Gruppe" ) == AGruppe &&
              ( sFunktion == "Übungsleiter" ||
                sFunktion == "Trainer"
              )
            )
							{
							sErgebnis	+= "<P><DIV id='NormalTitel'>" + GetAttributValue( Funktion, "Bezeichnung" ) + "</DIV><HR>";
							sErgebnis	+= "<DIV id='Normal' align='justify'>";
							sInfo			= GetAttributValue( Funktion, "Infos" );
							sAktuell	= GetAttributValue( Funktion, "Aktuelles" );
							if ( sInfo != "" || sAktuell != "" )
								{
								sErgebnis	+= "<TABLE border='0' cellpadding='2' cellspacing='2' width='540'>";
								if ( sInfo != "" )
									{
									sErgebnis	+= "  <TR>";
									sErgebnis	+= "    <TD id='NormalTabelle' valign='top'>" + sInfo + "</TD>";
									sErgebnis	+= "  </TR>";
									}
								if ( sAktuell != "" )
									{
									sErgebnis	+= "  <TR>";
									sErgebnis	+= "    <TD id='NormalTabelle' valign='top'>" + sAktuell + "</TD>";
									sErgebnis	+= "  </TR>";
									}
								sErgebnis	+= "</TABLE><P>";
							}

							sErgebnis	+= "<TABLE border='0' cellpadding='2' cellspacing='2' width='540'>";
              sAlter  = GetAttributValue( Funktion, "Alter" );
              if ( sAlter != "" )
  							sErgebnis	+= AddTabellenZeile( "Alter", sAlter );
							sTraingingsZeit = "";
							for( iZeit = 0; iZeit < Funktion.childNodes.length; iZeit++ )
								{
								Zeit = Funktion.childNodes[ iZeit ];
								if ( Zeit.attributes != null )
									{
									if ( iZeit != 0 )
										sTraingingsZeit	+= "<BR>";
									sTraingingsZeit	+= GetAttributValue( Zeit, "Tag" ) + " ";
									sTraingingsZeit	+= GetAttributValue( Zeit, "Von" ) + " - ";
									sTraingingsZeit	+= GetAttributValue( Zeit, "Bis" ) + " Uhr ";
									sTraingingsZeit	+= "( " + GetAttributValue( Zeit, "Ort" ) + " )";
									}
								}
							sErgebnis	+= AddTabellenZeile( "Trainingszeit", sTraingingsZeit );
							sErgebnis	+= AddTabellenZeile
								( sFunktion, 
									IfThenText( GetAttributValue( Eintrag, "Vorname" ) + " " + GetAttributValue( Eintrag, "Nachname" ), "", "<BR>" ) +
									IfThenText( GetAttributValue( Eintrag, "Strasse" ), "", "<BR>" ) +
									IfThenText( GetAttributValue( Eintrag, "PLZ" ) + " " + GetAttributValue( Eintrag, "Wohnort" ), "", "<BR>" ) +
									"<BR>" +
									IfThenText( GetAttributValue( Eintrag, "Telefon" ), "Tel.: ", "<BR>" ) +
									IfThenEmail( GetAttributValue( Eintrag, "EMail" ), "Email: ", "<BR>" )
								);
							sErgebnis	+= "</TABLE>";
							sErgebnis	+= "</DIV>"
							}
						}
					}
				}
			}

		/* Eintrag einfuegen */
		HtmlPosition.innerHTML = sErgebnis;
		}	
}

/*
********************************************************************
* Name: LadeTermine
*
* Laedt die Teminübersicht
********************************************************************/
function 	LadeTermine( )
{	var Termin;
	var sErgebnis	= "<DIV id='Normal' align='justify'>";
	var Jetzt = new Date();
	var EintragZeit = new Date( 0 );
	var iAnzahl = 0;

	HtmlPosition = document.getElementById( "Termine" );
	if ( HtmlPosition != null )
		{

		/* Zeit aus den Datumsvariablen eliminieren */	
		EintragZeit.setHours( 23 );
		EintragZeit.setMinutes( 59 );
		Jetzt.setHours( 0 );
		Jetzt.setMinutes( 0 );

		/* Termine eintragen */
		for( iTermin = 0; iTermin < XmlTermine.documentElement.childNodes.length; iTermin++ )
			{

			/* Daten des Eintrags ermitteln */
			Termin = XmlTermine.documentElement.childNodes[ iTermin ];
			if ( Termin.attributes != null )
				{
				sDatum			= GetAttributValue( Termin, "Datum" );
				sAbteilung	= GetAttributValue( Termin, "Abteilung" );
				sCaption		= GetAttributValue( Termin, "Caption" );
				sDetails		= GetAttributValue( Termin, "Details" );

				/* Datum des Eintrags ermitteln */
				EintragZeit.setDate( parseInt( sDatum.substr( 0, 2 ) ) );
				EintragZeit.setMonth( parseInt( sDatum.substr( 3, 2 ) ) - 1 );
				EintragZeit.setYear( parseInt( sDatum.substr( 6, 4 ) ) );

				/* Nur Termine, die neuer sind wie gestern werden angezeigt */
				if ( EintragZeit >= Jetzt )
					{

					if ( iAnzahl == 0 )
						sErgebnis	+= "<TABLE border='0' cellpadding='2' cellspacing='2' width='540'>";

          if ( iAnzahl % 2 == 0 )
  					sErgebnis	+= "  <TR bgcolor='#fcfcd8'>";
          else
	  				sErgebnis	+= "  <TR>";
					sErgebnis	+= "    <TD id='NormalTabelle' align='left' valign='top' width='80'>" + sDatum + "</TD>";
					sErgebnis	+= "    <TD id='NormalTabelle' align='left' valign='top'  width='460'><B>" + sCaption + "</B>";
          if ( sDetails != "" )
  					sErgebnis	+= "    <BR>" + sDetails;
					sErgebnis	+= "    </TD>";
					sErgebnis	+= "  </TR>";
					iAnzahl	+= 1;
					}
				}
			}
		sErgebnis	+= "</TABLE>";
		if ( iAnzahl == 0 )
			sErgebnis	+= "----------";
		sErgebnis	+= "</DIV>";
	
		/* Terimne einfuegen */
		HtmlPosition.innerHTML = sErgebnis;
		}
}

/*
********************************************************************
* Name: LadeNews
*
* Laedt die Newsübersicht
********************************************************************/
function 	LadeNews( )
{	var Eintrag;
	var Datei;
	var sErgebnis	= "<DIV id='InfoLeisteText'>";
	var Jetzt = new Date();
	var EintragZeit = new Date( 0 );
	var iAnzahl = 0;
	
	HtmlPosition = document.getElementById( "News" );
	if ( HtmlPosition != null )
		{

		/* News eintragen */
		for( iIndex = 0; iIndex < XmlNews.documentElement.childNodes.length; iIndex++ )
			{

			/* Daten des Eintrags ermitteln */
			Eintrag = XmlNews.documentElement.childNodes[ iIndex ];
			if ( Eintrag.attributes != null )
				{
				sDatum				= GetAttributValue( Eintrag, "Datum" );
				sAbteilung		= GetAttributValue( Eintrag, "Abteilung" );
				sTicker				= GetAttributValue( Eintrag, "Ticker" );
				sAusfuehrlich	= GetAttributValue( Eintrag, "Ausfuehrlich" );

				/* Datum des Eintrags ermitteln */
				EintragZeit.setDate( parseInt( sDatum.substr( 0, 2 ) ) );
				EintragZeit.setMonth( parseInt( sDatum.substr( 3, 2 ) ) - 1 );
				EintragZeit.setYear( parseInt( sDatum.substr( 6, 4 ) ) );
				EintragZeit	= AddTage( EintragZeit, 180 );

				/* Nur News, die neuer einem Monat sind werden angezeigt */
				if ( EintragZeit > Jetzt )
					{
					if ( iAnzahl == 0 )
						sErgebnis	+= "<TABLE border='0' cellpadding='2' cellspacing='2' width='540'>";

						sErgebnis	+= "  <TR>";
						sErgebnis	+= "    <TD id='NormalTabelle' align='left' valign='top' width='80'>" + sDatum + "</TD>";
						sErgebnis	+= "    <TD id='NormalTabelle' align='left' valign='top' width='460'><B>" + sTicker + "</B></TD>";
						sErgebnis	+= "  </TR>";
						
						if ( sAusfuehrlich != "" )
							{
							sErgebnis	+= "  <TR>";
							sErgebnis	+= "    <TD></TD>";
							sErgebnis	+= "    <TD id='NormalTabelle' align='left' valign='top' width='460'>" + sAusfuehrlich + "</TD>";
							sErgebnis	+= "  </TR>";
							}

						/* Die Zusatzdaten anzeigen */
						for( iDatei = 0; iDatei < Eintrag.childNodes.length; iDatei++ )
							{
							Datei = Eintrag.childNodes[ iDatei ];
							if ( Datei.attributes != null )
								{
								sTyp				= GetAttributValue( Datei, "Typ" );
								sDateiname	= GetAttributValue( Datei, "Dateiname" );
								sText				= GetAttributValue( Datei, "Text" );
								iBreite     = GetAttributValue( Datei, "Breite" );
								if ( iBreite > 440 )
									iBreite   = 440;
								
								/* Ein Bild soll angezeigt werden */
								if ( sTyp == "Bild" )
									{
									sErgebnis	+= "  <TR>";
									sErgebnis	+= "    <TD></TD>";
									sErgebnis	+= "    <TD id='NormalTabelle' align='center' valign='top' width='460'>";
									sErgebnis	+= "      <a href='./News/" + sDateiname + "'>";
									sErgebnis	+= "        <IMG src='./News/" + sDateiname + "' width='" + iBreite + "' border='0'>";
									if ( sText != "" )
										sErgebnis	+= "<BR>" + sText;
									sErgebnis	+= "      </a>";
									sErgebnis	+= "    </TD>";
									sErgebnis	+= "  </TR>";
									}

								/* Ein Dateianhang soll angelegt werden */
								else if ( sTyp == "Datei" )
									{
									sErgebnis	+= "  <TR>";
									sErgebnis	+= "    <TD></TD>";
									sErgebnis	+= "    <TD id='NormalTabelle' align='left' valign='top' width='460'><a href='./News/" + sDateiname +"'>" + sText + "</a></TD>";
									sErgebnis	+= "  </TR>";
									}
								}
							}

						iAnzahl	+= 1;
					}
				}
			}
		sErgebnis	+= "</TABLE>";
		if ( iAnzahl == 0 )
			sErgebnis	+= "----------";
		sErgebnis	+= "</DIV>";

		/* News einfuegen */
		HtmlPosition.innerHTML = sErgebnis;
		}
}

/*
********************************************************************
* Name: GetChefAdresse
*
* Ermittelt die Adresse des Chefs der Abteilung
********************************************************************/
function GetChefAdresse( AKennung, AAbteilung )
{
	var Eintrag;
	var Funktion;
	var sChef = "";

	for( iIndex = 0; iIndex < XmlKontakte.documentElement.childNodes.length; iIndex++ )
		{
    Eintrag = XmlKontakte.documentElement.childNodes[ iIndex ];
    for( iFunktion = 0; iFunktion < Eintrag.childNodes.length; iFunktion++ )
      {
      Funktion = Eintrag.childNodes[ iFunktion ];
      if ( GetAttributValue( Funktion, "Abteilung" ) == AAbteilung && GetAttributValue( Funktion, "Funktion" ) == "1. Vorstand" )
        {
          sTelefon  = GetAttributValue( Eintrag, "Telefon" );
          sEMail    = GetAttributValue( Eintrag, "EMail" );
          sChef = GetAttributValue( Eintrag, "Vorname" ) + " ";
          sChef += GetAttributValue( Eintrag, "Nachname" ) + " ";
          if ( sTelefon != "" )
            sChef += "Tel: " + sTelefon + " ";
          if ( sEMail != "" )
            sChef += "EMail: <a href='mailto:" + sEMail + "'>" + sEMail + "</a>";
        }
      }
    }

	HtmlPosition = document.getElementById( AKennung );
  iIndex = 0;
  while ( HtmlPosition != null )
    {
    iIndex += 1;
		HtmlPosition.innerHTML = sChef;
  	HtmlPosition = document.getElementById( AKennung + '_' + iIndex  );
    }
}


/*
********************************************************************
* Name: GetKontaktDaten
*
* Laedt Kontaktdaten einer Funktion einer Abteilung
********************************************************************/
function GetKontaktDaten( AAbteilung, AFunktion )
{	var Eintrag;
	var Funktion;
	var sErgebnis	= "";

	if ( XmlKontakte != null )
		{
    for( iIndex = 0; iIndex < XmlKontakte.documentElement.childNodes.length; iIndex++ )
      {

			/* Daten des Eintrags ermitteln */
			Eintrag = XmlKontakte.documentElement.childNodes[ iIndex ];
			if ( Eintrag.attributes != null )
				{

				/* Den Daten der Gruppe suchen */
				for( iFunktion = 0; iFunktion < Eintrag.childNodes.length; iFunktion++ )
					{
					Funktion    = Eintrag.childNodes[ iFunktion ];
          sAbteilung  = GetAttributValue( Funktion, "Abteilung" );
          sFunktion   = GetAttributValue( Funktion, "Funktion" );
 					if ( sAbteilung == AAbteilung && sFunktion == AFunktion )
						{
						sErgebnis	+= "<TR bgcolor='" + GWechselFarbe + "'>";
            sErgebnis	+= "  <TD id='NormalTabelle' valign='top' width='130'>";
            sErgebnis	+= sFunktion;
            sErgebnis	+= "  </TD>";
            sErgebnis	+= "  <TD id='NormalTabelle' valign='top' width='150'>";
            sErgebnis	+= GetAttributValue( Eintrag, "Vorname" ) + " " + GetAttributValue( Eintrag, "Nachname" );
            sErgebnis	+= "  </TD>";
            sErgebnis	+= "  <TD id='NormalTabelle' valign='top' width='260'>";
            sErgebnis	+= IfThenText( GetAttributValue( Eintrag, "Strasse" ), "", "<BR>" );
            sErgebnis	+= IfThenText( GetAttributValue( Eintrag, "PLZ" ) + " " + GetAttributValue( Eintrag, "Wohnort" ), "", "<BR>" );
            sErgebnis	+= "<BR>";
            sErgebnis	+= IfThenText( GetAttributValue( Eintrag, "Telefon" ), "Tel.: ", "<BR>" );
            sErgebnis	+= IfThenEmail( GetAttributValue( Eintrag, "EMail" ), "Email: ", "<BR>" );
            sErgebnis	+= "  </TD>";
						sErgebnis	+= "</TR>";
            if ( GWechselFarbe == "#FFFFFF" )
              GWechselFarbe = "#fcfcd8";
            else
              GWechselFarbe = "#FFFFFF";
						}
					}
				}
			}
		}
  return sErgebnis;
}

/*
********************************************************************
* Name: LadeKontakte
*
* Laedt Kontakte einer Abteilung
********************************************************************/
function LadeKontakte( AAbteilung )
{	var sErgebnis	= "";

	HtmlPosition = document.getElementById( "Kontakte" + AAbteilung );
 	if ( HtmlPosition != null )
 		{
    GWechselFarbe = "#FFFFFF";
    sErgebnis	+= "<TABLE border='0' cellpadding='2' cellspacing='2' width='540'>";
    sErgebnis	+= GetKontaktDaten( AAbteilung, "1. Vorstand" );
    sErgebnis	+= GetKontaktDaten( AAbteilung, "2. Vorstand" );
    sErgebnis	+= GetKontaktDaten( AAbteilung, "Kassier" );
    sErgebnis	+= GetKontaktDaten( AAbteilung, "Schriftführer" );
    sErgebnis	+= GetKontaktDaten( AAbteilung, "Ehrenvorstand" );
    sErgebnis	+= GetKontaktDaten( AAbteilung, "Mitgliederverwaltung" );
    sErgebnis	+= GetKontaktDaten( AAbteilung, "Beisitzerin" );
    sErgebnis	+= GetKontaktDaten( AAbteilung, "Beisitzer" );
    sErgebnis	+= GetKontaktDaten( AAbteilung, "Jugendleiter" );
    sErgebnis	+= GetKontaktDaten( AAbteilung, "Sportwart" );
    sErgebnis	+= GetKontaktDaten( AAbteilung, "Ballspielwart" );
    sErgebnis	+= GetKontaktDaten( AAbteilung, "Internet" );
    sErgebnis	+= GetKontaktDaten( AAbteilung, "Event-Manager" );
    sErgebnis	+= "</TABLE>";

		/* Eintrag einfuegen */
		HtmlPosition.innerHTML = sErgebnis;
		}
}


