birthday mail extension.

Hulp nodig bij een modificaties of op zoek naar een MOD? Bekijk ons archief. Support wordt helaas niet meer verleend.
Forumregels

Sinds 1 januari 2009 wordt phpBB2 niet meer ondersteund.
Onderstaande informatie is verouderd en dient uitsluitend als archief.
phpBB2.0.x
Gesloten
Gebruikersavatar
LazyTiger
Berichten: 2000
Lid geworden op: 21 okt 2003, 18:21

birthday mail extension.

Bericht door LazyTiger » 04 mei 2004, 19:01

ik heb problemen met een mod.
deze mod zorgt ervoor dat er geen pop-up verschijnt bij je verjaardag, maar dat er een mailtje wordt verstuurd.

hiervoor moet je wat wijzingen in page_header.php
en wel in deze code (ik weet niet tot hoe ver de code officieel gaat.):
// see if user has or have had birthday, also see if greeting are enabled
if ( $userdata['user_birthday']!=999999 && $board_config['birthday_greeting'] && create_date('Ymd', time(), $board_config['default_timezone']) >= $userdata['user_next_birthday_greeting'].realdate ('md',$userdata['user_birthday'] ) )
{
$sql = "UPDATE " . USERS_TABLE . "
SET user_next_birthday_greeting = " . (create_date('Y', time(), $board_config['board_timezone'])+1) . "
WHERE user_id = " . $userdata['user_id'];
if( !$status = $db->sql_query($sql) )
{
message_die(GENERAL_ERROR, "Could not update next_birthday_greeting for user.", "", __LINE__, __FILE__, $sql);
}
$template->assign_var("GREETING_POPUP",
"<script language=\"Javascript\" type=\"text/javascript\"><!--
window.open('".append_sid('birthday_popup.'.$phpEx)."', '_phpbbprivmsg', 'HEIGHT=225,resizable=yes,WIDTH=400');
//-->
</script>");

}
// Sorry user shall not have a greeting this year
if ( $userdata['user_new_privmsg'] )
{
$l_message_new = ( $userdata['user_new_privmsg'] == 1 ) ? $lang['New_pm'] : $lang['New_pms'];
$l_privmsgs_text = sprintf($l_message_new, $userdata['user_new_privmsg']);

if ( $userdata['user_last_privmsg'] > $userdata['user_lastvisit'] )
{
$sql = "UPDATE " . USERS_TABLE . "
SET user_last_privmsg = " . $userdata['user_lastvisit'] . "
WHERE user_id = " . $userdata['user_id'];
if ( !$db->sql_query($sql) )
{
message_die(GENERAL_ERROR, 'Could not update private message new/read time for user', '', __LINE__, __FILE__, $sql);
}

$s_privmsg_new = 1;
$icon_pm = $images['pm_new_msg'];
}
else
{
$s_privmsg_new = 0;
$icon_pm = $images['pm_new_msg'];
}
}
else
{
$l_privmsgs_text = $lang['No_new_pm'];

$s_privmsg_new = 0;
$icon_pm = $images['pm_no_new_msg'];
}

if ( $userdata['user_unread_privmsg'] )
{
$l_message_unread = ( $userdata['user_unread_privmsg'] == 1 ) ? $lang['Unread_pm'] : $lang['Unread_pms'];
$l_privmsgs_text_unread = sprintf($l_message_unread, $userdata['user_unread_privmsg']);
}
else
{
$l_privmsgs_text_unread = $lang['No_unread_pm'];
}
}
else
{
$icon_pm = $images['pm_no_new_msg'];
$l_privmsgs_text = $lang['Login_check_pm'];
$l_privmsgs_text_unread = '';
$s_privmsg_new = 0;
}
het rode moet je volgens de mod vervangen door dit: (het groene wat je hier ziet was niet toegevoegd in de originele mod.)
// START Birthday Mail Extension
$sql = "SELECT * FROM " . USERS_TABLE . " WHERE user_id = " . $userdata['user_id'];
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, $lang['bd_sqlerror']);
}

while( $row = $db->sql_fetchrow($result) )
{
$bd_mail = intval($row['user_email']);
}

$sql = "SELECT * FROM " . USERS_TABLE . " WHERE user_id = $user_id";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, $lang['bd_sqlerror']);
}
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("birthday", $row['user_lang']);
$emailer->set_subject($lang['bd_subject']);

$emailer->assign_vars(array(
'USERNAME' => preg_replace($unhtml_specialchars_match, $unhtml_specialchars_replace, substr(str_replace("\'", "'", $row['username']), 0, 25)),
'EMAIL_SIG' => str_replace('<br />', "\n", "-- \n" . $board_config['board_email_sig']),
'BOARDNAME' => str_replace('<br />', "\n", "-- \n" . $board_config['sitename']))
);
$emailer->send();
$emailer->reset();
}
// END Birthday Mail Extension
nu krijg ik echter een fout.
de fout zit in de regel die ik in de eerste code oranje heb gekleurd.
wat is er dan fout?

klein overzicht van de kleuren:
rood = het stuk wat vervangen moet worden.
groen = is een fout in de mod (zover ik weet)
oranje = de regel waar de fout in zit.

Gebruikersavatar
Luuk
Berichten: 7311
Lid geworden op: 22 okt 2003, 10:07
Locatie: Delft

Bericht door Luuk » 04 mei 2004, 19:12

raar, als je het vanaf // Sorry user shall not have a greeting this year
bekijkt klopt het wel :? maar eigenlijk moet ik het hele bestand hebben :roll:
Afbeelding

Gebruikersavatar
LazyTiger
Berichten: 2000
Lid geworden op: 21 okt 2003, 18:21

Bericht door LazyTiger » 09 mei 2004, 12:58

heeft ff geduurd, maar hier is hij:
http://home.wanadoo.nl/musicpage/page_header.txt

Duvelske
Berichten: 656
Lid geworden op: 19 okt 2003, 16:05
Locatie: st willebrord
Contacteer:

Bericht door Duvelske » 11 mei 2004, 13:55

Klopt ik heb de bpm mod met deze mod uitgebreid. Ik heb toestemming van de originele auteur gekregen om deze mail mod ook te integreren erin. Ik ben druk bezig geweest en als het goed is komt de eerste officiele versie van de bpm mod deze maand nog uit
Bezoek ook ns mn site:
http://www.partyfreakers.nl of mn premodded site: http://www.vitrax.org

Laturzzz,
Duvelske

Gesloten