/** * 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; }
/** * undocumented function * * @return void * @author **/ public static function addNew(array $input) { return Newsletter::create($input); }
/** * @param * @return Response * RESTFULL controller * @type POST * @Route newsletters */ public function postSubscribe() { //we check if it's really an AJAX request if (Request::ajax()) { $validation = Validator::make(Input::all(), array('email' => 'required|email|unique:newsletter,email')); if ($validation->fails()) { return $validation->errors()->first(); } else { $create = Newsletter::create(array('email' => Input::get('email'))); return $create ? '1' : 'We could not save your address to oursystem, please try again later'; } } else { return Redirect::to('subscribers'); } }