[Typo3-UG Denmark] Tilpasning af backend-forms

René Schade schade at hypergenic.com
Thu Jan 13 15:53:09 CET 2005


Hejsa,

Jeg arbejder på min første extension, og har nu nogle spørgsmål til de lidt mere erfarne.

Jeg brugte kickstarter til at generere de først tabeller med, og der var bare fint. Et stykke tid efter tog jeg selv over når der skulle rettes i TCA'en og lign.

Det er herligt at få genereret alle de forms der skal til, for at rette i tabellerne i backend'en. 

Mit problem er nu, at på en af disse forms, har jeg brug for at få nogle af felteren for-ufyldt, med data fra en anden tabel. Dette skal ske efter brugerens ønske.

Lad mig give et eksempel:

En bruger ønsker at oprette en ny tabelindgang, og starter en tom form op.

Brugeren indser, at mange af disse oplysninger haves allerede i en anden tabel, og trykker derfor på (f.eks.) en knap "udfyld form med data fra anden tabel".

Herefter vises en liste, med tabelindgange, brugeren vælger den ønskede, hvorefter den eksisterende form er udfyldt som ønsket. 

Han kan herefter vælge at gemme formen, evt. rette i felterne forinden.

--

Jeg synes ikke det umiddelbart er oplagt at regne ud, hvordan jeg løser dette problem i TYPO3.

Jeg er dog kommet op med følgende løsning, og vil lige se hvad i synes om denne:

For at kunne kontrollere dele af den HTML der genereres, når indtastningsformen skabes, finder jeg kun TCA['colums'][fieldname]['config'][user] relevant. Det er den eneste måde, hvorpå jeg kan putte HTML ind, som jeg 100% kan bestemme over (f.eks. javascript).

Den HTML jeg putter ind, genererer en knap. Når man trykker på knappen åbnes et nyt browser-vindue, og et php script som jeg 100% har skrevet dukker op. Dette PHP præsenterer så elementerne i den anden tabel, og man kan her vælge en af disse. Ved dette valg kopieres (via Javascript) informatioene over i selve formen. Vinduet lukkedes.

Jeg ved at denne ide ville kunne virke, da jeg har lavet nogen lignende før (det kræver dog en del javascript arbejde, for at holde styr på hvad input-felterne hedder). 

Så er mit spørgsmål: Er der andre måder at gøre noget lignende på? 

Hilsen
René 



More information about the TYPO3-UG-denmark mailing list