[TYPO3-german] tt_address: last_name und first_name wird ignoriert

Andre Dittmar typo3 at hotbytes.de
Wed Aug 15 19:02:02 CEST 2007


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: mail at hotbytes.de


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



More information about the TYPO3-german mailing list