Ankündigung

Einklappen
Keine Ankündigung bisher.

Merkliste löschen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Merkliste löschen

    Hallo,
    ist es möglich nach dem Absenden des Anfrageformulars der Merkliste diese automatisch zu leeren?

  • #2
    Siehe config der Merkliste:

    initconfig.php oder localconfig.php einsetzen.

    PHP-Code:
    $GLOBALS['CUSTOMELEMENTS_NOTELIST']['clearSessionAfterSubmit'] = false// set to true if you want to clear the submitted notelist after submitting 
    Zuletzt geändert von Tim; 23.08.2017, 09:21.
    http://www.premium-contao-themes.com

    Kommentar


    • #3
      Super, danke.
      Das Problem ist aber, dass offensichtlich die die Daten gelöscht werden, bevor das Formular abgeschickt wird.
      Im hereinkommenden Mail stehen dann nämlich keine Fahrzeuge mehr drinnen.
      Kann ich das noch separat steuern?

      Kommentar


      • #4
        Die Merkliste-Session wird nach dem fertigen Zusammenbauen des Formularfeldinhalts geleert. Zu diesem Zeitpunkt ist bereits alles fertig.
        Siehe Zeile 328: https://github.com/timgatzky/pct_cus...field.php#L328

        Vielleicht löscht etwas anders deine Session früher.

        Merkliste manuell leeren kann man auch.
        http://forum.premium-contao-themes.c...%C3%BCcksetzen
        http://www.premium-contao-themes.com

        Kommentar


        • #5
          Ok, ich hab das analog zu http://forum.premium-contao-themes.c...%C3%BCcksetzen umgesetzt und auch die fe_page.html adaptiert (Code ganz am Anfang ergänzt)...
          Code:
          <?php if(\Input::get('merklisteLeeren') == 1)
          {
          \Session::remove('customelementnotelist');
          // neuladen ohne GET, damit keine Schleife entsteht und man die Änderungen der Session sieht.
          Controller::reload($this->addToUrl('merklisteLeeren=0'));
          }
          ?>
          Leider erhalte ich dann beim Laden der Seite die Fehlermeldung:
          "Fatal error: Uncaught exception Error with message Using $this when not in object context thrown in system/modules/core/library/Contao/Session.php on line 142"

          Was hat das zu bedeuten?

          Kommentar


          • #6
            Sonst schreib:
            \Session::getInstance()->remove('customelementnotelist');
            http://www.premium-contao-themes.com

            Kommentar


            • #7
              Cool, das klappt.
              Danke für die Hilfe!
              Nur der Reload macht ein Timeout, gehört diese Zeile auch noch umgeschrieben?
              Nach manueller Neueingabe des Redirect-Links ist die Merkliste leer und das Mail korrekt übermittelt worden...

              Kommentar


              • #8
                Das Script wird nur aufgerufen, wenn in der Url der GET Parameter "merklisteLeeren" auf 1 steht. Sonst nicht, wie du diesen entfernst ist im Grunde egal.
                http://www.premium-contao-themes.com

                Kommentar

                Lädt...
                X