Ergebnis 1 bis 8 von 8

Thema: dcaconfig.php: eigene Werte vorbelegen

  1. #1
    Contao-Nutzer
    Registriert seit
    24.10.2010.
    Beiträge
    49

    Standard dcaconfig.php: eigene Werte vorbelegen

    Servus beinander,
    Ich möchte demnächst eine größere Zahl an Mitgliedern anlegen und hätte da gerne vorher ein paar globale Einstellungen, z.B.:
    : Festlegung der öffentlich sichtbaren Felder (ist ein BLOB in der DB) Wie mache ich das?
    : Festlegung der Pflichtfelder in den Profilen

    Kann ich Mitglieder importieren? Wahrscheinlich nur per sql...?
    Wo kann ich mir all die Variablen ($GLOBALS['......) ausgeben lassen, mit denen ich die für mich wichtigen auswählen kann?

    Danke für jeden Tip.
    Christian G.

  2. #2
    Contao-Urgestein Avatar von tril
    Registriert seit
    07.01.2010.
    Ort
    Bad Marienberg
    Beiträge
    2.939
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von Christian G. Beitrag anzeigen
    Kann ich Mitglieder importieren? Wahrscheinlich nur per sql...?
    Zumindest gibt es keine Core-Funktion zum importieren von Mitgliedern. Aber eventuell findest du eine passende Erweiterung:
    http://www.contao.org/erweiterungsliste.html

    Zitat Zitat von Christian G. Beitrag anzeigen
    Wo kann ich mir all die Variablen ($GLOBALS['......) ausgeben lassen, mit denen ich die für mich wichtigen auswählen kann?
    Die stehen in der
    Code:
    system/modules/backend/dca/tl_member.php
    Wenn du Erweiterungen installiert hast, musst du in die tl_member.php der Erweiterung nachschauen!

    Die Syntax um den default Wert zu setzen:
    Code:
    $GLOBALS['TL_DCA']['tl_member']['fields']['.....']['default'] = '.....';
    z.B. für den Vornamen:
    Code:
    $GLOBALS['TL_DCA']['tl_member']['fields']['firstname']['default'] = 'Martin';
    Wenn du einen Blob mit nem Array hast:
    Code:
    $GLOBALS['TL_DCA']['tl_member']['fields']['groups']['default'] = serialize(array(1,2,3));
    Das funktioniert natürlich nur dann, wenn du die Mitglieder über das BE einträgst!

    Grüße
    Tristan

  3. #3
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.558
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hallo tril,

    gibt es eigentlich eine Möglichkeit, im DCA der "tl_member.php" auch einen Defaultwert für das Länder-Select-Menü vorzubelegen?

    Also irgendwas in der Form:
    PHP-Code:
    $GLOBALS['TL_DCA']['tl_member']['fields']['country']['default'] = ... 
    Die Optionen werden in diesem Fall ja über "$this->getCountries()" reingeladen. Ich konnte diesbezüglich bisher leider noch keine zufriedenstellende Lösung finden.
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  4. #4
    Contao-Urgestein Avatar von tril
    Registriert seit
    07.01.2010.
    Ort
    Bad Marienberg
    Beiträge
    2.939
    User beschenken
    Wunschliste

    Standard

    Ja, du kannst jedem Feld einen Default geben, im Fall von country ist es der 2-stellige Ländercode:

    PHP-Code:
    $GLOBALS['TL_DCA']['tl_member']['fields']['country']['default'] = 'de'
    Grüße
    Tristan

  5. #5
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.558
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Das gibt's ja nicht, ich bilde mir ein, ich hatte das gestern schon so probiert. Hat mir da eventuell der Cache einen Streich gespielt!?

    Nun gut, so funktioniert das auf jeden Fall. Vielen Dank!

    Gibt es eigentlich auch eine (einfache) Möglichkeit, die Länder-Auswahlliste auf ganz bestimmte Länder zu beschränken? Die hier vorgeschlagene Lösung ist doch etwas "umfangreicher"...
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  6. #6
    Contao-Urgestein Avatar von tril
    Registriert seit
    07.01.2010.
    Ort
    Bad Marienberg
    Beiträge
    2.939
    User beschenken
    Wunschliste

    Standard

    Dazu würde mir spontan ein eigener Callback einfallen (ungetestet):

    PHP-Code:
    $GLOBALS['TL_DCA']['tl_member']['fields']['country']['options_callback'] = array('tl_member_2''getCountries');

    class 
    tl_member_2
    {
        protected function 
    getCountries() 
        { 
            
    $return = array(); 
            
    $countries = array(); 

            
    $this->loadLanguageFile('countries'); 
            include(
    TL_ROOT '/system/config/countries.php'); 

            foreach (array(
    'de''us') as $strKey
            { 
                
    $return[$strKey] = strlen($GLOBALS['TL_LANG']['CNT'][$strKey]) ? $GLOBALS['TL_LANG']['CNT'][$strKey] : $strKey
            } 

            
    $aux = array(); 

            foreach (
    array_values($return) as $cntr
            { 
                
    $aux[] = $cntr
            } 

            
    array_multisort($auxSORT_ASC$return); 
            return 
    $return
        } 


  7. #7
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.558
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Daumen hoch

    Hallo tril,

    vielen Dank! Hab's getestet. Funktioniert einwandfrei mit dem Callback "options_callback".
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  8. #8
    Contao-Nutzer
    Registriert seit
    24.10.2010.
    Beiträge
    49

    Standard

    Zitat Zitat von tril Beitrag anzeigen
    Zumindest gibt es keine Core-Funktion zum importieren von Mitgliedern. Aber eventuell findest du eine passende Erweiterung:
    http://www.contao.org/erweiterungsliste.html


    Die stehen in der
    Code:
    system/modules/backend/dca/tl_member.php
    Wenn du Erweiterungen installiert hast, musst du in die tl_member.php der Erweiterung nachschauen!

    Die Syntax um den default Wert zu setzen:
    Code:
    $GLOBALS['TL_DCA']['tl_member']['fields']['.....']['default'] = '.....';
    z.B. für den Vornamen:
    Code:
    $GLOBALS['TL_DCA']['tl_member']['fields']['firstname']['default'] = 'Martin';
    Wenn du einen Blob mit nem Array hast:
    Code:
    $GLOBALS['TL_DCA']['tl_member']['fields']['groups']['default'] = serialize(array(1,2,3));
    Das funktioniert natürlich nur dann, wenn du die Mitglieder über das BE einträgst!

    Grüße
    Tristan
    Danke. Schau ich mir an.

    Könntest Du mir in diesem Zusammenhang noch behilflich sein?
    Ich habe per EFG Daten in der DB zusammengetragen, diese mit mit dem Modul "Auflistung Formular-Daten" wieder ausgegeben. Für Übersetzungen / Mehrsprachigkeit möchte ich gerne die Feldwerte in die langconfig eintragen. Wie spreche ich die Felder an?
    PHP-Code:
    $GLOBALS['TL_LANG']['tl_formdata_details']['fields']['ff_name']['meinfeld'] = 'meinfeldwert'
    und auch Anderes, z.B.
    PHP-Code:
     = array('feldname','meinfeldwert'); 
    funktioniert nicht :-(

    Danke für jede Hilfe,
    Christian G.

Aktive Benutzer

Aktive Benutzer

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

Ähnliche Themen

  1. If-Abfrage in der dcaconfig
    Von felix123 im Forum Entwickler-Fragen
    Antworten: 8
    Letzter Beitrag: 11.03.2013, 12:18
  2. Formular mit Daten vorbelegen
    Von typolight-user im Forum Formulare
    Antworten: 8
    Letzter Beitrag: 30.08.2012, 13:03
  3. per dcaconfig Felder vorbelegen
    Von m.koell im Forum Allgemeine Inhaltselemente
    Antworten: 2
    Letzter Beitrag: 04.02.2011, 09:42
  4. Tabelle mit Werten vorbelegen
    Von Bandyt im Forum Entwickler-Fragen
    Antworten: 5
    Letzter Beitrag: 16.01.2011, 13:26

Lesezeichen

Lesezeichen

Berechtigungen

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