Index: trunk/mapbender/http/nav/alkisnav_eig.php
===================================================================
--- trunk/mapbender/http/nav/alkisnav_eig.php	(revision 280)
+++ trunk/mapbender/http/nav/alkisnav_eig.php	(revision 282)
@@ -1,10 +1,4 @@
 <?php
 /* Version vom
-	24.10.2011	Nach Pos-Klick Highlight erneuern statt hideHighlight
-	17.11.2011	Nachweis-Links ÃŒber javascript im neuen Hochformat-Fenster
-	02.12.2011	Suche nach Vorname Nachname oder Nachname
-	09.12.2011	Filter "Gemeinde" fÃŒr Ebene FlurstÃŒcke.
-					Filter "Gemeinde" fÃŒr Personen ÃŒber neue Hilfstabelle "gemeinde_person".
-					Format css Person (Rahmen).
 	2013-04-16 "import_request_variables" entfÃ€llt in PHP 5.4
 	2013-04-26	Ersetzen View "gemeinde_gemarkung" durch Tabelle "pp_gemarkung".
@@ -14,5 +8,6 @@
 					Dazu Var-Namen harmonisieren: $gb wird $blattgml.
 					ZurÃŒck-Link, Titel der Transaktion anzeigen.
-	2013-04-29	Test mit IE
+	2013-04-29	Darstellung mit IE
+	2013-05-07  Strukturierung des Programms, redundanten Code in Functions zusammen fassen
 */
 $cntget = extract($_GET);
@@ -43,5 +38,5 @@
 <body>
 <a href='javascript:history.back()'>
-	<img src="ico/zurueck.ico" width="16" height="16" alt="&lt;&lt;" title="zur&uuml;ck" />
+	<img src="ico/zurueck.ico" width="16" height="16" alt="&lt;&lt;" title="zur&uuml;ck">
 </a>
 <dfn class='title' id='transaktiontitle'></dfn>
@@ -51,5 +46,5 @@
 // Einen Link generieren, um nach anderen Personen mit gleichem Familiennamen zu suchen
 function familiensuche() {
-	global $gkz, $gemeinde, $epsg, $name; // $debug
+	global $gkz, $gemeinde, $epsg, $name;
 	if(isset($name)) { // Familiensuche
 		echo "\n<div class='back' title='Andere Personen mit diesem Nachnamen'>";
@@ -61,20 +56,14 @@
 }
 
-// Adresse und Geburtsdatum der aktuellen Person ausgeben
-function personendaten() {
+function personendaten() { // Adresse und Geburtsdatum der aktuellen Person ausgeben
 	global $gkz, $gemeinde, $epsg, $name, $person, $blattgml, $auskpath; // $debug
 	$sql ="SELECT p.nachnameoderfirma, p.vorname, p.geburtsdatum, p.namensbestandteil, ";
 	$sql.="a.ort_post, a.postleitzahlpostzustellung AS plz, a.strasse, a.hausnummer ";
-	$sql.="FROM ax_person p ";
-	$sql.="LEFT JOIN alkis_beziehungen b ON p.gml_id=b.beziehung_von ";
-	$sql.="LEFT JOIN ax_anschrift a ON a.gml_id=b.beziehung_zu ";
-	#sql.="WHERE p.gml_id= $1 AND b.beziehungsart='hat';";  // passt nicht zum LEFT
-	$sql.="WHERE p.gml_id= $1 ;";	
+	$sql.="FROM ax_person p LEFT JOIN alkis_beziehungen b ON p.gml_id=b.beziehung_von ";
+	$sql.="LEFT JOIN ax_anschrift a ON a.gml_id=b.beziehung_zu WHERE p.gml_id= $1 ;";	
 	$v=array($person);
 	$res=pg_prepare("", $sql);
 	$res=pg_execute("", $v);
-	if (!$res) {
-		echo "\n<p class='err'>Fehler bei Name</p>\n";
-	}
+	if (!$res) {echo "\n<p class='err'>Fehler bei Name</p>\n";}
 	echo "\n\t<table>\n\t<tr>\n\t\t<td valign='top'>";
 		// Sp. 1: Icon, Link zur Auskunft Person
@@ -100,10 +89,7 @@
 
 function getEigByName() {
-// 1 =============================
-// Eigentuemer nach Name(-nsanfang)
-// ===============================
-	global $gkz, $gemeinde, $epsg, $name, $person, $gfilter, $auskpath;
+	// 1 // Eigentuemer nach Name(-nsanfang)
+	global $gkz, $gemeinde, $epsg, $name, $person, $gfilter;
 	$linelimit=150;
-
 	$arr = explode(",", $name);
 	$name0 = trim($arr[0]);
@@ -148,12 +134,8 @@
 	$cnt = 0;
 	while($row = pg_fetch_array($res)) {
-		$nnam=htmlentities($row["nachnameoderfirma"], ENT_QUOTES, "UTF-8");
-		$vnam=htmlentities($row["vorname"], ENT_QUOTES, "UTF-8");
-		$gml=$row["gml_id"];
-		// Link zur Auskunft Person  +++ Icon differenzieren? Firma/Person
-		echo "\n<br>\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisnamstruk.php?gkz=".$gkz."&amp;gemeinde=".$gemeinde."&amp;gmlid=".$gml."\")'>";
-			echo "\n\t\t<img class='nwlink' src='ico/Eigentuemer.ico' width='16' height='16' alt='EIG'>";
-		echo "\n\t</a> ";		
-		echo "\n<a title='Person' href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&amp;gemeinde=".$gemeinde."&amp;epsg=".$epsg."&amp;person=".$gml."&amp;name=".$nnam."'>".$nnam.", ".$vnam."</a>";
+		$nachname=$row["nachnameoderfirma"];
+		$vorname=$row["vorname"];
+		$persongml=$row["gml_id"];
+		zeile_person ($persongml, $nachname, $vorname);
 		$cnt++;
 	}
@@ -163,5 +145,5 @@
 		echo "\n<p class='anz' title='Bitte den Namen eindeutiger qualifizieren'>... und weitere</p>";
 	} elseif($cnt == 1){ // Eindeutig!
-		$person = $gml;
+		$person = $persongml;
 	} else {
 		echo "\n<p class='anz'>".$cnt." Eigent&uuml;mer mit '".$name."'</p>";	// im Limit
@@ -171,7 +153,5 @@
 
 function getGBbyPerson() {
-// 2 =================================
-// GrundbÃŒcher zur gewÃ€hlten Person
-// ===================================
+	// 2 // GrundbÃŒcher zur gewÃ€hlten Person
 // Es wird in dieser Function nicht geprÃŒft, ob die gefundenen GrundbÃŒcher auch FlurstÃŒcke
 // haben, die im gefilterten Bereich (Gemeinde) liegen. Es kÃ¶nnen daher Sackgassen entstehen,
@@ -181,10 +161,8 @@
 // Alternativ wÃŒrde eine Hilfstabelle benÃ¶tigt, in der im PostProcessing 
 // das GB-zu-Gemeinde-VerhÃ€ltnis vorbereitet wird.
-	global $gkz, $gemeinde, $epsg, $name, $person, $blattgml, $auskpath, $debug, $bltbez, $bltblatt, $bltseite;
+	global $gkz, $gemeinde, $epsg, $name, $person, $blattgml, $debug, $bltbez, $bltblatt, $bltseite;
 	$linelimit=150;
-	$linelimit=15;  // +++ TEST +++	
 	familiensuche();
 	personendaten();
-	#if ($debug > 0) {echo "\n<p>Nur Grundb&uuml;cher</p>"; }
 	// Suche nach GrundbÃŒchern der Person
 	$sql ="SELECT gb.gml_id AS gml_g, gb.buchungsblattnummermitbuchstabenerweiterung as blatt, b.bezeichnung AS beznam ";
@@ -218,10 +196,5 @@
 		$beznam=$row["beznam"];
 		$blatt=$row["blatt"];
-		echo "\n<div class='gb'>";
-			echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisbestnw.php?gkz=".$gkz."&amp;gemeinde=".$gemeinde."&amp;gmlid=".$gml."\")'>";
-				echo "\n\t\t<img class='nwlink' src='ico/GBBlatt_link.ico' width='16' height='16' alt='GB'>";
-			echo "\n\t</a> ";		
-			echo "\n\t".$beznam."<a title='Grundbuch' href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&amp;gemeinde=".$gemeinde."&amp;epsg=".$epsg."&amp;blattgml=".$gml."&amp;person=".$person."'> Blatt ".$blatt."&nbsp;</a>";
-		echo "\n</div>";
+		zeile_blatt ($zgbbez, $beznam, $gml, $blatt, false, $person);
 		$cnt++;
 	}
@@ -245,15 +218,11 @@
 
 function getFSbyGB($backlink) {
-// 3 =================================
-// FlurstÃŒcke zum gewÃ€hlten Grundbuch
-// ===================================
+	// 3 // FlurstÃŒcke zum Grundbuch
 // Zu einem Grundbuch (gml_id als Parameter) werden alle darauf gebuchten FlurstÃŒcke gesucht.
 // Im ersten Schritt sind das direkt gebuchten FlurstÃŒcke.
 // Im zweiten Schritt wird gesucht nach Rechten einer Buchungstelle des durchsuchten Blattes an anderen
-// Buchungstellen. Es werden dann die FlurstÃŒcke darauf gelistet.
-	global $gkz, $gemeinde, $name, $person, $blattgml, $scalefs, $auskpath, $epsg, $gfilter, $debug;
-	$linelimit=150;
+// Buchungstellen.
+	global $gkz, $gemeinde, $name, $person, $blattgml, $epsg, $gfilter, $debug;
 	if($backlink) { // Erneuter Ansatz bei Person oder GB mÃ¶glich.
-
 		// Namen ermitteln
 		$sql ="SELECT nachnameoderfirma, vorname FROM ax_person WHERE gml_id = $1 ";
@@ -261,10 +230,9 @@
 	 	$res=pg_prepare("", $sql);
 		$res=pg_execute("", $v);
-		if (!$res) {
-			echo "\n<p class='err'>Fehler bei Eigent&uuml;mer</p>";
-		}
+		if (!$res) {echo "\n<p class='err'>Fehler bei Eigent&uuml;mer</p>";}
 		$row = pg_fetch_array($res); // nur eine Zeile
 		$nnam=htmlentities($row["nachnameoderfirma"], ENT_QUOTES, "UTF-8");
 		$vnam=htmlentities($row["vorname"], ENT_QUOTES, "UTF-8");
+
 		echo "\n\t<div class='back' title='zur&uuml;ck zur Person'>";
 			echo "\n\t\t<img class='nwlink' src='ico/Eigentuemer.ico' width='16' height='16' alt='EIG'> ";
@@ -274,33 +242,25 @@
 
 		// Grundbuch-Daten ermitteln
-		$sql ="SELECT gb.gml_id AS gml_g, gb.buchungsblattnummermitbuchstabenerweiterung as blatt, b.bezeichnung AS beznam ";
-		$sql.="FROM ax_buchungsblatt gb JOIN ax_buchungsblattbezirk b ON gb.land = b.land AND gb.bezirk = b.bezirk ";
+		$sql ="SELECT gb.gml_id AS gml_g, gb.buchungsblattnummermitbuchstabenerweiterung as blatt, b.bezirk, b.bezeichnung AS beznam ";
+		$sql.="FROM ax_buchungsblatt gb JOIN ax_buchungsblattbezirk b ON gb.land=b.land AND gb.bezirk=b.bezirk ";
 		$sql.="WHERE gb.gml_id= $1 ;";
 		$v=array($blattgml);
 		$res=pg_prepare("", $sql);
 		$res=pg_execute("", $v);
-		if (!$res) {
-			echo "\n<p class='err'>Fehler bei Grundbuch</p>";
-		}
-		$row = pg_fetch_array($res); // nur eine Zeile
+		if (!$res) {echo "\n<p class='err'>Fehler bei Grundbuch</p>";}
+		$row = pg_fetch_array($res); // eine Zeile
 		$gml=$row["gml_g"];
+		$bezirk=$row["bezirk"];
 		$beznam=$row["beznam"];
 		$blatt=$row["blatt"];
-		echo "<div class='gb'>";
-			echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisbestnw.php?gkz=".$gkz."&amp;gmlid=".$blattgml."\")'>";
-				echo "\n\t\t<img class='nwlink' src='ico/GBBlatt_link.ico' width='16' height='16' alt='GB'>";
-			echo "\n\t</a>&nbsp;".$beznam." Blatt ".$blatt;
-		echo "</div>";	
-	}
-
-	GB_Buchung_FS($linelimit); // Externe Function: Blatt > GrundstÃŒck > Flurst.
-	
+		zeile_blatt ($bezirk, $beznam, $blattgml, $blatt, false, $person);	
+	}
+	GB_Buchung_FS(200); // Blatt > GrundstÃŒck > Flurst. (max. 200))
 	return;
 }
 
 function getGBuFSbyPerson() {
-// 2 + 3 =========================================
-// GrundbÃŒcher UND FlurstÃŒcke zur gewÃ€hlten Person
-// ===============================================
+	// 2 + 3 // GrundbÃŒcher UND FlurstÃŒcke zur gewÃ€hlten Person
+//
 // Dies ist die Kombination von Stufe 2 (GrundbÃŒcher zur Person) und 3 (FlurstÃŒcke zum Grundbuch) 
 // in einem einzelnen Schritt. Wenn auf Gemeinde gefiltert wird, dann kÃ¶nnen in Stufe 2 (noch ohne Filter)
@@ -311,5 +271,5 @@
 // Stufe 2 und 3 nacheinander verwendet werden. Dies ist wahrscheinlich ÃŒbersichtlicher, 
 // weil "ungefiltert" in "2+3" zu lange Listen entstehen wÃŒrden, die durchblÃ€ttert werden mÃŒssen. 
-	global $gkz, $gemeinde, $epsg, $name, $person, $blattgml, $auskpath, $scalefs, $gfilter, $debug, $bltbez, $bltblatt, $bltbvnr, $bltseite, $bltrecht;
+	global $gkz, $gemeinde, $epsg, $name, $person, $blattgml, $gfilter, $debug, $bltbez, $bltblatt, $bltbvnr, $bltseite, $bltrecht;
 	$linelimit=80; // als Limit "Anzahl FlurstÃŒcke" in den beiden folgenden Abfragen
 	// darf nun etwas knapper sein, weil man jetzt blÃ€ttern kann
@@ -375,5 +335,5 @@
 		$bltwhere.="OR (b.bezeichnung = '".$bltbez."' AND gb.buchungsblattnummermitbuchstabenerweiterung > '".$bltblatt."') ";
 		$bltwhere.="OR (b.bezeichnung = '".$bltbez."' AND gb.buchungsblattnummermitbuchstabenerweiterung = '".$bltblatt."' AND cast(s1.laufendenummer AS integer) >= ".$bltbvnr." )) ";
-	} // FlurstÃŒcke in der BVNR werden ggf. wiederholt
+	} // FlurstÃŒcke in der angeblÃ€tterten BVNR werden ggf. wiederholt
 
 	if ($bltseite == "") { // auf Seite 1 beide Teile ausgegeben
@@ -395,5 +355,4 @@
 		// Blatt <vbg/istBestandteilVon<  Buchungsstelle <vfb/istGebucht< Flurstck.
 		$sql=$sql1.$sqla1.$sql2.$bltwhere.$sql3; // Direkte Buchungen
-	
 		$v=array($person, $linelimit);
 		$res=pg_prepare("", $sql);
@@ -401,5 +360,4 @@
 		if (!$res) {
 			echo "\n<p class='err'>Fehler bei Buchung und Flurst&uuml;ck.</p>";
-			if ($debug >= 3) {echo "\n<p class='err'>".$sql."</p>";}
 			return;
 		}
@@ -408,33 +366,16 @@
 		while($row = pg_fetch_array($res)) {	
 			$gb_gml=$row["gml_g"];
-	
-			// Gruppenwechsel auf Ebene Grundbuch
-			if ($gwgb != $gb_gml) {
+			if ($gwgb != $gb_gml) { // Gruppierung Blatt (Grundbuch)
 				$beznam=$row["beznam"];
 				$blatt=$row["blatt"];
-				echo "\n<div class='gb'>"; // Ausgabe GB - B L A T T 
-					echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisbestnw.php?gkz=".$gkz."&amp;gemeinde=".$gemeinde."&amp;gmlid=".$gb_gml."\")'>";
-						echo "\n\t\t<img class='nwlink' src='ico/GBBlatt_link.ico' width='16' height='16' alt='GB'>";
-					echo "\n\t</a> ";		
-					echo "\n\t".$beznam."<a title='Grundbuch' href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&amp;gemeinde=".$gemeinde."&amp;epsg=".$epsg."&amp;blattgml=".$gb_gml."&amp;person=".$person."'> Blatt ".$blatt."&nbsp;</a>";
-				echo "\n</div>";
+				zeile_blatt ($bezirk, $beznam, $gb_gml, $blatt, false, $person);
 				$gwgb = $gb_gml;	// Steuerg GW GB
 				$gwbv = ""; 		// Steuerg GW BVNR
 			}
-	
-			// Gruppenwechsel auf Ebene Buchungs-Stelle (BVNR)
 			$bvnr=$row["lfd"];
-			if ($gwbv != $bvnr) {
-				if ($bvnr == 0) {
-					$bvnra = "-";
-				} else {
-					$bvnra = str_pad($bvnr, 4, "0", STR_PAD_LEFT); // auf 4 Stellen
-				}
-				$gwbv = $bvnr; // Steuerg GW BVNR
-				echo "\n<div class='gs' title='Grundst&uuml;ck'>";
-				echo "<img class='nwlink' src='ico/Grundstueck.ico' width='16' height='16' alt='GS'> ";
-				echo "Buchung ".$bvnra."</div>";
+			if ($gwbv != $bvnr) { // Gruppierung Buchung (BVNR)
+				$gwbv = $bvnr;
+				zeile_buchung ($bsgml, $bvnr, "", false);
 			}
-	
 			$fs_gml=$row["gml_id"];
 			$gmkg=$row["gemarkungsname"];
@@ -444,24 +385,9 @@
 			$x=$row["x"];
 			$y=$row["y"];
-			echo "\n<div class='fs'>"; // F L U R S T Ã C K
-				echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisfsnw.php?gkz=".$gkz."&amp;gmlid=".$fs_gml."\")'>";
-					echo "\n\t\t<img class='nwlink' src='ico/Flurstueck_Link.ico' width='16' height='16' alt='FS'>";
-				echo "\n\t</a> ";	
-				echo "\n\t".$gmkg." <a title='Flurst&uuml;ck positionieren 1:".$scalefs."' href='";
-						echo "javascript:";
-						echo "transtitle(\"auf Flurst&uuml;ck positioniert\"); ";
-						echo "parent.parent.parent.mb_repaintScale(\"mapframe1\",".$x.",".$y.",".$scalefs."); ";
-						echo "parent.parent.showHighlight(".$x.",".$y.");' ";
-					echo "onmouseover='parent.parent.showHighlight(".$x.",".$y.")' ";
-					echo "onmouseout='parent.parent.hideHighlight()'>";
-				echo " Flur ".$flur." ".$fskenn."</a>";
-			echo "\n</div>";
+			zeile_flurstueck ($fs_gml, $fskenn, $x, $y, $gmkg, $flur );
 			$zfs1++;
 		}
 		if($zfs1 == 0) {
-			if ($bltrecht == "ohne") {
-				echo "\n<p class='anz'>Keine direkte Buchung gefunden.</p>";
-				#if ($debug >= 3) {echo "\n<p class='dbg'>".$sql."</p>";}
-			}
+			if ($bltrecht == "ohne") {echo "\n<p class='anz'>Keine direkte Buchung gefunden.</p>";}
 		} elseif($zfs1 >= $linelimit) { // das Limit war zu knapp, das  B l Ã€ t t e r n  anbieten
 			echo "\n<p class='blt'>".$zfs1." Flurst&uuml;cke";
@@ -476,5 +402,4 @@
 		}
 	}	
-
 	if ($bltrecht == "" and $zfs1 > 0) { // beides
 		echo "<hr>"; // dann Trenner
@@ -491,5 +416,4 @@
 		if (!$res) {
 			echo "\n<p class='err'>Fehler bei Recht an Buchung.</p>";
-			if ($debug >= 3) {echo "\n<p class='dbg'>".$sql."</p>";}
 			return;
 		}
@@ -497,51 +421,25 @@
 		$gwgb="";
 		while($row = pg_fetch_array($res)) {	
-			// Gruppenwechsel auf Ebene Grundbuch
 			$gb_gml=$row["gml_g"];
-			if ($gwgb != $gb_gml) { 
+			if ($gwgb != $gb_gml) {  // Gruppierung Blatt (Grundbuch)
 				$beznam=$row["beznam"];
 				$blatt=$row["blatt"];
-				echo "\n<div class='gb'>"; // Ausgabe GB
-					echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisbestnw.php?gkz=".$gkz."&amp;gemeinde=".$gemeinde."&amp;gmlid=".$gb_gml."\")'>";
-						echo "\n\t\t<img class='nwlink' src='ico/GBBlatt_link.ico' width='16' height='16' alt='GB'>";
-					echo "\n\t</a> ";		
-					echo "\n\t".$beznam."<a title='Grundbuch' href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&amp;gemeinde=".$gemeinde."&amp;epsg=".$epsg."&amp;blattgml=".$gb_gml."&amp;person=".$person."'> Blatt ".$blatt."&nbsp;</a>";
-				echo "\n</div>";
+				zeile_blatt ($bezirk, $beznam, $gb_gml, $blatt, false, $person);
 				$gwgb = $gb_gml;	// Steuerg GW GB
 				$gwbv = ""; 		// Steuerg GW BVNR
 			}
-
-			// Gruppenwechsel auf Ebene Buchungs-Stelle (BVNR)
 			$bvnr=$row["lfd"];
-			if ($gwbv != $bvnr) {
-				if ($bvnr == 0) {
-					$bvnra = "-";
-				} else {
-					$bvnra = str_pad($bvnr, 4, "0", STR_PAD_LEFT); // auf 4 Stellen
-				}
-				$gwbv = $bvnr; // Steuerg GW BVNR
-				echo "\n<div class='gs' title='Grundst&uuml;ck'>";
-				echo "<img class='nwlink' src='ico/Grundstueck.ico' width='16' height='16' alt='GS'> ";
-				echo "Buchung ".$bvnra."</div>";
+			if ($gwbv != $bvnr) { // Gruppierung Buchungs (BVNR)
+				$gwbv = $bvnr;
+				zeile_buchung ($bsgml, $bvnr, "", true); // Recht an ...
 			}
-
 			$fs_gml=$row["gml_id"];
 			$gmkg=$row["gemarkungsname"];
 			$flur=$row["flurnummer"];
 			$fskenn=$row["zaehler"];
-			if ($row["nenner"] != "") {$fskenn.="/".$row["nenner"];} // Bruchnummer
+			if ($row["nenner"] != "") {$fskenn.="/".$row["nenner"];}
 			$x=$row["x"];
 			$y=$row["y"];
-			echo "\n<div class='fs'>";
-				echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisfsnw.php?gkz=".$gkz."&amp;gmlid=".$fs_gml."\")'>";
-					echo "\n\t\t<img class='nwlink' src='ico/Flurstueck_Link.ico' width='16' height='16' alt='FS'>";
-				echo "\n\t</a> ";	
-				echo "\n\tRecht an ".$gmkg." <a title='Flurst&uuml;ck positionieren 1:".$scalefs."' href='";
-						echo "javascript:parent.parent.parent.mb_repaintScale(\"mapframe1\",".$x.",".$y.",".$scalefs."); ";
-						echo "parent.parent.showHighlight(".$x.",".$y.");' ";
-					echo "onmouseover='parent.parent.showHighlight(".$x.",".$y.")' ";
-					echo "onmouseout='parent.parent.hideHighlight()'>";
-				echo " Flur ".$flur." ".$fskenn."</a>";
-			echo "\n</div>";
+			zeile_flurstueck ($fs_gml, $fskenn, $x, $y, $gmkg, $flur);
 			$zfs2++;
 		}
@@ -549,5 +447,4 @@
 			if ($zfs1 == 0 or $bltrecht == "nur") { // keine Meldung wenn schon in Teil 1 eine Ausgabe
 				echo "\n<p class='anz'>Keine Rechte an Buchungen.</p>";
-				#if ($debug >= 3) {echo "\n<p class='dbg'>".$sql."</p>";}
 			}
 		} elseif($zfs2 >= $linelimit) { // das Limit war zu knapp, das  B l Ã€ t t e r n  anbieten
@@ -569,5 +466,4 @@
 // Start hier!
 // ===========
-
 // Parameter:  
 // 1. name   = Suche nach Namensanfang oder -bestandteil.
@@ -576,11 +472,8 @@
 
 if(isset($epsg)) {
-	#if ($debug >= 2) {echo "\n<p class='dbg'>aktueller EPSG='".$epsg."'</p>";} // aus MB
 	$epsg = str_replace("EPSG:", "" , $_REQUEST["epsg"]);	
 } else {
-	#if ($debug >= 1) {echo "<p class='dbg'>kein EPSG gesetzt</p>";}	
 	$epsg=$gui_epsg; // aus Conf
 }
-#if ($debug >= 2) {echo "\n<p class='dbg'>Filter Gemeinde = '".$gemeinde."'</p>";}
 if ($gemeinde == "") {
 	$gfilter = 0; // Gemeinde ungefiltert
@@ -592,5 +485,5 @@
 
 // Quo Vadis?
-if(isset($blattgml)) {		// 3. Stufe: FlurstÃŒcke zum Grundbuch
+if(isset($blattgml)) {		// FlurstÃŒcke zum Grundbuch
 
 	// Das Programm hat sich selbst verlinkt aus einer Liste der GB zu einem EigentÃŒmer.
@@ -599,5 +492,5 @@
 	getFSbyGB(true);				// mit BackLink
 
-} elseif(isset($person)) { 	// 2. Stufe: GrundbÃŒcher zur Person
+} elseif(isset($person)) { 	// GrundbÃŒcher zur Person
 	// Das Programm hat sich selbst verlinkt aus einer Liste der Personen zu einer Suchmaske.
 	if ($debug >= 2) {echo "\n<p class='dbg'>Gemeinde-Filter-Steuerung = '".$gfilter."'</p>";}
@@ -609,6 +502,4 @@
 		getGBbyPerson();
 		// Also schrittweise erst mal Stufe 2 = GrundbÃŒcher zur Person suchen.
-		// Diese Function hat auch noch keine Gemeinde-Filter-Funktion auf GB-Ebene.
-									
 		if(isset($blattgml) ) {	// Es wurde nur EIN Grundbuch zu der Person gefunden.
 			$trans="1 Blatt zum Eigent&uuml;mer";
@@ -617,17 +508,21 @@
 
 	} else { 						// mit Filter auf Gemeinde: weniger Daten?
-
 		$trans="Grundb. und Flurst. zum Eigent&uuml;mer";
 		getGBuFSbyPerson();		// Schritte 2+3 gleichzeitig, dabei Gemeinde-Filter auf Stufe 3
 	}
 
-} elseif(isset($name)) {	// Suchbegriff aus Form - 1. Stufe: Suche nach Name
+} elseif(isset($name)) {	// Suchbegriff aus Form: Suche nach Name
 
 	$trans="Namensuche \"".$name."\"";
 	getEigByName(); 			// Suchen nach Namensanfang
 
-	if(isset($person)) {		// genau EIN Treffer
-		$trans="1 Grundbuch zum Namen";
-		getGBbyPerson();		// Dann gleich das Grundbuch hinterher
+	if(isset($person)) {		// genau EIN Treffer zum Namen
+		if ($gfilter == 0) {
+			$trans="Grundb&uuml;cher zum Namen";
+			getGBbyPerson();		// Dann gleich das Grundbuch hinterher
+		} else {
+			$trans="Grdb. und Flst. zum Namen";
+			getGBuFSbyPerson();	// .. oder auch GB + FS
+		}
 	}
 
