Hallo zusammen,
ich würde gerne Formulare im TCEForms-Stil, die ja mit typo3/alt_doc.php
erzeugt werden in einer BE Modul verwenden.
Das Modul muss aufgrund der Eingaben mehrere Datensätze anlegen, es muss
also mehr als nur das alt_doc script geben. Bis Version TYPO3 4.2 hatte
ich eine Lösung, die die entsprechenden JavaScriptdateien eingebunden
hat und dann ein virtuelles TCA erstellt hat. Mit TYPO3 4.3 klappt dann
die Validierung der Felder nicht mehr :(
Grüße
Kay
Es wäre genial, wenn es für die Zeilen nach //thanks to dimitry dupelov
eine generische Lösung gebe, die es mir versionsabhängig erlaubt die
richtigen JavaScript Dateien einzubinden.
$this->TCEforms = t3lib_div::makeInstance('t3lib_TCEforms');
$this->TCEforms->initDefaultBEMode();
$this->TCEforms->setNewBEDesign();
$this->TCEforms->backPath = $GLOBALS['BACK_PATH'];
$this->TCEforms->doSaveFieldName = 'doSave';
$this->TCEforms->localizationMode =
t3lib_div::inList('text,media',$this->localizationMode) ?
$this->localizationMode : ''; // text,media is keywords defined in TYPO3
Core API..., see "l10n_cat"
$this->TCEforms->returnUrl = $this->R_URI;
$this->TCEforms->palettesCollapsed =
!$this->MOD_SETTINGS['showPalettes'];
$this->TCEforms->disableRTE =
$this->MOD_SETTINGS['disableRTE'];
$this->TCEforms->enableClickMenu = true;
$this->TCEforms->enableTabMenu = true;
// Setting external variables:
if ($GLOBALS['BE_USER']->uc['edit_showFieldHelp']!='text' &&
$this->MOD_SETTINGS['showDescriptions']) {
$this->tceforms->edit_showFieldHelp='text';
}
//thanks to dimitry dupelov
$content.='
<script type="text/javascript"
src="../../../../typo3/contrib/prototype/prototype.js"></script>
<script type="text/javascript"
src="../../../../typo3/js/iecompatibility.js"></script>
<script type="text/javascript"
src="../../../../typo3/js/clickmenu.js"></script>
<script type="text/javascript"
src="../../../../typo3/md5.js"></script>
<script type="text/javascript"
src="../../../../t3lib/jsfunc.evalfield.js"></script>
';
#$content=$this->TCEforms->printNeededJSFunctions_top();;
#$content.='<form action="" method="post"
enctype="'.$GLOBALS['TYPO3_CONF_VARS']['SYS']['form_enctype'].'"
name="editform"
onsubmit="document.editform._scrollPosition.value=(document.documentElement.scrollTop
|| document.body.scrollTop); return TBE_EDITOR.checkSubmit(1);">';
$content.='<form action="" method="post" id="typo3form"
enctype="'.$GLOBALS['TYPO3_CONF_VARS']['SYS']['form_enctype'].'"
name="editform" onsubmit="return TBE_EDITOR.checkSubmit(1);">';
#$content.='<form action="" method="post"
enctype="'.$GLOBALS['TYPO3_CONF_VARS']['SYS']['form_enctype'].'"
name="editform" >';
$content.='<input type="hidden" name="uid"
value="'.intval(t3lib_div::_GP('uid')).'">';
return $content;
}
function TCEFormsField($field) {
$fieldHTML
=...@$this->TCEforms->getSingleField_SW('','',array(),$field);
$fieldLabel=$field['label'];
$fieldName
=substr($field['itemFormElName'],1+strrpos($field['itemFormElName'],'['),-1);
$content.=$this->TCEforms->fieldTemplate;
$content=str_replace('###BGCOLOR###'
,$this->TCEforms->colorScheme[0],$content);
$content=str_replace('###CLASSATTR_1###'
,'class="'.$this->TCEforms->classScheme[0].'1"',$content);
$content=str_replace('###FIELD_ITEM###' ,$fieldHTML
,$content);
$content=str_replace('###BGCOLOR_HEAD###'
,$this->TCEforms->colorScheme[0],$content);
$content=str_replace('###CLASSATTR_2###'
,'class="'.$this->TCEforms->classScheme[0].'2"',$content);
$content=str_replace('###FIELD_NAME###' ,$fieldLabel
,$content);
$content=str_replace('###FIELD_HELP_ICON###' ,''
,$content);
$content=str_replace('###FIELD_HELP_TEXT###' ,''
,$content);
$content=str_replace('###FIELD_PAL_LINK_ICON###' ,''
,$content);
$content=str_replace('###FIELD_TABLE###','custom',$content);
$content=str_replace('###FIELD_FIELD###',$fieldName,$content);
$content=str_replace('###FIELD_ID###',t3lib_div::_GP('uid'),$content);
return $content;
}
_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german