This one is pretty much a pluginized version of the 1.3 mod I posted ~ 2 years ago. Therefore the code isn't that pretty but works. No code cleanup or improvements added except that it only works with the modpack.
Reason for the restriction to the modpack: I do not like newsletter scripts to much. But sometimes they come in pretty handy. Still the users should have the possibility to opt out. This they can do when unchecking 'Allow admin emails' in their profile. Or the similar setting in a bridged environment (should work bridged but I haven't tested that at all).
How does it work:
Unzip the archive in the plugin dir, install it via the coppermine config. Now you'll see a new button 'Newsletter' in the admin menu. A click on it gives you the option to 1. send mail or 2. check the archive. Check archive lets you view/ delete old newsletters you've sent. Send mail allows you to create a new mail template or to edit an old one and resend it.
When you've created/ edited your template (you can use the placeholder {username} to insert the username), hit send and you come to an options page.
How to send mails: php_mail or sendmail, php_mail means what you've set in coppermine config or you can force sendmail (excluding coppermines mailer include)
Sendmail path: The path to sendmail if you've chosen above to use it
Server OS: should be self detecting, uses \r\n as linefeed for win and \n for nix
How many mails per batch: Best is to use a low value even if that needs longer. Timeout problems won't occur or at least not that often. The newsletter will send the number of set emails, refreshes the page and sends the next batch
Send as preview: If checkt the plugin won't send the newsletter but only a preview to the admin
Automatic wordwrap after 72 chars: If checked the wordwrap every 72 chars is enabled
Click send and the plugin will send away
What if I run into a timeout: I only experienced that with huge batches and/ or invalid email addies.
Check the address bar and find an entry lastmailed=xxx, raise the xxx number and hit the browsers reload button. The plugin will continue to send
eg lastmailed=180, your batch size is 20, then set it to lastmailed=200, the plugin will continue at email nr. 200
or you set nummails=1 (batch size), then you'll see exactly what email makes the troubles, then raise lastmailed by one and edit the trouble email.
edit: Translations are welcome (see plugin/newsletter/lang/english.php as reference, use the lang file naming scheme coppermine uses - see the lang dir)