/*###############################################################
data.js         : js for k28 handbuch and shop
Author          : Peter Sturm <webmaster@k28.de>
Created On      : 08.10.2002
Last Modified By: Peter Sturm
Last Modified On: 11.05.2007
Language        : Javascript
Status          : ok
Copyright       : Peter Sturm 1998-
Version         : 0.8
version 0.7 - 28.12.2003
version 0.6 - 08.10.2002
version 0.5 - 08.10.2002
- initial version
###############################################################*/
var format="style.css"; //"format.css"; //CSS file
var picture_path="Bilder/";
var picture_path_small="Bilder/klein/";
var clickinfo = "<br />(Klicken Sie auf das Bild.)";
var popuptext = "Klicken Sie auf das Bild.";
var popupbackground = "";
var act_cols = 3;
//###############################################################
// functions
//###############################################################
function dates_sort(d,ignore_year,reverse)      //sort dates in format 01.02.2000|
{
  for (var x=1;x<d.length;x++)
  {
    if (ignore_year==true)                     //jahr ignorieren
    {
      d[x]=d[x].substr(3,2)+d[x].substr(0,2)+d[x].substr(6,4)+d[x].substr(10,1000); //so zusammen 02012000|xxxxxx
    }
    else
    {
      d[x]=d[x].substr(6,4)+d[x].substr(3,2)+d[x].substr(0,2)+d[x].substr(10,1000); //so zusammen 20000201|xxxxxx
    }
  }
  var desc=d[0];

  d.sort();                                     //jetzt sortieren
  if (reverse==true){d.reverse();}              //rückwärts
  for (var x=1;x<d.length;x++)                 //wieder so zusammen 01.02.2002|xxxxxx
  {
    if (ignore_year==true)                     //jahr ignorieren
    {
      d[x]=d[x].substr(2,2)+"."+d[x].substr(0,2)+"."+d[x].substr(4,4)+d[x].substr(8,1000);
    }
    else
    {
      d[x]=d[x].substr(6,2)+"."+d[x].substr(4,2)+"."+d[x].substr(0,4)+d[x].substr(8,1000);
    }
  }
  return d;
}
function show_menu(target){
  var sp;
  var flag = false;
  for (var i = 1;i < data_name.length; i++)
  {
    target.write ('<tr><td></td><td id="menu"><b><a href="data.html" title="'+data_name[i]+'" onClick="parent.act_data='+i+'">'+data_name[i]+'</a></b></td></tr>');
  }
}
function show_data(t,d,dnr,thead,buttons,tit,shop)
{
  //alert(t+"\n"+d+"\n"+dnr+"\n"+thead+"\n"+nobutton+"\n"+tit);
  //t=targetwindow,d=data,dnr=datanr,thead=true or cols, nobutton=no buttons

  var sp;
  var flag=false;
  if (d=="" || !t || !dnr){return;} //if missing
  if (shop) //all data is data_data.js (category|name|picture small|big picture|info|number) works with overlib
  {
    t.write ('<h5>'+data_name[dnr]+'</h5>');
//thead=0;
    if (thead)
    {
      t.write ('<table style="border-style: none;" border="0" cellspacing="0" cellpadding="2" width="100%"><tbody>');

      var y = 0;
      for (var x=0;x<d.length;x++)              //all rows
      {
        sp = d[x].split("|");
        if (data_name[dnr]==sp[0])            //only if category
        {
          if (y == 0){ t.write ('<tr>');}
          t.write ('<td style="vertical-align:bottom; text-align: center;" valign="bottom" align="center">');
//          t.write (sp[0]+'X'+sp[1]+'X'+sp[2]+'X'+sp[3]+'X'+sp[4]+'<br>\n');
          var over_onclick = "'<img src=&quot;" + picture_path + sp[3] + "&quot; alt=&quot;&quot; border=&quot;0&quot;><br \><br \>" + popuptext + "',CAPTION,'" + sp[5] + ' - ' + sp[1] + "',STICKY,LEFT,RELY,30"; //STICKY=sticking LEFT=left from mouse, RELY,30 = 30 pixels relative from upper border of windows
          var image_style  = "border-color:#99CCFF; border-width:2px; border-style:solid; padding:1px"
          t.write ('<a href="#" onclick="return overlib(' + over_onclick + ');" onmouseover="return overlib(\'' + sp[4] + clickinfo + '\',CAPTION,\'' + sp[5] + ' - ' + sp[1] + '\');" onmouseout ="nd() ;return true"><img style="' + image_style + '" src="'+picture_path_small+sp[2]+'"></a>&nbsp;');

          t.write ('</td>');
          y++; //next col
          if (y >= thead)
          {
            t.write ('</tr>\n');
            y=0; //first col
          }
        }
      }

      t.write ('</tbody></table>');
    }
    else
    {
      for (var x=0;x<d.length;x++)               //all rows
      {
        sp = d[x].split("|");
        if (data_name[dnr] == sp[0])            //only if category
        {
          var over_onclick = "'<img src=&quot;" + picture_path + sp[3] + "&quot; alt=&quot;&quot; border=&quot;0&quot;><br \><br \>" + popuptext + "',CAPTION,'" + sp[1] + "',STICKY,LEFT,RELY,30"; //STICKY=sticking LEFT=left from mouse, RELY,30 = 30 pixels relative from upper border of windows
          var image_style  = "border-color:#99CCFF; border-width:2px; border-style:solid; padding:2px"
          t.write ('<a href="#" onclick="return overlib(' + over_onclick + ');" onmouseover="return overlib(\'' + sp[4] + clickinfo + '\',CAPTION,\''+sp[1]+'\');" onmouseout ="nd() ;return true"><img style="' + image_style + '" src="'+picture_path_small+sp[2]+'"></a>&nbsp;');
        }
      }
    }
  }
  else
  {

    if (tit){t.write ('<h5>' + data_name[dnr] + '</h5>');}
    t.write ('<form>');
    if (thead)
    {
      var sp = data[dnr][0].split("|");
      t.write ('<table class="data" border="1" cellspacing="0" cellpadding="3" width="100%"><tr>');
      for (var i=0;i<sp.length;i++)            //all cols
      {
        t.write ('<th><b>'+sp[i]+'</b></th>');
      }
      if (buttons)
      {
        t.write ('<th style="text-align: center;"><input type="button" name="neu" value="Neu" onClick="parent.value_new('+dnr+')"></th></tr><tbody>');
      }
      else
      {
        t.write ('<th>&nbsp;</th></tr><tbody>');
      }
    }

    for (var x=0;x<d.length;x++)               //all rows
    {
      if (d[x] && d[x]!=data[dnr][0])          //only if defined and not first row (field names)
      {
        if (flag==true)
        {
          t.write ('<tr class="data_TblBr" valign="top">');
          flag=false;
        }
        else
        {
          t.write ('<tr class="data_TblDa" valign="top">');
          flag=true;
        }
        sp = d[x].split("|");
        for (var i=0;i<sp.length;i++)            //all cols
        {
          if (sp[i])
          {
            t.write ('<td>'+sp[i]+'</td>');
          }
          else
          {
            t.write ('<td>&nbsp;</td>');     //from empty to &nbsp;
          }
        }
        t.write ('</tr>\n');
      }
    }
    if (thead){t.write ('</tbody></table>');}
    t.write ('</form>');

  }
}
function is_date(dat,d,ignore_year)       //die herausfinden die zu datum gehören
{
  //dat muss im format 01.02.2002 vorliegen!!  in d müssen die einträge das datum links haben und im selben format
  var d1 = "";
  for (var x = 0; x < d.length; x++)
  {
    if (ignore_year==true)                        //jahr ignorieren
    {
      if (dat.substr(0,6)==d[x].substr(0,6)){d1 = d1 + "\n" + d[x];}
    }
    else
    {
      if (dat == d[x].substr(0,10)){d1 = d1 + "\n" + d[x];}
    }
  }
  d1 = d1.split("\n");             //kmake Array
  return d1.slice(1, d1.length);  //kill first element
}

//###############################################################
// main
//###############################################################
var act_data=1;
var is_data=true;
if (!data[1])
{
  alert("Die Daten konnten nicht geladen werden!");
  is_data=false;
}