---
title: "Workspaces email"
url: "https://www.typo3.net/d/42145-workspaces-email"
source: "typo3.net"
tags: ["Backend","Benutzer & Rechte","Frage"]
created: "2006-04-27"
last_reply: "2008-04-24"
replies: 2
solved: false
page: 1
pages: 1
lang: "de"
---

# Workspaces email

Backend › Benutzer & Rechte · 2 Antworten · gestartet 2006-04-27

## Eröffnungsbeitrag

**carsten_bonn** · 2006-04-27 · [Beitrag #1](https://www.typo3.net/d/42145-workspaces-email/1)

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):

```php
	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)
				);
			}
		}
	}
```

## Antworten

### [#2](https://www.typo3.net/d/42145-workspaces-email/2) · gstyleds · 2007-04-17

Ich habe ebenfalls Hilfe dazu gesucht und bin dabei auf Deinen Beitrag gestoßen. Klasse - hat mir sehr geholfen!

Besten Dank, Grüße,
Dirk

### [#3](https://www.typo3.net/d/42145-workspaces-email/3) · kwottkam · 2008-04-24

Hallo,

inzwischen gibt es eine Extension hierfür

<http://typo3.org/extensions/repository/view/extend_mail_ws/0.5.3/>

Gruß KLAUS

---

Quelle: „Workspaces email“, typo3.net, https://www.typo3.net/d/42145-workspaces-email
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
