Sida 1 av 2
Mer information i admin_activate.tpl
Postat: 2008-10-29 13:29
av Holger
Hej,
jag skulle vilja ha in mer information i admin_activate.tpl:
- länk till profilen
- medlemmens epost-adress
Går det?
Vore mycket bra hjälp!
/Holger
Re: Mer information i admin_activate.tpl
Postat: 2008-10-29 13:58
av Marcus
Det där är inte standard TPL-fil inte...
/marcus
Re: Mer information i admin_activate.tpl
Postat: 2008-10-29 13:59
av Holger
Hm?
Det är email-TPLen som används om man har ställt in konto-aktivering genom admin.
Re: Mer information i admin_activate.tpl
Postat: 2008-10-29 14:08
av Marcus
Ska jag behöva leta i den mappen också...
Jag kollade både i vanliga mappen och in admin-mappen, men utan att bli klokare... Men nu när du säger att det är dina mailmallar du vill påverka så är jag med. Flyttar tillbaka tråden då då...
Ja, det ska väl gå att lägga till...
Redigera filerna:
<forumrot>/includes/usercp_register.php
<forumrot>/language/lang_<ditt språk>/email/admin_activate.tpl
Strax ska du få kodförslag.
Re: Mer information i admin_activate.tpl
Postat: 2008-10-29 14:26
av Marcus
Filen
<forumrot>/includes/usercp_register.php
Hitta:
Kod: Markera allt
else if ( $board_config['require_activation'] == USER_ACTIVATION_ADMIN )
Gå ner några rader till och hitta:
Kod: Markera allt
$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)
);
Ändra till:
Kod: Markera allt
$emailer->assign_vars(array(
'USERNAME' => preg_replace($unhtml_specialchars_match, $unhtml_specialchars_replace, substr(str_replace("\'", "'", $username), 0, 25)),
'USERMAIL' => $email,
'U_PROFILE' => $server_url .'?mode=viewprofile&u=' . $user_id,
'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)
);
Sedan lägger du bara till {USERMAIL} och {U_PROFILE} på lämpliga ställen i filen
<forumrot>/language/lang_<ditt språk>/email/admin_activate.tpl.
USERMAIL kan broderas ut lite...
Re: Mer information i admin_activate.tpl
Postat: 2008-10-29 14:45
av Holger
Ska lägga in det ikväll! Tack ska du ha!

Re: Mer information i admin_activate.tpl
Postat: 2008-10-29 16:21
av Holger
Nä, det fungerade tyvärr inte.
{USERMAIL} och {U_PROFILE} ger tomma rader i mailet!
Så här ser koden ut i usercp_register.php:
Kod: Markera allt
else 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['Reactivate']);
$emailer->assign_vars(array(
'USERNAME' => preg_replace($unhtml_specialchars_match, $unhtml_specialchars_replace, substr(str_replace("\'", "'", $username), 0, 25)),
'USERMAIL' => $email,
'U_PROFILE' => $server_url .'?mode=viewprofile&u=' . $user_id,
'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);
}
Re: Mer information i admin_activate.tpl
Postat: 2008-10-30 11:48
av Holger
Har du en idé vad det kan bero på?
Re: Mer information i admin_activate.tpl
Postat: 2008-10-30 11:54
av Marcus
Låter märkligt, för det borde bli rätt...
Jag får klura lite, och se om jag kan se varför...
/marcus
Re: Mer information i admin_activate.tpl
Postat: 2008-10-30 20:53
av tumba25
Utan att läsa tråden alltför noggrant så vill jag också blanda mig i.
Jag förutsätter att USERMAIL ska innehålla användarens mailadress. Då kanske man skulle kunna ändra
till
Och den andra till något annat som kanske finns i någon fil jag inte orkar öppna just nu.

Re: Mer information i admin_activate.tpl
Postat: 2008-10-31 00:22
av Marcus
Fick dock för mig, när jag läste koden att $row['user_mail'] innehåller mailadressen till mottagaren (dvs. admin)...
Jo, precis så är det. Och precis som jag skriver så är det $email som ska innehålla den nye användarens e-postadress.
/marcus
Re: Mer information i admin_activate.tpl
Postat: 2008-10-31 00:32
av tumba25
Aha, jag erkänner att jag inte läste koden speciellt noga. Hittade något som såg bra ut. Dom flesta admins får iaf för lite mail.

Re: Mer information i admin_activate.tpl
Postat: 2008-10-31 00:53
av Marcus
Som jag sa, jag har inte gjort fel... bara för få gånger.
Missade att usercp_register.php kräver samma uppdatering på 2 ställen.
Leta redan på andra förekomsten av exakt samma sak du skulle leta efter, och lägg till samma kod som
jag föreslog så ska det fungera.
EDIT: Nu har jag också testat det på ett eget lekforum i phpBB2... och ja, jag har rätt.
/marcus
Re: Mer information i admin_activate.tpl
Postat: 2008-10-31 09:01
av Holger
Hittade bara detta:
Kod: Markera allt
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);
}
Dvs inget else if utan ett if.
Rätt?
/Holger
Re: Mer information i admin_activate.tpl
Postat: 2008-10-31 09:30
av tumba25
Friskt kodat, hälften kraschat. Testa.