/*=======================================================*/
/*======  Enthält alle Funktionen für Übungen      ======*/
/*=======================================================*/
/*=====================  Uebungen   ==================== */
/* In dieser Funktion werden die Uebungen gespeichert und ausgelesen, damit diese in einer HTML-Seite angezeigt werden können */
/* Werte für Inputvariable Nummer: Nummer für den direkten Verweis auf die gewünschte Übung*/
/* Werte für Inputvariable DU: */
/*    D:     --> Wochentag, Datum für alle 3 Kursdaten */
/*    DATE:  --> Kursdatum1 im internen Format */
/*    NU:    --> nächste Übung, gerechnet ab dem aktuellen Tagesdatum */
/*    U:     --> Kursinformationen, ohne Einrückungen */
/*    UU:    --> Bezeichnung der Übung, formatiert */
/*    UB:    --> Kursinformationen, mit Einrückungen */
/*    UBZ:   --> Kursinformationen, mit Einrückungen */
/*    A:     --> Anzahl Kurse (Nothilfekurse und Notfälle für Kleinkinder zusammen) */
/*    T:     --> Besammlungsort*/
/*    L:     --> Link zum Jahresprogramm oder zum entsprechenden Kurs*/
/*    W:     --> Wochentag und Datum, ohne Formatierung*/
/*    WD:    --> Wochentag und Datum, ohne Formatierung*/
/*    WF:    --> Wochentag und Datum, mit Formatierung*/
/*    J:     --> Jahr der ersten Übung*/
/* Werte für Inputvariable Einr: Anzahl Leerschläge für die Einrückung von Texten */
function Uebungen (Nummer, DU, Einr)
{
/*Anzahl Elemente der einzelnen Tabellen */
var MaxUebung = 12;
var MaxEinrueckung;

var AnzUebung;
var NaechsteUebung;

/*Tabellen für die Kurse, Übungen und Aktivitäten*/
var Uebungstabelle = new Array(MaxUebung);		/*Übungstabelle für 13 Übungen*/

/*Variablen*/
/*Formatierungen*/
var Normal = "<div ID='unstrike'>";
var Durchgestrichen = "<div ID='strike'>";
var DivEnde = "</div>";
var Zeilenwechsel = "<br>";
var Formatierung;
var Leerzeichen = "&nbsp;";
var Gaensefuss = '"';
var KOrt = "Ort: ";
var KZeit = "Zeit: ";

/*Ausgabevariablen*/
var Uebung;
var Besammlung;
var Datum;
var Zeit;
var Wochentag;
var DatAusgabe;
var LinkKurs;
var LinkKursHTML;

/*Links*/
var LinkBeginn    = "<a href=";
var LinkUebung    = "../Verein/Jahresprogramm.htm";
var LinkNothilfe  = "../Kurse/Nothilfekurs.htm";
var LinkNotfaelle = "../Kurse/Notfaellekleinkinder.htm";
var LinkEnde      = ">&raquo; mehr</a>";

/*Zwischenvariablen*/
var JahrString;
var MonatString;
var TagString;
var StundenString;
var MinutenString;
var Zwischentext;
var Zwischendatum;
var Zwischenzeit;
var Anzahl;

/*Steuervariablen*/
var HatDatumZeit;

/*Zähler*/
var x;

/*Aktuelles Datum*/
var today=new Date();

/*Rückgabewert*/
var returnwert;

/*Arrays füllen*/
/*Übungstabelle*/
for (var i = 0; i < Uebungstabelle.length; ++i)
  Uebungstabelle [i] = new Array(7);
  
/* 
[x] [0] = Übungsbezeichnung
[x] [1] = Übungsdatum, Datum im Format TT.MM.JJJJ
[x] [2] = Übungsdatum, Zeit im Formt HH.MM
[x] [3] = Besammlungsort
[x] [4] = Kennzeichnung der fachtechnischen Übungen
[x] [5] = Übungsdatum, internes Format (nicht zu definieren, wird aufgrund der Tabellenplätze 1 und 2 gebildet)
[x] [6] = Link zum Jahresprogramm (nicht zu definierten, wird aufgrund der Variablen LinkUebung gebildet)
*/  
x = -1;

x=x+1;
Uebungstabelle [x] [0] = "Postendienst";
Uebungstabelle [x] [1] = "01.02.2012";
Uebungstabelle [x] [2] = "20.00";
Uebungstabelle [x] [3] = "&Uuml;bungslokal, Neuendorf";
Uebungstabelle [x] [4] = "*";
Uebungstabelle [x] [6] = LinkBeginn + Gaensefuss + LinkUebung + Gaensefuss + LinkEnde;

x=x+1;
Uebungstabelle [x] [0] = "BLS-AED, 1. Teil";
Uebungstabelle [x] [1] = "05.03.2012";
Uebungstabelle [x] [2] = "19.00";
Uebungstabelle [x] [3] = "&Uuml;bungslokal, Neuendorf";
Uebungstabelle [x] [4] = "*";
Uebungstabelle [x] [6] = LinkBeginn + Gaensefuss + LinkUebung + Gaensefuss + LinkEnde;

x=x+1;
Uebungstabelle [x] [0] = "BLS-AED, 2. Teil";
Uebungstabelle [x] [1] = "13.03.2012";
Uebungstabelle [x] [2] = "19.00";
Uebungstabelle [x] [3] = "&Uuml;bungslokal, Neuendorf";
Uebungstabelle [x] [4] = "*";
Uebungstabelle [x] [6] = LinkBeginn + Gaensefuss + LinkUebung + Gaensefuss + LinkEnde;

x=x+1;
Uebungstabelle [x] [0] = "&Uuml;ses H&auml;rz";
Uebungstabelle [x] [1] = "26.04.2012";
Uebungstabelle [x] [2] = "20.00";
Uebungstabelle [x] [3] = "&Uuml;bungslokal, Neuendorf";
Uebungstabelle [x] [4] = "*";
Uebungstabelle [x] [6] = LinkBeginn + Gaensefuss + LinkUebung + Gaensefuss + LinkEnde;

x=x+1;
Uebungstabelle [x] [0] = "Mer fr&ouml;sche uf (Samariterkurs)";
Uebungstabelle [x] [1] = "22.05.2012";
Uebungstabelle [x] [2] = "20.00";
Uebungstabelle [x] [3] = "&Uuml;bungslokal, Neuendorf";
Uebungstabelle [x] [4] = "*";
Uebungstabelle [x] [6] = LinkBeginn + Gaensefuss + LinkUebung + Gaensefuss + LinkEnde;

x=x+1;
Uebungstabelle [x] [0] = "Verletzungen";
Uebungstabelle [x] [1] = "13.06.2012";
Uebungstabelle [x] [2] = "20.00";
Uebungstabelle [x] [3] = "&Uuml;bungslokal, Neuendorf";
Uebungstabelle [x] [4] = "*";
Uebungstabelle [x] [6] = LinkBeginn + Gaensefuss + LinkUebung + Gaensefuss + LinkEnde;

x=x+1;
Uebungstabelle [x] [0] = "&Uuml;bung mit Oberbuchsiten";
Uebungstabelle [x] [1] = "02.07.2012";
Uebungstabelle [x] [2] = "19.15";
Uebungstabelle [x] [3] = "&Uuml;bungslokal, Neuendorf";
Uebungstabelle [x] [4] = "*";
Uebungstabelle [x] [6] = LinkBeginn + Gaensefuss + LinkUebung + Gaensefuss + LinkEnde;

x=x+1;
Uebungstabelle [x] [0] = "Erkrankungen";
Uebungstabelle [x] [1] = "29.08.2012";
Uebungstabelle [x] [2] = "20.00";
Uebungstabelle [x] [3] = "&Uuml;bungslokal, Neuendorf";
Uebungstabelle [x] [4] = "*";
Uebungstabelle [x] [6] = LinkBeginn + Gaensefuss + LinkUebung + Gaensefuss + LinkEnde;

x=x+1;
Uebungstabelle [x] [0] = "Was w&ouml;sse mer no ?";
Uebungstabelle [x] [1] = "19.09.2012";
Uebungstabelle [x] [2] = "20.00";
Uebungstabelle [x] [3] = "&Uuml;bungslokal, Neuendorf";
Uebungstabelle [x] [4] = "*";
Uebungstabelle [x] [6] = LinkBeginn + Gaensefuss + LinkUebung + Gaensefuss + LinkEnde;

x=x+1;
Uebungstabelle [x] [0] = "Jetzt ch&ouml;nds alli !!!";
Uebungstabelle [x] [1] = "25.10.2012";
Uebungstabelle [x] [2] = "20.00";
Uebungstabelle [x] [3] = "&Uuml;bungslokal, Neuendorf";
Uebungstabelle [x] [4] = "*";
Uebungstabelle [x] [6] = LinkBeginn + Gaensefuss + LinkUebung + Gaensefuss + LinkEnde;

x=x+1;
Uebungstabelle [x] [0] = "&Ouml;ffentlicher Vortrag Hirnverletzungen";
Uebungstabelle [x] [1] = "20.11.2012";
Uebungstabelle [x] [2] = "00.00";
Uebungstabelle [x] [3] = "offen";
Uebungstabelle [x] [4] = "*";
Uebungstabelle [x] [6] = LinkBeginn + Gaensefuss + LinkUebung + Gaensefuss + LinkEnde;

x=x+1;
Uebungstabelle [x] [0] = "Advents-H&ouml;ck";
Uebungstabelle [x] [1] = "30.11.2012";
Uebungstabelle [x] [2] = "gem. Einladung";
Uebungstabelle [x] [3] = "gem. Einladung";
Uebungstabelle [x] [4] = "";
Uebungstabelle [x] [6] = LinkBeginn + Gaensefuss + LinkUebung + Gaensefuss + LinkEnde;

/*
x=x+1;
Uebungstabelle [x] [0] = "";
Uebungstabelle [x] [1] = "";
Uebungstabelle [x] [2] = "";
Uebungstabelle [x] [3] = "";
Uebungstabelle [x] [4] = "";
Uebungstabelle [x] [6] = "";

x=x+1;
Uebungstabelle [x] [0] = "";
Uebungstabelle [x] [1] = "";
Uebungstabelle [x] [2] = "";
Uebungstabelle [x] [3] = "";
Uebungstabelle [x] [4] = "";
Uebungstabelle [x] [6] = "";
*/

MaxEinrueckung = Einr;

if (DU == "J")
  { 
    returnwert = (Uebungstabelle [0] [1]).substr(6,4);
    return returnwert;
  }
  
/*Datums- und Zeitangaben in internes Format umsetzen*/
Anzahl = 0;
AnzUebung = 0;
NaechsteUebung = "A";
while (Anzahl < Uebungstabelle.length)
{
	/*Uebungstabelle [Anzahl] [0] = Anzahl + " " + Uebungstabelle [Anzahl] [0];*/
	if (Uebungstabelle [Anzahl] [0] != "")
	  {
			AnzUebung++;
			/*Datumswerte in interne Datumswerte umsetzen*/
			/*Übungsdatum*/
			Uebungstabelle [Anzahl] [5]= intDatumZeit((Uebungstabelle [Anzahl] [1]), (Uebungstabelle [Anzahl] [2]));
      Datum = Uebungstabelle [Anzahl] [5];
      Zwischentext = Uebungstabelle [Anzahl] [1];
      if ((Uebungstabelle [Anzahl] [1]) != "offen" && Zwischentext.substr(0, 2) != "00" && Datum > today && NaechsteUebung == "A")
        {
     	  	NaechsteUebung = Anzahl;
        }
    }
Anzahl++;
}

if (NaechsteUebung != "A" || DU !="NU")
{
  Uebung     = Uebungstabelle [Nummer] [0];
  Besammlungsort = Uebungstabelle [Nummer] [3];
  Datum 		 = Uebungstabelle [Nummer] [5];
  Zeit       = Uhrzeit(Datum);
  Wochentag  = wotag(Datum);
  Uebungstyp = Uebungstabelle [Nummer] [4];
  Uebungsdatum = Uebungstabelle [Nummer] [1];
  Uebungszeit = Uebungstabelle [Nummer] [2];
  returnwert = "";
  DatAusgabe = DatumAusgabe (Uebungsdatum, Datum);
  ZeitAusgabe = ZeitAusgabeFormat(Uebungszeit, "00.00");
  LinkKurs = Uebungstabelle [Nummer] [6];
  
/*Formatierung der Ausgabe definieren*/
if (DU != "A")
  {
    Formatierung = Abgelaufen(Datum, Datum, Datum);
  }
}

switch (DU)
{
	case "DATE":
	  returnwert = Datum;
	  break;
	case "D":
	  /*Gibt den Wochentag und das Datum der Übung zurück*/
	  returnwert = AusgabeWotagDatum (Uebungsdatum, DatAusgabe, Wochentag, Formatierung, DU);
		break;
	case "U":
	  /*Gibt die Bezeichnung und den Besammlungsort der Übung zurück*/
	  returnwert = AusgabeBesammlungsort (Uebung, Uebungsdatum, "", "", Uebungszeit, "00.00", "00.00", "00.00", ZeitAusgabe, "00.00", "00.00", "00.00", Besammlungsort, Formatierung, Einr, "UBU");
		break;		
	case "UU":
	  /*Gibt die Bezeichnung der Übung zurück*/
  	returnwert = Formatierung + Uebung + DivEnde;
		break;
	case "UB":
	  /*Gibt den Besammlungsort der Übung zurück*/
	  returnwert = AusgabeBesammlungsort (Uebung, Uebungsdatum, "", "", Uebungszeit, "00.00", "00.00", "00.00", ZeitAusgabe, "00.00", "00.00", "00.00", Besammlungsort, Formatierung, Einr, "UBU");
		break;
	case "UBZ":
	  /*Gibt den Besammlungsort der Übung zurück*/
	  returnwert = AusgabeBesammlungsort (Uebung, Uebungsdatum, "", "", Uebungszeit, "00.00", "00.00", "00.00", ZeitAusgabe, "00.00", "00.00", "00.00", Besammlungsort, Formatierung, Einr, "UBU");
		break;
  case "A":
    /*gibt die Anzahl Übungen zurück*/
    returnwert = AnzUebung;
 	  break;
  case "NU":
    /*gibt die Nummer der nächsten Übung zurück*/
    returnwert = NaechsteUebung;
 	  break;
  case "T":
    /*gibt den Übungstyp zurück*/
  	returnwert = Uebungstyp;
  	break;
  case "L":
    /*gibt den Link zurück*/
  	returnwert = LinkKurs;
  	break;
  case "W":
    /*gibt den Wochentag zurück*/
  	returnwert = Wochentag;
  	break;
  case "WD":
    /*gibt den Wochentag und das Datum zurück, ohne Zeilenwechsel*/
		returnwert = Wochentag + ", "+	DatAusgabe;
		break;
  case "WF":
    /*gibt den Wochentag und das Datum zurück, ohne Zeilenwechsel*/
	  returnwert = AusgabeWotagDatum (Uebungsdatum, DatAusgabe, Wochentag, Formatierung, DU);
	  break;
}

return returnwert;
}

/*=====================  nextUebung   ==================== */
/*gibt die nächste Übung zurück*/
function nextUebung ()
{
/*Variablen */
var nextUebung;
var returnwert;

  nextUebung = Uebungen(1,"NU",0);
  returnwert = nextUebung;
  
  if (nextUebung != "A")
    {
    	returnwert = (Uebungen(nextUebung,'WF',0))+(Uebungen(nextUebung,'UU',0))+(Uebungen(nextUebung,'UBZ',0))
    }
  
  return returnwert;
}
