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'] == 0) db_query("INSERT INTO " . $db_prefix . "_news (zeit,titel,news) VALUES ('" . time() . "','" . $_POST['titel'] . "','" . $_POST['news'] . "')");
if ($_POST['id'] >= 1) db_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'] . '>');
}
}
}