Ich möchte gerne im PHP-Code automatisch eine PN verschicken, und die Email-Benachrichtigung soll da rausgehen.
Ich habe mir folgenden Code gebastelt, bzw teilweise aus einem MOD übernommen:
Code: Alles auswählen
function send_pn($subject, $message, $to_user, $from_user)
{
global $user, $db, $phpbb_root_path, $phpEx;
if (!function_exists('pm_notification'))
{
include($phpbb_root_path . 'includes/functions_privmsgs.' . $phpEx);
}
$uid = $bitfield = $options = '';
$allow_bbcode = $allow_smilies = $allow_urls = $img_status = $flash_status = true;
generate_text_for_storage($message, $uid, $bitfield, $options, $allow_bbcode, $allow_urls, $allow_smilies);
// Sender raussuchen
$sql = 'SELECT *
FROM ' . USERS_TABLE . "
WHERE user_id = $from_user";
$result = $db->sql_query($sql);
$sender = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
// To
$pm_data = array(
'address_list' => array('u' => array($to_user => 'to')),
'from_user_id' => $sender['user_id'],
'from_user_ip' => $sender['user_ip'],
'from_username' => $sender['username'],
'enable_sig' => true,
'enable_bbcode' => true,
'enable_smilies' => true,
'enable_urls' => true,
'reply_from_root_level' => 0,
'reply_from_msg_id' => 0,
'icon_id' => 0,
'bbcode_bitfield' => $bitfield,
'bbcode_uid' => $uid,
'message' => $message,
);
$msg_id = submit_pm('post', $subject, $pm_data);
$sender_id = $sender['username'];
$receiver_id = $to_user;
$recipients[$receiver_id] = 'to';
pm_notification('post', $sender['username'], $recipients, $subject, $pm_data['message'], $msg_id);
}
Außerdem werden jedes mal 2 Mails versandt, und ich weiß nicht wieso..
$to_user und $from_user sind die User-IDs