Stellen Sie sich vor, dass Sie Infos abhänging von POST oder GET oder wie auch immer
was nötig ist, vor oder während oder nach SUBMIT der Formular bearbeiten.
Dafür POWERMAIL bittet uns HOOK an. Hier kurze Tutorial, wie man HOOK in eigener
Extension nutzen kann.
1- In ext_localconf.php die Hook bekannt machen.
$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['powermail']['###FUNKTIONNAME###'][] = 'EXT:###NAME_DER_EXTENSION###/class.tx_###PHP-DATEI###.php:tx_###CLASS_NAME###';
###FUNKTIONNAME### : Der Name von HOOK-FUNKTION (Liste werden Sie in Dokumentation von POWERMAIL finden).
###NAME_DER_EXTENSION### : Der Name der Extension (Addresse).
###PHP-DATEI### : Bitte beachten Sie dass PHP-Datei muss mit "tx_" angefangen wird.
###CLASS_NAME### : Der Name von Klasse.
Als Beispiel stellen Sie sich vor , dass Sie einen Feld mit Daten von GET-Parameter ausfüllen. In Diesem Beispiel sollen Sie "PM_FieldWrapMarkerHook1" aufrufen.
- in ext_localconf.php folgende Zeile schreiben.
$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['powermail']['PM_FieldWrapMarkerHook1'][] = 'EXT:its7_powermail_extra/class.tx_powermail_FormWrapMarkerHook.php:tx_powermail_FormWrapMarkerHook'; - Eine Dateil mit dem Name "class.tx_powermail_FormWrapMarkerHook.php" anlegen.
- folgende Code in der Datei eingeben:
<?php
class tx_powermail_FormWrapMarkerHook extends tslib_pibase {
public function PM_FieldWrapMarkerHook1($uid, $xml, $type, $title, &$markerArray, &$piVarsFromSession, $obj){
$bausparTxt = "";
try{
if(isset($_GET['bsid'])) {
$sqlStr = "SELECT * FROM tt_content where uid=" . $_GET['bsid'];
$res = $GLOBALS["TYPO3_DB"]->sql_query($sqlStr);
if($res) {
while($row = $GLOBALS["TYPO3_DB"]->sql_fetch_assoc($res)) {
$bausparTxt = $row['header'];
}
}
}
}
catch(Exception $e) {
$bausparTxt = "";
}
if($markerArray['###POWERMAIL_FIELD_UID###'] == ###FELD_ID###) {
$markerArray['###VALUE###'] = 'value="' . $bausparTxt . '"';
}
}
}
if (defined('TYPO3_MODE') && $TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['ext/class.tx_powermail_FormWrapMarkerHook.php']) {
include_once ($TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['ext/class.tx_powermail_FormWrapMarkerHook.php']);
}
?>
###FELD_ID### finden Sie in Template-datei
Weitere Infos finden Sie hier














