Ergebnis 1 bis 6 von 6

Thema: Modul Auflistung - Memberlist - Postleitzahlen Bereich

  1. #1
    Contao-Nutzer
    Registriert seit
    07.04.2010.
    Ort
    Berlin
    Beiträge
    155

    Standard Modul Auflistung - Memberlist - Postleitzahlen Bereich

    Ich hab das Forum schon nach entsprechenden Antworten durchkämmt, aber bisher leider noch nichts gefunden.

    Die Aufgabenstellung ist folgende: Über das Modul "Auflistung" lasse ich auf einer Seite eine durchsuchbare Liste aller Mitglieder ausgeben - ich habe schon gesehen, dass ich dafür garnicht unbedingt die Erweiterung Memberlist brauche, weil sich das eben auch mit dem Standard Auflistungs-Modul umsetzen lässt.

    Nun ist es aber so, dass diese Mitglieder-Liste Anpsprechpartner darstellen soll, die für bestimmte Postleitzahlenbereiche (z.b. 10115 bis 14199) zuständig sind. Fürs Durchsuchen der Liste soll man also seine Postleitzahl eingeben können und dann den Ansprechpartner ausgegeben bekommen, der für diesen Bereich zuständig ist.
    Jetzt kann aber pro Mitglied ja standardmässig nur eine einzelne Postleitzahl und kein Postleitzahlenbereich (z.b. 10115 bis 14199) angegeben.

    Lässt sich das Auflistungsmodul irgendwie so umbauen, dass dies möglich wird? Bin für jede Hilfe dankbar!

  2. #2
    Contao-Nutzer Avatar von fivebytes
    Registriert seit
    18.01.2013.
    Ort
    Iserlohn
    Beiträge
    93

    Standard

    Hallo Balduin,

    es müsste grundsätzlich reichen, der Tabelle tl_member ein zusätzliches Feld zu verpassen und darin dann eine kommagetrennte Liste von entsprechenden PLZ zu hinterlegen. Evtl. reichen auch nur die zwei von/bis-Werte aus, das hängt davon ab, wie du die Suche SQL-mäßig realisieren möchtest und auch davon, wie die Eingaben der Nutzer später aussehen - freie Eingabe, Vorgabe einer Auswahl oder, oder ...

    Ich denke mal ganz rudimentär reicht eine Anpassung der tl_member DCA aus und dann musst Du mal sehen, wie weit Du mit den Bordmitteln vom Auflistungs-Modul (oder ggf. der memberlist-Erweiterung) kommst. Ggf. müsste man dann noch eine eigene Suchfunktion integrieren, aber das sollte mit einem Hook auch kein Problem sein. Wie gesagt hängt dann final hauptsächlich mit dem tatsächlich geplanten Ablauf des Ganzen zusammen.
    Entspannte Grüße aus Iserlohn
    Stefen

    fivebytes.de - Internetentwicklung & Webdesign | Mit Contao umgesetzt Speedy´s Hamsterseiten

  3. #3
    Contao-Nutzer
    Registriert seit
    07.04.2010.
    Ort
    Berlin
    Beiträge
    155

    Standard

    Hi Stefen, vielen Dank für die schnelle Antwort!
    Ich habe gerade herausgefunden, dass die ganze Sache mit der Suche sogar schon wie gewünscht funktioniert wenn man im Postleitzahlenfeld eines Mitglieds einfach alle Postleitzahlen seines Zuständigkeitsbereiches mit Komma getrennt einfügt - danke für den Tipp!
    Allerdings ist in meinem Fall ein Mitglied immer für einen etwas grösseren Bereich an Postleitzahlen zuständig, weshalb eine von-bis Eingabe etwas komfortabler wäre. Aber wenn ich Start- und Endzahl einfach mit Bindestrich dazwischen eingebe, funktioniert es leider nicht. Wäre ja auch zu schön gewesen...
    Lässt sich das vielleicht einfach durch eine Bedingung bewerkstelligen die man in der Modul-Konfiguration einträgt? Um direkt in der Datenbank Einstellungen vorzunehmen fehlen mir die Kenntnisse und ausserdem ist das dann doch auch nicht Upgradesicher, oder?

    Des weiteren würde mich noch interessieren wie man einstellt, dass Ergebnisse erst angezeigt werden nachdem eine Sucheanfrage erfolgt ist. Standardmässig werden vor einer Suchanfrage nämlich einfach alle Mitglieder komplett angezeigt.

  4. #4
    Contao-Nutzer Avatar von fivebytes
    Registriert seit
    18.01.2013.
    Ort
    Iserlohn
    Beiträge
    93

    Standard

    Hi Balduin,

    der letzte Punkt ist recht einfach im Template zu lösen. Hier musst einfach eine if-abfrage um die Ergebnis-Ausgabe packen. In etwa so:
    HTML-Code:
    <?php if ($this->for): ?>
    ... hier kommt die Ergebnisausgabe ...
    <?php endif; ?>
    Du solltest auch eine Anzahl pro Seite festlegen, damit nicht direkt zu Anfang alle Datensätze ausgelesen werden, gerade bei vielen Adressen/Mitgliedern zu empfehlen.

    Für den Rest solltest Du die tl_member um ein Feld erweitern, das geht auch updatesicher (http://de.contaowiki.org/Vorhandene_Module_erweitern) und dort dann die entsprechenden PLZ hinterlegen. Dann muss der Nutzer aber immer noch die gesamte PLZ eingeben. Wenn dies etwas freier und komfortabler gelöst werden soll oder eben nur eine von/bis-Variante bei der Dateneingabe gewünscht wird, müsste man entweder an die Suchfunktion direkt ran (per Hook - wenn möglich, hab ich noch nicht weiter nachgeforscht) oder eine eigene kleine Erweiterung dafür basteln. Aber wie gesagt, final hängt hauptsächlich das dann mit dem tatsächlich geplanten Ablauf des Ganzen zusammen.
    Entspannte Grüße aus Iserlohn
    Stefen

    fivebytes.de - Internetentwicklung & Webdesign | Mit Contao umgesetzt Speedy´s Hamsterseiten

  5. #5
    Contao-Nutzer
    Registriert seit
    07.04.2010.
    Ort
    Berlin
    Beiträge
    155

    Standard

    Hey, danke again für die schnelle Antwort! Das mit der if-Schleife hat super funktioniert! Ich hab sie im Template "list_default" einfach um die ganze Tabelle mit der klasse "all_records" drumherum gebaut und nun läuft es!

    Der Rest meiner Anfrage hat sich nun erstmal erledigt, weil sich herausgestellt hat, dass der Kunde für jeden Ansprechpartner gleich mehrere Postleitzahlenbereiche benötigt. Aber da eine Programmierung mehrerer von-bis Bereiche pro Anpsprechpartner sehr wahrscheinlich zu kompliziert wird, habe ich ihm angeraten die Postleitzahlen doch lieber alle einzeln mit Kommas getrennt einzufügen. Das klingt zwar aufwendig, aber solche Listen kann man sich auf verschiedenen Webseiten besorgen und wenn die einmal eingesetzt sind, ist auch erstmal gut.

    Trotzdem vielen Dank für die Anregungen!

  6. #6
    Contao-Nutzer
    Registriert seit
    07.04.2010.
    Ort
    Berlin
    Beiträge
    155

    Standard

    So, nachdem es eine Weile gedauert hat bis der Auftrag zustande gekommen ist, sitze ich jetzt tatsächlich an der Umsetzung und bin leider auf weitere Probleme gestossen:

    Ursprünglich wollte ich einfach sämtliche Postleitzahlen eines Zuständigkeitsbereichs mit Kommas von einander getrennt in des Feld "Postleitzahlen" des entsprechenden Mitglieds einfügen. Das geht nun leider nicht, weil für das Eingabefeld eine Obergrenze für die maximale Eingabelänge existiert (32 Zeichen). Nun wüsste ich gerne wie man diese Maximallänge hochsetzen könnte.

    Da ich allerdings für jeden Ansprechpartener hunderte von Postleitzahlen einfügen müsste, würde mich noch ein anderer Ansatz interessieren: Kann man die Suchfunktion auch auf die ersten beiden Ziffern der Postleitzahl begrenzen?
    Beispiel: Der Ansprechpartner Müller ist für die Bereiche 01, 02, 03, 08 zuständig.
    Nun gibt ein Kunde die Postleitzahl 02253 ein und bekommt Herrn Müller als Ansprechpartner ausgegeben.

    Hätte jemand einen Vorschlag wie ich die Suchfunktion entsprechend anpassen könnte?
    Geändert von Balduin (21.04.2015 um 10:23 Uhr)

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •