$v) { session_unregister($k); } session_destroy(); $OUTPUT .= MakeSuccessBox("Bounce Processing Completed", $Msg, MakeAdminLink("lists")); $DontDo = 1; } if($Action == "BounceError") { session_save_path($ROOTDIR.'temp'); session_name('SendStudio'); session_start(); foreach($_SESSION as $k => $v) { session_unregister($k); } session_destroy(); session_unset(); $OUTPUT .= MakeErrorBox("An Error Occurred", "$Err"); $DontDo = 1; } if ($Action == 'ShowSummary') { ob_start(); $count = number_format((int)mysql_result(mysql_query("SELECT COUNT(*) FROM " . $TABLEPREFIX . "members WHERE ListID='" . addslashes($ListID) . "'"), 0, 0), 0); $listname = stripslashes(mysql_result(mysql_query("SELECT ListName FROM " . $TABLEPREFIX . "lists WHERE ListID='" . addslashes($ListID) . "'"), 0, 0)); OutputPageHeader(false, false, true); ?>
[x] Close
on the '' mailing list.

Click on the \"Start Processing\" button below to start processing bounced emails.

"; $BE .= " "; $OUTPUT .= MakeBox("Process Bounced Emails (Step 2 of 2)", $BE); } if($Action == "GetBounceLogin") { // Get the login for the POP3 email account $DontDo = 1; // Does the server have the required imap extension installed? if(!function_exists("imap_open")) { $OUTPUT .= MakeErrorBox("IMAP Functionality Unavailable", "Unfortunately your web server does not have support for IMAP email setup. Please contact your web host."); } else { $FORM_ITEMS[$FORM_REQUIRED_ITEM . "Bounce Email Address"]="textfield|BounceEmail:100:44:"; $HELP_ITEMS["BounceEmail"]["Title"] = "Bounce Email Address"; $HELP_ITEMS["BounceEmail"]["Content"] = "Enter the email address that you specified as the Return-Path when you sent a newsletter to this list."; $FORM_ITEMS[$FORM_REQUIRED_ITEM . "Email Server"]="textfield|EmailServer:100:44:"; $HELP_ITEMS["EmailServer"]["Title"] = "Bounce Email Server"; $HELP_ITEMS["EmailServer"]["Content"] = "Enter the server where your mail is hosted for the bounce email address that you specified above."; $FORM_ITEMS[$FORM_REQUIRED_ITEM . "Email Username"]="textfield|EmailUser:100:44:"; $HELP_ITEMS["EmailUser"]["Title"] = "Email Username"; $HELP_ITEMS["EmailUser"]["Content"] = "Enter the username to check email for the bounce email address that you specified above."; $FORM_ITEMS[$FORM_REQUIRED_ITEM . "Email Password"]="password|EmailPassword:100:44:"; $HELP_ITEMS["EmailPassword"]["Title"] = "Email Password"; $HELP_ITEMS["EmailPassword"]["Content"] = "Enter the password to check email for the bounce email address that you specified above."; $FORM_ITEMS[$FORM_REQUIRED_ITEM . "Bounce Handler"]="select|BounceHandler:1:bounce->Mark as Inactive;delete->Delete from List"; $HELP_ITEMS["BounceHandler"]["Title"] = "Bounce Handler"; $HELP_ITEMS["BounceHandler"]["Content"] = "What would you like to happen to bounced email addresses? Choose \'Mark as Inactive\' to simply mark them as inactive but not to delete them. Choose \'Delete from List\' to remove them from the mailing list completely."; $FORM_ITEMS[-3]="hidden|ListID:$ListID"; $FORM_ITEMS["-1"]="submit|Next »"; $FORM=new AdminForm; $FORM->title="GetLogin"; $FORM->items=$FORM_ITEMS; $FORM->action=MakeAdminLink("lists?Action=DoBounceHandler"); $FORM->MakeForm("POP3 Account Details"); $FORM->output = "Please enter the details required for processing email bounces below." . $FORM->output; $OUTPUT.=MakeBox("Process Bounced Emails (Step 1 of 2)",$FORM->output); $OUTPUT .= ' '; } } if($Action == "Add") { // Is this user allowed to add a list? $canCreate = false; if(($CURRENTADMIN["Root"] == 1 && $CURRENTADMIN["Manager"] == 1)) { $canCreate = true; } else { $lists = mysql_query("SELECT * FROM " . $TABLEPREFIX . "lists INNER JOIN " . $TABLEPREFIX . "allow_lists ON " . $TABLEPREFIX . "lists.ListID = " . $TABLEPREFIX . "allow_lists.ListID WHERE " . $TABLEPREFIX . "allow_lists.AdminID = " . addslashes($CURRENTADMIN['AdminID']) . " ORDER BY " . $TABLEPREFIX . "lists.ListName ASC"); $maxLists = $CURRENTADMIN["MaxLists"]; $numLists = mysql_num_rows($lists); $numListsLeft = (int)$maxLists - (int)$numLists; if($maxLists == 0 || $numListsLeft > 0) $canCreate = true; else $canCreate = false; } if($canCreate) { //make new list! $List=mysql_fetch_assoc(mysql_query("SELECT * FROM " . $TABLEPREFIX . "lists WHERE ListID='".addslashes($ListID)."' ORDER BY ListName ASC")); $List = stripslashes_array($List); $DontDo = true; $FORM_ITEMS[$FORM_REQUIRED_ITEM . "List Name"]="textfield|ListName:50:44:"; $HELP_ITEMS["ListName"]["Title"] = "List Name"; $HELP_ITEMS["ListName"]["Content"] = "The name of this list as it will appear both in the control panel and on your subscription forms."; $FORM_ITEMS[$FORM_REQUIRED_ITEM . "List Owners Name"]="textfield|WebmasterName:50:44:"; $HELP_ITEMS["WebmasterName"]["Title"] = "List Owners Name"; $HELP_ITEMS["WebmasterName"]["Content"] = "The name of the person who owns this mailing list."; $FORM_ITEMS[$FORM_REQUIRED_ITEM . "List Owners Email"]="textfield|WebmasterEmail:50:44:"; $HELP_ITEMS["WebmasterEmail"]["Title"] = "List Owners Email"; $HELP_ITEMS["WebmasterEmail"]["Content"] = "The email address of the person who owns this mailing list."; $FORM_ITEMS["-3"]="hidden|Status:1"; $FORM_ITEMS[$FORM_REQUIRED_ITEM . "Allow Subscriptions"]="select|CanSubscribe:1:0->No;1->Yes:1"; $HELP_ITEMS["CanSubscribe"]["Title"] = "Allow Subscriptions"; $HELP_ITEMS["CanSubscribe"]["Content"] = "Can this list accept subscriptions?"; $FORM_ITEMS[$FORM_REQUIRED_ITEM . "Allow Unsubscriptions"]="select|CanUnSubscribe:1:0->No;1->Yes:1"; $HELP_ITEMS["CanUnSubscribe"]["Title"] = "Allow Unsubscriptions"; $HELP_ITEMS["CanUnSubscribe"]["Content"] = "Can this list accept unsubscriptions?"; $FORM_ITEMS[$FORM_REQUIRED_ITEM . "Newsletter Formats"]="select|Formats:1:1->Text Only;2->HTML Only;3->Text and HTML:3"; $HELP_ITEMS["Formats"]["Title"] = "Newsletter Formats"; $HELP_ITEMS["Formats"]["Content"] = "Which type of newsletters would you like to be able to create for this mailing list? Text, HTML or both?"; $FORM_ITEMS["   Notify List Owner"]="select|NotifyOwner:0:0->No;1->Yes:0"; $HELP_ITEMS["NotifyOwner"]["Title"] = "Notify List Owner?"; $HELP_ITEMS["NotifyOwner"]["Content"] = "Should we notify the list owner via email when a subscriber joins?"; $FORM_ITEMS["-1"]="submit|Save:1-lists-Are you sure you wish to cancel creating a mailing list?"; //make the form $FORM=new AdminForm; $FORM->title="CreateList"; $FORM->items=$FORM_ITEMS; $FORM->action=MakeAdminLink("lists?CreateNewList=Now"); $FORM->MakeForm("New List Details"); $FORM->output = "Complete the form below to create a new mailing list." . $FORM->output; $OUTPUT .= MakeBox("Create Mailing List", $FORM->output); $OUTPUT .= ' '; } else { // User doesn't have permission to create a new list $OUTPUT .= MakeErrorBox("Permission Denied", "You are not allowed to create any more mailing lists."); $DontDo = true; } } if($Delete=="List") { if (remove_newsletter_archives($ListID)) { mysql_query("DELETE FROM " . $TABLEPREFIX . "lists WHERE ListID='".addslashes($ListID)."'"); mysql_query("DELETE FROM " . $TABLEPREFIX . "members WHERE ListID='".addslashes($ListID)."'"); mysql_query("DELETE FROM " . $TABLEPREFIX . "allow_lists WHERE ListID='".addslashes($ListID)."'"); mysql_query("DELETE FROM " . $TABLEPREFIX . "list_field_values WHERE ListID='".addslashes($ListID)."'"); mysql_query("DELETE FROM " . $TABLEPREFIX . "autoresponders WHERE ListID='".addslashes($ListID)."'"); } } if ($Delete == 'AllSubscribers') { $numMembers = (int)mysql_result(mysql_query("SELECT COUNT(*) FROM " . $TABLEPREFIX . "members WHERE ListID='".addslashes($ListID)."'"), 0, 0); if(mysql_query("DELETE FROM " . $TABLEPREFIX . "members WHERE ListID='".addslashes($ListID)."'")) { // clean up their field values too. mysql_query("DELETE FROM " . $TABLEPREFIX . "list_field_values WHERE ListID='". addslashes($ListID)."'"); $OUTPUT .= MakeSuccessBox(number_format($numMembers, 0) . " subscriber(s) deleted successfully", "All subscribers have been deleted successfully.", MakeAdminLink("lists")); } else { $OUTPUT .= MakeErrorBox("An Error Occurred", "The selected subscribers couldn't be deleted."); } $DontDo = 1; } if($CreateNewList=="Now") { // Create a new mailing list mysql_query("INSERT INTO " . $TABLEPREFIX . "lists SET ListName='".addslashes($ListName)."', CreatedOn='".time()."', CanSubscribe='".addslashes($CanSubscribe)."', CanUnsubscribe='".addslashes($CanUnSubscribe)."', Status='".addslashes($Status)."', Formats='".addslashes($Formats)."', WebmasterName='".addslashes($WebmasterName)."', NotifyOwner='" . addslashes($NotifyOwner)."', WebmasterEmail='".addslashes($WebmasterEmail)."'"); // Give this user permissions to view and edit the list mysql_query("INSERT INTO " . $TABLEPREFIX . "allow_lists SET AdminID='" . addslashes($CURRENTADMIN["AdminID"]) . "', ListID='" . mysql_insert_id() . "'"); $OUTPUT .= MakeSuccessBox("Mailing List Created Successfully", "The mailing list that you created has been saved successfully.", MakeAdminLink("lists")); $DontDo = 1; } if($Edit=="List") { if($Save) { mysql_query("UPDATE " . $TABLEPREFIX . "lists SET ListName='".addslashes($ListName)."', Formats='".addslashes($Formats)."', WebmasterName='".addslashes($WebmasterName)."', WebmasterEmail='".addslashes($WebmasterEmail)."', Status='".addslashes($Status)."', CanSubscribe='".addslashes($CanSubscribe)."', CanUnSubscribe='".addslashes($CanUnSubscribe)."', NotifyOwner='".addslashes($NotifyOwner)."' WHERE ListID='".addslashes($ListID)."'"); $OUTPUT .= MakeSuccessBox("Mailing List Updated Successfully", "The selected mailing list has been updated successfully.", MakeAdminLink("lists")); $DontDo = 1; } else { $List=mysql_fetch_assoc(mysql_query("SELECT * FROM " . $TABLEPREFIX . "lists WHERE ListID='".addslashes($ListID)."' ORDER BY ListName ASC")); $List = stripslashes_array($List); $FORM_ITEMS[$FORM_REQUIRED_ITEM . "List Name"]="textfield|ListName:50:44:".$List["ListName"]; $HELP_ITEMS["ListName"]["Title"] = "List Name"; $HELP_ITEMS["ListName"]["Content"] = "The name of this list as it will appear both in the control panel and on your subscription forms."; $FORM_ITEMS[$FORM_REQUIRED_ITEM . "List Owners Name"]="textfield|WebmasterName:50:44:".$List["WebmasterName"]; $HELP_ITEMS["WebmasterName"]["Title"] = "List Owners Name"; $HELP_ITEMS["WebmasterName"]["Content"] = "The name of the person who owns this mailing list."; $FORM_ITEMS[$FORM_REQUIRED_ITEM . "List Owners Email"]="textfield|WebmasterEmail:50:44:".$List["WebmasterEmail"]; $HELP_ITEMS["WebmasterEmail"]["Title"] = "List Owners Email"; $HELP_ITEMS["WebmasterEmail"]["Content"] = "The email address of the person who owns this mailing list."; $FORM_ITEMS["-3"]="hidden|Status:1"; $FORM_ITEMS[$FORM_REQUIRED_ITEM . "Allow Subscriptions"]="select|CanSubscribe:1:0->No;1->Yes:".$List["CanSubscribe"]; $HELP_ITEMS["CanSubscribe"]["Title"] = "Allow Subscriptions"; $HELP_ITEMS["CanSubscribe"]["Content"] = "Can this list accept subscriptions? If yes, tick this box."; $FORM_ITEMS[$FORM_REQUIRED_ITEM . "Allow Unsubscriptions"]="select|CanUnSubscribe:1:0->No;1->Yes:".$List["CanUnSubscribe"]; $HELP_ITEMS["CanUnSubscribe"]["Title"] = "Allow Unsubscriptions"; $HELP_ITEMS["CanUnSubscribe"]["Content"] = "Can this list accept unsubscriptions? If yes, tick this box."; $FORM_ITEMS[$FORM_REQUIRED_ITEM . "Allowed Formats"]="select|Formats:1:1->Text Only;2->HTML Only;3->Text and HTML:".$List["Formats"]; $HELP_ITEMS["Formats"]["Title"] = "Newsletter Formats"; $HELP_ITEMS["Formats"]["Content"] = "Which type of newsletters would you like to be able to create for this mailing list? text, HTML or both?"; $FORM_ITEMS["   Notify List Owner"]="select|NotifyOwner:0:0->No;1->Yes:".$List['NotifyOwner']; $HELP_ITEMS["NotifyOwner"]["Title"] = "Notify List Owner?"; $HELP_ITEMS["NotifyOwner"]["Content"] = "Should we notify the list owner when a subscriber joins?"; $FORM_ITEMS["-1"]="submit|Save:1-lists"; //make the form $FORM=new AdminForm; $FORM->title="EditList"; $FORM->items=$FORM_ITEMS; $FORM->action=MakeAdminLink("lists?Edit=List&Save=1&ListID=$ListID"); $FORM->MakeForm("Mailing List Details"); $OUTPUT.=MakeBox("Edit Mailing List",$FORM->output); $OUTPUT .= ' '; $DontDo=1; } } if(!$DontDo) { //current lists! if(($CURRENTADMIN["Root"] == 1 && $CURRENTADMIN["Manager"] == 1)) $lists = mysql_query("SELECT * FROM " . $TABLEPREFIX . "lists ORDER BY ListName ASC"); else $lists = mysql_query("SELECT * FROM " . $TABLEPREFIX . "lists INNER JOIN " . $TABLEPREFIX . "allow_lists ON " . $TABLEPREFIX . "lists.ListID = " . $TABLEPREFIX . "allow_lists.ListID WHERE " . $TABLEPREFIX . "allow_lists.AdminID = " . addslashes($CURRENTADMIN["AdminID"]) . " ORDER BY " . $TABLEPREFIX . "lists.ListName ASC"); $maxLists = $CURRENTADMIN["MaxLists"]; $numLists = mysql_num_rows($lists); $numListsLeft = (int)$maxLists - (int)$numLists; if($numLists > 0) { $AllLists=' '; if($numListsLeft > 0) { $AllLists .= ' '; } $AllLists .= ' '; while($l=mysql_fetch_assoc($lists)) { $l = stripslashes_array($l); if ($CURRENTADMIN['DisplaySummaries'] == 1) { $subscriber_count = number_format((int)mysql_result(mysql_query("SELECT COUNT(*) FROM " . $TABLEPREFIX . "members WHERE ListID='".addslashes($l["ListID"])."'"), 0, 0), 0); } else { $subscriber_count = 'View'; } $AllLists .= ' '; } $AllLists .= '
 (You are allowed to create ' . $numListsLeft . ' more mailing list'; if($numListsLeft != 1) $AllLists .= "s"; $AllLists .= ')
List Name List Owner Created Subscribers Action
' . $l["ListName"] . ' ' . $l["WebmasterName"] . ' ' . DisplayDate($l["CreatedOn"]) . ' ' . $subscriber_count . ' '; $AllLists .= MakeConfirmBox("lists?Delete=AllSubscribers&ListID=".$l['ListID'], "Delete All Subscribers", 'Are you sure you wish to delete all subscribers from this mailing list?') . "   "; // Are there any bounces that we can handle for this list? $numBounces = mysql_result(mysql_query("SELECT COUNT(*) FROM " . $TABLEPREFIX . "sends WHERE EmailsSent > 0 AND ListID=" . addslashes($l['ListID'])), 0, 0); if($numBounces > 0) $AllLists .= MakeLink("lists?Action=GetBounceLogin&ListID=".$l["ListID"], "Process Bounces") . "   "; else $AllLists .= "Process Bounces   "; $AllLists .= MakeLink("lists?Edit=List&ListID=".$l["ListID"], "Edit") . "   "; $AllLists .= MakeConfirmBox("lists?Delete=List&ListID=".$l["ListID"], "Delete","Are you sure you wish to delete this mailing list? \\n(This will also delete newsletter archives)"); $AllLists .= '
'; $Heading = 'Use the form below to review, edit and delete mailing lists.'; if($maxLists == 0 || $numListsLeft > 0 || ($CURRENTADMIN['Root'] == 1 && $CURRENTADMIN['Manager'] == 1)) $Heading .= '
To create a new mailing list, click on the "Create Mailing List" button below.



'; else $Heading .= "

"; $AllLists = $Heading . $AllLists; } else { $AllLists = 'No mailing lists have been created. Please click on the "Create Mailing List" button below to create one.



'; } $OUTPUT.=MakeBox("Manage Mailing Lists", $AllLists); } ?>