Seite 1 von 1

[3.3] Benutzerdefinierte Felder in der Registrierungsmail

Verfasst: 06.05.2021 13:48
von stefan-franz
Hallo allerseits,

in diesem Beitrag steht die Anleitung für die 3.2. wie man benutzerdefinierte Felder in der Registrierungsmail übermittelt.
viewtopic.php?f=151&t=242825&start=10

Leider funktioniert das unter 3.3. nicht mehr, da sich die includes/functions_messenger.php geändert hatte.

Original includes/functions_messenger.php - V 3.3.4

Code: Alles auswählen

function send($method = NOTIFY_EMAIL, $break = false)
	{
		global $config, $user, $phpbb_dispatcher;

		// We add some standard variables we always use, no need to specify them always
		$this->assign_vars(array(
			'U_BOARD'	=> generate_board_url(),
			'EMAIL_SIG'	=> str_replace('<br />', "\n", "-- \n" . htmlspecialchars_decode($config['board_email_sig'], ENT_COMPAT)),
			'SITENAME'	=> htmlspecialchars_decode($config['sitename'], ENT_COMPAT),
		));

		$subject = $this->subject;
		$template = $this->template;

Geänderte (nicht funktionierende)

Code: Alles auswählen

function send($method = NOTIFY_EMAIL, $break = false)
	{
		global $config, $user, $phpbb_dispatcher;

		// We add some standard variables we always use, no need to specify them always
		$this->assign_vars(array(
			'U_BOARD'	=> generate_board_url(),
			'EMAIL_SIG'	=> str_replace('<br />', "\n", "-- \n" . htmlspecialchars_decode($config['board_email_sig'], ENT_COMPAT)),
			'SITENAME'	=> htmlspecialchars_decode($config['sitename'], ENT_COMPAT),));
		'SPONSOR'      => utf8_normalize_nfc(request_var('pf_sponsor_name', '', true)), 
		'HANDY'        => utf8_normalize_nfc(request_var('pf_handy_nr', '', true)),
	      'TEAMPARTNER_NR'        => utf8_normalize_nfc(request_var('pf_teampartner_nr', '', true)),

		$subject = $this->subject;
		$template = $this->template;

Kann mir jemand den funktionierenden Text schreiben?

Re: [3.3] Benutzerdefinierte Felder in der Registrierungsmail

Verfasst: 06.05.2021 17:18
von Mike-on-Tour
Kann ja auch nicht funktionieren, wenn du die neuen Template-Variablen außerhalb des Arrays einfügst, so sollte es klappen:

Code: Alles auswählen

function send($method = NOTIFY_EMAIL, $break = false)
	{
		global $config, $user, $phpbb_dispatcher;

		// We add some standard variables we always use, no need to specify them always
		$this->assign_vars(array(
			'U_BOARD'	=> generate_board_url(),
			'EMAIL_SIG'	=> str_replace('<br />', "\n", "-- \n" . htmlspecialchars_decode($config['board_email_sig'], ENT_COMPAT)),
			'SITENAME'	=> htmlspecialchars_decode($config['sitename'], ENT_COMPAT),
			'SPONSOR'      => utf8_normalize_nfc(request_var('pf_sponsor_name', '', true)), 
			'HANDY'        => utf8_normalize_nfc(request_var('pf_handy_nr', '', true)),
			'TEAMPARTNER_NR'        => utf8_normalize_nfc(request_var('pf_teampartner_nr', '', true)),
		));
		$subject = $this->subject;
		$template = $this->template;

Re: [3.3] Benutzerdefinierte Felder in der Registrierungsmail

Verfasst: 06.05.2021 17:50
von stefan-franz
Vielen Dank. Funktioniert.

Wie bringe ich die User e-Mail Adresse noch in der e-Mail zum Freischalte Admin (admin_activate.txt) angezeigt.
Anscheinend heißt das Feld mit der User e-Mail anders als das was ich hier stehen habe.

Name: {USERNAME}
e-Mail Adresse: {USER_EMAIL}