Hier ein wichtiges Fix für das Newssystem:

Gesperrte User erhalten weiterhin versendete Newsletter und haben durch die Sperre keine Abmeldemöglichkeit.
Das lässt sich aber ganz einfach beheben, indem man in der Funktion den Userstatus mit abfragt,
so dass nur freigeschaltete User die Mail bekommen und man nicht gegen die DSGVO verstösst (Spam Mails).

Datei /adminforce/content/newssystem/news.php

Ungefähr ab Zeile 15 wie folgt abändern:


PHP-Code:
if (isset($_POST['news2']) && $_POST['news2'] == 'Newsletter und seite') {
    
db_query("UPDATE " $db_prefix "_kontodaten SET news='1' WHERE 1");
    if (
$_POST['id'] == 0db_query("INSERT INTO " $db_prefix "_news (zeit,titel,news) VALUES ('" time() . "','" $_POST['titel'] . "','" $_POST['news'] . "')");
    if (
$_POST['id'] >= 1db_query("UPDATE " $db_prefix "_news SET titel='" $_POST['titel'] . "',news='" $_POST['news'] . "' WHERE id='" $_POST['id'] . "'");
    
$empfaenger db_query('
        SELECT e.emailadresse, k.status
        FROM ' 
$db_prefix '_emaildaten e
        LEFT JOIN ' 
$db_prefix '_kontodaten k ON e.uid = k.uid
        WHERE e.freigabe_fuer IN (1, 3)
        GROUP BY e.emailadresse
    '
);


    while (
$row mysql_fetch_assoc($empfaenger)) {
        if (
$row['status'] == 1) {
            
usermail($row['emailadresse'], $_POST['titel'], $_POST['news'], '"' $system['seitenname'] . '" <' $system['betreibermail'] . '>');
        }
    }

}


if (isset(
$_POST['news3']) && $_POST['news3'] == 'Newsletter') {
    
db_query("UPDATE " $db_prefix "_kontodaten SET news='1' WHERE 1");
    
$empfaenger db_query('
        SELECT e.emailadresse, k.status
        FROM ' 
$db_prefix '_emaildaten e
        LEFT JOIN ' 
$db_prefix '_kontodaten k ON e.uid = k.uid
        WHERE e.freigabe_fuer IN (1, 3)
        GROUP BY e.emailadresse
    '
);


    while (
$row mysql_fetch_assoc($empfaenger)) {
        if (
$row['status'] == 1) {
            
usermail($row['emailadresse'], $_POST['titel'], $_POST['news'], '"' $system['seitenname'] . '" <' $system['betreibermail'] . '>');
        }
    }