Katalog mit Frontend-Input für neue Einträge

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • backbone
    AG Core-Entwicklung
    • 16.10.2009
    • 437

    #1

    Katalog mit Frontend-Input für neue Einträge

    Hallo,

    Das ist weniger eine Frage/Problem als ein Erfahrungsbericht:

    Gebraucht wird ein Katalog für eine "Supporter"-Liste (oder Petition).
    Anforderungen:
    - Volle Bearbeitungsmöglichkeiten im Backend (verstecken, löschen, bearbeiten, hinzufügen, ...)
    - Frontend-Listing aller veröffentlichten Einträge
    - Einträge ("Unterschrift" als "Supporter") im Frontend hinzufügen (direkt veröffentlicht oder nicht)

    Erstere beiden Punkte werden standardmäßig vom Katalog unterstützt und umgesetzt.
    Letzterer Punkt ist etwas kniffliger, da das Katalog-Bearbeitungsmodul auch das verändern bestehender Einträge zulässt und, nachdem ein Eintrag angelegt wurde, das Bearbeitungsformular (was eigentlich ein "Eintrag-Hinzufügen"-Formular sein soll) zur Bearbeitung des grad eben hinzugefügten Eintrags springt (was nicht möglich sein soll). Außerdem sind die Buttons "Speichern", "Speichern und schließen" und "Speichern und neu" zuviel.
    Um trotzdem die Funktionalität "ohne Programmier-Aufwand" umzusetzen habe ich ein Formular mit dem Formulargenerator angelegt und es auf "Eingaben in der Datenbank speichern" gesetzt und da natürlich die Tabelle des gewünschten Katalogs ausgewählt. Nun kann man ganz normal die Felder der Tabelle mit den dafür gewünschten Widgets im Formular nachbauen. Zusätzlich muss noch ein Verstecktes Feld mit dem Namen "pid" und den Wert der ID des Katalogs, in den Eingetragen werden soll, angelegt werden. Diese bekommt man von der Bearbeitungsseite des Katalogs (Katalog -> Edit "Mein Katalog" -> Edit Katalog).

    Sicher ist das Ganze in dem Sinne, dass nichts kaputt gemacht werden kann. Allerdings können tote Einträge - Einträge mit ungültiger pid - eingetragen werden, sofern das Hidden-Field nicht über ein Session-Eintrag geprüft wird.

    In dem Zusammenhang dann gleich ein Feature-Request für die Katalog-Entwickler:
    - Option für Bearbeitungsmodul "Insert-Only Mode"
    - Option um zu steuern welche Bearbeitungs-Buttons verfügbar sind.
    - Option um die Labels der Bearbeitungs-Buttons zu verändern.
    (Falls etwas von dem Umgesetzt werden wird, wär cool wenn bescheid gegeben wird)

    Das wärs erstmal soweit.
    Ihr Partner für Contao und Webentwicklung: http://www.hofff.com.
  • xtra
    Maintainer
    • 02.07.2009
    • 2007

    #2
    Zitat von backbone Beitrag anzeigen
    - Option für Bearbeitungsmodul "Insert-Only Mode"
    Bitte in den Tracker bei google code.

    Zitat von backbone Beitrag anzeigen
    - Option um zu steuern welche Bearbeitungs-Buttons verfügbar sind.
    catalog_edit.tpl

    Zitat von backbone Beitrag anzeigen
    - Option um die Labels der Bearbeitungs-Buttons zu verändern.
    system/config/langconfig.php
    PHP-Code:
    $GLOBALS['TL_LANG']['MSC']['save']
    $GLOBALS['TL_LANG']['MSC']['saveNclose']
    $GLOBALS['TL_LANG']['MSC']['saveNcreate'] 
    
    alternativ hierzu: catalog_edit.tpl

    Gruss
    Chris
    Bedenke stets: Wenn Du ungenaue oder unzureichende Angaben machst, so koennte dies die Bearbeitung deiner Frage endlos verzoegern (oder sogar dazu fyhren, dass ich zu viel nachdenken muss und die Antwort vergesse!). Kein Support per PN.

    Kommentar

    • backbone
      AG Core-Entwicklung
      • 16.10.2009
      • 437

      #3
      Also das mit Button-Labels und langconfig ist klar, nur dann wird das überall (auch im BE) geändert, was ziemlich blöd ist (vorallem bei mehreren Katalogen: "Bild hinzufügen", "Eintrag aktualisieren", ...).
      Templates wären hierfür OK.

      Zum Thema Button-Sichtbarkeiten:
      Das kann man sicher übers Template regeln, würde aber glaube ich nicht verhindern, das die andere Aktionen auch ausgeführt werden.
      Bsp: Ein edit-Template wo nur der "Speichern"-Button zu sehen ist, wenn man den klickt, ok alles iO. Jetzt kommt Trudy und fängt an den POST zu verändern und schickt als saveNnew ab. Was ich damit sagen will: Die Funktion ist noch da, wird nur nicht angezeigt.

      Für den ersten Punkt mache ich ein Ticket auf.
      Ihr Partner für Contao und Webentwicklung: http://www.hofff.com.

      Kommentar

      • xtra
        Maintainer
        • 02.07.2009
        • 2007

        #4
        Zitat von backbone Beitrag anzeigen
        Also das mit Button-Labels und langconfig ist klar, nur dann wird das überall (auch im BE) geändert, was ziemlich blöd ist (vorallem bei mehreren Katalogen: "Bild hinzufügen", "Eintrag aktualisieren", ...).
        Templates wären hierfür OK.
        Die buttons stehen, wie oben bemerkt, im Template.

        Zitat von backbone Beitrag anzeigen
        Zum Thema Button-Sichtbarkeiten:
        Das kann man sicher übers Template regeln, würde aber glaube ich nicht verhindern, das die andere Aktionen auch ausgeführt werden.
        Bsp: Ein edit-Template wo nur der "Speichern"-Button zu sehen ist, wenn man den klickt, ok alles iO. Jetzt kommt Trudy und fängt an den POST zu verändern und schickt als saveNnew ab. Was ich damit sagen will: Die Funktion ist noch da, wird nur nicht angezeigt.

        Für den ersten Punkt mache ich ein Ticket auf.
        Der Erste Punkt erschlaegt gleichzeitig auch dein Argument zum zweiten Punkt.
        Die Aktion "New" ist damit dann hinfaellig und wird nicht mehr getriggert.

        Gruss
        Chris
        Bedenke stets: Wenn Du ungenaue oder unzureichende Angaben machst, so koennte dies die Bearbeitung deiner Frage endlos verzoegern (oder sogar dazu fyhren, dass ich zu viel nachdenken muss und die Antwort vergesse!). Kein Support per PN.

        Kommentar

        • backbone
          AG Core-Entwicklung
          • 16.10.2009
          • 437

          #5
          Zitat von xtra Beitrag anzeigen
          Die buttons stehen, wie oben bemerkt, im Template.
          Das wollte ich damit sagen, nur aneinander vorbeigeredet :P

          Zitat von xtra Beitrag anzeigen
          Der Erste Punkt erschlaegt gleichzeitig auch dein Argument zum zweiten Punkt.
          Die Aktion "New" ist damit dann hinfaellig und wird nicht mehr getriggert.
          In diesem Use-Case schon (vorrausgesetzt es wird auch entsprechend kontrolliert in der hoffentlich kommenden Implementierung), aber nicht im "normalen" Editier-Modus. Dort würde zwar eine "unerlaubte" Änderung des POST von "saveNclose" (die einzige Option die angezeigt wird in einem anderen Use-Case) in "save" nicht viel bringen es sei denn das man (eventuell) auf der gleichen Seite bleibt.

          Generell fällt mir dazu ein das es auch vielleicht einen "edit only"-Modus geben sollte. Da wäre dann auch die Änderung von "save" in "saveNcreate" fehleranfällig, falls das nicht überprüft wird.
          Ihr Partner für Contao und Webentwicklung: http://www.hofff.com.

          Kommentar

          Lädt...