Da ich noch keine Hilfe in Foren zu diesem Problem gefunden habe, hab ich mich dran gesetzt mal die eMail-Benachrichtigung in den Workspaces bei TYPO3 4.0 zu übersetzen. Einfach in der Datei t3lib/class.t3lib_tcemain.php den folgenden Part ersetzen (steht fast ganz am Ende):
function notifyStageChange($stat,$stageId,$table,$id,$comment) {
$workspaceRec = t3lib_BEfunc::getRecord('sys_workspace', $stat['uid']);
if (is_array($workspaceRec)) {
// Compile label:
switch((int)$stageId) {
case 1:
$newStage = 'Bereit zur Kontrolle';
break;
case 10:
$newStage = 'Bereit zur Veröffentlichung';
break;
case -1:
$newStage = 'Element wurde zurückgewiesen!';
break;
case 0:
$newStage = 'Zurückgewiesenes Element wurde zur Kenntnis genommen und nicht überabeitet';
break;
default:
$newStage = 'Unbekannte Statusänderung!?';
break;
}
// Compile list of recipients:
$emails = array();
switch((int)$stat['stagechg_notification']) {
case 1:
switch((int)$stageId) {
case 1:
$emails = $this->notifyStageChange_getEmails($workspaceRec['reviewers']);
break;
case 10:
$emails = $this->notifyStageChange_getEmails($workspaceRec['adminusers'], TRUE);
break;
case -1:
$emails = $this->notifyStageChange_getEmails($workspaceRec['reviewers']);
$emails = array_merge($emails,$this->notifyStageChange_getEmails($workspaceRec['members']));
break;
case 0:
$emails = $this->notifyStageChange_getEmails($workspaceRec['members']);
break;
default:
$emails = $this->notifyStageChange_getEmails($workspaceRec['adminusers'], TRUE);
break;
}
break;
case 10:
$emails = $this->notifyStageChange_getEmails($workspaceRec['adminusers'], TRUE);
$emails = array_merge($emails,$this->notifyStageChange_getEmails($workspaceRec['reviewers']));
$emails = array_merge($emails,$this->notifyStageChange_getEmails($workspaceRec['members']));
break;
}
$emails = array_unique($emails);
// Send email:
if (count($emails)) {
$message = sprintf('
Auf der Seite "%s" (Link zur Login-Seite %s)
im Workspace "%s" (#%s) wurde
der Status für das Element "%s" geändert:
==> %s
Kommentar:
"%s"
Der Status wurde von %s (username: %s) geändert
',
$GLOBALS['TYPO3_CONF_VARS']['SYS']['sitename'],
t3lib_div::getIndpEnv('TYPO3_SITE_URL').TYPO3_mainDir,
$workspaceRec['title'],
$workspaceRec['uid'],
$table.':'.$id,
$newStage,
$comment,
$this->BE_USER->user['realName'],
$this->BE_USER->user['username']);
t3lib_div::plainMailEncoded(
implode(',',$emails),
'Workspace: Statusänderung in Element-ID '.$id,
trim($message)
);
}
}
}