Email deaktivieren - zu Gruppe hinzugefügt

Probleme bei der regulären Arbeiten mit phpBB, Fragen zu Vorgehensweisen oder Funktionsweise sowie sonstige Fragen zu phpBB im Allgemeinen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Benutzeravatar
honk_alert
Mitglied
Beiträge: 152
Registriert: 02.10.2005 08:12

Email deaktivieren - zu Gruppe hinzugefügt

Beitrag von honk_alert »

Hallo,

gibt es eine Möglichkeit, die Email zu deaktivieren, die gesendet wird, wenn man einen User zu einer Gruppe hinzufügt?

Danke
...
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

in der Datei groupcp.php sollte sich dieser Code finden:

Code: Alles auswählen

include($phpbb_root_path . 'includes/emailer.'.$phpEx);
					$emailer = new emailer($board_config['smtp_delivery']);

					$emailer->from($board_config['board_email']);
					$emailer->replyto($board_config['board_email']);

					$emailer->use_template('group_added', $row['user_lang']);
					$emailer->email_address($row['user_email']);
					$emailer->set_subject($lang['Group_added']);

					$emailer->assign_vars(array(
						'SITENAME' => $board_config['sitename'], 
						'GROUP_NAME' => $group_name,
						'EMAIL_SIG' => (!empty($board_config['board_email_sig'])) ? str_replace('<br />', "\n", "-- \n" . $board_config['board_email_sig']) : '', 

						'U_GROUPCP' => $server_url . '?' . POST_GROUPS_URL . "=$group_id")
					);
					$emailer->send();
					$emailer->reset();
Ich hoffe der ist nicht mehrfach drin...
Einfach auskommentieren und schon gibt's keine Mail mehr:
(---Mein Editor will gerade die Kommentarzeichen nicht kopieren?!?---)

Code: Alles auswählen

//GEHT NICHT DER EDITOR WEIGERT SICH STANDHAFT!!!
Einfach vor alle Zeilen das hier setzen: //
Wichtig: Alle Dateien vor der Änderung sichern! Ich habe das nicht getestet und übernehme keine Garantie!
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Benutzeravatar
honk_alert
Mitglied
Beiträge: 152
Registriert: 02.10.2005 08:12

Beitrag von honk_alert »

Vielen Dank dafür! Das ist ja super! Hast du das schon getestet?
...
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

Nein, aber es ist unwahrscheinlich dass das nicht funktioniert...
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
MissPink
Mitglied
Beiträge: 9
Registriert: 31.01.2006 18:51
Wohnort: Freising

Beitrag von MissPink »

Wenn der keine Email senden soll, wenn jmd den Passwort vergessen Link anklickt... Reicht es da, wenn ich aus der usercp_sendpassword.php folgende Zeilen rauslösche?



Code: Alles auswählen

			include($phpbb_root_path . 'includes/emailer.'.$phpEx);
			$emailer = new emailer($board_config['smtp_delivery']);

			$emailer->from($board_config['board_email']);
			$emailer->replyto($board_config['board_email']);

			$emailer->use_template('user_activate_passwd', $row['user_lang']);
			$emailer->email_address($row['user_email']);
			$emailer->set_subject($lang['New_password_activation']);

			$emailer->assign_vars(array(
				'SITENAME' => $board_config['sitename'], 
				'USERNAME' => $username,
				'PASSWORD' => $user_password,
				'EMAIL_SIG' => (!empty($board_config['board_email_sig'])) ? str_replace('<br />', "\n", "-- \n" . $board_config['board_email_sig']) : '', 

				'U_ACTIVATE' => $server_url . '?mode=activate&' . POST_USERS_URL . '=' . $user_id . '&act_key=' . $user_actkey)
			);
			$emailer->send();
			$emailer->reset();

			$template->assign_vars(array(
				'META' => '<meta http-equiv="refresh" content="15;url=' . append_sid("index.$phpEx") . '">')
			);

			$message = $lang['Password_updated'] . '<br /><br />' . sprintf($lang['Click_return_index'],  '<a href="' . append_sid("index.$phpEx") . '">', '</a>');

			message_die(GENERAL_MESSAGE, $message);
		}
		else
		{
			message_die(GENERAL_MESSAGE, $lang['No_email_match']);
		}
	}
	else
	{
		message_die(GENERAL_ERROR, 'Could not obtain user information for sendpassword', '', __LINE__, __FILE__, $sql);
	}
}
else
{
	$username = '';
	$email = '';
}
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

Naja das alles zu entfernen ist zu viel des guten, irgend eine Meldung sollte der User schließlich bekommen wenn er den Link klickt.

Code: Alles auswählen

include($phpbb_root_path . 'includes/emailer.'.$phpEx);
         $emailer = new emailer($board_config['smtp_delivery']);

         $emailer->from($board_config['board_email']);
         $emailer->replyto($board_config['board_email']);

         $emailer->use_template('user_activate_passwd', $row['user_lang']);
         $emailer->email_address($row['user_email']);
         $emailer->set_subject($lang['New_password_activation']);

         $emailer->assign_vars(array(
            'SITENAME' => $board_config['sitename'],
            'USERNAME' => $username,
            'PASSWORD' => $user_password,
            'EMAIL_SIG' => (!empty($board_config['board_email_sig'])) ? str_replace('<br />', "\n", "-- \n" . $board_config['board_email_sig']) : '',

            'U_ACTIVATE' => $server_url . '?mode=activate&' . POST_USERS_URL . '=' . $user_id . '&act_key=' . $user_actkey)
         );
         $emailer->send();
         $emailer->reset(); 
Das solltest du eigentlich löschen können. Ohne das wird keine Mail verschickt. Die Meldung die dann im Ergebnis kommt passt aber dann natürlich nicht mehr.
Du solltest daher diesen Code modifizieren:

Code: Alles auswählen

$message = $lang['Password_updated'] . '<br /><br />' . sprintf($lang['Click_return_index'],  '<a href="' . append_sid("index.$phpEx") . '">', '</a>'); 
Du könntest z.b. in der language/lang_SPRACHE/lang_main.php den Eintrag für $lang['Passwort_updated'] deinen Wünschen nach anpassen (einfach in der Datei nach dem Ausdruck suchen) oder aber du ersetzt es durch einen Hartcodierten Text, z.b. so:

Code: Alles auswählen

$message = 'Diese Funktion wurde vom Administrator deaktiviert. Bitte wende dich per Mail an den Administrator um ein neues Passwort zu erhalten.' . '<br /><br />' . sprintf($lang['Click_return_index'],  '<a href="' . append_sid("index.$phpEx") . '">', '</a>'); 
Den restlichen Code den du vorgeschlagen hast solltest du nicht löschen, sonst hagelt es Syntaxfehler, da würden dann ein paar verschachtelte IF Abfragen ihres Endes beraubt...
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Benutzeravatar
Dr.Death
Moderator
Moderator
Beiträge: 17475
Registriert: 23.04.2003 08:22
Wohnort: Xanten
Kontaktdaten:

Beitrag von Dr.Death »

Moin,

normelrweise reicht es schon aus

Code: Alles auswählen

 $emailer->send(); 
-->

Code: Alles auswählen

 //$emailer->send();

zu machen.

Damit wird der eigentliche Email Versand nicht ausgeführt und das Script geht davon aus das die Email raus gegangen ist.
Antworten

Zurück zu „phpBB 2.0: Administration, Benutzung und Betrieb“