Index: trunk/info/info/alkisn/alkisfsnw.php
===================================================================
--- trunk/info/info/alkisn/alkisfsnw.php	(revision 394)
+++ trunk/info/info/alkisn/alkisfsnw.php	(revision 399)
@@ -16,6 +16,14 @@
 	2017-10-17 Zeitpunkt der Entstehung in deutschen Datumsformat
 	2017-11-03 Wertelisten fÃŒr Arrays in BodenschÃ€tzung ausgeben.
-
-	ToDo:
+	2017-12-08 Planung (Kommentare) der Erweiterung fÃŒr Berechtigte GrundbÃŒcher
+	2017-12-20 Links auf Lagebezeichnung verbessert.
+
++++	ToDo: +++
+	- Wenn nur 1 Buchung auf der nÃ€chsten Stufe "Recht an" vorliegt (z.B. Erbbaurecht), dann sofort anzeigen. $berbu=''
+	  Bei vielen Buchungen auf der nÃ€chsten Stufe (Miteigentumsanteil) nur die Anzahl, erst auf Anforderung (Parameter) &berbu='j' oder 2,3,4,fÃŒr maximale Stufen.
+      Anzahl weiterer "Rechte an" auf jeder Stufe anzeigen, auch wenn noch kein Link mÃ¶glich ist.
+	  MEHR: Alle "Rechte an" RÃŒckwÃ€rts auflisten analog View "buchungsrechte_3text". Bis zu 4 Buchungen weit.
+      Im Gegensatz zum "Bestandsnachweis" aber nur je eine BVNR weiter verfolgen, die auf dies eine FlurstÃŒck bezogen ist.
+      Dabei berechtigte Buchungen VOR dem Grundbuch anzeigen, also eine Berechtigungs-"Hierarchie" abbilden.
 	- Parameter zum Umschalten mit/ohne BodenschÃ€tzung?
 	- Bessere Differenzierung bei den Nutzungsarten (Tabelle dafÃŒr aufbauen) 
@@ -286,7 +294,8 @@
 // ** L a g e b e z e i c h n u n g **
 
-// Lagebezeichnung MIT Hausnummer
+// Lagebezeichnung  M I T  Hausnummer
+
 // ax_flurstueck  >weistAuf>  AX_LagebezeichnungMitHausnummer
-$sql="SELECT DISTINCT l.gml_id, l.gemeinde, l.lage, l.hausnummer, s.bezeichnung 
+$sql="SELECT DISTINCT l.gml_id, l.gemeinde, l.lage, l.hausnummer, s.bezeichnung, s.gml_id AS kgml
 FROM ax_flurstueck f JOIN ax_lagebezeichnungmithausnummer l ON l.gml_id=ANY(f.weistauf)  
 JOIN ax_lagebezeichnungkatalogeintrag s ON l.land=s.land AND l.regierungsbezirk=s.regierungsbezirk AND l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND l.lage=s.lage 
@@ -306,6 +315,13 @@
 } else {
 	$j=0;
+	$kgmlalt="";
 	while($row = pg_fetch_array($res)) {
-		$sname = htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8"); // Str.-Name
+		$sname=htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8"); // Str.-Name
+		if (substr($sname, strlen($sname) -3, 3) == 'weg') { // Versuch fuer korrekten Satzbau
+			$slink=" am ".$sname;
+		} else {
+			$slink=" an der ".$sname;
+		}
+		$hsnr=$row["hausnummer"];
 		echo "\n<tr>\n\t";
 			if ($j == 0) {
@@ -319,7 +335,19 @@
 				echo "<span class='key' title='StraÃenschl&uuml;ssel'>(".$row["lage"].")</span>&nbsp;";
 			}
-			echo $sname."&nbsp;".$row["hausnummer"]."</td>"
-			."\n\t<td>\n\t\t<p class='nwlink noprint'>"
-				."\n\t\t\t<a title='Lagebezeichnung mit Hausnummer' href='alkislage.php?gkz=".$gkz."&amp;ltyp=m&amp;gmlid=".$row["gml_id"];
+			echo $sname."&nbsp;".$hsnr."</td>";
+
+			// rechte Spalte
+			echo "\n\t<td>\n\t\t<p class='nwlink noprint'>";
+
+			// +++ davor auch Link "StraÃe"
+			$kgml=$row["kgml"]; // Wiederholung vermeiden
+			if ($kgml != $kgmlalt) { // NEUE Strasse vor Lage
+				$kgmlalt=$kgml; // Katalog GML-ID
+				echo "\n\t\t\t<a title='Flurst&uuml;cke mit oder ohne Hausnummer".$slink."' "
+				."href='alkisstrasse.php?gkz=".$gkz."&amp;gmlid=".$kgml."'>Stra&szlig;e "
+				."<img src='ico/Strassen.png' width='16' height='16' alt='STRA'></a> ";
+			}
+
+			echo "\n\t\t\t<a title='Flurst&uuml;cke und Geb&auml;ude mit Hausnummer ".$hsnr."' href='alkislage.php?gkz=".$gkz."&amp;ltyp=m&amp;gmlid=".$row["gml_id"];
 				if ($showkey) {echo "&amp;showkey=j";}
 				echo "'>Lage <img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''></a>"
@@ -333,5 +361,6 @@
 // +++ Verbesserung: mehrere HsNr zur gleichen StraÃe als Liste?
 
-// Lagebezeichnung OHNE Hausnummer  (Gewanne oder nur Strasse)
+// Lagebezeichnung  O H N E  Hausnummer  (Gewanne oder nur Strasse)
+
 // ax_flurstueck  >zeigtAuf>  AX_LagebezeichnungOhneHausnummer
 $sql ="SELECT l.gml_id, l.unverschluesselt, l.gemeinde, l.lage, s.bezeichnung 
@@ -349,33 +378,37 @@
 }
 $j=0;
-// Es wird auch eine Zeile ausgegeben, wenn kein Eintrag gefunden!
 while($row = pg_fetch_array($res)) {
-	$gewann = htmlentities($row["unverschluesselt"], ENT_QUOTES, "UTF-8");
 	$skey=$row["lage"]; // Strassenschl.
 	$lgml=$row["gml_id"]; // key der Lage
-	if (!$gewann == "") {
+	$gewann = htmlentities($row["unverschluesselt"], ENT_QUOTES, "UTF-8");
+
+	if ($gewann != "") {
 		echo "\n<tr>"
-			."\n\t<td class='ll' title='Lagebezeichnung'><img src='ico/Lage_Gewanne.png' width='16' height='16' alt=''> Gewanne:</td>"
+			."\n\t<td class='ll' title='unverschl&uuml;sselte Lagebezeichnung'><img src='ico/Lage_Gewanne.png' width='16' height='16' alt=''> Gewanne:</td>"
 			."\n\t<td></td>"
 			."\n\t<td class='lr' colspan='3'>".$gewann."</td>"
 			."\n\t<td>\n\t\t<p class='nwlink noprint'>"
-				."\n\t\t\t<a title='Lagebezeichnung Ohne Hausnummer' href='alkislage.php?gkz=".$gkz."&amp;ltyp=o&amp;gmlid=".$lgml;
+				."\n\t\t\t<a title='Flurst&uuml;cke mit der Gewanne ".$gewann."' href='alkislage.php?gkz=".$gkz."&amp;ltyp=o&amp;gmlid=".$lgml;
 				if ($showkey) {echo "&amp;showkey=j";}				
 				echo "'>\n\t\t\tLage <img src='ico/Lage_Gewanne.png' width='16' height='16' alt=''></a>"
 			."\n\t\t</p>\n\t</td>"
 		."\n</tr>";
-	}
-	// Gleicher DB-Eintrag in zwei HTML-Zeilen, besser nur ein Link
-	if ($skey > 0) {
+	} elseif ($skey > 0) {
+		$sname=htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8"); // Str.-Name
+		if (substr($sname, strlen($sname) -3, 3) == 'weg') { // Versuch fuer korrekten Satzbau
+			$slink=" am ".$sname;
+		} else {
+			$slink=" an der ".$sname;
+		}
 		echo "\n<tr>"
 			."\n\t<td class='ll'><img src='ico/Lage_an_Strasse.png' width='16' height='16' alt=''> Stra&szlig;e:</td>"
 			."\n\t<td></td>"
 			."\n\t<td class='lr' colspan='3'>";
-			if ($showkey) {
-				echo "<span class='key'>(".$skey.")</span>&nbsp;";
-			}
-			echo $row["bezeichnung"]."</td>"
-			."\n\t<td>\n\t\t<p class='nwlink noprint'>"
-				."\n\t\t\t<a title='Lagebezeichnung Ohne Hausnummer' href='alkislage.php?gkz=".$gkz."&amp;ltyp=o&amp;gmlid=".$lgml;
+			if ($showkey) {echo "<span class='key'>(".$skey.")</span>&nbsp;";}
+			echo $sname."</td>";
+
+			// rechte Spalte
+			echo "\n\t<td>\n\t\t<p class='nwlink noprint'>"
+				."\n\t\t\t<a title='FlurstÃŒcke ".$slink."' href='alkislage.php?gkz=".$gkz."&amp;ltyp=o&amp;gmlid=".$lgml;
 				if ($showkey) {echo "&amp;showkey=j";}				
 				echo "'>\n\t\t\tLage <img src='ico/Lage_an_Strasse.png' width='16' height='16' alt=''>\n\t\t\t</a>"
@@ -583,5 +616,5 @@
 			if ($showkey) {echo "&amp;showkey=j";}
 			if ($cnt_adressen > 0) { // wenn Adresse vorgekommen ist
-				echo "' title='Geb&auml;udenachweis'>Geb&auml;ude ";
+				echo "' title='Geb&auml;ude auf oder an dem Flurst&uuml;ck'>Geb&auml;ude ";
 			} else { // GebÃ€ude mit Adresse gibt es NICHT, das ist klar
 				echo "' title='Suche Geb&auml;ude ohne Adresse auf dem Flurst&uuml;ck oder angrenzende Geb&auml;ude'>Suche ";
@@ -740,14 +773,7 @@
 	."\n\t<td class='fla sum' title='Summe der Ertragsmesszahlen f&uuml;r dies Flurst&uuml;ck'>".$gesertragsmz."</td>"
 	."\n\t<td class='re'>".$klasflaedis."</td>\n\t<td colspan='3'>&nbsp;</td>\n</tr>";
-
-//} else { // Result ist leer
-//	if ($debug > 1) {
-//		echo "\n<p class='dbg'>Keine BodenschÃ€tzung gefunden</p>";
-//		if ($debug > 2) {echo "\n<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";}
-//	}
 }
 
 // H i n w e i s  auf Bodenneuordnung oder eine strittige Grenze
-// b.name, b.artderfestlegung, 
 $sql_boden ="SELECT a.k AS wert, a.v AS art_verf, b.gml_id AS verf_gml, b.bezeichnung AS verf_bez, 
 b.name AS verf_name, d.bezeichnung AS stelle_bez, d.stelle AS stelle_key 
@@ -859,7 +885,7 @@
 				// Umschalter: FS-Nachweis ruft sich selbst mit geaendertem Parameter auf. Positionierung auf Marke "#gb"
 				if ($eig=="j") {
-					echo "&amp;eig=n#gb' title='Flurst&uuml;cksnachweis'>ohne Eigent&uuml;mer</a>";
+					echo "&amp;eig=n#gb' title='Umschalter: Flurst&uuml;cksnachweis'>ohne Eigent&uuml;mer</a>";
 				} else {
-					echo "&amp;eig=j#gb' title='Flurst&uuml;cks- und Eigent&uuml;mernachweis'>mit Eigent&uuml;mer "
+					echo "&amp;eig=j#gb' title='Umschalter: Flurst&uuml;cks- und Eigent&uuml;mernachweis'>mit Eigent&uuml;mer "
 					."<img src='ico/EigentuemerGBzeile.png' width='16' height='16' alt=''></a>";
 				}
