#!/usr/bin/perl -wT

use CGI qw(:standard);
use CGI::Carp qw(fatalsToBrowser);

$q = new CGI;
print $q->header();

##########################################################################################
#
#    Anzeigedatei
#    ©1998-2001, pw-Internet Solutions GmbH
#
#    Support: bloemeke@pw-internet.de
#
#   Jegliche Art der Veränderung, Nutzung, Verwertung oder Vermarktung
#   ist nur mit ausdrücklicher, schriftlicher Zustimmung gestattet
#   und ansonsten grundsätzlich untersagt.
#
#   Stand 21.09.2000
#
##########################################################################################
#  Beginn der Definition der Variablen
##########################################################################################

# Hier wird die Datenbank-Datei definiert
$database = "infodata/infodata.dat";

# Hier wird die Url dieses Perl-Scripts definiert
#$shopurl = "http:www.fertighaus.de/f_haus/info/system/info.pl";

# Hier wird die Anzahl der anzuzeigenden Datensätze pro Shop-Seite definiert
$anzproseite = "100";

# Hier wird die Anzahl der anzuzeigenden Datensätze pro Übersichts-Liste definiert
$anzproliste = "20";

# Hier werden die Feldbezeichnungen definiert (wichtig für Sortierfunktion)
@fields = ("sortierung","checkliste","anleitung","titel","link","rubriken");

##########################################################################################
#  Ende der Definition der Variablen
##########################################################################################


$suchbegriff   = $q->param('suchbegriff');
$suchbegriff = "A" if($suchbegriff eq "");
$suchfeld = $q->param('suchfeld');
$suchfeld = "rubriken" if($suchfeld eq "");
$seitencode   = $q->param('seitencode');
$sort_on = $q->param('sortierung');
$sort_on = "sortierung" if($sort_on eq "");


&suchformular if($seitencode eq suchform);

&datenbanksuche($suchbegriff) if(($seitencode ne suchform) && ($seitencode ne rubrikenliste));
&sort_db if(($seitencode ne suchform) && ($seitencode ne rubrikenliste));
$zaehler = @results;

&kein_eintrag if(($zaehler < 1) && ($seitencode ne suchform) && ($seitencode ne rubrikenliste));
&infoabc if(($zaehler >= 1) && ($seitencode eq infoabc));
&inforubrik if(($zaehler >= 1) && ($seitencode ne infoabc) && ($seitencode ne rubrikenliste));
&rubrikenliste if($seitencode eq rubrikenliste);
$feld_zaehler = @fields;
$colspan = $feld_zaehler+1;


exit;


##########################################################################################
#  Beginn der Subroutinen
##########################################################################################

# Beginn der Subroutine für die Suche der gewünschten Datensätze aus der Datenbank
sub datenbanksuche{
  my $suchbegriff = $_[0];
  open(DB, $database) or die "Die Datenbankdatei konnte nicht geoeffnet werden: $database \n";
    while(<DB>){
      if($suchfeld eq "all"){
        if(/$suchbegriff/oi){push @results, $_};
      } else {
        ($key,$sortierung,$checkliste,$anleitung,$titel,$link,$rubriken)=split(/\|/);
        if(${$suchfeld} =~ /$suchbegriff/oi){push @results, $_};
      } # End of else.
    } # End of while.
  close (DB);
}
# Ende der Subroutine für die Suche der gewünschten Datensätze aus der Datenbank

##########################################################################################

# Beginn der Subroutine für die alphabetische Übersicht aller Info-Seiten als Html-Seite
sub infoabc{

# Das aktuelle Datum
($sec, $min, $hour, $mday, $monthindex, $year, $wday, $yday, $isdst) = localtime(time);
$month = $monthindex + 1;
$shortyear = $year % 100;
$year += 1900;
for ($sec, $min, $hour, $month, $mday, $shortyear) {
    ($_ < 10) and $_ = "0$_";
}

$aktualdat = "$mday.$month.$shortyear";

# Ermittlung der Anzahl der anzuzeigenden Datensätze
#$anzahl = @results;
$anzahl = "0";
if ($seitencode eq "infoabc"){
  foreach $record (@results){
  ($key,$sortierung,$checkliste,$anleitung,$titel,$link,$rubriken) = split(/\|/,$record);
    if (($checkliste ne "")||($anleitung ne "")){
      if ($suchbegriff ne ""){
        if ($suchbegriff eq substr($sortierung,0,1)){
        $anzahl++;
        }
      }
    }
  }
}
else {$anzahl = @results;}

# Ermittlung der Angabe der "rows" für die (Zelle) rechte Spalte der Haupt-Tabelle
$rows = $anzahl + 2;

$pixelhoehe = "150";
# Ermittlung der Höhe der eingebetteten Tabelle in der rechten Spalte der Haupt-Tabelle
$tabellenhoehe1 = $anzahl + 1;
$tabellenhoehe2 = $tabellenhoehe1 * 22;
# Ermittlung der Zellen(Reihen)anzahl für die eingebetteten Tabelle
$reihenanzahl1 = $tabellenhoehe2 / $pixelhoehe;
($reihenanzahl2,$restreihe) = split(/\./,$reihenanzahl1);
if ($reihenanzahl2 eq "0"){$reihenanzahl2 = "1"};
# Ermittlung der Zellen(Reihen)höhe für die eingebetteten Tabelle
$zellenhoehe = $tabellenhoehe2 / $reihenanzahl2;

@alphabet = (A..Z);
@zellenanzahl1 = (1..$reihenanzahl2);
@zellenanzahl2 = reverse(@zellenanzahl1);

  print<<HTML;
 <html> <head>
 <title>fertighaus.de</title>

  <style type="text/css">
<!--
a { font-size:10pt; font-weight:300; color:#002068; font-style:normal;
    text-decoration:underline;
    line-height:12pt;
    font-family:Helvetica,Arial;
    letter-spacing:0.1mm;
    word-spacing:0.8mm; }
a:hover { font-size:10pt; font-weight:300; color:#fff8cc; font-style:normal;
    background-color:#08298c;
    text-decoration:none;
    line-height:12pt;
    font-family:Helvetica,Arial;
    letter-spacing:0.1mm;
    word-spacing:0.8mm; }
//-->
</style>


 </head>
 <body topmargin="0" background="../images/ffond.gif" TEXT="#000000" LINK="#1B0F81" VLINK="#7A070C" ALINK="#7A070C">
 <img src="/pageview/CP" width=1 height=1>

 <font color=#000000 face="Helvetica, Arial">
 <center>
 <table width="600" border="0" cellpadding="0" cellspacing="0">
 </tr>
 <tr>
 <td bgcolor="#E5F3E6" colspan="5"><img src="head-info2.gif" width="600" height="22" alt="Baufachliche Informationen, Checklisten, Güteklassen"></td>
 </tr>
 <tr>
 <td bgcolor="#E5F3E6" colspan="3"><img src="fh-gruen-4.gif" width="600" height="1"></td>
 </tr>
 <tr>
 <td bgcolor="#E5F3E6" colspan="3"><img src="fh-gruen-1.gif" width="600" height="3"></td>
 </tr>
 <tr>
 <td align="center" bgcolor="#E5F3E6" colspan="3">
 <table border="0" cellspacing="0" cellpadding="0"><tr>
 <td>&#160;<img src="fh-gruen-1.gif" width="1" height="12"></td>
HTML

  foreach $i (@alphabet) {
    if ($suchbegriff eq $i){
    print "<td width=\"19\" valign=\"middle\" align=\"center\" bgcolor=\"#08298c\"><font size=\"2\" face=\"ARIAL,HELVETICA\" color=\"#fff8cc\">&#160;$i</font>&#160;</td><td><img src=\"fh-gruen-1.gif\" width=\"4\" height=\"6\"></td>\n";
    }
    else {
    print "<td width=\"19\" valign=\"middle\" align=\"center\" bgcolor=\"#B1C2B3\">&#160;<a href=\"http://www.fertighaus.de/f_haus/info/system/info.pl?seitencode=infoabc&suchbegriff=$i&suchfeld=sortierung\">$i</a>&#160;</td><td><img src=\"fh-gruen-1.gif\" width=\"4\" height=\"6\"></td>\n";
    }
  }
# grün1=#8E9E8F,grün2=#B1C2B3,

print<<HTML;

 <td>&#160;</td>
</tr>
</table>
 </td>
 </tr>
 <tr>
 <td bgcolor="#E5F3E6" colspan="3"><img src="fh-gruen-1.gif" width="600" height="3"></td>
 </tr>
 <tr>
 <td bgcolor="#E5F3E6" colspan="3"><img src="fh-gruen-4.gif" width="600" height="1"></td>
 </tr>
 <tr>
 <td bgcolor="#E5F3E6" colspan="3"><img src="fh-gruen-1.gif" width="600" height="3"></td>
 </tr>
 <tr>
 <td colspan="2"><img src="leer.gif" width="11" height="11"></td>
 <td align="center" valign="top" width="100" bgcolor="#E5F3E6" rowspan="$rows">
 <table height="100%" border="0">

HTML

  foreach $i (@zellenanzahl2) {
  print "<tr><td valign=\"middle\" height=\"$zellenhoehe\"><img src=\"images/infoleiste-$i.jpg\"></td></tr>\n";
  }

  print<<HTML;

 </table>

 </td>
 </tr>
 <tr>

HTML


  foreach $record (@results){
  ($key,$sortierung,$checkliste,$anleitung,$titel,$link,$rubriken) = split(/\|/,$record);

  if (($checkliste ne "")||($anleitung ne "")){
    if ($suchbegriff ne ""){
      if ($suchbegriff eq substr($sortierung,0,1)){
      print "<td height=\"22\" valign=\"top\" width=\"25\"><img src=\"../../images/quadra9.gif\" width=\"17\" height=\"17\" border=\"0\"></td>";
      print "<td height=\"22\" valign=\"top\" width=\"475\"><font face=\"Arial,Helvetica\" size=2><a href=\"../$link\">$titel</a></td></tr><tr>\n";
      }
    }
    else{
    print "<td height=\"22\" valign=\"top\" width=\"25\"><img src=\"../../images/quadra9.gif\" width=\"17\" height=\"17\" border=\"0\"></td>";
    print "<td height=\"22\" valign=\"top\" width=\"475\"><font face=\"Arial,Helvetica\" size=2><a href=\"../$link\">$titel</a></td></tr><tr>\n";
    }

  }
  }

    if ($anzahl eq "0"){
    print "<td height=\"22\" valign=\"top\" width=\"25\"><img src=\"../../images/quadra9.gif\" width=\"17\" height=\"17\" border=\"0\"></td>";
    print "<td height=\"22\" valign=\"top\" width=\"475\"><font face=\"Arial,Helvetica\" size=2>Zu diesem Buchstaben ist kein Eintrag vorhanden!</td></tr><tr>\n";
    }




print<<HTML;

<td colspan="2"><img src="leer.gif" width="11" height="11"></td>
</tr>
<tr>
<td bgcolor="#E5F3E6" colspan="3"><img src="fh-gruen-4.gif" width="600" height="1"></td>
</tr>
<tr>
<td bgcolor="#E5F3E6" colspan="3"><img src="fh-gruen-1.gif" width="600" height="3"></td>
</tr>
<tr>
<td bgcolor="#E5F3E6" align="center" colspan="3"><font face="ARIAL,HELVETICA" size="2">
<a href="javascript:history.back()">zurück zur Übersicht</a>
</td>
</tr>
<tr>
<td bgcolor="#E5F3E6" colspan="3"><img src="fh-gruen-1.gif" width="600" height="3"></td>
</tr>
<tr>
<td bgcolor="#E5F3E6" colspan="3"><img src="fh-gruen-4.gif" width="600" height="1"></td>
</tr>

</table>
<br>
</center>
</form>
</body>
</html>

HTML

}

### Ende der Subroutine für die alphabetische Übersicht aller Info-Seiten als Html-Seite #

##########################################################################################

### Beginn der Subroutine für die alphabetische Übersicht aller Info-Seiten als Html-Seite
sub inforubrik{

# Das aktuelle Datum
($sec, $min, $hour, $mday, $monthindex, $year, $wday, $yday, $isdst) = localtime(time);
$month = $monthindex + 1;
$shortyear = $year % 100;
$year += 1900;
for ($sec, $min, $hour, $month, $mday, $shortyear) {
    ($_ < 10) and $_ = "0$_";
}

$aktualdat = "$mday.$month.$shortyear";

$anzahl = @results;
$rows = $anzahl + 2;

#$tabh1 = $anzahl * 22;
#($tabh,$resttabh) = split(/\./,$tabh1);
#$zellanz1 = $tabh / 200;
#($zellanz2,$restanz) = split(/\./,$zellanz1);
#$zellanz3 = $zellanz2 - 1;
#@zellenanzahl = (1..$zellanz3);

$pixelhoehe = "150";
# Ermittlung der Höhe der eingebetteten Tabelle in der rechten Spalte der Haupt-Tabelle
$tabellenhoehe1 = $anzahl + 1;
$tabellenhoehe2 = $tabellenhoehe1 * 22;
# Ermittlung der Zellen(Reihen)anzahl für die eingebetteten Tabelle
$reihenanzahl1 = $tabellenhoehe2 / $pixelhoehe;
($reihenanzahl2,$restreihe) = split(/\./,$reihenanzahl1);
if ($reihenanzahl2 eq "0"){$reihenanzahl2 = "1"};
# Ermittlung der Zellen(Reihen)höhe für die eingebetteten Tabelle
$zellenhoehe = $tabellenhoehe2 / $reihenanzahl2;

@alphabet = (A..Z);
@zellenanzahl1 = (1..$reihenanzahl2);
@zellenanzahl2 = reverse(@zellenanzahl1);


  print<<HTML;
 <html> <head>
 <title>fertighaus.de</title>

  <style type="text/css">
<!--
a { font-size:10pt; font-weight:300; color:#002068; font-style:normal;
    text-decoration:underline;
    line-height:12pt;
    font-family:Helvetica,Arial;
    letter-spacing:0.1mm;
    word-spacing:0.8mm; }
a:hover { font-size:10pt; font-weight:300; color:#fff8cc; font-style:normal;
    background-color:#08298c;
    text-decoration:none;
    line-height:12pt;
    font-family:Helvetica,Arial;
    letter-spacing:0.1mm;
    word-spacing:0.8mm; }
//-->
</style>


 </head>
 <body topmargin="0" background="../images/ffond.gif" TEXT="#000000" LINK="#1B0F81" VLINK="#7A070C" ALINK="#7A070C">
 <img src="/pageview/CP" width=1 height=1>

 <font color=#000000 face="Helvetica, Arial">
 <center>
 <table width="600" border="0" cellpadding="0" cellspacing="0">
 <tr>

HTML

if (($suchbegriff eq "§farben") && ($suchfeld  eq "rubriken")) {
  print " <td bgcolor=\"#E5F3E6\" colspan=\"2\">";
}
else{
  print " <td bgcolor=\"#E5F3E6\" colspan=\"3\">";
}

print<<HTML;

 <font face="Helvetica, Arial"><font size="2">
 Checklisten und Anleitungen rund um Neubau, Umbau, Renovierung
 <br><font size="4">

HTML

if (($suchbegriff eq "§checkliste") && ($suchfeld  eq "rubriken")) {
  print "Checklisten / Basis-Infos <font size=\"3\">&#151; rund um Hauskauf & Neubau &#151;\n";
  }
elsif (($suchbegriff eq "§keller") && ($suchfeld  eq "rubriken")) {
  print "Keller / Garagen / Carports <font size=\"3\">&#151; Kellerabdichtungen, Fertigkeller, -garagen\n";
  }
elsif (($suchbegriff eq "§bauplan") && ($suchfeld  eq "rubriken")) {
  print "Bauplanung / Bautechnik <font size=\"3\">&#151; Architektenleistungen &#151;\n";
  }
elsif (($suchbegriff eq "§werkzeug") && ($suchfeld  eq "rubriken")) {
  print "Werkzeug / Maschinen / Geräte <font size=\"3\">&#151; Klebebänder, Dübel, Befestigungstechnik &#151;\n";
  }
elsif (($suchbegriff eq "§baumaterial") && ($suchfeld  eq "rubriken")) {
  print "Baumaterialien / Verfahren <font size=\"3\">&#151; vom Baustein bis zum Putz &#151;\n";
  }
elsif (($suchbegriff eq "§fassade") && ($suchfeld  eq "rubriken")) {
  print "Dämmstoffe / Fassaden <font size=\"3\">&#151; dämmen, dichten, isolieren &#151;\n";
  }
elsif (($suchbegriff eq "§bauoeko") && ($suchfeld  eq "rubriken")) {
  print "Bau-Ökologie / alternative Energien <font size=\"3\">&#151; Naturbaustoffe und Verfahren &#151;\n";
  }
elsif (($suchbegriff eq "§sicher") && ($suchfeld  eq "rubriken")) {
  print "Sicherheit / Hauskommunikation <font size=\"3\">&#151; Einbruch, Brandschutz usw. &#151;\n";
  }
elsif (($suchbegriff eq "§fenster") && ($suchfeld  eq "rubriken")) {
  print "Fenster / Türen / Glas <font size=\"3\">&#151; Materialien, Markisen, Rolladen usw. &#151;\n";
  }
elsif (($suchbegriff eq "§bedachung") && ($suchfeld  eq "rubriken")) {
  print "Bedachung / Überdachung <font size=\"3\">&#151; Dachgeschossbau, Vordächer &#151;\n";
  }
elsif (($suchbegriff eq "§boden") && ($suchfeld  eq "rubriken")) {
  print "Bodenbeläge <font size=\"3\">&#151; Holz, Laminat, Teppich usw. &#151;\n";
  }
elsif (($suchbegriff eq "§fliesen") && ($suchfeld  eq "rubriken")) {
  print "Fliesen / Marmor / Naturstein <font size=\"3\">&#151; Material- und Pflegehinweise &#151;\n";
  }
elsif (($suchbegriff eq "§farben") && ($suchfeld  eq "rubriken")) {
  print "Farben / Lacke / Tapeten <font size=\"3\">&#151; Beschichtung innen / außen &#151;\n";
  }
elsif (($suchbegriff eq "§balkon") && ($suchfeld  eq "rubriken")) {
  print "Balkon / Terrasse <font size=\"3\">&#151; Konstruktion, Beläge &#151;\n";
  }
elsif (($suchbegriff eq "§bad") && ($suchfeld  eq "rubriken")) {
  print "Bad / Sanitär <font size=\"3\">&#151; Bäder, Wasser, Armaturen &#151;\n";
  }
elsif (($suchbegriff eq "§heizen") && ($suchfeld  eq "rubriken")) {
  print "Heizung / Lüftung / Elektro <font size=\"3\">&#151; auch unter ökologischem Aspekt &#151;\n";
  }
elsif (($suchbegriff eq "§sanierung") && ($suchfeld  eq "rubriken")) {
  print "Bautenschutz / Sanierung <font size=\"3\">&#151; feuchte Wände, Schimmel &#151;\n";
  }
elsif (($suchbegriff eq "§holz") && ($suchfeld  eq "rubriken")) {
  print "Holz / Holzwerkstoffe / Laminate <font size=\"3\">&#151; Holz innen u. außen, Profilholz, Leisten etc. &#151;\n";
  }
elsif (($suchbegriff eq "§garten") && ($suchfeld  eq "rubriken")) {
  print "Garten / Gartenhäuser / Teich <font size=\"3\">&#151; Winter- und Dachgarten &#151;\n";
  }
elsif (($suchbegriff eq "§allgemein") && ($suchfeld  eq "rubriken")) {
  print "Sonstiges rund um Haus und Garten <font size=\"3\">&#151; Infos für Bauherren und Heimwerker &#151;\n";
  }

else {
  print "Unbestimmte Kategorie\n";
  }

print<<HTML;

 </td>


HTML

if (($suchbegriff eq "§farben") && ($suchfeld  eq "rubriken")) {
  print " <td bgcolor=\"#E5F3E6\">";

}

print<<HTML;

 </tr>
 <tr>
 <td bgcolor="#E5F3E6" colspan="3">
 <hr width="600" noshade size="1">
 </td>
 </tr>

 <tr>
 <td height="16" colspan="2">&#160;
 </td>
 <td width="100" bgcolor="#E5F3E6" rowspan="$rows">
 <table height="100%" border="0">

HTML

  foreach $i (@zellenanzahl2) {
  print "<tr><td valign=\"middle\" height=\"$zellenhoehe\"><img src=\"images/infoleiste-$i.jpg\"></td></tr>\n";
  }

  print<<HTML;

 </table>
 </td>
 </tr>
 <tr>

HTML


$datensatznummer = "0";

  foreach $record (@results){
  ($key,$sortierung,$checkliste,$anleitung,$titel,$link,$rubriken) = split(/\|/,$record);

  if (($checkliste ne "")||($anleitung ne "")){
  print "<td height=\"22\" valign=\"top\" width=\"25\"><img src=\"../../images/quadra9.gif\" width=\"17\" height=\"17\" border=\"0\"></td>";
  print "<td height=\"22\" valign=\"top\" width=\"475\"><font face=\"Arial,Helvetica\" size=2>";
  print "<a href=\"";

      if (substr($link,0,4) eq "http"){
      print "http://www.fertighaus.de/cgi-bin/click.pl/$link\" target=\"_top\">";
      }
      else{
      print "../$link\">";
      }

  print "$titel</a></td></tr><tr>\n";
  }
  }

  print<<HTML;

<td height="16" colspan="2">&#160;
</td>
</tr>

<tr>
<td bgcolor="#E5F3E6" align="center" colspan="3"><font face="ARIAL,HELVETICA" size="2">
<a href="javascript:history.back()">zurück zur Übersicht</a>
</td>
</tr>
</table>
<br>
</center>
</form>
</body>
</html>

HTML

}

### Ende der Subroutine für die alphabetische Übersicht aller Info-Seiten als Html-Seite #

##########################################################################################



##########################################################################################

### Beginn der Subroutine für die Ausgabe des Suchformulars ##############################
sub suchformular{

  print<<HTML;
 <html> <head>
 <title>MB-Shop >> Suchformular <<</title>
 </head>
 <body bgcolor="#fffef6" link="#a80027" vlink="#C0C0C0" alink="#FF0000">
<center>
 <font color="#000000" face="Verdana,Arial,Helvetica" size=3 >
<br><br>
<br><br><br>
<font color="#000000" face="Verdana,Arial,Helvetica" size=3>
<FORM action="http://www.fertighaus.de/f_haus/herstell/herstell.pl" method=post>
Bitte  suchen Sie in unserem Angebot nach einem Stichwort!<br><br>

<B>Suchbegriff:</B>&#160;<input name=suchbegriff size=30>&#160;<INPUT type=submit value="suchen">
</form>
<br><br>
<font size="2">Oder w&auml;hlen Sie eine andere <a href="../haupts/seiten/shop/reservie.htm" target="main"><b>Kategorie</b></a> aus!</font>
<br><br>
</center>
</body>
</html>

HTML

}

### Ende der Subroutine für die Ausgabe des Suchformulars ################################

##########################################################################################

### Beginn der Subroutine für die Ausgabe der Hinweisseite "Keine Einträge gefunden" #####
### als Html-Seite #######################################################################
sub kein_eintrag{

  print<<HTML;
 <html> <head>
 <title>MB-Shop >> Suchergebnis <<</title>
 </head>
 <body bgcolor="#fffef6" link="#a80027" vlink="#C0C0C0" alink="#FF0000">
<center>
 <font color="#000000" face="Verdana,Arial,Helvetica" size=3 >
<br><br>
  <b>Zur Zeit sind zu dem Suchbegriff: &#132; <font color="#a80027">$suchbegriff</font> &#147; <br>
leider keine Angebote verfügbar.</font><br><br><br>
<font color="#000000" face="Verdana,Arial,Helvetica" size=3>
<FORM action="http://www.fertighaus.de/f_haus/herstell/herstell.pl" method=post>
Bitte  suchen Sie in unserem Angebot nach einem Stichwort!<br><br>

<B>Suchbegriff:</B>&#160;<input name=suchbegriff size=30>&#160;<INPUT type=submit value="suchen">
</form>
<br><br>
<font size="2">Oder w&auml;hlen Sie eine andere <a href="../haupts/seiten/shop/reservie.htm" target="main"><b>Kategorie</b></a> aus!</font>
<br><br>
</center>
</body>
</html>

HTML

}
### Ende der Subroutine für die Ausgabe der Hinweis- und Suchseite als Html-Seite ########

##########################################################################################








##########################################################################################

### Beginn der Subroutine für die Sortierung der Suchergebnisse ##########################

sub sort_db{
  foreach $curr (@results){
    ($key,@rest) = split(/\|/, $curr);
    $max = @fields;

    $code='$record{$key} = { key => "$key", ';

    for($x=0;$x<$max;$x++){
      $code .= "\$fields[$x] => \"\$rest[$x]\",\n";
    }

    $code .= '};';

   eval $code;
  } # End of foreach

#  $sort_on = "$fields[$sort]";

  @results=();
  foreach $rp (sort { $a->{$sort_on} cmp $b->{$sort_on} } values %record){
    $new_rec = $rp->{key};
    for($x=0;$x<$max;$x++){
      $new_rec .= "\|$rp->{$fields[$x]}";
    }
    push @results, $new_rec;
  }
}

### Ende der Subroutine für die Sortierung der Suchergebnisse ############################

sub rubrikenliste{

print<<HTML;
 <html> <head>
 <title>fertighaus.de</title>

  <style type="text/css">
<!--
a { font-size:10pt; font-weight:600; color:#002068; font-style:normal;
    text-decoration:underline;
    line-height:12pt;
    font-family:Helvetica,Arial;
    letter-spacing:0.1mm;
    word-spacing:0.8mm; }
a:hover { font-size:10pt; font-weight:600; color:#fff8cc; font-style:normal;
    background-color:#08298c;
    text-decoration:none;
    line-height:12pt;
    font-family:Helvetica,Arial;
    letter-spacing:0.1mm;
    word-spacing:0.8mm; }
p.klein { font-size:8pt; font-weight:300; color:#000000; font-style:normal;
     text-decoration:none; line-height:12pt;
     font-family:arial,helvetica;
     letter-spacing:0.1mm; word-spacing:0.8mm; }

//-->
</style>


 </head>
 <body topmargin="6" background="../images/ffond.gif" TEXT="#000000" LINK="#1B0F81" VLINK="#7A070C" ALINK="#7A070C">
 <center>
 <table align="center" width="640" border="0" cellpadding="0" cellspacing="0">
 <tr>
 <td bgcolor="#E5F3E6" colspan="5"><img src="fh-gruen-4.gif" width="640" height="1"></td>
 </tr>
 <tr>
 <td bgcolor="#E5F3E6" colspan="5"><img src="fh-gruen-1.gif" width="640" height="2"></td>
 </tr>
 <tr>
 <td bgcolor="#E5F3E6" colspan="5"><img src="head-info.gif" width="640" height="22" alt="Baufachliche Informationen, Checklisten, Güteklassen"></td>
 </tr>
 <tr>
 <td bgcolor="#E5F3E6" colspan="5"><img src="fh-gruen-1.gif" width="640" height="2"></td>
 </tr>
 <tr>
 <td bgcolor="#E5F3E6" colspan="5"><img src="fh-gruen-4.gif" width="640" height="1"></td>
 </tr>
 <tr>
 <td height="6" colspan="4"><img src="leer.gif" width="500" height="6"></td>
 <td align="center" valign="middle" width="100" bgcolor="#E5F3E6" rowspan="12">
 <a href="info.pl?seitencode=infoabc"><img src="abc.gif" width="100" height="350" border="0"></a>
 </td>
 </tr>

 <tr>
<td width="22" valign="top"><img src="quadra9.gif" width="17" height="17" border="0"></td>
<td width="248" height="36" valign="top"><p class="klein">
<a href="http://www.fertighaus.de/f_haus/info/system/info.pl?suchbegriff=§checkliste&suchfeld=rubriken">Checklisten / Basis-Infos</a><br>rund um Hauskauf & Neubau
</p></td>
<td width="22" valign="top"><img src="quadra9.gif" width="17" height="17" border="0"></p></td>
<td width="248" height="36" valign="top"><p class="klein">
<a href="http://www.fertighaus.de/f_haus/info/system/info.pl?suchbegriff=§keller&suchfeld=rubriken">Keller / Garagen / Carports</a><br>Kellerabdichtungen, Fertigkeller, -garagen
</p></td>
</tr>

<tr>
<td valign="top"><img src="quadra9.gif" width="17" height="17" border="0"></p></td>
<td height="36" valign="top"><p class="klein">
<a href="http://www.fertighaus.de/f_haus/info/system/info.pl?suchbegriff=§bauplan&suchfeld=rubriken">Bauplanung / Bautechnik</a><br>Architektenleistungen
</p></td>
<td valign="top"><img src="quadra9.gif" width="17" height="17" border="0"></p></td>
<td height="36" valign="top"><p class="klein">
<a href="http://www.fertighaus.de/f_haus/info/system/info.pl?suchbegriff=§werkzeug&suchfeld=rubriken">Werkzeug / Maschinen / Geräte</a><br>Klebebänder, Dübel, Befestigungstechnik
</p></td>
</tr>
<tr>
<td valign="top"><img src="quadra9.gif" width="17" height="17" border="0"></p></td>
<td height="36" valign="top"><p class="klein">
<a href="http://www.fertighaus.de/f_haus/info/system/info.pl?suchbegriff=§baumaterial&suchfeld=rubriken">Baumaterialien / Verfahren</a><br>vom Baustein bis zum Putz
</p></td>
<td valign="top"><img src="quadra9.gif" width="17" height="17" border="0"></p></td>
<td height="36" valign="top"><p class="klein">
<a href="http://www.fertighaus.de/f_haus/info/system/info.pl?suchbegriff=§fassade&suchfeld=rubriken">Dämmstoffe / Fassaden</a><br>dämmen, dichten, isolieren
</p></td>
</tr>
<tr>
<td valign="top"><img src="quadra9.gif" width="17" height="17" border="0"></p></td>
<td height="36" valign="top"><p class="klein">
<a href="http://www.fertighaus.de/f_haus/info/system/info.pl?suchbegriff=§bauoeko&suchfeld=rubriken">Bau-Ökologie / alternative Energien</a><br>Naturbaustoffe und Verfahren
</p></td>
<td valign="top"><img src="quadra9.gif" width="17" height="17" border="0"></p></td>
<td height="36" valign="top"><p class="klein">
<a href="http://www.fertighaus.de/f_haus/info/system/info.pl?suchbegriff=§sicher&suchfeld=rubriken">Sicherheit / Hauskommunikation</a><br>Einbruch, Brandschutz usw.
</p></td>
</tr>
<tr>
<td valign="top"><img src="quadra9.gif" width="17" height="17" border="0"></p></td>
<td height="36" valign="top"><p class="klein">
<a href="http://www.fertighaus.de/f_haus/info/system/info.pl?suchbegriff=§fenster&suchfeld=rubriken">Fenster / Türen / Glas</a><br>Materialien, Markisen usw.
</p></td>
<td valign="top"><img src="quadra9.gif" width="17" height="17" border="0"></p></td>
<td height="36" valign="top"><p class="klein">
<a href="http://www.fertighaus.de/f_haus/info/system/info.pl?suchbegriff=§bedachung&suchfeld=rubriken">Bedachung / Überdachung</a><br>Dachgeschossausbau, Vordächer
</p></td>
</tr>
<tr>
<td valign="top"><img src="quadra9.gif" width="17" height="17" border="0"></p></td>
<td height="36" valign="top"><p class="klein">
<a href="http://www.fertighaus.de/f_haus/info/system/info.pl?suchbegriff=§boden&suchfeld=rubriken">Bodenbeläge</a><br>Holz, Laminat, Teppich usw.
</p></td>
<td valign="top"><img src="quadra9.gif" width="17" height="17" border="0"></p></td>
<td height="36" valign="top"><p class="klein">
<a href="http://www.fertighaus.de/f_haus/info/system/info.pl?suchbegriff=§fliesen&suchfeld=rubriken">Fliesen / Marmor / Naturstein</a><br>Material- und Pflegehinweise
</p></td>
</tr>
<tr>
<td valign="top"><img src="quadra9.gif" width="17" height="17" border="0"></p></td>
<td height="36" valign="top"><p class="klein">
<a href="http://www.fertighaus.de/f_haus/info/system/info.pl?suchbegriff=§farben&suchfeld=rubriken">Farben / Lacke / Tapeten</a><br>Beschichtung innen / außen
</p></td>
<td valign="top"><img src="quadra9.gif" width="17" height="17" border="0"></p></td>
<td height="36" valign="top"><p class="klein">
<a href="http://www.fertighaus.de/f_haus/info/system/info.pl?suchbegriff=§balkon&suchfeld=rubriken">Balkon / Terrasse</a><br>Konstruktion, Beläge
</p></td>
</tr>
<tr>
<td valign="top"><img src="quadra9.gif" width="17" height="17" border="0"></p></td>
<td height="36" valign="top"><p class="klein">
<a href="http://www.fertighaus.de/f_haus/info/system/info.pl?suchbegriff=§bad&suchfeld=rubriken">Bad / Sanitär</a><br>Bäder, Wasser, Armaturen
</p></td>
<td valign="top"><img src="quadra9.gif" width="17" height="17" border="0"></p></td>
<td height="36" valign="top"><p class="klein">
<a href="http://www.fertighaus.de/f_haus/info/system/info.pl?suchbegriff=§heizen&suchfeld=rubriken">Heizung / Lüftung / Elektro</a><br>auch unter ökol. Aspekt
</p></td>
</tr>
<tr>
<td valign="top"><img src="quadra9.gif" width="17" height="17" border="0"></p></td>
<td height="36" valign="top"><p class="klein">
<a href="http://www.fertighaus.de/f_haus/info/system/info.pl?suchbegriff=§sanierung&suchfeld=rubriken">Bautenschutz / Sanierung</a><br>feuchte Wände, Schimmel
</p></td>
<td valign="top"><img src="quadra9.gif" width="17" height="17" border="0"></p></td>
<td height="36" valign="top"><p class="klein">
<a href="http://www.fertighaus.de/f_haus/info/system/info.pl?suchbegriff=§holz&suchfeld=rubriken">Holz / Holzwerkstoffe / Laminate</a><br>Holz innen u. außen, Profilholz, Leisten etc.
</p></td>
</tr>
<tr>
<td valign="top"><img src="quadra9.gif" width="17" height="17" border="0"></p></td>
<td height="36" valign="top"><p class="klein">
<a href="http://www.fertighaus.de/f_haus/info/system/info.pl?suchbegriff=§garten&suchfeld=rubriken">Garten / Gartenhäuser / Teich</a><br>Wintergärten, Dachgärten
</p></td>
<td valign="top"><img src="quadra9.gif" width="17" height="17" border="0"></p></td>
<td height="36" valign="top"><p class="klein">
<a href="http://www.fertighaus.de/f_haus/info/system/info.pl?suchbegriff=§allgemein&suchfeld=rubriken">Sonstiges rund um Haus & Garten</a><br>Infos für Bauherren und Heimwerker
</p></td>
</tr>

<tr>
<td height="4" colspan="4"><img src="leer.gif" width="500" height="2"></td>
</tr>
<tr>
<td bgcolor="#E5F3E6" colspan="5"><img src="fh-gruen-4.gif" width="640" height="1"></td>
</tr>
<tr>
<td bgcolor="#E5F3E6" colspan="5"><img src="fh-gruen-1.gif" width="640" height="2"></td>
</tr>
<tr>
<td bgcolor="#E5F3E6" align="center" colspan="5"><font face="ARIAL,HELVETICA" size="2">
<a href="javascript:history.back()">zurück</a>
</td>
</tr>
<tr>
<td bgcolor="#E5F3E6" colspan="5"><img src="fh-gruen-1.gif" width="640" height="2"></td>
</tr>
<tr>
<td bgcolor="#E5F3E6" colspan="5"><img src="fh-gruen-4.gif" width="640" height="1"></td>
</tr>
</table>
</center>
</body>
</html>

HTML

}

##########################################################################################
#  Ende der Subroutinen
##########################################################################################