habe ein kleines layoutproblem mit dem standard newslettermodul für version 4.4.5.
nur output:
Code: Alles auswählen
<?php
/* Workflow is as follows:
*
* - Each action needs to be confirmed by the user
* - The action "subscribe" subscribes an user
* - The action "unsubscribe" unsubscribes an user
* - The action "stop" temporarly removes delivery to the user
* - The action "goon" resumes the newsletter delivery to that user
*/
/* Der Workflow funktioniert folgenderma?en:
*
* - Jede Aktion mu? vom Benutzer best?tigt werden
* - Die Aktion "subscribe" meldet einen Benutzer an
* - Die Aktion "unsubscribe" meldet einen Benutzer ab
* - Die Aktion "stop" deaktiviert die Newsletterverteilung an den Benutzer
* - Die Aktion "goon" nimmt die Newsletterverteilung an den Benutzer wieder auf
*/
$_news_lang["nosuchlastaction"] = "Konnte gewählte Newsletter-Aktion nicht ausführen.";
$_news_lang["hashdoesntmatch"] = "Hash stimmt nicht überein. Bitte Newsletter-Aktion erneut ausführen.";
$_news_lang["subscribe"] = "Sie wurden in den Newsletterverteiler eingetragen.";
$_news_lang["unsubscribe"] = "Sie wurden aus dem Newsletterverteiler entfernt.";
$_news_lang["stop"] = "Sie wurden temporär aus dem Newsletterverteiler entfernt, können sich aber jederzeit wieder anmelden.";
$_news_lang["goon"] = "Sie wurden wieder in den Newsletterverteiler eingetragen.";
$_news_lang["alreadyexists"] = "Diese E-Mail-Addresse ist bereits für den Newsletter eingetragen.";
$_news_lang["confirm"]["subject"] = "Newsletter-Bestätigung";
$_news_lang["confirm"]["couldnotsend"] = "Konnte Bestätigung nicht versenden.";
$_news_lang["confirm"]["confirmsent"] = "Bestätigung versendet. Bitte rufen Sie die E-Mail ab und klicken Sie auf den Bestätigungslink.";
$_news_lang["confirm"]["alreadyconfirmed"] = "Diese E-Mail-Addresse wurde bereits bestätigt.";
$_news_lang["confirm"]["subscribe"] =
"Sehr geehrter Interessent,\n\n
Sie möchten sich für unseren Newsletter eintragen. Hierzu benötigen wir\n
eine Bestätigung, die Sie mit dem Klick auf folgenden Link ausführen:\n\n
%s\n\n
Sollte der Link nicht funktionieren, kopieren Sie diesen bitte komplett\n
in die Addressleiste Ihres Browsers.";
$_news_lang["confirm"]["stop"] =
"Sehr geehrter Newsletter-Abonnent,\n\n
Sie möchten sich vorrübergehend für unseren Newsletter abmelden.\n
Bitte klicken Sie auf folgenden Link, um diese Aktion zu bestätigen:\n\n
%s\n\n
Sollte der Link nicht funktionieren, kopieren Sie diesen bitte komplett\n
in die Addressleiste Ihres Browsers.";
$_news_lang["confirm"]["goon"] =
"Sehr geehrter Newsletter-Abonnent,\n\n
Sie möchten unseren Newsletter wieder beziehen.\n
Bitte klicken Sie auf folgenden Link, um diese Aktion zu bestätigen:\n\n
%s\n\n
Sollte der Link nicht funktionieren, kopieren Sie diesen bitte komplett\n
in die Addressleiste Ihres Browsers.";
$_news_lang["confirm"]["unsubscribe"] =
"Sehr geehrter Newsletter-Abonnent,\n\n
Sie möchten unseren Newsletter abmelden.\n
Bitte klicken Sie auf folgenden Link, um diese Aktion zu bestätigen:\n\n
%s\n\n
Sollte der Link nicht funktionieren, kopieren Sie diesen bitte komplett\n
in die Addressleiste Ihres Browsers.";
$_news_lang["subscribtion"] = "Newsletteranmeldung";
function _news_confirm ($hash, $email)
{
global $db, $client, $lang, $_news_lang, $cfg;
/* Check if the hashcode matches the db one */
$sql = "SELECT idnewsrcp, lastaction, hash FROM ".$cfg["tab"]["news_rcp"]."
WHERE email='$email' AND idclient='$client' AND idlang='$lang'";
$db->query($sql);
if ($db->next_record())
{
if ($db->f("hash") != $hash)
{
echo $_news_lang["hashdoesntmatch"];
} else {
$idnewsrcp = $db->f("idnewsrcp");
if ($db->f("lastaction") == "")
{
echo $_news_lang["confirm"]["alreadyconfirmed"];
return;
}
switch ($db->f("lastaction"))
{
case "subscribe":
$sql = "UPDATE ".$cfg["tab"]["news_rcp"]." SET deactivated='0', confirmed='1', lastaction='' WHERE idnewsrcp = '$idnewsrcp'";
break;
case "unsubscribe":
$sql = "DELETE FROM ".$cfg["tab"]["news_rcp"]." WHERE idnewsrcp = '$idnewsrcp'";
break;
case "stop":
$sql = "UPDATE ".$cfg["tab"]["news_rcp"]." SET deactivated='1', confirmed='1', lastaction='' WHERE idnewsrcp = '$idnewsrcp'";
break;
case "goon":
$sql = "UPDATE ".$cfg["tab"]["news_rcp"]." SET deactivated='0', confirmed='1', lastaction='' WHERE idnewsrcp = '$idnewsrcp'";
break;
default:
$sql = "";
}
$db->query($sql);
echo $_news_lang[$db->f("lastaction")];
}
} else {
echo $_news_lang["nosuchlastaction"];
}
//switch ($action)
}
function _news_createconfirm ($idnewsrcp, $action)
{
global $db, $lang, $client, $_news_lang, $cfg, $cfgClient;
$sql = "SELECT email, hash FROM ".$cfg["tab"]["news_rcp"]." WHERE idnewsrcp = '$idnewsrcp'";
$db->query($sql);
if (!$db->next_record())
{
return;
}
$hash = $db->f("hash");
$email = $db->f("email");
$path = $cfgClient[$client]["path"]["htmlpath"]."news.php?mode=confirm&hash=$hash&email=$email";
$sql = "UPDATE ".$cfg["tab"]["news_rcp"]." SET lastaction='$action' WHERE idnewsrcp = '$idnewsrcp'";
$db->query($sql);
$mailtext = sprintf($_news_lang["confirm"][$action], $path);
if (!mail($db->f("email"), $_news_lang["confirm"]["subject"], $mailtext, "X-Mailer: Contenido [PHP/" . phpversion())) {
echo $_news_lang["confirm"]["couldnotsend"];
} else {
echo $_news_lang["confirm"]["confirmsent"];
}
}
if ($mode == "subscribe")
{
/* Check if the recipient already exists */
$sql = "SELECT idnewsrcp FROM ".$cfg["tab"]["news_rcp"]." WHERE idclient='$client' and idlang='$lang' and email='$email'";
$db->query($sql);
if ($db->next_record())
{
echo $_news_lang["alreadyexists"];
} else {
$newsrcpid = $db->nextid($cfg["tab"]["news_rcp"]);
$timestamp = date("Y-m-d H:i:s");
/* Create a new hash */
for ($i=0;$i<10;$i++)
{
$r .= rand();
}
$hash = md5($r);
if ($name == "")
{
$name = $email;
}
$sql = 'INSERT INTO
'.$cfg["tab"]["news_rcp"].'
SET
name="'.$name.'",
email="'.$email.'",
deactivated="0",
created="'.$timestamp.'",
lastmodified="'.$timestamp.'",
idclient="'.$client.'",
confirmed="0",
idlang="'.$lang.'",
hash="'.$hash.'",
idnewsrcp = "'.$newsrcpid.'"';
$db->query($sql);
_news_createconfirm($newsrcpid, "subscribe");
}
}
if ($mode == "stop" || $mode == "goon" || $mode == "unsubscribe")
{
$sql = "SELECT idnewsrcp FROM ".$cfg["tab"]["news_rcp"]." WHERE email='$email' and idclient='$client' and idlang='$lang'";
$db->query($sql);
if ($db->next_record())
{
$idnewsrcp = $db->f("idnewsrcp");
_news_createconfirm($idnewsrcp, $mode);
}
}
if ($mode == "confirm")
{
_news_confirm($hash, $email);
}
if ($mode == "")
{
?>
<form action="front_content.php" method="post">
<input type="hidden" name="idcatart" value="<?php echo $idcatart; ?>">
<input type="hidden" name="mode" value="subscribe">
<table border="0" style=" border: 1px; border-top:1px;border-left:0px;border-right:0px; border-color: #0099FF; border-style: solid">
<tr>
<td class="punkte"><?php echo $_news_lang["subscribtion"]; ?></td>
</tr>
<tr>
<td class="location">Ihre E-Mail-Adresse: <input type="text" name="email" value="" class="location" size="22"><input type="submit" class="location" value="Go!"></td>
</tr>
</table>
</form>
<?php
}
?>
weiß da einer einen rat?
danke und gruß
sabsab