Ergebnis 1 bis 5 von 5

Thema: Pflichtfeld soll nur im Frontend gelten, nicht im Backend

  1. #1
    Alter Contao-Hase
    Registriert seit
    20.06.2009.
    Ort
    Graz (Austria)
    Beiträge
    1.297

    Standard Pflichtfeld soll nur im Frontend gelten, nicht im Backend

    Hallo, ich habe für die Mitgliederregistrierung ein zusätzliches Feld via dca eingefügt:
    PHP-Code:
    'eval'      => array('mandatory'=>true'submitOnChange'=>true'feEditable'=>true'feGroup'=>'personal''tl_class'=>'w50'), 
    Hier hab ich angegeben, dass dieses Feld ein Pflichtfeld ist.

    Folgende Frage: Kann man es irgendwie so lösen, dass dieses Pflichtfeld NUR für die Registrierung im Frontend gilt, aber NICHT im Backend?

    Grund dafür ist, dass sich im Backend schon über 150 Mitglieder befinden, und nicht bei allen gehört dies angehackt. Bei Neu-Registrierung muss es aber angehackt werden.
    LG, Andi

  2. #2
    Contao-Urgestein Avatar von fiedsch
    Registriert seit
    09.07.2009.
    Ort
    München
    Beiträge
    2.600

    Standard

    Du könntest TL_MODE abfragen und in der Zuweisung an 'mandatory' verwenden. Aber das ist deprecated. Siehe dazu auch https://docs.contao.org/books/extend...html#constants . Dort wird auch gezeigt, was Du anstelle verwenden solltest.
    Contao-Community-Treff Bayern: http://www.contao-bayern.de

  3. #3
    Alter Contao-Hase
    Registriert seit
    20.06.2009.
    Ort
    Graz (Austria)
    Beiträge
    1.297

    Standard

    Hm, das heißt ich muss in meiner tl_member.php diese Classe einbauen? Und wie geht das dann mit mentatory?
    LG, Andi

  4. #4
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    26.776
    Partner-ID
    10107

    Standard

    Ja, du kannst einen onload_callback verwenden, das DCA dort anpassen (also das Feld dort auf mandatory setzen) und dort im Prinzip den übergebenen Parameter auf null überprüfen - dann weißt du, dass du dich im Frontend befindest. Oder du nutzt den Request Stack und den Scope Matcher um zu überprüfen, ob du dich im Frontend befindest.
    » sponsor me via GitHub or PayPal

  5. #5
    Alter Contao-Hase
    Registriert seit
    20.06.2009.
    Ort
    Graz (Austria)
    Beiträge
    1.297

    Standard

    Hallo, ich hab dies nun so gelöst und es funktioniert wunderbar.

    PHP-Code:
    if (TL_MODE == 'BE') {
      
    $GLOBALS['TL_DCA']['tl_member']['fields']['trade_license']['eval']['mandatory'] = false;

    LG, Andi

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
  •