Ergebnis 1 bis 4 von 4

Thema: catalog und loadFormField Hook

  1. #1
    Contao-Fan
    Registriert seit
    10.01.2010.
    Ort
    Kiel
    Beiträge
    341

    Standard catalog und loadFormField Hook

    Hallo,

    ich habe Formular zur Frontend-Bearbeitung von Katalog-Einträgen. Bei einem select-Feld möchte ich teilweise Werte ändern. Mein Lösungsansatz war, das über den loadFormField-Hook zu tun. Allerdings reagiert das Katalog-Formular nicht darauf. Auf der Seite ist auch noch ein Suchformular. Das kann ich ansprechen, aber nicht das Formular, das über den Katalog erstellt wurde.

    So sieht mein Test-Code aus:

    PHP-Code:
    $GLOBALS['TL_HOOKS']['loadFormField'][] = array('CatalogExtended''myLoadFormField'); 
    PHP-Code:
    class CatalogExtended extends Backend {
        public function 
    myLoadFormField(Widget $objWidget$strForm$arrForm)
          
    $objWidget->class 'myclass';
          return 
    $objWidget;
        }

    Warum funktioniert der Hook nicht bei Katalog-Formularen? Ich habe in anderen Forumbeiträgen doch auch gesehen, dass es funktioniert.

    Gruß
    Tina

  2. #2
    Contao-Fan
    Registriert seit
    10.01.2010.
    Ort
    Kiel
    Beiträge
    341

    Standard

    Ich habe es jetzt so gelöst, dass ich das select-Feld im Template selbst hinzugefügt und das Original-Feld im Modul Katalog-Bearbeitung ausgeblendet habe. Über die Hooks catalogFrontendInsert und catalogFrontendUpdate wird der entsprechende Wert dann in die Datenbank geschrieben. Ist zwar nicht schön, aber es funktioniert.
    Jetzt habe ich das Problem, dass ich mein selbst erstelltes select-Feld beim Bearbeiten gern mit dem vorherigen Wert vorbelegen möchte. Nun weiß ich nicht, wie ich im Template der Katalog-Bearbeitung (catalog_edit.html5) an die ID des Datensatzes komme, der im gerade aufgerufenen Formular angezeigt wird, um den "Orignal-Wert" des Feldes zu holen.
    Ich hoffe, ich habe das einigermaßen verständlich ausgedrückt...

    EDIT:
    In $this->Input->get('items') steht der Alias des Eintrags, das sollte ja auch gehen.

    Falls jemand noch einen besseren Lösungsvorschlag hat, würde ich den gerne annehmen.
    Geändert von Tina (12.04.2012 um 16:07 Uhr)

  3. #3
    Contao-Nutzer Avatar von Webkrebse
    Registriert seit
    16.04.2010.
    Ort
    Bruchköbel
    Beiträge
    77

    Standard

    Hast Du mal ... extends Frontend probiert?
    Internetagentur für kreative Webseiten - webkrebse.com

  4. #4
    Contao-Urgestein Avatar von Tim G
    Registriert seit
    13.02.2010.
    Ort
    Lübeck
    Beiträge
    2.210
    User beschenken
    Wunschliste

    Standard

    Der loadFormField Hook wird sicher nicht ausgelöst, weil die Felder nicht mit der contao internen Routine für Formularfelder erstellt werden.

    Mit dem Alias kommst du doch super an den Datensatz via DB-Abfrage. Aber kommt nicht ins Template eh die ID und der catalog des aktuellen Datensatzes. Der catalog ist ja immer herrlich spendabel wenn es um Template-Variablen geht.
    http://www.tim-gatzky.de ˙ auch schon wieder 2 Jahre alt - wie die Zeit vergeht... muss mal umbauen.

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
  •