Hallo zusammen,

tt_address wird zusammen mit direct_mail_subscription zur Anmeldung für einen 
NL genutzt. Der Fehler: Es werden alle Felder ausser first_name und last_name 
in der DB gespeichert. Diese Felder werden auch in der JS-Funktion updateForm 
des Formulars nicht berücksichtigt (beide Felder bleiben bei einem erneuten 
laden des Formulars einfach leer).

-> Typo3 4.1.2 
-> tt_address 2.1.0
-> direct_mail_subscription 1.0.3

-> In tt_address ist die Option "Disable combined name field" gesetzt.
-> Es werden nur Standardfelder von tt_adress verwendet, keine weiteren über 
eine EXT.


Bei der Fehleranalyse habe ich folgendes festgestellt:
In der fe_adminLib.inc (typo3/sysext/cms/tslib/media/scripts/) wird auf Zeile 
212 die Membervariable $this->fieldList gesetzt:

---
// Setting the hardcoded lists of fields allowed for editing and creation.
$this->fieldList=implode(',',t3lib_div::trimExplode(',',$GLOBALS['TCA'][$this->theTable]['feInterface']['fe_admin_fieldList'],1));
---


Lese ich $GLOBALS['TCA'][$this->theTable]['feInterface']['fe_admin_fieldList'] 
aus, steht bei mir folgendes:
pid,hidden,name,title,address,phone,fax,mobile,www,email,city,zip,company,region,country,description

Es fehlen also die Felder first_name und last_name und somit ist auch klar 
warum die bei bei $this->save() nicht berücksichtigt werden.

Schaue ich nun in die tca.php meiner tt_address sehe ich die beiden Felder 
jedoch?

---
$TCA['tt_address'] = array (
        'ctrl' => $TCA['tt_address']['ctrl'],
        'interface' => array (
                'showRecordFieldList' => 
'name,address,city,zip,region,country,phone,fax,email,www,title,company,image'
        ),
        'feInterface' => $TCA['tt_address']['feInterface'],
        'columns' => array (
                'hidden' => array (
                        'exclude' => 1,
                        'label' => 
'LLL:EXT:lang/locallang_general.xml:LGL.hidden',
                        'config' => array (
                                'type' => 'check'
                        )
                ),
                'name' => array (
                        'label' => 
'LLL:EXT:lang/locallang_general.xml:LGL.name',
                        'config' => array (
                                'type' => 'input',
                                'size' => '40',
                                'max' => '256'
                        )
                ),
                'first_name' => array (         
                        'exclude' => 0,         
                        'label' => 
'LLL:EXT:tt_address/locallang_tca.xml:tt_address.first_name',                
                        'config' => array (
                                'type' => 'input',
                                'size' => '40',
                                'eval' => 'trim',
                                'max' => '256'
                        )
                ),
                'middle_name' => array (                
                        'exclude' => 0,         
                        'label' => 
'LLL:EXT:tt_address/locallang_tca.xml:tt_address.middle_name',               
                        'config' => array (
                                'type' => 'input',
                                'size' => '40',
                                'eval' => 'trim',
                                'max' => '256'
                        )
                ),
                'last_name' => array (          
                        'exclude' => 0,         
                        'label' => 
'LLL:EXT:tt_address/locallang_tca.xml:tt_address.last_name',         
                        'config' => array (
                                'type' => 'input',
                                'size' => '40',
                                'eval' => 'trim',
                                'max' => '256'
                        )
                ),
                'title' => array (
                        'exclude' => 1,
                        'label' => 
'LLL:EXT:lang/locallang_general.xml:LGL.title_person',
                        'config' => array (
                                'type' => 'input',
                                'size' => '20',
                                'eval' => 'trim',
                                'max' => '40'
                        )
                ),
[...]
---


Irgendwie wird scheinbar first_name, middle_name und last_name geflissentlich 
ignoriert :-) Es geht dann mit title in der Liste weiter.


Das Typoscript-Setting sollte auch soweit passen:
---
  // Edit setup
  edit = 1
  edit.fields = last_name,first_name,company,address,zip,city,phone,email
  edit.required = last_name,first_name,company,address,zip,city,phone,email
  edit.evalValues {
    first_name = required
    last_name = required
    company = required
    address = required
    zip = required
    city = required
    phone = required
    email = uniqueLocal, email
  }

  // Create setup
  create = 1
  create.preview = 0
  create.fields = 
hidden,last_name,first_name,company,address,zip,city,phone,email
  create.required = last_name,first_name,company,address,zip,city,phone,email
---


Typo3 meckert ja die beiden Felder auch an falls man diese nicht ausfüllt (sind 
Pflichtfelder), von daher scheint es von dieser Seite aus schon mal zu passen?


Ich möchte noch erwähnen, dass der Kunde mit der bereits fertigen Website zu 
mir gewechselt ist und ich nicht ausschliessen kann das es irgendwo in der 
Tiefe des Systems steckt. Wobei das eigentlich IMHO nicht sein kann: Die Site 
läuft auf dem aktuellen (unveränderten, d.h. nicht hardcodiertem) Release von 
Typo3 und im TS-Templatebrowser konnte ich in dem relevanten Bereich auch 
nichts entdecken?


Ich bin ehrlich gesagt im Augenblick ein wenig ratlos und hoffe das jemand von 
Euch eine Idee hat an was es noch liegen kann?


Besten Dank und Grüsse,
Andre

---
Andre Dittmar | hot bytes
 
Elbinger Straße 24
74226 Nordheim
Germany 

Fon : +49 (0) 71 33 / 20 46 43
Fax : +49 (0) 71 33 / 20 46 42
D1  : +49 (0) 1 60 / 97 22 03 03

Web : http://www.hotbytes.de
Mail: [EMAIL PROTECTED]


Rechtliche Angaben:
-------------------
Geschäftsführer: Andre Dittmar
Gerichtsstand:   Amtsgericht Heilbronn a.N.


____________
Virus checked by G DATA AntiVirusKit
Version: AVK 17.6876 from 15.08.2007
Virus news: www.antiviruslab.com

_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.netfielders.de
http://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-german

Reply via email to