source: trunk/mapbender/http/nav/alkisnav_fkt.php @ 376

Revision 376, 16.2 KB checked in by frank.jaeger, 7 years ago (diff)

Verbesserungen an der ALKIS-Buchauskunft (Geschwindigkeit, Fehlerkorrekturen, Mandantenfähigkeit) und an der Mapbender2-Navigation.

Line 
1<?php
2/*      Navigation mit ALKIS-Daten im Mapbender 2.7 - Teil "Funktionen"
3        (Wird nicht direkt aufgerufen sonden in den anderen Modulen eingebunden).
4        Diese Version des Programms verwendet die Datenbank-Struktur aus dem norGIS-ALKIS-Importer.
5
6Version vom
7        2016-02-11 Version fÃŒr norGIS-ALKIS-Import aus Version Classic abgeleitet.
8        2016-11-28 Gemeinsam genutzte Datenbanken ermöglichen
9*/
10
11function is_ne_zahl($wert) {
12        // PrÃŒft, ob ein Wert ausschließlich aus den Zahlen 0 bis 9 besteht
13        if (trim($wert, "0..9") == "") {return true;} else {return false;}
14}
15
16function ZerlegungGBKennz($gbkennz) {
17        // Das eingegebene Grundbuch-Kennzeichen auseinander nehmen (gggg-999999z-BVNR)
18        // Return: 9=Fehler, 0=Listen alle Bezirke 1=Such Bezirk-Name
19        //  2=Such Bezirk-Nummer, 3=Such Blatt, 4=Such Buchung BVNR
20        global $zgbbez, $zblatt, $zblattn, $zblattz, $zbvnr;
21        $arr=explode("-", $gbkennz, 3);
22        $zgbbez=trim($arr[0]);
23        if (count($arr) > 1) {
24                $zblatt=trim($arr[1]);
25                if (count($arr) > 2) {
26                        $zbvnr=trim($arr[2]);
27                } else {
28                        $zbvnr="";
29                }
30        } else {
31                $zblatt="";
32                $zbvnr="";
33        }
34        if ($zgbbez == "") { // keine Eingabe
35                return 0; // Amtsgerichte oder Bezirke listen
36        } elseif ( ! is_ne_zahl($zgbbez)) { // Alphabetische Eingabe
37                return 1; // Such Bezirk-NAME
38        } elseif ($zblatt == "") {
39                return 2; // Such Bezirk-NUMMER
40        } else { // Format von BlattNr pruefen
41        //'19'      linksbÃŒndig
42        //'000019 ' gefÃŒllt 6 + blank
43        //'000019A' .. mit Zusatzbuchstabe
44        //'0300001' gefÃŒllt 7, bei Blattart 5000 "fiktives Blatt"
45                $len=strlen($zblatt);
46                if ($len > 0 AND $len < 8) {           
47                        if (trim($zblatt, "0..9 ") == "") { // Normalfall: nur Zahlen (und Blank))
48                                $zblattn= rtrim(ltrim($zblatt, "0"), " ");
49                                $zblattz="";
50                        } else { // Sonderfall: Zusatz-Buchstabe am Ende
51                                $zblattn=substr($zblatt,0,$len-1);
52                                $zblattz=strtoupper(substr($zblatt,$len-1,1));
53                                if ((trim($zblattn, "0..9") == "") and (trim($zblattz, "A..Z") == "")) {
54                                        $zblattn= ltrim($zblattn, "0"); // ohne fuehrende Nullen
55                                } else {
56                                        echo "<p class='err>Format 'Blatt': bis zu 6 Zahlen und ggf. ein Buchstabe</p>";       
57                                        return 9;
58                                }
59                        }
60                        if ($zbvnr == "") {
61                                return 3; // Such BLATT
62                        } elseif (is_ne_zahl($zbvnr)) {         
63                                // $zbvnr=ltrim($zbvnr,"0"); // DB-Format ist integer
64                                // Vorsicht, Wert "0" ist moeglich und gueltig
65                                return 4; // Such Grundstueck
66                        } else {
67                                echo "<p class='err>Die Buchungsstelle (BVNR) '".$zbvnr."' ist nicht numerisch</p>";
68                                return 9;
69                        }
70                } else {
71                        echo "<p class='err>Das Grundbuch-Blatt '".$zblatt."' ist ung&uuml;ltig.</p>";
72                        return 9;
73                }
74        }
75}
76
77function suchfeld($suchstring) {        // Suchstring Ausgeben UND das Eingabeformular damit belegen
78        $out="<a title='Dies als Suchbegriff setzen' href='javascript:formular_belegung(\"".$suchstring."-\")'>".$suchstring."</a>";
79        return $out;
80}
81
82// function Typ "zeile_**"  = Ausgabe eines Knotens
83// - Icon,  ggf. mit Link zur Buchauskunft
84// - Zeile, ggf. mit Link zur weiteren Auflösung untergeordneter Knoten
85// Hierin die Encodierung fÃŒr url und HTML.
86
87function zeile_ag ($ag, $anr, $aktuell) {
88        // Zeile  A m t s g e r i c h t
89        global $gkz, $gemeinde, $epsg, $auskpath;
90        if ($ag == "") {
91                $agd=$anr; // Ersatz: Nummer statt Name. Besser: Name immer fÃŒllen
92        } else {
93                $agd=htmlentities($ag, ENT_QUOTES, "UTF-8");
94        }
95        if ($aktuell) {$cls=" aktuell";} else {$cls="";}
96        echo "\n<div class='ga".$cls."' title='Amtsgericht'>";
97                echo "\n\t\t<img class='nwlink' src='ico/Gericht.png' width='16' height='16' alt='AG' title='Amtsgericht'> ";
98                echo "AG <a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&amp;gemeinde=".$gemeinde."&amp;epsg=".$epsg."&amp;ag=".$anr."'>";           
99                echo $agd."</a> (".$anr.")";
100        echo "\n</div>";
101        return;
102}
103
104function zeile_gbbez ($gnam, $zgbbez, $aktuell) {
105        // Zeile Grundbuch - B e z i r k
106        // Parameter: aktuell = Bool fÃŒr farbliche Markierung der Zeile als aktuell angeklicktes Obj.
107        global $gkz, $gemeinde, $epsg, $person;
108        $gnamd=htmlentities($gnam, ENT_QUOTES, "UTF-8");
109        if ($aktuell) {$cls=" aktuell";} else {$cls="";}
110        echo "\n<div class='gk".$cls."' title='GB-Bezirk'>";
111        echo "\n\t\t<img class='nwlink' src='ico/GB-Bezirk.png' width='16' height='16' alt='Bez.' title='GB-Bezirk'> ";
112        echo "<a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&amp;gemeinde=".$gemeinde."&amp;epsg=".$epsg."&amp;gbkennz=".$zgbbez;
113        echo "&amp;gbbeznam=".urlencode($gnam);
114        if ($person != "") { // EigentÃŒmer-Suche
115                echo "&amp;person=".$person."'>";
116                echo "Bezirk ".$gnamd."</a> (".$zgbbez.")";             
117        } else {  // Grundbuch-Suche
118                echo "'>";
119                echo "Bezirk ".$gnamd."</a> (".suchfeld($zgbbez).")";           
120        }
121        echo "\n</div>";
122        return;
123}
124
125function zeile_blatt ($bezirk, $beznam, $blattgml, $blatt, $dienend, $person, $aktuell) {
126        // Zeile Grundbuch - B l a t t
127        // Aufruf aus Teil "Grundbuch" und Teil "EigentÃŒmer"
128        // Parameter $beznam = Name des GB-Bezirks. Sollte nur gefÃŒllt sein, bei dienendem Blatt ("Recht an").
129        //              sonst steht der Bezirk als Header-Zeile darÃŒber.
130        global $gkz, $gemeinde, $epsg, $auskpath;
131
132        $blattd=ltrim($blatt, "0"); // Display-Version ohne fÃŒhrende Nullen
133        if ($dienend) {$dientxt="dienendes ";} else {$dientxt="";}
134        $blattlnk=urlencode($blatt); // trailing Blank
135        if ($beznam != "") {$nam = $beznam." ";} else {$nam="";}
136        if ($aktuell) {$cls=" aktuell";} else {$cls="";}
137
138        echo "\n<div class='gb".$cls."' title='".$dientxt."GB-Blatt'>";
139
140        // Icon / Nachweis
141        if ($blattgml == "") { // Link zum Nachweis nur wenn GML bekannt
142                echo "\n\t<img class='nwlink' src='ico/GBBlatt.png' width='16' height='16' alt='Blatt' title='".$dientxt."GB-Blatt'>";
143        } else {
144                echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisbestnw.php?gkz=".$gkz."&amp;gmlid=".$blattgml."\")'>";
145                        echo "\n\t\t<img class='nwlink' src='ico/GBBlatt_link.png' width='16' height='16' alt='Blatt' title='Nachweis'>";
146                echo "\n\t</a> ";
147        }
148
149        // Text, Self-Link
150        echo $nam." <a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&amp;gemeinde=".$gemeinde."&amp;epsg=".$epsg;
151        echo "&amp;blattgml=".$blattgml."&amp;gbkennz=".$bezirk."-".$blattlnk;
152
153        echo "&amp;gbbeznam=".urlencode($beznam);
154
155        if ($person != "") {echo "&amp;person=".$person;} // nur fÃŒr EigentÃŒmer-Suche
156        echo "'>Blatt&nbsp;".$blattd."</a>\n</div>";
157        return;
158}
159
160function zeile_buchung($buchunggml, $bvnr, $blattkennz, $dienend, $aktuell) {
161        // Zeile  B u c h u n g s s t e l l e  -  GrundstÃŒck ausgeben
162        global $gkz, $gemeinde, $epsg, $auskpath, $debug;
163        //if ($debug > 1) {echo "<p class='dbg'>function zeile_buchung()<p>";} // Ablauf-Verfolgung
164
165        if ($bvnr == 0) { // Keine echten BVNR vergeben (z.B. Lippe)
166                $bvnra = "-"; // Fehlanzeige
167        } else {
168                $bvnra = str_pad($bvnr, 4, "0", STR_PAD_LEFT); // auf 4 Stellen
169        }
170        if ($dienend) {
171                $ti="dienendes&nbsp;";
172                $re="Recht an ";
173        } else {
174                $ti="";
175                $re="";
176        }
177        if ($aktuell) {$cls=" aktuell";} else {$cls="";}
178        echo "\n<div class='gs".$cls."' title='".$ti."Grundst&uuml;ck'>";
179        echo "\n\t<img class='nwlink' src='ico/Grundstueck.png' width='16' height='16' alt='GS'  title='".$ti."Grundst&uuml;ck'> ".$re;
180        if ($blattkennz == "") { // ohne Link
181                echo "Buchung ".$bvnra;
182        } else {
183                $gbkennlnk=urlencode($blattkennz."-".$bvnr); // Trailing Blanks!
184                echo "<a href='".$_SERVER['SCRIPT_NAME']. "?gkz=". $gkz."&amp;gemeinde=".$gemeinde."&amp;epsg=".$epsg."&amp;buchunggml=".$buchunggml;
185                echo "&amp;gbkennz=".$gbkennlnk."'>Buchung ".$bvnra."</a>";
186        }
187        echo "\n</div>";
188        return;
189}
190
191function zeile_gemeinde ($gmdnr, $gmdname, $aktuell) {
192        // Eine Kopf-Zeile zu Gemeinde ausgeben
193        global $gkz, $gemeinde, $epsg;
194        $stadt=htmlentities($gmdname, ENT_QUOTES, "UTF-8");
195        $bez=urlencode($gmdname);
196        if ($aktuell) {$cls=" aktuell";} else {$cls="";}
197        echo "\n<div class='gm".$cls."' title='Gemeinde'>";
198                echo "\n\t\t<img class='nwlink' src='ico/Gemeinde.png' width='16' height='16' alt='Stadt'>";
199                echo " Gem. <a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&amp;gemeinde=".$gemeinde."&amp;epsg=".$epsg."&amp;gm=".$gmdnr."&amp;bez=".$bez."'>";             
200                echo  " ".$stadt."</a> (".substr($gmdnr, 5).")";
201        echo "\n</div>";
202        return;
203}
204
205function zeile_gemarkung($gkgnr, $gkgname, $aktuell) {
206        // Eine Kopf-Zeile zur Gemarkung ausgeben
207        global $con, $gkz, $gemeinde, $epsg, $gfilter;
208
209        if ($gkgname == "") { // Falls Gem.-Name fehlt, in DB nachschlagen
210                $sql ="SELECT bezeichnung FROM ax_gemarkung WHERE gemarkungsnummer = $1 LIMIT 1;";
211                $v=array($gnr);
212                $res=pg_prepare("", $sql);
213                $res=pg_execute("", $v);
214                if (!$res) {echo "\n<p class='err'>Fehler bei Gemarkungsname.</p>";}
215                $row = pg_fetch_array($res);
216                $gkgname=$row["bezeichnung"];
217        }
218
219        if ($gkgname == "") {$gkgname = "(unbekannt)";}
220        $gnam=htmlentities($gkgname, ENT_QUOTES, "UTF-8");
221        if ($aktuell) {$cls=" aktuell";} else {$cls="";}
222
223        echo "\n<div class='gk".$cls."' title='Gemarkung'>";
224        echo "\n\t\t<img class='nwlink' src='ico/Gemarkung.png' width='16' height='16' alt='GKG' title='Gemarkung'>";
225        echo " OT <a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&amp;gemeinde=".$gemeinde."&amp;epsg=".$epsg."&amp;fskennz=".$gkgnr."'>";           
226        echo  " ".$gnam."</a> (".substr($gkgnr, 2).")";
227        echo "\n</div>";
228        return;
229}
230
231function zeile_flurstueck ($fs_gml, $fskenn, $x, $y, $gmkg, $flur, $aktuell) {
232        // Zeile mit Icon (Link zum Buch-Nachweis) und Text (Link zum Positionieren)
233        global $gkz, $gemeinde, $epsg, $auskpath, $scalefs;
234
235        if ($aktuell) {$cls=" aktuell";} else {$cls="";}
236        echo "\n<div class='fs".$cls."'>";
237        echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisfsnw.php?gkz=".$gkz."&amp;gmlid=".$fs_gml."\")'>";
238                echo "\n\t\t<img class='nwlink' src='ico/Flurstueck_Link.png' width='16' height='16' alt='FS' title='Nachweis'>";
239        echo "\n\t</a>\n\t";                   
240
241        echo "&nbsp;<a title='Flurst&uuml;ck positionieren 1:".$scalefs."' href='";
242        echo "javascript:";
243                echo "transtitle(\"auf Flurst&uuml;ck positioniert\"); ";
244                echo "parent.parent.parent.mb_repaintScale(\"mapframe1\",".$x.",".$y.",".$scalefs."); ";
245                echo "parent.parent.showHighlight(".$x.",".$y.");' ";
246        echo "onmouseover='parent.parent.showHighlight(".$x.",".$y.")' ";
247        echo "onmouseout='parent.parent.hideHighlight()'>";
248
249        if ($gmkg == "" ) {
250                echo "Flst. "; // Im FS-Teil: Gem+Flur als Knoten darÃŒber ($gmkg und $flur leer)
251        } else {
252                echo $gmkg." "; // Im GB-und Nam-Teil in der Zeile angezeigt
253        }
254        if ($flur != "" ) {echo $flur."-";}
255        echo $fskenn."</a>\n</div>";
256        return;
257}
258
259function zeile_person ($persongml, $nachname, $vorname) {
260        // Zeile  P e r s o n (oder Firma)
261        global $gkz, $gemeinde, $epsg, $auskpath;
262
263        $nnam=htmlentities($nachname, ENT_QUOTES, "UTF-8");
264        $namlnk=urlencode($nachname);
265        $vnam=htmlentities($vorname, ENT_QUOTES, "UTF-8");
266        // Link zur Auskunft Person ++ Icon differenzieren nach Eigentuemerart?
267
268echo "<div class='pe'>
269        <a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisnamstruk.php?gkz=".$gkz."&amp;gemeinde=".$gemeinde."&amp;gmlid=".$persongml."\")'>
270                <img class='nwlink' src='ico/Eigentuemer.png' width='16' height='16' alt='EIG' title='Nachweis'>
271        </a>           
272        <a title='Person' href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&amp;gemeinde=".$gemeinde."&amp;epsg=".$epsg."&amp;person=".$persongml."&amp;name=".$namlnk."'>".$nnam.", ".$vnam."</a>
273</div>";
274return;
275}
276
277function zeile_strasse ($gkey, $skey, $sname, $kgml, $gemname) {
278        // Listen-Zeile (nicht Kopfzeile) fÃŒr eine gefundenen Straße ausgeben.
279        // Die Kopfzeile ÃŒber den Hausnummern hat einen zusÀtzlichen Koordinaten-Map-Link, das ist in der Liste zu aufwÀndig?
280        global $gkz, $gemeinde, $epsg, $auskpath, $gfilter, $debug;
281        //if ($debug > 1) {echo "<p class='dbg'>function zeile_strasse()<p>";} // Ablauf-Verfolgung
282
283        echo "\n\t<div class='stl' title='Stra&szlig;enschl&uuml;ssel ".$skey."'>";
284
285        // Icon -> Buchnachweis
286        echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisstrasse.php?gkz=".$gkz."&amp;gmlid=".$kgml."\")'>";
287                echo "\n\t\t<img class='nwlink' src='ico/Lage_mit_Haus.png' width='16' height='16' alt='STR' title='Auskunft Stra&szlig;e'>";
288        echo "\n\t</a>";
289        // Zeile -> Suche HsNr
290        echo " <a class='st' href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&amp;gemeinde=".$gemeinde."&amp;epsg=".$epsg."&amp;str_schl=".$gkey."' title='in ".$gemname."'>".$sname;
291        echo "</a> (".$skey.")";
292
293        // Die Gemeinde dahinter falls mehrere möglich
294        switch ($gfilter) {
295                case 0: // Kein Filter
296                        echo " in ".$gemname; break;
297                case 2: // Liste
298                        echo " in ".$gemname; break;
299        }
300        echo "</div>";
301        return;
302}
303
304function GB_Buchung_FS ($linelimit, $blattgbkenn) {
305        // Zu einem Grundbuch-Blatt (identifiziert ÃŒber seine gml_id) suchen der
306        // Buchungen (Gruppenwechsel) und FlurstÃŒcke (Links)
307        global $gemeinde, $blattgml, $epsg, $gfilter, $debug;
308
309        // SQL-Bausteine
310        // vorne gleich
311        $sql1 ="SELECT s1.laufendenummer AS lfd, s1.gml_id AS bsgml, f.gml_id, f.flurnummer, f.zaehler, f.nenner, f.gemeinde, ";
312        if($epsg == "25832") { // Transform nicht notwendig
313                $sql1.="st_x(st_centroid(f.wkb_geometry)) AS x, ";
314                $sql1.="st_y(st_centroid(f.wkb_geometry)) AS y, ";
315        } else { 
316                $sql1.="st_x(st_transform(st_centroid(f.wkb_geometry), ".$epsg.")) AS x, ";
317                $sql1.="st_y(st_transform(st_centroid(f.wkb_geometry), ".$epsg.")) AS y, ";                     
318        }
319        $sql1.="g.bezeichnung FROM ax_buchungsstelle s1 ";
320
321        // zwischen, Variante 1.
322    $sqlz1="JOIN ax_flurstueck f ON f.istgebucht=s1.gml_id ";
323
324        // zwischen, Variante 2. Nur an oder "an" und "zu"?
325        $sqlz2 ="JOIN ax_buchungsstelle s2 ON s2.gml_id=ANY(s1.an)
326        JOIN ax_flurstueck f ON f.istgebucht=s2.gml_id ";
327
328        // hinten gleich
329        $sql2="JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer
330        WHERE s1.istbestandteilvon = $1 AND f.endet IS NULL AND s1.endet IS NULL ";
331
332        switch ($gfilter) {
333                case 1: // Einzelwert
334                        $sql2.="AND f.gemeinde='".$gemeinde."' "; break;
335                case 2: // Liste
336                        $sql2.="AND f.gemeinde in ('".str_replace(",", "','", $gemeinde)."') "; break;
337        }
338
339        // WHERE-Zusatz bei 2
340        $sqlw2=" AND s2.endet IS NULL ";
341
342        $sqlord="ORDER BY cast(s1.laufendenummer AS integer), f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner LIMIT $2 ;";
343
344        // d i r e k t e  B u c h u n g e n
345        // Blatt <istBestandteilVon<  Buchungsstelle <istGebucht< FlurstÃŒck
346        $v=array($blattgml, $linelimit); // Rel. istBestandteilVon
347        $res=pg_prepare("", $sql1.$sqlz1.$sql2.$sqlord);
348        $res=pg_execute("", $v);
349        if (!$res) {
350                echo "\n<p class='err'>Fehler bei Buchung und Flurst&uuml;ck.</p>";
351                if ($debug >= 3) {echo "\n<p class='err'>SQL='".$sql1.$sqlz1.$sql2.$sqlord."'<br>$1 = '".$blattgml."'</p>";}
352                return;
353        }
354        $zfs1=0;
355        $gwbv="";
356        while($row = pg_fetch_array($res)) {   
357                $bvnr=$row["lfd"];
358                $bsgml=$row["bsgml"]; // Buchungsstelle gml_id
359                if ($gwbv != $bvnr) { // Gruppierung Buchungs-Stelle (BVNR)
360                        $gwbv = $bvnr;
361                        zeile_buchung($bsgml, $bvnr, $blattgbkenn, false, false);
362                }
363                $fs_gml=$row["gml_id"];
364                $gmkg=$row["bezeichnung"];
365                $flur=$row["flurnummer"];
366                $fskenn=$row["zaehler"];
367                if ($row["nenner"] != "") {$fskenn.="/".$row["nenner"];} // BruchNr
368                $x=$row["x"];
369                $y=$row["y"];
370                zeile_flurstueck ($fs_gml, $fskenn, $x, $y, $gmkg, $flur, false);
371                $zfs1++;
372        }
373        // "nichts gefunden" erst melden, wenn auch Teil 2 (Rechte an) nichts findet
374        if($zfs1 > 1) { // ab 2
375                echo "\n<p class='anz'>".$zfs1." Flurst&uuml;cke zum Grundbuch";
376                if($zfs1 >= $linelimit) {
377                        echo "... und weitere"; //++ BlÀttern einfÃŒhren?
378                }
379                echo "</p>";
380        }
381        if($zfs1 > 0) {echo "<hr>";} // Trennen
382
383        // Rechte "an"  (dienende  Buchungen)
384        $v=array($blattgml, $linelimit);
385        $res=pg_prepare("", $sql1.$sqlz2.$sql2.$sqlw2.$sqlord);
386        $res=pg_execute("", $v);
387        if (!$res) {
388                echo "\n<p class='err'>Fehler bei Recht an Buchung.</p>";
389                #if ($debug >= 3) {echo "\n<p class='dbg'>".$sql1.$sqlz2.$sql2.$sqlw2.$sqlord."</p>";}
390                return;
391        }
392        $zfs2=0;
393        $gwbv="";
394        while($row = pg_fetch_array($res)) {   
395                $bvnr=$row["lfd"];
396                $bsgml=$row["bsgml"]; // Buchungsstelle gml_id
397                if ($gwbv != $bvnr) { // Gruppierung Buchung (BVNR) - dienend
398                        $gwbv = $bvnr;
399                        zeile_buchung($bsgml, $bvnr, $blattgbkenn, true, false);
400                }
401                $fs_gml=$row["gml_id"];
402                $gmkg=$row["bezeichnung"];
403                $flur=$row["flurnummer"];
404                $fskenn=$row["zaehler"];
405                if ($row["nenner"] != "") {$fskenn.="/".$row["nenner"];} // Bruchnummer
406                zeile_flurstueck ($fs_gml, $fskenn, $row["x"], $row["y"], $gmkg, $flur, false);
407                $zfs2++;
408        }
409        // Foot
410        if($zfs1 + $zfs2 == 0) {
411                echo "\n<p class='anz'>Kein Flurst&uuml;ck im berechtigten Bereich.</p>";
412        } elseif($zfs2 > 1) { // keine Meldung "nichts gefunden - Rechte an" wenn Treffer in Teil 1
413                echo "\n<p class='anz'>".$zfs2." Rechte an Flurst.";
414                if($zfs2 >= $linelimit) {
415                        echo "... und weitere"; // BlÀttern einfÃŒhren?
416                }
417                echo "</p>";
418        }
419        return;
420}
421
422?>
Note: See TracBrowser for help on using the repository browser.