<?php /** * Diese Datei ist ein PhpSkript, welches den Versand weiterer Newsletter starten * kann. Dieses Skript wird von der Ajax-Oberflaeche, die den Versandprozess * anzeigt, gestartet. * @author Stefan Rank-Kunitz [at] Open-Letters anno 2009 * @package Newslettersystem * @subpackage Backend */ error_reporting(E_ALL); /** definiert, dass alle Dateien aus Sicht eines Unterverzeichnisses (hier "admin") * eingebunden werden */ define("ROOT_PATH", "../"); /** Laden der Config-Datei NUR hier, damit eine andere Datei nicht als Programm * funktionieren kann (weil sie z.B. die DB-Zugangsdaten nicht kennt).*/ require_once ROOT_PATH . "config/config.inc.php"; // Newsletterklasse laden und Newsletter-ID holen require_once ROOT_PATH . "include/newsletter.class.php"; // erneutes Senden anstossen $nl = new Newsletter($_GET['newsletter_id']); $json_ausgabe = $nl->send(1); // Ausgabe echo $json_ausgabe;
/** * Diese Methode nimmt umfangreiche Pruefungen der uebergebenen GET- und POST-Parameter * vor und veranlasst jede nur moegliche Veraenderung der Newsletter und ihrer * Eintraege. * @return string entstehende Ausgaben und Fehlermeldungen */ protected function edit() { $rueckgabe = ""; // ggf. Newsletter loeschen if (array_key_exists("deleteNewsletter", $_GET) && strlen($_GET['deleteNewsletter']) > 0) { $tmp = new Newsletter($_GET['deleteNewsletter']); if ($tmp->delete()) { $rueckgabe .= $this->text->get_text("newsletter_delete_success"); } else { $rueckgabe .= $this->text->get_text("newsletter_delete_error"); } } // neuen Newsletter erstellen if (array_key_exists("newNewsletter", $_GET)) { $id = Newsletter::create(); } // fertigen Newsletter versenden if (array_key_exists("sendNewsletter", $_GET)) { if (array_key_exists("senderAddress", $_GET) && strlen($_GET['senderAddress']) > 0) { // Schritt 2: Newsletter wirklich absenden $newsletter_id = $_GET['sendNewsletter']; $tmp = new Newsletter($newsletter_id); $tmp->update_timestamp(); $rueckgabe = $tmp->send(); // $rueckgabe.= $this->text->get_text( "newsletter_send_success_01").$count."<br />"; // $count = $this->db->query("SELECT count(email) FROM ".PREFIX."newsletter"); // $rueckgabe.= $this->text->get_text( "newsletter_send_success_02").$count[0]['count(email)']; } else { // Schritt 1: Absender auswaehlen $params = explode(";", SENDER_ADDRESS); $rueckgabe .= $this->execute_view(ROOT_PATH . "admin/confirm_sending.view.php", $params); } } // neuen Eintrag zu einem Newsletter anlegen if (array_key_exists("newEntry", $_GET) && array_key_exists("edit", $_GET) && strlen($_GET['edit']) > 0) { $tmp = new Newsletter($_GET['edit']); $tmp->add_entry(); } // einen Eintrag loeschen if (array_key_exists("deleteEntry", $_GET) && strlen($_GET['deleteEntry']) > 0) { $tmp = new Newsletter($_GET['edit']); $erg = $tmp->delete_entry($_GET['deleteEntry']); $rueckgabe .= $this->text->get_text("newsletter_entry_delete_success"); } // einen bearbeiteten Eintrag speichern $entry_id = $this->postman->get_plaintext("saveEntry"); if (!is_null($entry_id) && strlen($entry_id) > 0) { $newsletter_id = Newsletter::get_newsletter_id_for_entry($entry_id); if (!is_null($newsletter_id)) { $tmp = new Newsletter($newsletter_id); if ($tmp->save_entry()) { $rueckgabe .= $this->text->get_text("newsletter_save_entry_success"); } else { $rueckgabe .= $this->text->get_text("newsletter_save_entry_error"); } } } // Entry hoch verschieben if (array_key_exists("entryUp", $_GET) && strlen($_GET['entryUp']) > 0) { $newsletter_id = Newsletter::get_newsletter_id_for_entry($_GET['entryUp']); $tmp = new Newsletter($newsletter_id); $tmp->entry_up($_GET['entryUp']); } // Entry nach unten verschieben if (array_key_exists("entryDown", $_GET) && strlen($_GET['entryDown'] > 0)) { $newsletter_id = Newsletter::get_newsletter_id_for_entry($_GET['entryDown']); $tmp = new Newsletter($newsletter_id); $tmp->entry_down($_GET['entryDown']); } return $rueckgabe; }
include_once 'newsletterclass.inc.php'; $newsletter = new Newsletter(); $smarty->assign("tpl_title", "Newsletter versenden"); $smarty->assign('tpl_nav', 'newsletter'); $smarty->assign('tpl_type', 'newsletter'); if ($request->GetVar('frm_cat', 'post') !== $request->undefined) { $cats = $request->GetVar('frm_cat', 'post'); $sender = $request->GetVar('frm_sender', 'post'); $senderemail = $request->GetVar('frm_senderemail', 'post'); $subject = $request->GetVar('frm_subject', 'post'); $body = $request->GetVar('frm_body', 'post'); if ($request->GetVar('frm_andop', 'post') == 'yes') { $andop = true; } else { $andop = false; } if ($request->GetVar('frm_salutation', 'post') == 'yes') { $salutation = true; } else { $salutation = false; } $number = $newsletter->send($cats, $sender, $senderemail, $subject, $body, $andop, $salutation); $smarty->assign('tpl_number', $number); $smarty->assign('tpl_sent', 'true'); } else { $smarty->assign('tpl_sent', 'false'); $smarty->assign('tpl_cat', $newsletter->getCategories()); $smarty->assign('tpl_hotelname', $request->getVar('hotel_name', 'session')); $smarty->assign('tpl_hotelemail', $request->getVar('hotel_email', 'session')); } $smarty->display('newsletter.tpl');