für den Eigenbedarf habe ich einen Mod geschrieben,bei dem die User wählen können,ob sie Massenemails erhalten wollen oder nicht.
Just wanna share my code...

Code: Alles auswählen
##############################################################
## MOD Title: User Mass E-Mail Control
## MOD Author: kratzer54847 < alternativ3322@web.de > (Johny Jesewski) http://www.plauderclub.de/
## MOD Description: User can specify in their profiles of they want to recieve mass emails or not
## MOD Version: 0.0.2 alpha
##
## Installation Level: Easy
## Installation Time: 5 Minutes
## Files To Edit: includes/usercp_register.php, admin/admin_mass_email.php, language/lang_xxx/lang_main.php, templates/subSilver/profile_add_body.tpl, templates/subSilver/admin/user_edit_body.tpl
## Included Files: n/a
##############################################################
## For Security Purposes, Please Check: http://www.phpbb.com/mods/ for the
## latest version of this MOD. Downloading this MOD from other sites could cause malicious code
## to enter into your phpBB Forum. As such, phpBB will not offer support for MOD's not offered
## in our MOD-Database, located at: http://www.phpbb.com/mods/
##############################################################
## Author Notes:
##
## This Mod adds an option to the user profile where the useres can specify if they want to recieve mass emails or not.
##############################################################
## MOD History:
##
## 2004-10-19 - Version 0.0.2 alpha
## - Minor db structure change used TINYINT instead of VARCHAR
##
## 2004-10-18 - Version 0.0.1 alpha
## - Initial Release
##
##############################################################
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD
##############################################################
#
#-----[ SQL ]------------------------------------------
#
ALTER TABLE `phpbb_users` ADD `user_mass_email` TINYINT( 1 ) NOT NULL AFTER `user_allow_viewonline` ;
#
#-----[ OPEN ]------------------------------------------
#
admin/admin_mass_email.php
#
#-----[ FIND ]------------------------------------------
#
$sql = ( $group_id != -1 ) ? "SELECT u.user_email FROM " .
USERS_TABLE . " u, " . USER_GROUP_TABLE . " ug
WHERE ug.group_id = $group_id AND ug.user_pending <> " . TRUE . "
AND u.user_id = ug.user_id" : "SELECT user_email FROM " .
USERS_TABLE;
#
#-----[ REPLACE WITH ]------------------------------------------
#
//
// Get users who want a Mass Email
//
$sql = "SELECT u.user_email
FROM " . USERS_TABLE . " u, " . USER_GROUP_TABLE . " ug
WHERE $group_id != '-1'
AND ug.group_id = $group_id
AND u.user_mass_email = '1'
AND ug.user_pending <> " . TRUE . "
AND u.user_id = ug.user_id";
#
#-----[ OPEN ]------------------------------------------
#
includes/usercp_register.php
#
#-----[ FIND ]------------------------------------------
#
$viewemail = ( isset($HTTP_POST_VARS['viewemail']) ) ? ( ($HTTP_POST_VARS['viewemail']) ? TRUE : 0 ) : 0;
#
#-----[ AFTER, ADD ]------------------------------------------
#
$adminmail = ( isset($HTTP_POST_VARS['adminmail']) ) ? ( ($HTTP_POST_VARS['adminmail']) ? TRUE : 0 ) : 0;
#
#-----[ FIND ]------------------------------------------
#
$sql = "UPDATE " . USERS_TABLE . "
#
#-----[ IN-LINE FIND ]------------------------------------------
#
user_notify_pm,
#
#-----[ IN-LINE AFTER, ADD ]------------------------------------------
#
user_mass_email,
#
#-----[ IN-LINE FIND ]------------------------------------------
#
$notifyreply,
#
#-----[ IN-LINE AFTER, ADD ]------------------------------------------
#
$adminmail,
#
#-----[ FIND ]------------------------------------------
#
$sql = "INSERT INTO " . USERS_TABLE . "
#
#-----[ IN-LINE FIND ]------------------------------------------
#
user_notify_pm,
#
#-----[ IN-LINE AFTER, ADD ]------------------------------------------
#
user_mass_email,
#
#-----[ IN-LINE FIND ]------------------------------------------
#
$notifypm,
#
#-----[ IN-LINE AFTER, ADD ]------------------------------------------
#
'1',
#
#-----[ FIND ]------------------------------------------
#
$allowviewonline = $userdata['user_allow_viewonline'];
#
#-----[ AFTER, ADD ]------------------------------------------
#
$adminmail = $userdata['user_mass_email'];
#
#-----[ FIND ]------------------------------------------
#
'NOTIFY_REPLY_NO' => ( !$notifyreply ) ? 'checked="checked"' : '',
#
#-----[ AFTER, ADD ]------------------------------------------
#
'ADMINMAIL_YES' => ( $adminmail ) ? 'checked="checked"' : '',
'ADMINMAIL_NO' => ( !$adminmail ) ? 'checked="checked"' : '',
#
#-----[ FIND ]------------------------------------------
#
'L_ALWAYS_ADD_SIGNATURE' => $lang['Always_add_sig'],
#
#-----[ AFTER, ADD ]------------------------------------------
#
'L_ADMINMAIL' => $lang['adminmail'],
#
#-----[ OPEN ]------------------------------------------
#
language/lang_english/lang_main.php
#
#-----[ FIND ]------------------------------------------
#
$lang['Always_notify_explain'] = 'Sends an e-mail when someone replies to a topic you have posted in. This can be changed whenever you post.';
#
#-----[ AFTER, ADD ]------------------------------------------
#
$lang['Adminmail'] = 'Administrators can email me information';
#
#-----[ OPEN ]------------------------------------------
#
templates/subSilver/profile_add_body.tpl
#
#-----[ FIND ]------------------------------------------
#
<tr>
<td class="row1"><span class="gen">{L_HIDE_USER}:</span></td>
<td class="row2">
<input type="radio" name="hideonline" value="1" {HIDE_USER_YES} />
<span class="gen">{L_YES}</span>
<input type="radio" name="hideonline" value="0" {HIDE_USER_NO} />
<span class="gen">{L_NO}</span></td>
</tr>
#
#-----[ AFTER, ADD ]------------------------------------------
#
<tr>
<td class="row1"><span class="gen"><b>{L_ADMINMAIL}</b></span></td>
<td class="row2">
<input type="radio" name="adminmail" value="1" {ADMINMAIL_YES} />
<span class="gensmall">{L_YES}</span>
<input type="radio" name="adminmail" value="0" {ADMINMAIL_NO} />
<span class="gensmall">{L_NO}</span>
</td>
</tr>
#
#-----[ OPEN ]------------------------------------------
#
admin/admin_users.php
#
#-----[ FIND ]------------------------------------------
#
$user_avatar_size = ( !empty($HTTP_POST_FILES['avatar']['size']) ) ? $HTTP_POST_FILES['avatar']['size'] : 0;
#
#-----[ AFTER, ADD ]------------------------------------------
#
$adminmail = ( isset($HTTP_POST_VARS['adminmail']) ) ? ( ($HTTP_POST_VARS['adminmail']) ? TRUE : 0 ) : 0;
#
#-----[ FIND ]------------------------------------------
#
$sql = "UPDATE " . USERS_TABLE . "
#
#-----[ IN-LINE FIND ]------------------------------------------
#
user_notify = $notifyreply,
#
#-----[ IN-LINE AFTER, ADD ]------------------------------------------
#
user_mass_email = '$adminmail',
#
#-----[ FIND ]------------------------------------------
#
'POPUP_PM_NO' => (!$popuppm) ? 'checked="checked"' : '',
#
#-----[ AFTER, ADD ]------------------------------------------
#
'ADMINMAIL_YES' => ( $adminmail ) ? 'checked="checked"' : '',
'ADMINMAIL_NO' => ( !$adminmail ) ? 'checked="checked"' : '',
#
#-----[ FIND ]------------------------------------------
#
'L_ALWAYS_ADD_SIGNATURE' => $lang['Always_add_sig'],
#
#-----[ AFTER, ADD ]------------------------------------------
#
'L_ADMINMAIL' => $lang['adminmail'],
#
#-----[ FIND ]------------------------------------------
#
$notifyreply = $this_userdata['user_notify'];
#
#-----[ AFTER, ADD ]------------------------------------------
#
$adminmail = $this_userdata['user_mass_email'];
#
#-----[ FIND ]------------------------------------------
#
$s_hidden_fields .= '<input type="hidden" name="notifyreply" value="' . $notifyreply . '" />';
#
#-----[ AFTER, ADD ]------------------------------------------
#
$s_hidden_fields .= '<input type="hidden" name="adminmail" value="' . $adminmail . '" />';
#
#-----[ OPEN ]------------------------------------------
#
templates/subSilver/user_edit_body.tpl
#
#-----[ FIND ]------------------------------------------
#
<tr>
<td class="row1"><span class="gen">{L_NOTIFY_ON_REPLY}</span></td>
<td class="row2">
<input type="radio" name="notifyreply" value="1" {NOTIFY_REPLY_YES} />
<span class="gen">{L_YES}</span>
<input type="radio" name="notifyreply" value="0" {NOTIFY_REPLY_NO} />
<span class="gen">{L_NO}</span></td>
</tr>
#
#-----[ AFTER, ADD ]------------------------------------------
#
<tr>
<td class="row1"><span class="gen"><b>{L_ADMINMAIL}</b></span></td>
<td class="row2">
<input type="radio" name="adminmail" value="1" {ADMINMAIL_YES} />
<span class="gensmall">{L_YES}</span>
<input type="radio" name="adminmail" value="0" {ADMINMAIL_NO} />
<span class="gensmall">{L_NO}</span>
</td>
</tr>
#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
# EoM