Index: trunk/data/mapbender/http/nav/alkisnav_fls.php =================================================================== --- trunk/data/mapbender/http/nav/alkisnav_fls.php (revision 124) +++ trunk/data/mapbender/http/nav/alkisnav_fls.php (revision 126) @@ -8,6 +8,10 @@ 24.10.2011 Nach Pos-Klick Highlight erneuern statt hideHighlight 07.11.2011 optional auch Historische FS suchen, Link auf Buchauskunft-Modul alkisfshis.php + 09.11.2011 "h" hinter Flur oder FlurstÌck sucht sofort in Historie + Ausgabe Flur in Varianten aktuell/historisch mit gegenseitigen Verweisen ToDo: - Hist: die Nachfolger-Liste gleich in der DB nachschlagen,und aktuelle FS als solche anzeigen + Hist: Gemarkung entschlÌsseln + Hist: die Nachfolger-Liste gleich in der DB nachschlagen, und aktuelle FS als solche anzeigen + Hist: Icons fÌr Link (mit Pfeil), Icons H/O unterscheiden */ import_request_variables("PG"); @@ -36,11 +40,35 @@ } +function h_hinten($zahl) { + // Testen: Wurde an eine Zahl ein "h" angehÀngt? + // Wenn ja, dann Schalter setzen und nur numerischen Teil zurÌck geben. + global $phist, $debug; +// if ($debug >= 2) {echo "
Teilen '".$zahl."'
";} + $zahl=trim($zahl); + $zlen=strlen($zahl) - 1; + if ($zlen > 0) { + $hinten = ucfirst(substr($zahl, $zlen, 1)); + if ($hinten == "H" ) { + $vorn=trim(substr($zahl, 0, $zlen)); + if (is_ne_zahl($vorn)) { // Zahl *und* "H" + $zahl = $vorn; + $phist = true; + } + } + } +// if ($debug >= 2) {echo "Teile '".$vorn."'/'".$hinten."'
";} + return $zahl; +} + function ZerlegungFsKennz($fskennz) { -// Das eingegebene FlurstÃŒcks-Kennzeichen auseinander nehmen, Erwartet wird gggg-fff-zzzz/nnn +// Das eingegebene FlurstÃŒcks-Kennzeichen auseinander nehmen. Erwartet wird gggg-fff-zzzz/nnn global $debug, $zgemkg, $zflur, $zzaehler, $znenner; +// if ($debug > 1) {echo "Zerlegen: '".$fskennz."'
";} $arr = explode("-", $fskennz, 4); $zgemkg=trim($arr[0]); - $zflur=trim($arr[1]); + $zflur=h_hinten($arr[1]); $zfsnr=trim($arr[2]); + if ($debug > 1) {echo "Gemkg: '".$zgemkg."' Flur: '".$zflur."' NR: '".$zfsnr."'
";} + if ($zgemkg == "") { return 0; // Gemeinden oder Gemarkungen listen @@ -50,14 +78,14 @@ return 2; // G-Nr } elseif ( ! is_ne_zahl($zflur)) { - echo ""; + echo "
Die Flurnummer '".$zflur."' ist nicht numerisch
"; return 9; - } elseif ($zfsnr == "") { + } elseif ($zfsnr == "") { return 3; // Flur } else { $zn=explode("/", $zfsnr, 2); - $zzaehler=trim($zn[0]); - $znenner=trim($zn[1]); + $zzaehler=h_hinten(trim($zn[0])); + $znenner =h_hinten(trim($zn[1])); if ( ! is_ne_zahl($zzaehler)) { - echo ""; + echo "
FlurstÃŒcksnummer '".$zzaehler."' ist nicht numerisch
"; return 9; } elseif ($znenner == "") { @@ -66,5 +94,5 @@ return 5; } else { - echo ""; + echo "
FlurstÃŒcks-Nenner '".$znenner."' ist nicht numerisch
"; return 9; } @@ -95,5 +123,5 @@ if (!$res) { echo "\nFehler bei Gemeinde
"; - if ($debug >= 3) {echo "\n".$sql."
";} + if ($debug >= 3) {echo "\n".$sql."
";} return 0; } @@ -131,5 +159,5 @@ if (!$res) { echo "\nFehler bei Gemarkungen
"; - if ($debug >= 3) {echo "\n".$sql."
";} + if ($debug >= 3) {echo "\n".$sql."
";} return 0; } @@ -188,5 +216,5 @@ if (!$res) { echo "\nFehler bei Gemarkung
"; - if ($debug >= 3) {echo "\n".$sql."
";} + if ($debug >= 3) {echo "\n".$sql."
";} return 0; } @@ -275,8 +303,9 @@ } -function EineFlur() { - // Kennzeichen aus Gemarkung und FlurNr wurde eingegeben - global $con, $gkz, $gemeinde, $epsg, $debug, $scalefs, $auskpath, $zgemkg, $zflur; - $linelimit=600; // Wie groà kann eine Flur sein? +function gemkg_zeile($zgemkg) { +// Zeile zu Gemarkung ausgeben, gkg-schlÃŒssel ÃŒbergeben + + global $con, $gkz, $gemeinde, $epsg; + $sql ="SELECT bezeichnung FROM ax_gemarkung g WHERE g.gemarkungsnummer= $1 ;"; $v=array($zgemkg); @@ -300,12 +329,22 @@ echo " OT ".$gmkg." (".$zgemkg.")"; echo "\n"; + return 0; +} + +function EineFlur() { + // Kennzeichen aus Gemarkung und FlurNr wurde eingegeben, dazu aktuelle FlurstÃŒcke suchen + global $con, $gkz, $gemeinde, $epsg, $debug, $scalefs, $auskpath, $zgemkg, $zflur; + $linelimit=600; // Wie groà kann eine Flur sein? + + gemkg_zeile($zgemkg); echo "\nKein Flurstück.
"; + } elseif($zfs >= $linelimit) { + echo "\n... und weitere
"; + } + return; +} + +function HistFlur() { + // Kennzeichen aus Gemarkung und FlurNr wurde eingegeben + // Die Flur nach Historischen FlurstÃŒcken durchsuchen + global $con, $gkz, $gemeinde, $epsg, $debug, $scalefs, $auskpath, $land, $zgemkg, $zflur; + $linelimit=400; + + gemkg_zeile($zgemkg); + echo "\nFehler bei Historie Flur.
";} + $zfs=0; + + // Konst. Teil d.URL (Flur), FS anhÀngen + $flurl=$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&hist=j&fskennz=".$zgemkg."-".$zflur."-"; + + while($row = pg_fetch_array($res)) { + $ftyp=$row["ftyp"]; + $fs_gml=$row["gml_id"]; // fuer Buchausk. + $fskenn=$row["zaehler"]; + if ($row["nenner"] != "") {$fskenn.="/".$row["nenner"];} // Bruchnummer + + //++ if ($ftyp == "h") { } else { } // versch. Icons? h: Karte Pos.? + echo "\nKein historisches Flurstück.
"; + if ($debug > 2) {echo "SQL=
".$sql."
$1 = ".$fskzwhere."
... und weitere
"; @@ -409,10 +501,9 @@ function HistFlurstueck() { - // Ein HISTORISCHES FlurstÃŒckskennzeichen oder Nachfolger komplett eingegeben + // Ein Nachfolger-FS-Kennzeichen soll recherchiert werden. + // Es ist unbekannt, ob dies aktuell ist oder auch schon historisch. global $con, $gkz, $debug, $scalefs, $epsg, $auskpath, $land, $zgemkg, $zflur, $zzaehler, $znenner; -//++++ TEST 300 : 2769-9-5/1 - - // Suche ueber das Flurstueckskennzeichen, gml meist unbekannt + // Suche ueber das Flurstueckskennzeichen, gml ist meist unbekannt $whcl.="WHERE flurstueckskennzeichen= $1 "; @@ -441,7 +532,5 @@ if ($row["nenner"] != "") {$fskenn.="/".$row["nenner"];} // Bruchnummer - if ($ftyp == "a") { // aktuelles FS gefunden - - // noch die Koordinate dazu besorgen + if ($ftyp == "a") { // aktuelles FS gefunden, Koordinate holen $sql ="SELECT "; if($epsg == "25832") { // Transform nicht notwendig @@ -465,7 +554,5 @@ if ($zfs == 0) {echo "\nKein Treffer bei Koordinate.
";} echo "\naktueller Nachfolger:
"; - - // Zeile - echo "\nKein historisches Flurstück.
"; - if ($debug > 2) {echo "".$sql."
";} + if ($debug > 2) {echo "".$sql."
";} } return; @@ -539,13 +626,11 @@ // =========== if(isset($epsg)) { - if ($debug >= 2) {echo "aktueller EPSG='".$epsg."'
"; } // aus MB + //if ($debug >= 2) {echo "aktueller EPSG='".$epsg."'
";} // aus MB $epsg = str_replace("EPSG:", "" , $_REQUEST["epsg"]); } else { - if ($debug >= 1) {echo "kein EPSG gesetzt
";} + if ($debug >= 1) {echo "kein EPSG gesetzt
";} $epsg=$gui_epsg; // aus Conf } -if ($debug >= 2) { - echo "Filter Gemeinde = ".$gemeinde."
"; -} +//if ($debug >= 2) {echo "Filter Gemeinde = ".$gemeinde."
";} if ($gemeinde == "") { $gfilter = 0; // ungefiltert @@ -555,5 +640,5 @@ $gfilter = 2; // Liste } -if ($hist == "j") { $phist = true;} else {$phist = false;} +if ($hist == "j") {$phist = true;} else {$phist = false;} if(isset($gm)) { // Self-Link aus Gemeinde-Liste @@ -562,8 +647,10 @@ $zgemkg=$gnr; EineGemarkung(false); - }; + } } else { // Die Formular-Eingabe interpretieren (kann auch ein Link sein) - switch (ZerlegungFsKennz($fskennz)) { + $retzer=ZerlegungFsKennz($fskennz); +// if ($debug > 1) {echo "Return Zerlegung (case) = '".$retzer."'
";} + switch ($retzer) { case 0: // leere Eingabe if ($gfilter == 1) { // Die GUI ist bereits auf eine Gemeinde gefiltert @@ -574,25 +661,25 @@ break; case 1: - if ($debug >= 2) {echo "Gemarkungsname ".$zgemkg."
";} + if ($debug >= 2) {echo "Gemarkungsname ".$zgemkg."
";} $gnr=SuchGmkgName(); if ($gnr > 0) { $zgemkg=$gnr; EineGemarkung(false); - }; + } break; case 2: - if ($debug >= 2) {echo "Gemarkungsnummer ".$zgemkg."
";} + if ($debug >= 2) {echo "Gemarkungsnummer ".$zgemkg."
";} EineGemarkung(true); break; case 3: - if ($debug >= 2) {echo "Gemarkung ".$zgemkg." Flur ".$zflur."
";} - EineFlur(); + if ($debug >= 2) {echo "Gemarkung ".$zgemkg." Flur ".$zflur."
";} + if ($phist) {HistFlur();} else {EineFlur();} break; case 4: - if ($debug >= 2) {echo "Gemarkung ".$zgemkg." Flur ".$zflur." FlurstÃŒck ".$zzaehler."
";} + if ($debug >= 2) {echo "Gemarkung ".$zgemkg." Flur ".$zflur." FlurstÃŒck ".$zzaehler."
";} if ($phist) {HistFlurstueck();} else {EinFlurstueck();} break; case 5: - if ($debug >= 2) {echo "Gemarkung ".$zgemkg." Flur ".$zflur." FlurstÃŒck ".$zzaehler."/".$znenner."
";} + if ($debug >= 2) {echo "Gemarkung ".$zgemkg." Flur ".$zflur." FlurstÃŒck ".$zzaehler."/".$znenner."
";} if ($phist) {HistFlurstueck();} else {EinFlurstueck();} break; Index: trunk/data/mapbender/http/nav/alkisnav.css =================================================================== --- trunk/data/mapbender/http/nav/alkisnav.css (revision 124) +++ trunk/data/mapbender/http/nav/alkisnav.css (revision 126) @@ -2,5 +2,5 @@ Version 2011-04-11 - 2011-11-07 Historie + 2011-11-09 Historie, dbg */ body,p,a,.textfield,.sbutton {font-family: Verdana, Arial, Helvetica, sans-serif;} @@ -11,8 +11,11 @@ p.start {font-size: 9px; color: gray;} p.nam {font-size: 10px; border: 1px solid navy; padding: 3px; margin: 0px;} -p.err {font-size: 11px; color: red;} +p.err {font-size: 11px; color: red;} /* Fehler -> Anwender */ +p.dbg {font-size: 10px; color: gray;} /* Debug -> Entwickler */ a {text-decoration: none;} /* font-size: 11px; */ a:hover, a:active {color: red;} +a.hislnk {color: gray; font-style: italic; text-align: right; padding-left: 50px;} /* Link zur Historie */ + /* abgestuft eingerueckte Treffer in der Suche */ div {margin: 0px; padding: 0px;} @@ -47,5 +50,5 @@ background: #6699FF; } -img.nwlink {border: 0px; margin: 0px; padding: 0px;} /* Icons */ +img.nwlink {border: 0px; margin: 0px; padding: 0px;} /* Icons mit Link zum Buch-Nachweis */ .letter {cursor: pointer; font-weight: bold;} /* Liste Anfangsbuchstaben */