function display_page_content() { $lists = NLLists::FindAll(); ?> <div id="edit-header" class="blaster"> <div class="nav-left column"> <h1>Edit Mailing Lists</h1> </div> <div class="nav-right column"> <a href="<?php echo get_link("admin/add_list"); ?> " class="hcd_button">Add a New Mailing List</a> </div> <div class="clearleft"></div> </div> <p>Click on the list name to edit it.</p> <ul id="list_items" class="managelist"> <?php if (count($lists) > 0) { foreach ($lists as $list) { echo "\t\t<li><a class=\"item-link\" href=\"" . get_link("/admin/edit_list/{$list->id}") . "\">{$list->display_name}</a></li>\n"; } } else { echo "<h3 class=\"empty-list\">There are no lists to edit. <a class=\"short\" href=\"" . get_link("admin/add_list") . "\">Add one if you like</a>.</h3>"; } ?> </ul> <?php }
function display_page_content() { $the_email = requestIdParam(); $the_list = getRequestVarAtIndex(3); $list = NLLists::FindById($the_list); $email = NLEmails::FindByEmail($the_email); $email->detach($list); }
function display_page_content() { $emails = NLEmails::FindAll(); $lists = NLLists::FindAll(); ?> <h1>Subscribers listed below</h1> <?php $addresscount = 0; $subscribecount = 0; $subscribers = ""; foreach ($emails as $email) { $lists_subscribed_to = 0; foreach ($lists as $list) { if ($email->is_linked($list)) { $lists_subscribed_to++; } } $address = ""; if ($email->first_name && $email->last_name && $email->address1 && $email->city && $email->state && $email->zip) { $address = "(Complete address available)"; $addresscount++; } $subscribers .= "\t\t\t\t\t\t<li><a href=\"#\"><strong>{$email->email}</strong></a> Subscribed to: {$lists_subscribed_to} lists {$address}</li>\n"; $subscribecount++; } ?> <p>{<?php echo $subscribecount; ?> } Subscribers with {<?php echo $addresscount; ?> } complete address(es)</p> <ul id="list_items"> <?php echo $subscribers; ?> </ul> <?php }
function display_page_content() { $blasts = MailBlast::FindAll(); ?> <div id="edit-header" class="sentblasts"> <h1>View or Delete Old Email Blasts</h1> </div> <form id="blast_list_form" method="POST"> <p>Click on the blast name to view it. Check the box and then click “Save” below to delete that blast from the database. </p> <div id="table-header"> <span class="item-link">Click Name to View</span> <span class="item-public">Date Sent</span> <span class="item-revised">To List</span> <span class="item-created">Delete Option</span> </div> <ul id="listitems" class="managelist"> <?php foreach ($blasts as $blast) { $list = NLLists::FindById($blast->list_id); $subject = $blast->email_subject != '' ? $blast->email_subject : 'Sent on ' . $blast->date_sent; echo "\t\t<li>\n\t\t <a target=\"_blank\" class=\"item-link\" href=\"" . get_link("/mail/blast/{$blast->hash}") . "\">\n\t\t {$subject}\n </a> \n <span class=\"item-public\">" . formatDateView($blast->date_sent) . "</span>\n\t\t\t<span class=\"item-revised\">" . $list->display_name . "</span>\n\t\t\t<span class=\"item-created\"><input name=\"delete[]\" type=\"checkbox\" value=\"{$blast->id}\" /> Delete?</span>\n </li>\r\n"; } ?> </ul> <div id="edit-footer"> <p><input type="submit" class="submitbutton" name="submit" value="Delete Selected" /></p> </div> </form> <?php }
function display_page_content() { $useremail = requestIDparam(); if ($useremail == "deleted") { $useremail = ""; } if (!$_POST) { $lists = NLLists::FindPublic(); $list_count = count($lists); $welcome_message = 'Subscribe to our mailing list'; if ($list_count > 1) { $welcome_message .= "s"; } if (requestIdParam() == "deleted") { echo '<div class="feedback feedback__alert"><p class="">That email has been removed</p></div>'; } ?> <div class="subscriber"> <script type="text/javascript"> //<![CDATA[ $().ready(function() { $("#lists_form").validate({ rules: { email: { required: true, email: true }, "list[]": "required" }, messages: { email: "Please enter a valid email address", "list[]": "Almost forgot! Select at least one list to subscribe to." } }); }); //]]> </script> <h1 class="subscriber--title"><?php echo $welcome_message; ?> </h1> <form class="form form__subscribe-new" method="POST"> <span class="form--input-group"><label for="email">Your Email</label> <input type="email" id="email" name="email" class="form--input" maxlength="128" required="required" value="<?php echo $useremail; ?> "></span> <div class="subscriber--lists"> <?php foreach ($lists as $list) { if ($list->public) { echo '<div class="subscriber--list-wrapper"><p class="subscriber--list"><label for="' . $list->name . '" class="check"><input type="checkbox" name="selected_list[]" id="' . $list->name . '" value="' . $list->id . '"> ' . $list->display_name . '</label></p>'; echo '<div class="subscriber--list--description">' . $list->description . '</div></div>'; } } ?> </div> <p><input type="submit" class="button primary-action" name="submit" value="Save Subscription Settings"></p> </form> </div> <?php } else { // There is a POST. Display a Success page $useremail = $_POST['email']; $nlemail = NLEmails::FindByEmail($useremail); $thislists = $nlemail->getNLlists(); ?> <div class="subscriber subscriber--feedback"> <h1 class="subscriber--title">Thanks!</h1> <h3 class="subscriber--subtitle"><?php echo $useremail; ?> is now subscribed to:</h3> <?php foreach ($thislists as $list) { echo '<h4 class="successfully_subscribed">' . $list->display_name . '</h4>'; } ?> <p> </p> <p>Go to the <a href="<?php echo get_link("users/manage/" . $useremail); ?> ">Manage Subscriptions</a> page to manage your subscriptions or provide additional information.</p> </div> <?php } }
function display_page_content() { $post_action = ""; if (isset($_POST['submit'])) { $post_action = $_POST['submit']; } ?> <div id="mail_blaster"> <?php if (!$post_action) { $_SESSION['blaster'] = array(); $lists = NLLists::FindAll(); ?> <div id="edit-header" class="blaster"> <div class="nav-left column"> <h1>Email Blast Setup: Follow these Steps</h1> </div> <div class="nav-right column"> <a href="<?php echo get_link("admin/list_lists"); ?> " class="hcd_button">Manage Mailing Lists</a> </div> <div class="clearleft"></div> </div> <script type="text/javascript"> //<![CDATA[ $().ready(function() { $('.selectList').click(function() { $('a.blast_options').fadeIn(); }); $('.blast_options').click(function() { var value = ""; $('#select_list .selectList').each(function() { if ($(this).attr('checked')) { value += $(this).val()+","; } }); $('#session_add').load('<?php echo BASEHREF; ?> blaster/session_add/lists/'+value, function() { $("#blast_options").load('<?php echo BASEHREF; ?> blaster/blast_options/', function() { $("#blast_options").slideDown(); }); }); return false; }); $('#step-one').click(function() { $(this).fadeOut('slow'); }); }); //]]> </script> <form id="select_list_form" method="POST"> <div id="select_list"> <h2><big>Step 1:</big> Choose a list to send an email to</h2> <?php foreach ($lists as $list) { echo '<p><label for="' . $list->name . '"><input class="selectList" name="list[]" type="checkbox" value="' . $list->name . '" id="' . $list->name . '"/> ' . $list->display_name . '</p>'; } ?> <a href="#" id="step-one" class="blast_options submitbutton" style="display:none;">Send a newsletter to selected list(s)</a> </div> <div id="blast_options" style="display: none;"></div> </form> <div id="session_add"></div> <?php } else { if ($post_action == "Submit All Options and Preview") { include_once mailPath('snippets/mail_config_parse'); ?> <div id="edit-header" class="blaster"> <h1>Preview Your E-Newsletter Blast</h1> <p><span class="hint">If you use your browser’s “Back” button, you may lose any text or options you have configured here.</span></p> </div> <?php // ! Creates previews in Templates $templates_generated = array(); $lists = ""; foreach ($list_names as $slug) { $list = NLLists::FindBySlug($slug); $lists .= "<strong>{$list->display_name}</strong>"; if (!in_array($list->template, $templates_generated)) { echo "<p><strong>Template: {$list->template}</strong> (Please note: Things may look a little funky, as this is meant to be viewed in a mail browser)</p>\n"; } $templates_generated[] = $list->template; } echo "<p>Your selected lists are: {$lists} </p>\n"; echo "<p>Your email subject is: "; if ($_POST['subject_line']) { $subject = $_POST['subject_line']; } else { $subject = $list->display_name . " News: " . date("F j\\, Y"); } echo "<strong>{$subject}</strong></p>"; echo "<div class=\"mail_template\">\n"; include_once mailPath("mail_layouts/" . $list->template . "_preview"); echo "</div>\n"; ?> <form id="send_list_form" method="POST"> <?php hiddenField("description", $_POST['description']); ?> <?php hiddenField("subject_line", $subject); ?> <div id="edit-footer" class="blaster clearfix"> <div class="column half"> <p><input type="submit" class="submitbutton" name="submit" value="Send To Your Lists" /></p> </div> <div class="column half last"> <p>Be patient... depending on the number of addresses, this may take awhile.</p> </div> </div> </form> <?php } else { // Send the Mail include_once mailPath('snippets/mail_config_parse'); // ! Creates previews in Templates $success = ""; $failure = ""; $subject = $_POST['subject_line']; foreach ($list_names as $slug) { $list = NLLists::FindBySlug($slug); // Include Template include_once mailPath("mail_layouts/" . $list->template); // stupid bug fix $mailed_content = str_replace(array("\\\\'", '\\\\"'), array("'", '"'), $mailed_content); $blast = MyActiveRecord::Create("MailBlast"); $blast->email_subject = $subject; $blast->date_sent = date("Y-m-d"); $blast->hash = md5(date('r', time())); $blast->content = $mailed_content; $blast->list_id = $list->id; $blast->save(); $failure_num = 0; $success_num = 0; foreach ($list->findEmails() as $email) { // To send HTML mail, the Content-type header must be set $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; // Additional headers $headers .= 'From: ' . $list->display_name . ' <' . SENDMAIL_FROM . '>' . "\r\n"; // Mail it if (!mail($email->email, $subject, str_replace("{{-email-}}", $email->email, $blast->content), $headers)) { $failure .= $list->display_name . ": " . $email->email . "<br />\n"; $failure_num++; } else { $success .= $list->display_name . ": " . $email->email . "<br />\n"; $success_num++; } } } echo '<div id="edit-header" class="blaster"><h1>Success!</h1></div>'; if ($failure_num != 0) { echo "<h2>{$failure_num} Email(s) failed:</h2>\n<p>" . $failure . "</p>\n<p> </p>\n"; } echo "<h2>{$success_num} Emails got sent</h2>\n<p>" . $success . "</p>\n"; } } ?> </div> <?php }
function display_page_content() { $useremail = requestIDparam(); // Check email by getting it from the database. Find the subscriptions associated with it. If it is not a valid email in our database, then do not display the interface below. Instead, maybe we redirect them to the home page. $email = NLEmails::FindByEmail($useremail); $lists = NLLists::FindAll(); echo '<div class="subscriber"><div id"status_message"></div>'; displayFlash(); echo '<h1 class="subscriber--title">Manage your Newsletter Subscriptions</h1>'; // There is no email that we can take out of the URL string if ($useremail == "") { ?> <h3 class="subscriber--subtitle subscriber--error">An email was not detected… please enter one below:</h3> <form class="form form__subscriber-profile" method="POST"> <span class="form--input-group"><label for="email" class="screen-reader-text">Email</label><input type="email" id="email" name="email" class="form--input" placeholder="*****@*****.**" maxlength="128" required="required" tabindex="1" value=""></span> <p><input type="submit" class="button primary-action" name="submit" value="Manage This Email" tabindex="2"></p> </form> <?php // There is an email, but we didn't find a user associated with it } else { if (!is_object($email)) { ?> <h3 class="subscriber--subtitle subscriber--error">Whoops… that email is not subscribed to any lists</h3> <h3><a href="<?php echo get_link("mail/subscribe/" . $useremail); ?> " title="Click here to choose an email list to subscribe this email to">Subscribe to a list.</a></h3> <?php // Found the email and the user. } else { ?> <form class="form form__subscriber-profile form__wide" method="POST"> <span class="form--input-group"><label for="email">Your Email</label> <input type="email" id="email" name="email" class="form--input" maxlength="128" required="required" value="<?php echo $email->email; ?> "></span> <h2 class="subscriber--subtitle">Subscriptions</h2> <p><em>You may uncheck a box to be removed from that list</em></p> <div class="subscriber--lists"> <?php hiddenField("oldemail", $email->email); foreach ($lists as $list) { if ($list->public) { if ($email->is_linked($list)) { $checked = "checked"; } else { $checked = ""; } echo '<div class="subscriber--list-wrapper"><p class="subscriber--list"><label for="' . $list->name . '" class="check"><input type="checkbox" name="' . $list->name . '" id="' . $list->name . '" value="' . $list->id . '" ' . $checked . '> ' . $list->display_name . '</label></p>'; echo '<div class="subscriber--list--description">' . $list->description . '</div></div>'; } } ?> </div> <p><input type="submit" class="button primary-action" name="submit" value="Save Subscription Settings"></p> <div class="subscriber--details"> <h3>Optional Information:</h3> <span class="form--input-group"><label for="first_name">First Name</label> <input type="text" id="first_name" name="first_name" class="form--input" value="<?php echo $email->first_name; ?> "></span> <span class="form--input-group"><label for="last_name">Last Name</label> <input type="text" id="last_name" name="last_name" class="form--input" value="<?php echo $email->last_name; ?> "></span> <span class="form--input-group"><label for="address1">Address 1</label> <input type="text" id="address1" name="address1" class="form--input" value="<?php echo $email->address1; ?> "></span> <span class="form--input-group"><label for="address2">Address 2</label> <input type="text" id="address2" name="address2" class="form--input" value="<?php echo $email->address2; ?> "></span> <span class="form--input-group"><label for="city">City</label> <input type="text" id="city" name="city" class="form--input" value="<?php echo $email->city; ?> "></span> <span class="form--input-group"><label for="state">State</label> <?php echo StateSelectList("state", $email->state); ?> </span> <span class="form--input-group"><label for="zip">Zip Code</label> <input type="text" id="zip" name="zip" class="form--input" value="<?php echo $email->zip; ?> "></span> <span class="form--input-group"><label for="phone">Phone</label> <input type="tel" id="phone" name="phone" class="form--input" value="<?php echo $email->phone; ?> "></span> </div> <p><label for="delete" class="check"><input type="checkbox" name="delete" id="delete" value="<?php echo $email->email; ?> "> Remove my email from the site completely.</label></p> <p><input type="submit" class="button primary-action" name="submit" value="Save Subscription Settings"></p> </form> <?php } } echo '</div><!-- end .subscriber -->'; }
function display_page_content() { $list = NLLists::FindById(requestIdParam()); $emails = $list->findEmails(); $subscribers = count($emails); ?> <script type="text/javascript"> $().ready(function() { $("a.email_del").click(function() { var email = $(this).attr('title'); var list = $(this).attr('name'); var answer = confirm("Do you want to delete "+email+" from the list?"); if (answer) { $("#loadme").load('<?php echo BASEHREF; ?> blaster/remove_email/'+email+'/'+list); $(this).parent().fadeOut(); return false; } else { return false; } }); }); </script> <div id="loadme" style="display:none"></div> <div id="edit-header" class="maillistnav"> <div class="nav-left column"> <h1>Edit a List: <?php echo $list->display_name; ?> </h1> </div> <div class="nav-right column"> <a href="<?php echo get_link("admin/list_lists"); ?> " class="hcd_button">Back to Mailing Lists</a> </div> <div class="clearleft"></div> </div> <form method="POST" id="edit_maillist"> <p><label for="description">Description of List (displayed, if the list is public, when a user manages their subscription preferences):</label><br /> <?php textArea("description", $list->description, 98, 10); ?> </p> <p> </p> <p><label for="emails">New Emails:</label> <span class="hint">This field requires a single email OR a comma-delimited list of emails (i.e. “blah@blah.org, blag@blag.net” etc...)</span></p><p> <textarea class="mceNoEditor" name="emails" id="emails" rows="8" style="width: 98%;"></textarea> </p> <p><label for="public">Public List:</label> <?php checkBoxField("public", $list->public, "1"); ?> </p> <p><input type="submit" class="submitbutton" name="submit" value="Edit List" /></p> <div id="edit-footer" class="maillistnav"> <p><label for="subscribers">Current Subscribers (<?php echo $subscribers; ?> subscribers):</label> <span class="hint">Click the X to remove email from list.</span> </p> <table width="100%" cellpadding="3" cellspacing="0" border="0"> <tbody> <tr> <?php $count = 0; $tabs = "\t\t\t\t\t\t\t\t\t"; foreach ($emails as $email) { echo $tabs . "\t<td><div>{$email->email} [<a class=\"email_del\" title=\"{$email->email}\" name=\"{$list->id}\" href=\"javascript:;\">X</a>]</div></td>\n"; $count++; if ($count == 3) { echo $tabs . "</tr><tr>\n"; $count = 0; } } ?> </tr> </tbody> </table> </div> </form> <?php }