// === Variablen (global) ===
var Monat = new Array("Januar", "Februar", "M&auml;rz", "April", "Mai", "Juni",
                      "Juli", "August", "September", "Oktober", "November", "Dezember");
var WoTag = new Array("Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag");
var WoTagKurz = new Array("So","Mo","Di","Mi","Do","Fr","Sa");
var WoTagLang = new Array("Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag");
var IloStart = new Array(  0,   0,   0,   17,  16,   0,  0);
var IloEnde  = new Array(  0,   0,   0,   20,  19,   0,  0);
var jetzt = new Date();
var jetztTag = jetzt.getDate();
var jetztMonat = jetzt.getMonth() + 1;
var jetztJahr = jetzt.getFullYear();
var jetztGerastertTag = new Date(jetztJahr,jetztMonat-1,jetztTag);
var iloDate;
var iloMode;
var iloBr;
var fkMonat;			// 1-12: Januar bis Dezember
var kHomePage=-1;		// Homepage
var kExtHomePage=0;		// Erweiterung HP
var kVsNewsletter=98;	// Vorschau Newsletter
var kVsADFCsingle=99;	// Vorschau ADFC ohne regelmaessige Termine
var kVsADFCall=100;		// Vorschau ADFC
var kVsAll=101;			// Vorschau alle
var kVsOutlook=102;		// Vorschau Outlook
var kVsExcelAll=103;	// Vorschau Excel alle
var kVsExcelADFC=104;	// Vorschau Excel ADFC
var kRegister=199;		// Anmeldung

var fkJahr;
var anzFkMonat;
var tlNam;
var tlTel;
var tlVerw;
var tlAnm;
var gIndAnm;
var merkDatStr;

function set_iloMode(mode)
{
  iloMode = mode;
  iloBr = 0;
  iloDate = new Date(jetztJahr,jetztMonat-1,jetztTag);
} // set_iloMode


function set_fkMonat(pMonat,pJahr)
{
  var schl;
  if ( pJahr == null )
    fkJahr = jetztJahr;
  else
    fkJahr = pJahr;
  fkMonat = pMonat;
  gIndAnm = 0;
  anzFkMonat = 4;
  if ( fkMonat == kRegister && fkJahr == 1)         // Anmeldung 1. Teil
  {
	gIndAnm = window.name;
	anzFkMonat = 1;
  }
  if ( fkMonat == kRegister && fkJahr == 2 )		// Anmeldung 2. Teil
  {
	anzFkMonat = 0;
	document.mailform.subject.value = "Anmeldung ADFC-Tour " + merkDatStr;
  }
  if ( fkMonat == kVsOutlook )                      // Vorschau Outlook
  {
    document.writeln("\"Betreff\",\"Beginnt am\",\"Beginnt um\",\"Endet am\",\"Endet um\",\"Ganztägiges Ereignis\",\
	 \"Erinnerung Ein/Aus\",\"Erinnerung am\",\"Erinnerung um\",\"Beschreibung\",\"Kategorien\",\"Ort\",\"Priorität\",\
	 \"Privat\",\"Vertraulichkeit\"<BR>");
  }
  if ( fkMonat == kVsExcelADFC ||
       fkMonat == kVsExcelAll )                     // Vorschau Excel
  {
    document.writeln("Titel;Art;Termin;Tourenende;Beschreibung;Tourenlänge;Fahrrad;Schwierigkeit;Einkehr;Beginn;Ort;Zustiegsmöglichkeit;ADFC-Leistungen;Teilnahmebeitrag;Anmeldung;Tourenleiter;Veranstalter<BR>");
  }
} // set_fkMonat


// Feierabendtouren:
// fkt_FB    FAT Bruchsal
// fkt_FH    hügelige FAT
// fkt_FN    normale FAT
// fkt_FS    Stammtisch on tour
// Parameter 1: Jahr, 2: Monat, 3:Tag, 4: Kennung Tourenleiter, 5: Änderung (kann entfallen)
// 
function fkT_FB(pJahr,pMonat,pTag,pTL,pAend)
{													// Feierabendtour Bruchsal
  fkT(pJahr,pMonat,pTag,0,null,
   "ADFC-Feierabendtour Bruchsal",null,null,
   "18:00 Uhr, Friedrichsplatz in Bruchsal",
   -1,pTL,0,1,35,null,pAend);
} // fkT_FB

function fkT_FH(pJahr,pMonat,pTag,pTL,pAend)
{													// Feierabendtour huegelig
  fkT(pJahr,pMonat,pTag,0,null,
   "ADFC-Feierabendtour","nicht nur in der Ebene, 30 bis 50 km",null,
   "=A18:00",
   -1,pTL,0,3,35,null,pAend);
} // fkT_FH

function fkT_FN(pJahr,pMonat,pTag,pTL,pAend)
{													// Feierabendtour normal
  fkT(pJahr,pMonat,pTag,0,null,
   "ADFC-Feierabendtour",null,null,"=A18:00",
   -1,pTL,0,2,35,null,pAend);
} // fkT_FN

function fkT_FS(pJahr,pMonat,pTag,pTL,pAend)
{													// Feierabendtour Stammtisch on tour
  fkT(pJahr,pMonat,pTag,0,null,"ADFC-Stammtisch on tour",
   null,null,"=A18:00",
   -1,pTL,0,1,35,null,pAend);
} // fkT_FS


// GPS-Kurse:
// fkT_GPS    zweitägiger Kurs
// fkT_GPS1   eintägiger Kurs
// Parameter 1: Jahr, 2: Monat, 3:Tag, 4: Änderung (kann entfallen)
function fkT_GPS(pJahr,pMonat,pTag,pAend)
{													// GPS-Seminar zweitägig
  fkT(pJahr,pMonat,pTag,2,null,"GPS-Kurs (Garmin)",
   "2-t&auml;gig, jeweils 9:30 - 12:00 Uhr theoretisches Wissen\
   und 13:30 - 16:00 Uhr Outdoor-Übungen.<BR>\
   Treffpunkt: ADFC-Fahrradb&uuml;ro, Kronenstr. 9, 76133 Karlsruhe.<BR>\
   Infos und Anmeldung unter Tel.: 06373 / 508489 oder\
   <A HREF=\"http://www.media-tours.de\" TARGET=\"_blank\">www.media-tours.de</A><BR>\
   Veranstalter: MEDIA-TOURS in Kooperation mit dem ADFC Karlsruhe<BR>\
   Geb&uuml;hr: 119 &euro; / 105 &euro; (ADFC-Mitglieder)",
   null,null,-1,null,0,0,35,null,pAend);

} // fkT_GPS

function fkT_GPS1(pJahr,pMonat,pTag,pAend)
{													// GPS-Seminar eintägig
  fkT(pJahr,pMonat,pTag,1,null,"GPS-Kurs (Garmin)",
   "1-t&auml;gig, 9:30 - 13:00 Uhr theoretisches Wissen\
   und 14:00 - 17:30 Uhr Outdoor-Übungen.<BR>\
   Treffpunkt: ADFC-Fahrradb&uuml;ro, Kronenstr. 9, 76133 Karlsruhe.<BR>\
   Infos und Anmeldung unter Tel.: 06373 / 508489 oder\
   <A HREF=\"http://www.media-tours.de\" TARGET=\"_blank\">www.media-tours.de</A><BR>\
   Veranstalter: MEDIA-TOURS in Kooperation mit dem ADFC Karlsruhe<BR>\
   Geb&uuml;hr: 109 &euro; / 99 &euro; (ADFC-Mitglieder)",
   null,null,-1,null,0,0,35,null,pAend);

} // fkT_GPS1

function fkT_GPSA1(pJahr,pMonat,pTag,pAend)
{													// GPS-Seminar Android eintägig
  fkT(pJahr,pMonat,pTag,1,null,"GPS-Kurs (Android Smartphones)",
   "1-t&auml;gig, 9:30 - 13:00 Uhr theoretisches Wissen\
   und 14:00 - 17:30 Uhr Outdoor-Übungen.<BR>\
   Treffpunkt: ADFC-Fahrradb&uuml;ro, Kronenstr. 9, 76133 Karlsruhe.<BR>\
   Infos und Anmeldung unter Tel.: 06373 / 508489 oder\
   <A HREF=\"http://www.media-tours.de\" TARGET=\"_blank\">www.media-tours.de</A><BR>\
   Veranstalter: MEDIA-TOURS in Kooperation mit dem ADFC Karlsruhe<BR>\
   Geb&uuml;hr: 109 &euro; / 99 &euro; (ADFC-Mitglieder)",
   null,null,-1,null,0,0,35,null,pAend);

} // fkT_GPSA1


// Stammtisch:
// fkT_ST
// Parameter 1: Jahr, 2: Monat, 3:Tag, 4: Ort (Vorbesetzung "Il Caminetto"), 5: Änderung (kann entfallen)
function fkT_ST(pJahr,pMonat,pTag,pOrt,pAend)
{													// Stammtisch
  if ( pOrt == null )
    pOrt = "Il Caminetto, Kronenstr. 5, 76133 Karlsruhe";
  fkT(pJahr,pMonat,pTag,0,null,"ADFC-Stammtisch",
   "19:00 Uhr " + pOrt,
   null,null,-1,null,0,0,35,null,pAend);
} // fkT_ST

// Tandemtour:
// fkT_TT
// Parameter 1: Jahr, 2: Monat, 3:Tag, 4: Beschreibung, 5: Tourenleiter (Vorb.:"CHWA"), 6: Änderung (kann entfallen)
function fkT_TT(pJahr,pMonat,pTag,pText,pTL,pAend)
{													// Tandemtour
  if ( pTL == null )
    pTL = "CHWA";
  fkT(pJahr,pMonat,pTag,0,null,"ADFC-Tandemtour",
   pText,"Selbstverständlich d&uuml;rfen auch Nicht-Tandems mitradeln",null,
   2,pTL,-3,1,35,null,pAend);
} // fkT_TT

// Termin kompakt:
// fkT_KOMP
// Parameter 1: Jahr, 2: Monat, 3:Tag, 4: Dauer, 5: Überschrift, 6: Beschreibung
function fkT_KOMP(pJahr,pMonat,pTag,pDauer,pTxUe,pTxB1)
{													// Termin in kompakter Form
  fkT(pJahr,pMonat,pTag,pDauer,null,pTxUe,pTxB1,null,null,-1,null,0,0,0,null,null);
} // fkT_KOMP

function fkT_IKOMP(pJahr,pMonat,pTag,pDauer,pTxUe,pTxB1,pLink)
{													// Termin in kompakter Form mit Info
  fkT(pJahr,pMonat,pTag,pDauer,null,pTxUe,pTxB1,null,null,-1,null,0,0,0,pLink,null);
} // fkT_KOMP

// Allgemeiner Termin
function fkT(pJahr,pMonat,pTag,pDauer,pDatStr,pTxUe,pTxB1,pTxB2,pTxTp,pAnmeld,pTL,pGebuehr,pSchw,pHP,pLink,pTxAend)
{													// ein Termin
//  1  pJahr		Jahr ( < 1900 -> +2000 )
//  2  pMonat		Monat
//  3  pTag			Tag
//  4  pDauer		Dauer: <=1 : 1 Tag - >1: Anzahl Tage
//  5  pDatStr		String fuer Datum:
//					= null: Standard -> tt.mm.jjjj wt (Dauer 1 Tag) / ta.ma. - te.me.jjjj wa - we (Dauer mehrere Tage)
//  6  pTxUe		Text der Ueberschrift (darf nicht null sein)
//  7  pTxB1		Beschreibungstext 1 (auch null)
//  8  pTxB2		Beschreibungstext 2 (auch null, wird auf der Homepage weggelassen) [ <BR>... ]
//  9  pTxTp		Text Start - Uhrzeit/Ort (Format "[x]x:xx Uhr, Ort") [ Treffpunkt: ... ] (auch null)
//                  Sonderformat "=A[x]x:xx" entspricht "[x]x:xx Uhr, ADFC-Fahrradbuero..."
// 10  pAnmeld		Termin fuer Anmeldung: -1: ohne Anmeldung / >=0: Zahl der Tage vorher [ Anmeldung bis tt.mm.jjjj ]
//                  <-99: Zehner+Einer = Zahl der Tage vorher( >=0), Hunderter (1 bis ...): Index für Online-Anmeldung
// 11  pTL			Tourenleiter - Codierung gemaess function s_tl / String fuer Tourenleiter (auch null)
// 12  pGebuehr		Gebuehr (nicht auf HP): 0: - / >0: [ Gebuehr: ...euro ] / <0: [ Gebuehr: ...euro (ADFC-Mitglieder frei) ]
// 13  pSchw		Schwierigkeitsgrad (nicht auf HP): =0: - / =1...4: [<Picto>] / =101...104: [<Picto>+<Bahn>]
// 14  pHP			Kennung Homepage: =0: nicht auf HP / >0: Anzahl Tage vorher
// 15  pLink		Link auf zusaetzliche Information : [ Info ] (auch null)
// 16  pTxAend		Aenderungsinformation (auch null): Wird vor dem Termin in rot ausgegeben [ === ... === ]

var pDatum;
var pDatAnm;
var difft;
var needBr;
var anzBr;
var anmStr;
var pAhilf;
var pAindex;

if ( pJahr < 1900 )									// Jahr ohne Jahrhundert
  pJahr += 2000;
pDatum = new Date(pJahr,pMonat-1,pTag);
difft = difftag(pDatum);
if ( pAnmeld < -99 )                                // Anmeldung online
{
  pAhilf = pAnmeld * (-1);                          // positive Zahl
  pAnmeld = pAhilf % 100;                           // Tage: Modulo 100
  pAindex = (pAhilf - pAnmeld) / 100;               // Index: 100er
  if ( difft > pHP || difft < 0 )                   // noch zu weit weg oder schon vorbei
    pAindex = 0;                                    // also keine Online-Anmeldung
}
else
  pAindex = 0;										// keine Anmeldung online

switch ( fkMonat ) {

case kHomePage :									// Homepage
  pSchw = 0;										// Schwierigkeit nicht auf HP
  pTxB2 = null;										// Beschreibung 2 nicht auf HP
  pGebuehr = 0;										// Gebuehr nicht auf HP
													// durchfallen !
case kExtHomePage :									// Erweiterung Homepage
  if ( pHP <= 0 )									// nicht auf HP
    return;
  if ( difft < 0 )									// zu alt
    return;
  if ( difft > pHP )								// noch zu weit weg
    return;
  anzFkMonat--;
  if ( fkMonat == kHomePage && anzFkMonat < 0 )		// Homepage und schon zu viele
  {
	if ( anzFkMonat == -1 )
      document.writeln("[<A HREF=adfc-vor-ort/karlsruhe/radtourentermine/aktuelle-termine/>mehr</A>]");
    return;
  }
  break;

case kVsNewsletter :								// Vorschau Newsletter
  if ( difft < 0 )									// zu alt
    return;
  if ( pHP == 0 )									// nur ADFC
    return;
  pAindex = 0;										// keine Online-Anmeldung
  break;

case kVsADFCsingle :								// Vorschau ADFC ohne regelmaessige Termine
  if ( difft < 0 )									// zu alt
    return;
  if ( pHP == 0 )									// nur ADFC
    return;
  if ( pTxUe.substring(0,10) == "ADFC-Feier" || 	// Vorschau ohne regelmaessige Termine
       pTxUe.substring(0,10) == "ADFC-Stamm" ||
	   pTxUe.substring(0,8) == "GPS-Kurs" )
    return;
  break;

case kVsADFCall :									// Vorschau ADFC
  if ( difft < 0 )									// zu alt
    return;
  if ( pHP == 0 )									// nur ADFC
    return;
  break;

case kVsAll :										// Vorschau alle
  if ( difft < 0 )									// zu alt
    return;
  break;

case kVsOutlook :									// Vorschau Outlook
  if ( difft < 0 )									// zu alt
    return;
  break;

case kVsExcelAll :									// Vorschau Excel alle
  if ( fkJahr != pJahr )							// anderes Jahr
    return;
  break;

case kVsExcelADFC :									// Vorschau Excel ADFC
  if ( fkJahr != pJahr )							// anderes Jahr
    return;
  if ( pHP == 0 )									// nur ADFC
    return;
  break;

case kRegister :									// Anmeldung
  if ( pAindex != gIndAnm )							// Anmeldung nicht fuer diesen Termin
    return;
  pAindex = 0;
  anzFkMonat--;
  if ( anzFkMonat < 0 )								// schon ausgegeben
    return;
  break;

default:											// Monat
  if ( fkJahr != pJahr )							// anderes Jahr
    return;
  if ( fkMonat != pMonat )							// anderer Monat
    return;
  break;

}
s_tl_vorb(pTL);										// Tourenleiter-Daten ermitteln

if ( fkMonat == kVsOutlook )                        // Vorschau Outlook
{
  var isTag;
  var startOrt;
  var startZeit;
  var startDatum;

  startDatum = pTag + "." + pMonat + "." + pJahr;
  startZeit = "00:00";
  startOrt = "";
  isTag = "Ein";
  if ( pTxTp != null )
  {
    if ( pTxTp.charAt(0) == "=" )					// Sonderfunktion
    {
      if ( pTxTp.charAt(1) == "A" )                 // ADFC-Treffpunkt
	  {
	    startZeit = pTxTp.substring(2,pTxTp.length);
	    startOrt = "ADFC-Fahrradb&uuml;ro";
	    isTag = "Aus";
	  }
    }
  }
  if ( pTxB1 == null )
    pTxB1 = "";
  if ( pTxB2 == null )
    pTxB2 = "";
  else
    pTxB1 = pTxB1 + ". ";
  if ( pAnmeld < 0 )
    anmStr = ". ";
  else
  {
    pDatAnm = new Date(pDatum.getTime() - pAnmeld * 86400000);
    anmStr = ". Anmeldung bis " + pDatAnm.getDate() + "." + (pDatAnm.getMonth() + 1) + "." + pDatAnm.getFullYear();
    if ( pTxTp != null && pAnmeld < 10 )
      anmStr = anmStr + " erbeten. ";
  }
  document.writeln("\"" + pTxUe + "\",\"" + startDatum + "\",\"" + startZeit + "\",\"" + startDatum + "\",\"20:00\",\"" + isTag +
   "\",\"Aus\",\"" + startDatum + "\",\"00:00\",\"" + pTxB1 + pTxB2 + anmStr);
  s_tl(pTL,0); 
  document.writeln("\",\"HJ\",\"" + startOrt + "\",\"Normal\",\"Ein\",\"Privat\"<BR>");
  return;
} // Ende Vorschau Outlook

if ( fkMonat == kVsExcelADFC || fkMonat == kVsExcelAll )
{													// Vorschau Excel
  var hArt;
  var hpTag;
  var hpMonat;
  var hDatum;
  var hBesch1;
  var hBesch2;
  var hBeginn;
  var hOrt;
  var hIndex;

                          							// A: Titel
  document.writeln(pTxUe);
  													// B: Art
  hArt = "andere Veranstaltung";
  if ( pHP > 0 )									// ADFC-Veranstaltung
  {
    if ( pTxUe.substring(0,10) == "ADFC-Feier" ||	// Feierabendtouren
	     pTxUe == "ADFC-Stammtisch on tour" )
	  hArt = "Feierabendtour";
	else
	{
	  if ( pTxUe.substring(0,8) == "ADFC-Rad" )		// Radtouren
	  {
		if ( pDauer >= 2 )							// Dauer
		  hArt = "Mehrtagestour";
		else
		  hArt = "Eintaegige Tour";
	  }
    }
  }
  document.writeln(";" + hArt);
  													// C: Termin
  if ( pTag >= 10 )
    hpTag = pTag;
  else
    hpTag = "0" + pTag;
  if ( pMonat >= 10 )
    hpMonat = pMonat;
  else
    hpMonat = "0" + pMonat;
  document.writeln(";" + hpTag + "." + hpMonat + "." + pJahr);
  													// D: Termin Ende Veranstaltung
  if ( pDauer >= 2 )
  {
    hDatum = new Date(pDatum.getTime() + (pDauer - 1) * 86400000);
    document.writeln(";" + hDatum.getDate() + "." + (hDatum.getMonth()+1) + "." + pJahr );
  }
  else
    document.writeln(";");
													// E: Beschreibung
  if ( pTxB1 == null )
    hBesch1 = "";
  else
    hBesch1 = pTxB1 + ". ";
  if ( pTxB2 != null )
    hBesch1 = hBesch1 + pTxB2 + ".";
  hBesch2 = hBesch1.replace(/\<BR\>/g,". ");
  hBesch1 = hBesch2.replace(/\.\./g,".");
  document.writeln(";" + hBesch1);
  													// F: Tourenlaenge
  document.writeln(";");
													// G: Fahrrad
  document.writeln(";");
  													// H: Schwierigkeit
  switch ( pSchw % 100 )
  {													// Schwierigkeitsgrad
  case 1:
    document.writeln(";Leicht");
    break;
  case 2:
    document.writeln(";Mittel");
    break;
  case 3:
    document.writeln(";Schwer");
	anzBr = 3;
    break;
  case 4:
    document.writeln(";Sportlich");
    break;
  default:
    document.writeln(";");
    break;
  }
  													// I: Einkehr
  document.writeln(";");
													// Fuer Beginn und Ort
  hBeginn = null;
  hOrt = "";
  if ( pTxTp != null )
  {
    if ( pTxTp.charAt(0) == "=" )					// Sonderfunktion
    {
      if ( pTxTp.charAt(1) == "A" )                 // ADFC-Treffpunkt
	  {
	    hBeginn = pTxTp.substring(2,pTxTp.length) + " Uhr";
		if ( fkMonat == kVsExcelADFC )
	      hOrt = "ADFC-Fahrradb&uuml;ro, Kronenstr. 9, 76133 Karlsruhe";
		else
	      hOrt = "ADFC-Fahrradb&uuml;ro";
	  }
    }
	else
	{
	  hIndex = pTxTp.search(/Uhr,/); 
	  if ( hIndex >= 2 )
	  {
		hBeginn = pTxTp.substring(0,hIndex+3);
		hOrt = pTxTp.substring(hIndex+5,pTxTp.length);
	  }
	}
  }
  													// J: Beginn
  if ( hBeginn == null )
    document.writeln(";");
  else
  {
    if ( fkMonat == kVsExcelADFC )
      document.writeln(";" + hBeginn);
    else
      document.writeln(";" + hBeginn + ",");
  }													// K: Ort
  document.writeln(";" + hOrt);
  													// L: Zustiegsmoeglichkeit
  document.writeln(";");
  													// M: ADFC-Leistungen
  document.writeln(";");
  													// N: Teilnahmebeitrag
  if ( pGebuehr != 0 )
  {													// Gebuehr
    if ( pGebuehr > 0 )
      document.writeln(";" + pGebuehr + " &euro;");
    else
    {
      if ( pGebuehr == -2 )
        pGebuehr = -3;
      document.writeln(";Nichtmitglieder " + -pGebuehr + " &euro;");
    }
  }
  else
    document.writeln(";");
  													// O: Anmeldung
  if ( pAnmeld < 0 )
    document.writeln(";");
  else
  {
    pDatAnm = new Date(pDatum.getTime() - pAnmeld * 86400000);
    if ( fkMonat == kVsExcelADFC )
      document.writeln(";" + pDatAnm.getDate() + "." + (pDatAnm.getMonth() + 1) + "." + pDatAnm.getFullYear());
	else
	{
      document.write(";Anmeldung bis ");
      document.write(pDatAnm.getDate() + "." + (pDatAnm.getMonth() + 1) + "." + pDatAnm.getFullYear());
      if ( pTxTp != null && pAnmeld < 10 )
        document.write(" erbeten");
      document.writeln(".");
	}
  }
  													// P: Tourenleiter
  document.write(";");
  s_tl(pTL,0);
  													// Q: Veranstalter
  if ( pTxUe.substring(0,4) == "ADFC-" )			// ADFC
    document.writeln(";ADFC-Karlsruhe");
  else
    document.writeln(";");
  document.writeln("<BR>");							// neue Zeile
  return;
} // Ende Vorschau Excel

if ( pTxAend != null && fkMonat != kVsNewsletter )	// nicht Vorschau Newsletter
{													// Aenderungstext
  document.writeln("<H3><FONT COLOR=RED>=== " + pTxAend + " ===</FONT></H3>");
}
pDatStr = makeDatStr(pJahr,pMonat,pTag,pDauer,pDatStr);
if ( fkMonat == kRegister )							// bei Anmeldung verkuerztes Datum
  merkDatStr = pDatStr.substring(0,pDatStr.indexOf("&"));
if ( fkMonat != kHomePage && fkMonat != kExtHomePage )
{													// nicht Homepage
  if ( fkMonat != kVsNewsletter )					// nicht Vorschau Newsletter
    document.writeln("<H3>" + pDatStr + "<BIG>" + pTxUe + "</BIG></H3>");	// Datum und Ueberschrift
  else
    document.writeln(pDatStr + pTxUe + "<BR>");		// Datum und Ueberschrift in Vorschau Newsletter
}
else												// Homepage
  document.writeln("<H3>" + pDatStr + "<U>" + pTxUe + "</U></H3>");	// Datum und Ueberschrift
needBr = 0;
anzBr = 0;
if ( pSchw != 0 && fkMonat != kVsNewsletter )		// nicht Vorschau Newsletter
{
  switch ( pSchw % 100 )
  {													// Schwierigkeitsgrad
  case 1:
    document.writeln("<A HREF=adfc-vor-ort/karlsruhe/radtourentermine/allgemeines/#c10192><IMG SRC=fileadmin/dateien/Gliederungen/KV_Karlsruhe/Bilder/pikt1.gif WIDTH=60 HEIGHT=31 BORDER=0 ALIGN=left ALT=Leicht></A>");
	anzBr = 3;
    break;
  case 2:
    document.writeln("<A HREF=adfc-vor-ort/karlsruhe/radtourentermine/allgemeines/#c10193><IMG SRC=fileadmin/dateien/Gliederungen/KV_Karlsruhe/Bilder/pikt2.gif WIDTH=60 HEIGHT=32 BORDER=0 ALIGN=left ALT=Mittel></A>");
	anzBr = 3;
    break;
  case 3:
    document.writeln("<A HREF=adfc-vor-ort/karlsruhe/radtourentermine/allgemeines/#c10194><IMG SRC=fileadmin/dateien/Gliederungen/KV_Karlsruhe/Bilder/pikt3.gif WIDTH=60 HEIGHT=32 BORDER=0 ALIGN=left ALT=Schwer></A>");
	anzBr = 3;
    break;
  case 4:
    document.writeln("<A HREF=adfc-vor-ort/karlsruhe/radtourentermine/allgemeines/#c10195><IMG SRC=fileadmin/dateien/Gliederungen/KV_Karlsruhe/Bilder/pikt4.gif WIDTH=60 HEIGHT=32 BORDER=0 ALIGN=left ALT=Sportlich></A>");
	anzBr = 3;
    break;
  default:
    pSchw = 0;
    break;
  }
  if ( pSchw  > 100 )								// mit Bahn
  {
    document.writeln("<A HREF=adfc-vor-ort/karlsruhe/radtourentermine/allgemeines/#c10196><IMG SRC=fileadmin/dateien/Gliederungen/KV_Karlsruhe/Bilder/pikt5.gif WIDTH=44 HEIGHT=32 BORDER=0 ALIGN=left ALT=Bahnfahrt></A>");
  }
}
if ( pTxB1 != null )
{													// Beschreibung 1
  anzBr--;
  document.writeln(pTxB1 + ".");
  needBr++;
}
if ( pTxB2 != null )
{													// Beschreibung 2
  anzBr--;
  document.writeln("<BR>" + pTxB2 + ".");
  needBr++;
}
if ( pLink != null && fkMonat != kVsNewsletter )	// nicht Vorschau Newsletter
{													// Link zu weiterer Information
  document.writeln("&nbsp;<A HREF=\""+ pLink + "\" TARGET=\"_BLANK\" >Info</A>" + ".");
  needBr++;
}
if ( pTxTp != null )
{													// Start - Zeit und Ort
  if ( needBr > 0 )
  {
	document.write("<BR>");                         // neue Zeile
	anzBr--;
  }
  if ( pTxTp.charAt(0) == "=" )						// Sonderfunktion
  {
    if ( pTxTp.charAt(1) == "A" )                   // ADFC-Treffpunkt
	{
	  pTxTp = pTxTp.substring(2,pTxTp.length) + " Uhr, ADFC-Fahrradb&uuml;ro, Kronenstr. 9, 76133 Karlsruhe";
	}
  }
  document.writeln("Treffpunkt: " + pTxTp + ".&nbsp;");
  needBr++;
}
if ( difft > 0 && pAnmeld >= 0 )                    // mit Anmeldung
{
  if ( needBr > 0 )
  {
	document.write("<BR>");                         // neue Zeile
	anzBr--;
  }
  if ( pAindex > 0 )                                // Anmeldung online
  {
	document.write("<A HREF=\"javascript:s_anmeldung(" + pAindex + "," + tlAnm + ")\">Anmeldung online</A>");
  }
  else
  {
    document.write("Anmeldung");
  }
  pDatAnm = new Date(pDatum.getTime() - pAnmeld * 86400000);
  document.write(" bis " + pDatAnm.getDate() + "." + (pDatAnm.getMonth() + 1) + "." + pDatAnm.getFullYear());
  if ( pTxTp != null && pAnmeld < 10 )
    document.write(" erbeten");
  document.writeln(".&nbsp;");
  needBr++;
}
if ( pTL != null )
{													// Tourenleiter
  if ( needBr > 0 )
  {
    document.write("<BR>");                         // neue Zeile
    anzBr--;
  }
  if ( fkMonat != kVsNewsletter )					// nicht Vorschau Newsletter
    s_tl(pTL,1);
  else
    s_tl(pTL,0);
}
if ( pGebuehr != 0 )
{													// Gebuehr
  if ( pGebuehr > 0 )
    document.writeln("Geb&uuml;hr: " + pGebuehr + " &euro;.");
  else
  {
    if ( pGebuehr == -2 )
      pGebuehr = -3;
    if ( needBr > 0 )
    {
      document.write("<BR>");                       // neue Zeile
      anzBr--;
    }
    document.writeln("Geb&uuml;hr: " + -pGebuehr + " &euro; (ADFC-Mitglieder frei).");
  }
  needBr++;
}
document.writeln("<BR>");							// neue Zeile
anzBr--;
while ( anzBr-- > 0 )
  document.writeln("<BR>");							// neue Zeile
document.writeln("<BR>");

} // fkT


function makeDatStr(pJahr,pMonat,pTag,pDauer,pDatStr)
{													// String fuer Datum erzeugen

var sDatum;
var eDatum;

if ( pDatStr != null )
  return pDatStr;									// String bereits vorgegeben
sDatum = new Date(pJahr,pMonat-1,pTag);
if ( pDauer <= 1 )
{													// eintaegig
  if ( fkMonat != kVsNewsletter )					// nicht Newsletter
  {
    return pTag + "." + pMonat + "." + pJahr + "&nbsp;" + WoTagKurz[sDatum.getDay()] + "&nbsp;&nbsp;";
  }
  else
  {
    return WoTagLang[sDatum.getDay()] + ",&nbsp;" + pTag + "." + pMonat + "." + pJahr + "&nbsp;&nbsp;";
  }
}
else
{													// mehrtaegig
  eDatum = new Date(sDatum.getTime() + (pDauer - 1) * 86400000);
  if ( fkMonat != kVsNewsletter )					// nicht Newsletter
  {
    return pTag + "." + pMonat + ". - " + eDatum.getDate() + "." + (eDatum.getMonth()+1) + "." + pJahr + "&nbsp;" +
           WoTagKurz[sDatum.getDay()] + " - " + WoTagKurz[eDatum.getDay()] + "&nbsp;&nbsp;";
  }
  else
  {
    return WoTagLang[sDatum.getDay()] + ",&nbsp;" + pTag + "." + pMonat + ". - " + 
	       WoTagLang[eDatum.getDay()] + ",&nbsp;" + eDatum.getDate() + "." + (eDatum.getMonth()+1) + "." + pJahr + "&nbsp;&nbsp;";
  }
}

} // makeDatStr


function difftag(ereig)
{													// Differenz zwischen vorgegebenem Datum und aktuellem Datum

var difft = ereig.getTime() - jetztGerastertTag.getTime()
return difft / 86400000

} // difftag


function isIlo(pDat)
{

var woTag;
var tag;
var monat;
var jahr;

woTag = pDat.getDay();
if ( IloStart[woTag] != 0 )
  return 1;
else
  return 0;

} // isIlo


function p_ilot(pDate,pAusfall,pVon,pBis)
{													// Fahrradbuero: ein Oeffnungstermin
var timeChange;

if ( pVon == null ) {
  pVon = IloStart[pDate.getDay()];
  pBis = IloEnde[pDate.getDay()];
  timeChange = "<FONT COLOR=black>";
}
else
{
  timeChange = "<FONT COLOR=red>";
}
if ( ( pAusfall == null && difftag(pDate) < 0 ) || difftag(pDate) > iloMode )
  return;
if ( iloBr == 0 )
  iloBr = 1;
else
  document.writeln("<BR>");
if ( pAusfall == null )
  document.writeln("<B>" + WoTag[pDate.getDay()] + "</B>, " + 
                   pDate.getDate() + ". " + Monat[pDate.getMonth()] + " " + pDate.getFullYear() +
	               ", " + timeChange + pVon + " bis " + pBis + "</FONT> Uhr");
else
  if ( pVon == 0 && pBis == 0 )
    document.writeln("<B>" + Monat[pDate.getMonth()] + "</B> " + 
	                 " geschlossen. <FONT COLOR=red>" + pAusfall + "</FONT>");

  else
    document.writeln("<STRIKE><B>" + WoTag[pDate.getDay()] + "</B>, " +
                     pDate.getDate() + ". " + Monat[pDate.getMonth()] + " " + pDate.getFullYear() +
                     ", " + pVon + " bis " + pBis + " Uhr</STRIKE> <FONT COLOR=red> <NOBR>" + pAusfall + "</NOBR></FONT>");
} // p_ilot


function s_ilot(pJahr,pMonat,pTag,pAusfall,pVon,pBis)
{	// Fahrradbuero: Oeffnung-/Nichtoeffnung
	// pJahr, pMonat, pTag: definiert einen Tag, aber
	//    ist pTag = 0, definiert pJahr, pMonat einen Monat, in dem geschlossen bleibt.
	// pAusfall != null: gibt einen Text vor, warum an dem Tag / Monat geschlossen ist.
	// pAusfall == null: pVon und pBis geben (geaenderte) Uhrzeit vor, aber
	//    wenn auch pVon == null, dann nichts ausgeben fuer diesen und alle folgenden Tage

var termin;
var wildcard;

if ( pJahr < 1900 )
  pJahr += 2000;
if ( pTag == 0 )
{
  wildcard = 1;
  pTag = 1;
}
else
{
  wildcard = 0;
}
termin = new Date(pJahr,pMonat-1,pTag);
if ( ( wildcard == 0 || pJahr != jetztJahr || pMonat != jetztMonat ) && difftag(termin) < 0 )
  return;
while ( iloDate.getTime() < termin.getTime() )
{
  if ( isIlo(iloDate) == 1 )
	p_ilot(iloDate);
  iloDate = new Date(iloDate.getTime() + 86400000);
}
if ( wildcard == 1 )
{ 
  p_ilot(termin,pAusfall,0,0);
  while ( iloDate.getMonth() == termin.getMonth() )
    iloDate = new Date(iloDate.getTime() + 86400000);
  return;
}
iloDate = new Date(iloDate.getTime() + 86400000);
if ( pAusfall != null || pVon != null )
  p_ilot(termin,pAusfall,pVon,pBis);
  
} // s_ilot


function s_tl(tl,modus)								// Modus 1: ggf. mit Link
{													// Tourenleiter

if ( tl == null )									// keiner genannt
  return;
if ( tlNam == null )   								// kein codierter Name
{
  document.writeln(tl);								// einfach uebernehmen
  return;
}
if ( modus == 1 && tlVerw > 0 )
  document.writeln("<A HREF=\"adfc-vor-ort/karlsruhe/wir-ueber-uns/unser-team/#c" + tlVerw + "\">" + tlNam + "</A>, Tel.: " + tlTel);
else
  document.writeln(tlNam + ", Tel.: " + tlTel);

} // s_tl

function s_tl_vorb(tl)
{													// Tourenleiter

if ( tl == null )
  return;
switch (tl)
{													// codiert
case "ANKI" :
  tlVerw = -10162;
  tlNam = "Angela Kipke";
  tlTel = "0721 / 6636975";
  tlAnm = 0;
  break;
case "ANKR" :
  tlVerw = -18643;
  tlNam = "Andreas Kraus";
  tlTel = "0160 / 5318404";
  tlAnm = 0;
  break;
case "ANMA" :
  tlVerw = 12721; 
  tlNam = "Anton Maslow";
  tlTel = "0721 / 857511";
  tlAnm = 0;
  break;
case "BRBR" :
  tlVerw = -13181;
  tlNam = "Britta Brandst&auml;ter";
  tlTel = "07251 / 305150";
  tlAnm = 0;
  break;
case "CASC" :
  tlVerw = -13180;
  tlNam = "Carsten Schlebitz";
  tlTel = "0721 / 6636975";
  tlAnm = 0;
  break;
case "CHBU" :
  tlVerw = 10168;
  tlNam = "Christian B&uuml;ttner";
  tlTel = "0170 / 4764296";
  tlAnm = 0;
  break;
case "CHSC" :
  tlVerw = 10163;
  tlNam = "Christian Schmidt";
  tlTel = "0721 / ???????";
  tlAnm = 0;
  break;
case "CHWA" :
  tlVerw = 12387;
  tlNam = "Christa Walter";
  tlTel = "0721 / 374817";
  tlAnm = 0;
  break;
case "COBE" :
  tlVerw = 10166;
  tlNam = "Cornelius Berkmann";
  tlTel = "0172 / 7110643";
  tlAnm = 0;
  break;
case "HAFL" :
  tlVerw = 10059;
  tlNam = "Hans-J&uuml;rgen Fluck";
  tlTel = "0721 / 7818210";
  tlAnm = 1;
  break;
case "HENI" :
  tlVerw = 12388;
  tlNam = "Heike Niederreiter";
  tlTel = "0721 / 6056969";
  tlAnm = 0;
  break;
case "ISBO" :
  tlVerw = 10167;
  tlNam = "Isabelle Bohnert";
  tlTel = "0721 / 6647905";
  tlAnm = 0;
  break;
case "KLNA" :
  tlVerw = 10165;
  tlNam = "Klaus Nauenburg";
  tlTel = "07240 / 6008171";
  tlAnm = 0;
  break;
case "RESC" :
  tlVerw = 13389;
  tlNam = "Reinhold Schmitz";
  tlTel = "0721 / 359759";
  tlAnm = 0;
  break;
case "WOME" :
  tlVerw = 10164;
  tlNam = "Wolfgang Melchert";
  tlTel = "0721 / 387851";
  tlAnm = 0;
  break;
case "VOZA" :
  tlVerw = -11577;
  tlNam = "Volker Zahn";
  tlTel = "07251 / 961430";
  tlAnm = 0;
  break;
default :											// Text uebernehmen
  tlVerw = 0;
  tlNam = null;
  tlTel = null;
  tlAnm = 0;
  break;
}

} // s_tl_vorb

function s_anmeldung(ind,tlanm)
{
  var fenster;
  fenster = window.open("http://www.adfc-bw.de/adfc-vor-ort/karlsruhe/radtourentermine/anmeldung_x"+tlanm,"_self");
  fenster.name = ind;
} // s_anmeldung


