Seite 1 von 1

Admin Account Activation: weitere Userdaten in Email

Verfasst: 25.11.2004 22:48
von Peggy
Ich brauche mal wieder Hilfe ... :oops:

Ich habe den Admin Account Activation-Mod eingebaut:
http://www.phpbbhacks.com/download/483

Und natürlich habe ich im Forum eingestellt, dass die Accountfreischaltung durch den Admin geschieht.

Wenn sich ein User registriert, bekomme ich als Admin diese Mail:
(Text aus der Mailvorlage "admin_activate.tpl", nicht wundern ... leicht abgeändert)
Subject: Neuer Benutzeraccount
Charset: iso-8859-1

Hallo!

Der Account von "{USERNAME}" wurde neu erstellt (oder eben deaktiviert).
Sie können sich die Details des Benutzers über das Administrationsmenü ansehen oder sie aktivieren den Account des Benutzers direkt über diesen Link:
{U_ACTIVATE}

{EMAIL_SIG}
Nun möchte ich gerne in dieser Mail nicht nur den Usernamen ({USERNAME}) angezeigt bekommen, sondern noch einige andere Daten, die der neue Benutzer in das Registrierungsprofil eingetragen hat:

{FIRSTNAME}
{SURNAME}
{ADRESS}
{PLZ}
{LOCATION}
{OCCUPATION}

(nicht wundern, habe den Profilfeld-Mod noch eingebaut)

Wie/Wo kann ich das definieren, dass diese Zusatzinformationen auch schon in der Mail stehen?

Verfasst: 26.11.2004 00:53
von Peggy
Also ich weiss jetzt zumindest, dass ich in der usercp_register.php was ergänzen muss, undzwar in diesem Code-Abschnitt:
if ( $board_config['require_activation'] == USER_ACTIVATION_ADMIN )
{
$sql = "SELECT user_email, user_lang
FROM " . USERS_TABLE . "
WHERE user_level = " . ADMIN;

if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not select Administrators', '', __LINE__, __FILE__, $sql);
}

while ($row = $db->sql_fetchrow($result))
{
$emailer->from($board_config['board_email']);
$emailer->replyto($board_config['board_email']);

$emailer->email_address(trim($row['user_email']));
$emailer->use_template("admin_activate", $row['user_lang']);
$emailer->set_subject($lang['New_account_subject']);

$emailer->assign_vars(array(
'USERNAME' => preg_replace($unhtml_specialchars_match, $unhtml_specialchars_replace, substr(str_replace("\'", "'", $username), 0, 25)),
-->
'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();
}
$db->sql_freeresult($result);

}
Am Beisipel von {FIRSTNAME}:

Dort wo der rote Pfeil im Code oben ist, habe ich schon verschiedenes eingefügt und ausprobiert:
'FIRSTNAME' => preg_replace($unhtml_specialchars_match, $unhtml_specialchars_replace, substr(str_replace("\'", "'", $firstname), 0, 25)),
'FIRSTNAME' =>$firstname,
'FIRSTNAME' =>$userdata['firstname'],
aber das hat alles nichts bewirkt - der Vorname wurde nicht in der Aktivierungsmail angezeigt.

:cry: :cry: :cry:

Verfasst: 08.12.2004 17:50
von nepf
Hallo - das würde mich auch brennend interessieren.
Hast du das Problem inzwischen selbst lösen könne?
Oder hat jemand anderes den Lösungsweg?

Eine andere Variante wäre vielleicht auch einfach diese, wenn es in der Mail außer dem Aktivierungslink einfach noch einen link zum Profil des users hätte, dann könnte man mit oneklick dort nachschauen, was man vor der Freischaltung noch wissen möchte.