// stupl.js

/*********************/
/*
function stupl_intro ()
{
  var art, kurz;
  var ok = false;
  if (parent.f_nav.wahlart && parent.f_nav.wahlkurz)
    if ((parent.f_nav.wahlart.selectedIndex > 0) && (parent.f_nav.wahlkurz.selectedIndex > 0))
    {
      ok = true;
      art  = parent.f_nav.wahlart.options [parent.f_nav.wahlart.selectedIndex].value;
      kurz = parent.f_nav.wahlkurz.options [parent.f_nav.wahlkurz.selectedIndex].value;
      // parent.f_daten.document.close ();
      zeig_stupl(art, kurz);
    }
  if (!ok)
    if (beimstart==false)
      if (parent.f_nav.wahlkurz.selectedIndex == 0)
        window.alert ("Bitte wählen Sie ein Objekt aus!");
      else
      {
      document.write ("Ungültige Auswahl - Planart oder Objekt unbestimmt!");
      }
}
*/

/*********************/
function frame_neu (htm_datei, f_target)
{
  var neuframe = eval("parent."+ f_target);
  // window.alert ("frame_neu");
  neuframe.location.href = htm_datei;
}


/*********************/
function druck_stupl()
{
  if (window.print)
    {
    parent.f_daten.focus();
    parent.f_daten.print();
    if (parent.f_nav.wahlkurz)
      parent.f_nav.wahlkurz.focus();
    }
  return false;
}




/*********************/
// mod. vorladen() aus datei.js
function kuerzel_laden (datei, art)
{
  var temp;
  temp = new Image();
  temp.src = datei;
  if (document.all) {
    parent.f_nav.document.body.insertAdjacentHTML
      ('beforeEnd',
      '<div><iframe name="puffer" src="' + datei
      + '" style="width:0px;height:0px;">'
      + '</iframe></div>');
    // Dieses alert muss bleiben, da so das documentElement existiert!
    alert("Die " + art + "-Kürzel werden vorgeladen.");
    temp = parent.f_nav.puffer.document.documentElement.innerText.split (",");
   } else {
    // alert ("für Non-Windows-Browser");
    var myDiv       = document.createElement("div");
    var myIframe    = document.createElement("iFrame");
    myIframe.name   = "puffer";
    myIframe.id     = "puffer";
    myIframe.width  = 0;// "width:0px;height:0px;";
    myIframe.height = 0;// "width:0px;height:0px;";
    myIframe.src    = datei;
    myDiv.appendChild(myIframe);
    myIframe.location.reload();
    alert (myIframe.nodeValue);
    temp = document.getElementById("puffer").firstChild.nodeValue.split (",");
    alert (temp);
  };
  return temp;
}


/*********************/
// neue Fassung mit Datenanbindung über TDC:
function auswahl_bilden ()
{
  var datei;
  var info;
  var zeit, temp, i, max, opt_temp;
  var wahlart = "";
  // var ok      = true;
  var zeigen  = !internet;

  if (document.getElementById("wahlart").selectedIndex > 0)
    wahlart = document.getElementById("wahlart").options[document.getElementById("wahlart").selectedIndex].value;
  document.getElementById("wahlkurz").options.length = 0;
  document.getElementById("wahlkurz").options[document.getElementById("wahlkurz").length] = new Option ("bitte wählen","",false,true);
  // parent.f_nav.wahlkurz.options[parent.f_nav.wahlkurz.length] = new Option ("bitte wählen","",false,true);

  info = "Die " + wahlart + "-Stundenpläne gibt es nur \n im hausinternen Intranet!"

  // Stundenplan-Rohtabelle neu in Datenframe laden:
  // parent.f_daten.location.href = "frame_stupl.htm";
  // parent.f_daten.focus();

  switch (wahlart)
  {
    case "Lehrer":
      zeigen = le_zeigen;
      if (zeigen)
      {
        // nicht im Internet:
        if (opt_lehrer == null)
        {
          datei = "lehrer.txt"
          zeit  = stoppen ();
          opt_lehrer = kuerzel_laden (datei, wahlart);
          zeit = stoppen (zeit, "", true);
          // parent.f_daten.document.write (lehrer.length + " Lehrerpläne erfolgreich aufgebaut (Dauer: " + temp + ").<br>");
          window.status = opt_lehrer.length + " Lehrerkürzel erfolgreich aufgebaut (Dauer: " + zeit + ").";
        }
        else
          window.status = opt_lehrer.length + " eingelesene Lehrerkürzel werden verwendet.";

        max = opt_lehrer.length;
        for (i=0; i<max; i++)
          document.getElementById("wahlkurz").options[document.getElementById("wahlkurz").length] = new Option (opt_lehrer [i], opt_lehrer [i],false,false);
      }
      // Stundenplan-Rohtabelle neu in Datenframe laden:
      frame_neu ("frame_stupl.htm", "f_daten");
      if (!zeigen)
      {
        window.alert (info);
      }
      break;

    case "Klasse":
      zeigen = kl_zeigen;
      if (zeigen)
      {
        // nicht im Internet:
        // Klassenauswahl aufbauen:
        if (opt_klasse == null)
        {
          //temp="5A,5B,5C,5D,5E,5F,6A,6B,6C,6D,6E,6F,7A,7B,7C,7D,7E,7F,8A,8B,8C,8D,8E,8F,9A,9B,9C,9D,9E,9F,10A,10B,10C,10D,10E,10F,11A,11B,11C,11D,11E,11F,11G,11H,11I,11J";
          //opt_klasse = temp.split(",");
          datei = "klasse.txt"
          zeit  = stoppen ();
          opt_klasse = kuerzel_laden (datei, wahlart);
          zeit = stoppen (zeit, "", true);
          window.status = opt_klasse.length + " Klassenkürzel erfolgreich aufgebaut.";
        }
        else
          window.status = opt_klasse.length + " eingelesene Klassenpläne werden verwendet.";

        max = opt_klasse.length;
        for (i=0; i<max; i++)
          document.getElementById("wahlkurz").options[document.getElementById("wahlkurz").length] = new Option (opt_klasse [i],opt_klasse [i],false,false);
      }
      // Stundenplan-Rohtabelle neu in Datenframe laden:
      frame_neu ("frame_stupl.htm", "f_daten");

      if (!zeigen)
      {
        window.alert (info);
      }
      break;

    case "GO-Stufe":
      zeigen = st_zeigen;
      // Stufenauswahl aufbauen:
      if (opt_stufe == null)
      {
        temp = "11,12,13";
        opt_stufe = temp.split(",");
        window.status = opt_stufe.length + " GO-Stufenkürzel erfolgreich aufgebaut.";
      }
      else
        window.status = opt_stufe.length + " eingelesene GO-Stufenkürzel werden verwendet.";

      max = opt_stufe.length;
      for (i=0; i<max; i++)
        document.getElementById("wahlkurz").options[document.getElementById("wahlkurz").length] = new Option (opt_stufe [i],opt_stufe [i],false,false);
        // parent.f_nav.wahlkurz.options[parent.f_nav.wahlkurz.length] = new Option (opt_stufe [i],opt_stufe [i],false,false);

      // Stundenplan-Rohtabelle neu in Datenframe laden:
      frame_neu ("frame_stupl.htm", "f_daten");
      if (!zeigen)
      {
        window.alert (info);
      }
      break;

    case "Raum":
      zeigen = ra_zeigen;
      if (zeigen)
      {
        // nicht im Internet:
        if (opt_raum == null)
        {
          datei = "raum.txt"
          zeit  = stoppen ();
          opt_raum = kuerzel_laden (datei, wahlart);
          zeit = stoppen (zeit, "", true);
          window.status = opt_raum.length + " Raumkürzel erfolgreich aufgebaut (Dauer: " + zeit + ").";
        }
        else
          window.status = opt_raum.length + " eingelesene Raumpläne werden verwendet.";

        max = opt_raum.length;
        for (i=0; i<max; i++)
          document.getElementById("wahlkurz").options[document.getElementById("wahlkurz").length] = new Option (opt_raum [i],opt_raum [i],false,false);
      }

      // Stundenplan-Rohtabelle neu in Datenframe laden:
      frame_neu ("frame_stupl.htm", "f_daten");

      if (!zeigen)
      {
        window.alert (info);
      }
      break;

    case "Schüler":
      zeigen = sc_zeigen;
      if (zeigen)
      {
        // nicht im Internet:
        if (opt_suel == null)
        {
          datei = "sueler.txt"
          zeit  = stoppen ();
          opt_suel = kuerzel_laden (datei, wahlart);
          zeit = stoppen (zeit, "", true);
          window.status = opt_suel.length + " Schülerkürzel erfolgreich aufgebaut (Dauer: " + zeit + ").";
        }
        else
          window.status = opt_suel.length + " eingelesene Schülerpläne werden verwendet.";
        max = opt_suel.length;
        for (i=0; i<max; i++)
          document.getElementById("wahlkurz").options[document.getElementById("wahlkurz").length] = new Option (opt_suel [i],opt_suel [i],false,false);

        // Stundenplan-Rohtabelle neu in Datenframe laden:
        frame_neu ("frame_stupl.htm", "f_daten");
      }
      if (sc_abfrage)
        frame_neu ("frame_suche.htm", "f_daten");
      // window.alert ("Für diese Kategorie sind (noch) keine Pläne implementiert!");

      break;

    default:
      window.alert ("Bitte wählen Sie eine Kategorie aus!");
      zeigen = false;
  }
  if (zeigen)
    if (parent.f_nav.wahlkurz)
      parent.f_nav.wahlkurz.focus();
  else
    if (parent.f_nav.wahlart)
      {
      parent.f_nav.wahlart.selectedIndex = 0;
      parent.f_nav.wahlart.options[0].selected = true;
      parent.f_nav.wahlart.focus();
    }
}



/*********************/
// neue Fassung mit Datenanbindung über TDC:
function stupl_zeigen (scname)
{
var art, kurz;
var datei
var doc, doc_stupl, doc_anzeige;
// var doc_treffer, info = "";
var anzsaetze = 1000;
var tag, std;
var anztag = 5;
var anzstd = 12;
var zeigen = !internet;

// var zellfont_a = "<font face='monospace' size='small'>";

  if (parent.f_nav.wahlart.selectedIndex > 0)
    art = parent.f_nav.wahlart.options[parent.f_nav.wahlart.selectedIndex].value;
  if (parent.f_nav.wahlkurz.selectedIndex > 0)
    kurz = parent.f_nav.wahlkurz.options[parent.f_nav.wahlkurz.selectedIndex].value;

switch (art)
  {
    case "Lehrer":
      zeigen = le_zeigen;
      // nicht im Internet, nur im Intranet:
      if (zeigen)
        datei = "stupl_le.txt";
      break;
    case "Klasse":
      zeigen = kl_zeigen;
      if (zeigen)
        datei = "stupl_kl.txt";
      break;
    case "GO-Stufe":
      zeigen = st_zeigen;
      if (zeigen)
        datei = "stupl_st.txt";
      break;
    case "Raum":
      // nicht im Internet, nur im Intranet:
      zeigen = ra_zeigen;
      if (zeigen)
        datei = "stupl_ra.txt";
      break;
    case "Schüler":
      zeigen = sc_zeigen;
      if (zeigen)
        datei = "stupl_sc.txt";
      else
        {
        // durch Link im Anschluss an Belegungsanzeige (sc_abfrage = true):
        // derzeit noch gesperrt:
        window.alert ("stupl_zeigen(): Art " + art + " ist noch nicht implementiert!");
        kurz = scname;
        zeigen = false;
        }
      break;
    default:
      window.alert ("stupl_zeigen(): Art " + art + " ist unbekannt!");
      zeigen = false;
  }

  if (zeigen)
  {
    // Objekte suchen im Datenframe::
    doc         = parent.f_daten.document;
    doc_stupl   = doc.getElementById("stupl");
    doc_anzeige = doc.getElementById("anzeige");
    // doc_treffer = doc.getElementById("Treffer");


      // Datenanzeige abschalten:
      doc_anzeige.style.display = "none";

      // Titel aktualisieren:
      // es bleibt immer der zuerst gesetzte Titel !!!
      // alle Lagen dieser Zeile wurden getestet; muss vor Reset() stehen!!!
      //doc_treffer.innerText = info + kurz;

      doc_stupl.DataURL    = datei;
      doc_stupl.UseHeader  = "true";
      doc_stupl.Filter     = "OBJEKT = " + kurz;
      doc_stupl.FieldDelim = ",";
      doc_stupl.Reset();

      // Datenanzeige synchronisieren:
      doc_anzeige.dataSrc = "#stupl";

      // wegen Reset() ist doc_stupl kurzzeitig nicht verfügbar,
      // daher Prüfung abgeschaltet!
      //ok = ok && (doc_stupl.recordset.recordCount > 0);
      //ok = ok && (doc_stupl.recordset.recordCount < anzsaetze);

    // Datenanzeige anschalten:
    doc_anzeige.style.display = "block";
  }
 //else
//    doc_treffer.innerText = "Kein Datensatz mit obigen Angaben gefunden!";
}


/*********************/
// derzeit nicht eingesetzt!
function naechster()
{
  var info;
  document.all.stupl.object.Filter = "";
  document.all.stupl.Reset();
  document.all.anzeige.nextPage();
  info = "Rasterunterricht der Stufe " + document.all.Stufe.value;
  document.all.Treffer.innerText = info;
}

/*********************/
// derzeit nicht eingesetzt!
function voriger()
{
 document.all.stupl.object.Filter = "";
 document.all.stupl.Reset();
 document.all.anzeige.previousPage();
}

/*********************/
// derzeit nicht eingesetzt!
// nur für test_stupl.htm!!!
function zeig_stupl_TDC()
{
 var Datensaetze = 1000;
 var ok = true;
 document.all.anzeige.style.display = "none";
 var Suchausdruck = "";
 var Suchbegriffe = 0;
 if(document.Eingabe.SuchStufe.value == "")
 {
  window.alert ("Es wurden nicht alle Suchdaten angegeben - keine Suche möglich!");
  ok = false;
 }
  else
  {
   Suchausdruck = Suchausdruck + "OBJEKT = " + document.Eingabe.SuchStufe.value;
  }
 document.all.stupl.object.Filter = Suchausdruck;
 document.all.stupl.Reset();
 document.all.anzeige.dataSrc = "#stupl";

  ok = ok && (document.all.stupl.recordset.recordCount > 0);
  ok = ok && (document.all.stupl.recordset.recordCount < Datensaetze);
 if(ok)
  {
    info = "Rasterunterricht der Stufe " + document.Eingabe.SuchStufe.value;
    document.all.Treffer.innerText = info;
    document.all.anzeige.style.display = "block";
  }
 else
  {
    document.all.Treffer.innerText = "Kein Datensatz mit obigen Angaben gefunden!";
    //window.alert ("Kein Datensatz mit obigen Angaben gefunden!");
  }
}

/*********************/
// derzeit nicht eingesetzt!
function tests (lehrer)
{
  window.alert ("tests(): Anzahl Zeilen in lehrer: " + lehrer.length);
  temp=""
  for (i=0;i<20;i++)
  {
    temp+=lehrer[i]+"\n";
  }
  window.alert ("tests(): \n"+temp);  // Lehrer (0-20)
}

