Index: trunk/info/info/alkis/alkisausk.php
===================================================================
--- trunk/info/info/alkis/alkisausk.php	(revision 376)
+++ trunk/info/info/alkis/alkisausk.php	(revision 377)
@@ -5,14 +5,17 @@
 	Dies Programm wird aus dem Mapserver-Template (FeatureInfo) aufgerufen.
 	Parameter: &gkz, &gml_id (optional &id)
-	Dies Programm gibt einen kurzen Ãberblick zum FlurstÃŒck, z.B. Eigentuemer ohne Adresse
-	FÃŒr detaillierte Angaben wird zum GB- oder FS-Nachweis verlinkt.
+	Dies Programm gibt einen kurzen Ueberblick zum Flurstueck.
+	Eigentuemer ohne Adresse.
+	Fuer detaillierte Angaben wird zum GB- oder FS-Nachweis verlinkt.
 	Siehe auch alkisinlayausk.php - eine Variante fÃŒr den Einbau in einen iFrame
 
 	Version:
-	2016-02-24 Version fuer norGIS-ALKIS-Import
-	2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermÃ¶glichen (Berechtigung fÃŒr Gemeinde prÃŒfen)
-	Hinweis: Dies Modul wird beim Entwickler nicht mehr produktiv eingesetzt.
-		Statt dessen wird "alkisinlayauk.php" verwendet um von einer WMS-FeatureInfo in ein Fenster ÃŒberzuleiten.
-		Mangels Praxis bleiben Fehler mÃ¶glicherweise unerkannt.
+	2011-11-17 Link FS-Historie, Parameter der Functions geÃ€ndert
+	2011-11-30 import_request_variables
+	2013-04-08 deprecated "import_request_variables" ersetzt
+	2014-01-28 Link zu alkisstrasse.php
+	2014-09-15 PostNAS 0.8: ohne Tab. "alkis_beziehungen", mehr "endet IS NULL", Spalten varchar statt integer
+	2014-09-30 RÃŒckbau substring(gml_id)
+	2015-12-09 Austausch .ico durch .png
 */
 session_start();
@@ -21,11 +24,16 @@
 if ($auth == "mapbender") {require_once($mapbender);}
 include("alkisfkt.php");
+if ($id == "j") {$idanzeige=true;} else {$idanzeige=false;}
 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n";
 if ($keys == "j") {$showkey=true;} else {$showkey=false;}
 echo <<<END
-<!doctype html>
-<html lang="de">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
 <head>
-	<meta charset="utf-8">
+	<meta name="author" content="b600352" >
+	<meta http-equiv="cache-control" content="no-cache">
+	<meta http-equiv="pragma" content="no-cache">
+	<meta http-equiv="expires" content="0">
+	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 	<link rel="stylesheet" type="text/css" href="alkisauszug.css">
 	<link rel="shortcut icon" type="image/x-icon" href="ico/Flurstueck.ico">
@@ -37,9 +45,9 @@
 <body>
 END;
-$con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisausk.php'");
+$con = pg_connect("host=".$dbhost." port=".$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);
 if (!$con) {echo "<br>Fehler beim Verbinden der DB.\n<br>";}
 
 // *** F L U R S T U E C K ***
-$sql ="SELECT f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, g.gemarkungsnummer, g.bezeichnung, f.regierungsbezirk, f.kreis, f.gemeinde
+$sql ="SELECT f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, g.gemarkungsnummer, g.bezeichnung 
 FROM ax_flurstueck f LEFT JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer
 WHERE f.gml_id= $1 AND f.endet IS NULL;";
@@ -62,7 +70,4 @@
 	$flae=$row["amtlicheflaeche"];
 	$flae=number_format($flae,0,",",".") . " m&#178;";
-	$fsreg=$row["regierungsbezirk"]; // Filter ZustÃ€ndigkeit
-	$fskrs=$row["kreis"];
-	$fsgem=$row["gemeinde"];
 } else {
 	echo "<p class='err'>Kein Treffer fuer gml_id=".$gmlid."</p>";
@@ -72,67 +77,61 @@
 echo "\n<p class='fsausk'>ALKIS-Auskunft Flurst&uuml;ck-&Uuml;bersicht ".$gmkgnr."-".$flurnummer."-".$flstnummer."</p>";
 
-// PrÃŒfung der Gebiets-Berechtigung bei gemeinsam genutzten Datenbanken (Kreis und Gemeinde)
-// FÃŒr das gkz (z.B. aus dem Mapfile-Namen) wird in der Konfiguration ein Filter gesetzt.
-if ( ($filtkreis != '' and $filtkreis != $fskrs) or ($filtgem != '' and $filtgem != $fsgem) ) {
-	// Einer der gesetzten Filter passt nicht
-	if ($debug > 2) {
-		echo "<p class='err'>Filter Kreis='".$filtkreis."', Gemeinde='".$filtgem."'</p>";
-		echo "<p class='err'>Flstk. Kreis='".$fskrs."', Gemeinde='".$fsgem."'</p>";
-	}
-	echo "\n<br><p class='stop1'>Zugriff nicht erlaubt</p>
-	\n<br><p class='stop2'>Dies Flurst&uuml;ck liegt ausserhalb der zust&auml;ndigen Stadt oder Gemeinde.</p>\n</body>\n</html>";
-	pg_free_result($res);
-	exit;
-}
-
 echo "\n<table class='outer'>\n<tr><td>";
 	// linke Seite
-	echo "\n<h1>ALKIS-Auskunft</h1>"
-	."\n<h2><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurst&uuml;ck - &Uuml;bersicht</h2>";
+	echo "\n<h1>ALKIS-Auskunft</h1>";
+	echo "\n<h2><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurst&uuml;ck - &Uuml;bersicht</h2>";
 echo "</td><td align='right'>";
 	// rechte Seite
-	echo "<img src='pic/AAA.gif' alt=''>"
-."</td></tr></table>";
-
-echo "\n<table class='outer'>\n<tr>\n<td>"
-	."\n\t<table class='kennzfs' title='Flurst&uuml;ckskennzeichen'>\n\t<tr>"
-	."\n\t\t<td class='head'>Gmkg</td>\n\t\t<td class='head'>Flur</td>\n\t\t<td class='head'>Flurst-Nr.</td>\n\t</tr>"
-	."\n\t<tr>\n\t\t<td title='Gemarkung'>";
-	if ($showkey) {echo "<span class='key'>".$gmkgnr."</span><br>";}
-	echo $gemkname."</td>"
-	. "\n\t\t<td title='Flurnummer'>".$flurnummer."</td>"
-	."\n\t\t<td title='Flurst&uuml;cksnummer (Z&auml;hler / Nenner)'><span class='wichtig'>".$flstnummer."</span></td>\n\t</tr>"
-	."\n\t</table>"
-."\n</td>\n<td>"
-."\n\t<p class='nwlink'>weitere Auskunft:<br>";
+	echo "<img src='pic/AAA.gif' alt=''>";
+echo "</td></tr></table>";
+
+echo "\n<table class='outer'>\n<tr>\n<td>";
+	echo "\n\t<table class='kennzfs' title='Flurst&uuml;ckskennzeichen'>\n\t<tr>";
+	echo "\n\t\t<td class='head'>Gmkg</td>\n\t\t<td class='head'>Flur</td>\n\t\t<td class='head'>Flurst-Nr.</td>\n\t</tr>";
+	echo "\n\t<tr>\n\t\t<td title='Gemarkung'>";
+   if ($showkey) {
+		echo "<span class='key'>".$gmkgnr."</span><br>";
+	}
+	echo $gemkname."</td>";
+	echo "\n\t\t<td title='Flurnummer'>".$flurnummer."</td>";
+	echo "\n\t\t<td title='Flurst&uuml;cksnummer (Z&auml;hler / Nenner)'><span class='wichtig'>".$flstnummer."</span></td>\n\t</tr>";
+	echo "\n\t</table>";
+echo "\n</td>\n<td>";
+if ($idanzeige) {linkgml($gkz, $gmlid, "Flurst&uuml;ck", "ax_flurstueck"); }
+echo "\n\t<p class='nwlink'>weitere Auskunft:<br>";
 
 // Flurstuecksnachweis (o. Eigent.)
 echo "\n\t<a href='alkisfsnw.php?gkz=".$gkz."&amp;gmlid=".$gmlid."&amp;eig=n";
-	if ($showkey) {echo "&amp;showkey=j";}
-	echo "' title='Flurst&uuml;cksnachweis, alle Flurst&uuml;cksdaten'>Flurst&uuml;ck "
-	."<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>"
-."</a><br>";
+	if ($idanzeige) {echo "&amp;id=j";}
+	if ($showkey)   {echo "&amp;showkey=j";}
+	echo "' title='Flurst&uuml;cksnachweis, alle Flurst&uuml;cksdaten'>Flurst&uuml;ck ";
+	echo "<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>";
+echo "</a><br>";
 
 // FS- u. Eigent.-NW
 echo "\n\t\t<a href='alkisfsnw.php?gkz=".$gkz."&amp;gmlid=".$gmlid."&amp;eig=j";
-	if ($showkey) {echo "&amp;showkey=j";}
-	echo "' title='Flurst&uuml;ck mit Eigent&uuml;mer'>Flurst&uuml;ck mit Eigent&uuml;mer "
-	."<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>"
-."</a><br>";
+	if ($idanzeige) {echo "&amp;id=j";}
+	if ($showkey)   {echo "&amp;showkey=j";}
+	echo "' title='Flurst&uuml;ck mit Eigent&uuml;mer'>Flurst&uuml;ck mit Eigent&uuml;mer ";
+	echo "<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>";
+echo "</a><br>";
 
 // FS-Historie
 echo "\n\t\t<a href='alkisfshist.php?gkz=".$gkz."&amp;gmlid=".$gmlid;
-	if ($showkey) {echo "&amp;showkey=j";}
-	echo "' title='Vorg&auml;nger des Flurst&uuml;cks'>Historie "
-	."<img src='ico/Flurstueck_Historisch.png' width='16' height='16' alt=''>"
-."</a><br>";
+	if ($idanzeige) {echo "&amp;id=j";}
+	if ($showkey)   {echo "&amp;showkey=j";}
+	echo "' title='Vorg&auml;nger des Flurst&uuml;cks'>Historie ";
+	echo "<img src='ico/Flurstueck_Historisch.png' width='16' height='16' alt=''>";
+echo "</a><br>";
 
 // Gebaeude-NW
 echo "\n\t\t<a href='alkisgebaeudenw.php?gkz=".$gkz."&amp;gmlid=".$gmlid;
-	if ($showkey) {echo "&amp;showkey=j";}
-	echo "' title='Geb&auml;udenachweis'>Geb&auml;ude "
-	."<img src='ico/Haus.png' width='16' height='16' alt=''>"
-."</a>"
-. "\n\t</p>\n</td>";
+	if ($idanzeige) {echo "&amp;id=j";}
+	if ($showkey)   {echo "&amp;showkey=j";}
+	echo "' title='Geb&auml;udenachweis'>Geb&auml;ude ";
+	echo "<img src='ico/Haus.png' width='16' height='16' alt=''>";
+echo "</a>";
+
+echo "\n\t</p>\n</td>";
 
 // Lagebezeichnung MIT Hausnummer (Adresse)
@@ -152,13 +151,14 @@
 while($row = pg_fetch_array($res)) {
 	$sname = htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8"); // Str.-Name
-	echo "\n<tr>\n\t"
-		."\n\t<td class='lr'>".$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"]."'>Lage "
-			."<img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''></a>&nbsp;"
-			."\n\t\t\t<a href='alkisstrasse.php?gkz=".$gkz."&amp;gmlid=".$row["kgml"]
-			."' title='Stra&szlig;e'>Stra&szlig;e <img src='ico/Strassen.png' width='16' height='16' alt=''></a>"
-		."\n\t\t</p>\n\t</td>"
-	."\n</tr>";
+	echo "\n<tr>\n\t";
+		echo "\n\t<td class='lr'>".$sname."&nbsp;".$row["hausnummer"]."</td>";
+		echo "\n\t<td>\n\t\t<p class='nwlink noprint'>";
+			echo "\n\t\t\t<a title='Lagebezeichnung mit Hausnummer' href='alkislage.php?gkz=".$gkz."&amp;ltyp=m&amp;gmlid=".$row["gml_id"]."'>Lage ";
+			echo "<img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''></a>&nbsp;";
+
+			echo "\n\t\t\t<a href='alkisstrasse.php?gkz=".$gkz."&amp;gmlid=".$row["kgml"]; // Katalog GML-ID
+			echo "' title='Stra&szlig;e'>Stra&szlig;e <img src='ico/Strassen.png' width='16' height='16' alt=''></a>";
+		echo "\n\t\t</p>\n\t</td>";
+	echo "\n</tr>";
 	$j++;
 }
@@ -171,12 +171,10 @@
 echo "\n<h2><img src='ico/Grundbuch_zu.png' width='16' height='16' alt=''> Grundbuch</h2>";
 // ALKIS: FS >istgebucht> GS >istBestandteilVon> GB.
-$sql ="SELECT b.gml_id, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung as blatt, b.blattart, wa.v AS blattartv, 
-s.gml_id AS s_gml, s.buchungsart, s.laufendenummer, s.zaehler, s.nenner, z.bezeichnung, wb.v AS bart 
-FROM ax_flurstueck f 
-JOIN ax_buchungsstelle s ON f.istgebucht=s.gml_id 
+$sql ="SELECT b.gml_id, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung as blatt, b.blattart, 
+s.gml_id AS s_gml, s.buchungsart, s.laufendenummer, s.zaehler, s.nenner, z.bezeichnung, a.bezeichner AS bart 
+FROM ax_flurstueck f JOIN ax_buchungsstelle s ON f.istgebucht=s.gml_id 
 JOIN ax_buchungsblatt b ON s.istbestandteilvon=b.gml_id 
 LEFT JOIN ax_buchungsblattbezirk z ON z.land=b.land AND z.bezirk=b.bezirk 
-LEFT JOIN alkis_wertearten wa ON cast(b.blattart AS character varying)=wa.k AND wa.element='ax_buchungsblatt' AND wa.bezeichnung='blattart'
-LEFT JOIN alkis_wertearten wb ON cast(s.buchungsart AS character varying)=wb.k AND wb.element='ax_buchungsstelle' AND wb.bezeichnung='buchungsart'
+LEFT JOIN v_bs_buchungsart a ON s.buchungsart = a.wert 
 WHERE f.gml_id= $1 AND f.endet IS NULL AND s.endet IS NULL AND b.endet IS NULL 
 ORDER BY b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung, s.laufendenummer;";
@@ -193,7 +191,10 @@
 while($rowg = pg_fetch_array($resg)) {
 	$beznam=$rowg["bezeichnung"];
-	echo "\n<table class='outer'>\n<tr>\n<td>";
+	echo "\n<hr>\n<table class='outer'>";
+	echo "\n<tr>";
+	echo "\n<td>";
+
 		$blattkey=$rowg["blattart"];
-		$blattart=$rowg["blattartv"];
+		$blattart=blattart($blattkey);
 		if ($blattkey == 1000) {
 			echo "\n\t<table class='kennzgb' title='Bestandskennzeichen'>";
@@ -201,53 +202,68 @@
 			echo "\n\t<table class='kennzgbf' title='Bestandskennzeichen'>"; // dotted
 		}
-			echo "\n\t<tr>"
-				."\n\t\t<td class='head'>Bezirk</td>"
-				."\n\t\t<td class='head'>".$blattart."</td>"
-				."\n\t\t<td class='head'>Lfd-Nr.</td>"
-				."\n\t\t<td class='head'>Buchungsart</td>"
-			."\n\t</tr>";
-			echo "\n\t<tr>"
-				."\n\t\t<td title='Grundbuchbezirk'>";
-					if ($showkey) {echo "<span class='key'>".$rowg["bezirk"]."</span><br>";}
-				echo $beznam."</td>"
-				."\n\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$rowg["blatt"]."</span></td>"
-				."\n\t\t<td title='Bestandsverzeichnis-Nummer (BVNR, Grundst&uuml;ck)'>".$rowg["laufendenummer"]."</td>"
-				."\n\t\t<td title='Buchungsart'>";
-					if ($showkey) {echo "<span class='key'>".$rowg["buchungsart"]."</span><br>";}
-					echo $rowg["bart"]
-				."</td>"
-			."\n\t</tr>"
-		."\n\t</table>";
+			echo "\n\t<tr>";
+				echo "\n\t\t<td class='head'>Bezirk</td>";
+				echo "\n\t\t<td class='head'>".$blattart."</td>";
+				echo "\n\t\t<td class='head'>Lfd-Nr.</td>";
+				echo "\n\t\t<td class='head'>Buchungsart</td>";
+			echo "\n\t</tr>";
+			echo "\n\t<tr>";
+				echo "\n\t\t<td title='Grundbuchbezirk'>";
+					if ($showkey) {
+						echo "<span class='key'>".$rowg["bezirk"]."</span><br>";
+					}
+				echo $beznam."</td>";
+				echo "\n\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$rowg["blatt"]."</span></td>";
+				echo "\n\t\t<td title='Bestandsverzeichnis-Nummer (BVNR, Grundst&uuml;ck)'>".$rowg["laufendenummer"]."</td>";
+				echo "\n\t\t<td title='Buchungsart'>";
+					if ($showkey) {
+						echo "<span class='key'>".$rowg["buchungsart"]."</span><br>";
+					}
+					echo $rowg["bart"];
+				echo "</td>";
+			echo "\n\t</tr>";
+		echo "\n\t</table>";
 
 		if ($rowg["zaehler"] <> "") {
 			echo "\n<p class='ant'>".$rowg["zaehler"]."/".$rowg["nenner"]."&nbsp;Anteil am Flurst&uuml;ck</p>";
 		}
-		echo "\n</td>\n<td>"
-		."\n\t<p class='nwlink'>weitere Auskunft:<br>"
-			."\n\t\t<a href='alkisbestnw.php?gkz=".$gkz."&amp;gmlid=".$rowg[0];
-				if ($showkey) {echo "&amp;showkey=j";}
-				echo "' title='Grundbuchnachweis'>".$blattart." <img src='ico/GBBlatt_link.png' width='16' height='16' alt=''>"
-			."</a>"
-		."\n\t</p>"
-	."\n</td>\n</tr>\n</table>";
+		echo "\n</td>\n<td>";
+		if ($idanzeige) {linkgml($gkz, $rowg["gml_id"], "Buchungsblatt", "");}
+		echo "\n\t<p class='nwlink'>weitere Auskunft:<br>";
+			echo "\n\t\t<a href='alkisbestnw.php?gkz=".$gkz."&amp;gmlid=".$rowg["gml_id"];
+				if ($idanzeige) {echo "&amp;id=j";}
+				if ($showkey)   {echo "&amp;showkey=j";}
+				echo "' title='Grundbuchnachweis'>";
+				echo $blattart;
+				echo " <img src='ico/GBBlatt_link.png' width='16' height='16' alt=''>";
+			echo "</a>";
+		echo "\n\t</p>";
+	echo "\n</td>";
+	echo "\n</tr>";
+	echo "\n</table>";
 
 	// E I G E N T U E M E R
-	if ($blattkey == 5000) { // SchlÃŒssel Blatt-Art
-		echo "\n<p>Keine Angaben zum Eigentum bei fiktivem Blatt</p>\n"
-		."\n<p>Siehe weitere Grundbuchbl&auml;tter mit Rechten an dem fiktiven Blatt.</p>\n";
-	} else { // kein Eigent. bei fiktiv. Blatt
-		echo "\n<h3><img src='ico/Eigentuemer_2.png' width='16' height='16' alt=''> Angaben zum Eigentum</h3>\n";
+	if ($blattkey == 5000) { // Schluessel Blattart
+		echo "\n<p>Keine Angaben zum Eigentum bei fiktivem Blatt</p>\n";
+		echo "\n<p>Siehe weitere Grundbuchbl&auml;tter mit Rechten an dem fiktiven Blatt.</p>\n";
+	} else {// kein Eigent. bei fiktiv. Blatt
+		echo "\n<hr>\n\n<h3><img src='ico/Eigentuemer_2.png' width='16' height='16' alt=''> Angaben zum Eigentum</h3>\n";
 
 		// Ausgabe Name in Function
-		$n = eigentuemer($con, $rowg["gml_id"], false, "imFenster"); // ohne Adressen
+		$n = eigentuemer($con, $rowg["gml_id"], false); // ohne Adr.
 
 		if ($n == 0) { // keine NamNum, kein Eigent.
-			echo "\n<p class='err'>Keine Eigent&uuml;mer gefunden.</p>"
-			."\n<p class='err'>Bezirk ".$rowg["bezirk"]." Blatt ".$rowg["blatt"]." Blattart ".$blattkey." (".$blattart.")</p>";
+			echo "\n<p class='err'>Keine Eigent&uuml;mer gefunden.</p>";
+			echo "\n<p class='err'>Bezirk ".$rowg["bezirk"]." Blatt ".$rowg["blatt"]." Blattart ".$blattkey." (".$blattart.")</p>";
+			linkgml($gkz, $gmlid, "Buchungsblatt", "");
 		}
 	}
 	$j++;
 }
-if ($j == 0) {echo "\n<p class='err'>Keine Buchungen gefunden.</p>";}
+if ($j == 0) { // Entwicklungshilfe
+	echo "\n<p class='err'>Keine Buchungen gefunden.</p>";
+	echo "\n<p><a target='_blank' href=alkisrelationen.php?gkz=".$gkz."&amp;gmlid=".$gmlid.">Beziehungen des Flurst&uuml;cks</a></p>";
+	//echo "<p>".$sql."</p>"; // TEST
+}
 echo "\n<hr>";
 
