mirror of
https://github.com/e107inc/e107.git
synced 2025-08-22 14:13:03 +02:00
new module creation
This commit is contained in:
518
e107_plugins/newsletter/admin_config.php
Normal file
518
e107_plugins/newsletter/admin_config.php
Normal file
@@ -0,0 +1,518 @@
|
||||
<?php
|
||||
/*
|
||||
+ ----------------------------------------------------------------------------+
|
||||
| e107 website system
|
||||
|
|
||||
| <20>Steve Dunstan 2001-2002
|
||||
| http://e107.org
|
||||
| jalist@e107.org
|
||||
|
|
||||
| Released under the terms and conditions of the
|
||||
| GNU General Public License (http://gnu.org).
|
||||
|
|
||||
| $Source: /cvs_backup/e107_0.8/e107_plugins/newsletter/admin_config.php,v $
|
||||
| $Revision: 1.1.1.1 $
|
||||
| $Date: 2006-12-02 04:35:32 $
|
||||
| $Author: mcfly_e107 $
|
||||
+----------------------------------------------------------------------------+
|
||||
*/
|
||||
require_once("../../class2.php");
|
||||
if (!getperms("P")) {
|
||||
header("location:".e_BASE."index.php");
|
||||
exit;
|
||||
}
|
||||
$e_sub_cat = 'newsletter';
|
||||
require_once(e_ADMIN."auth.php");
|
||||
|
||||
if (e_QUERY) {
|
||||
list($action, $id) = explode(".", e_QUERY);
|
||||
}
|
||||
else
|
||||
{
|
||||
$action = FALSE;
|
||||
$id = FALSE;
|
||||
}
|
||||
|
||||
$nl = new newsletter;
|
||||
|
||||
|
||||
if(!e_QUERY)
|
||||
{
|
||||
$nl -> showExistingNewsletters();
|
||||
}
|
||||
else
|
||||
{
|
||||
$function = $action."Newsletter";
|
||||
$nl -> $function();
|
||||
}
|
||||
|
||||
class newsletter
|
||||
{
|
||||
|
||||
var $message;
|
||||
|
||||
|
||||
function newsletter()
|
||||
{
|
||||
global $ns;
|
||||
|
||||
foreach($_POST as $key => $value)
|
||||
{
|
||||
if(strstr($key, "nlmailnow"))
|
||||
{
|
||||
$this -> releaseIssue($key);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if(isset($_POST['delete']))
|
||||
{
|
||||
$this -> deleteNewsletter();
|
||||
}
|
||||
|
||||
if(isset($_POST['createNewsletter']))
|
||||
{
|
||||
$this -> createNewsletter();
|
||||
}
|
||||
|
||||
if(isset($_POST['createIssue']))
|
||||
{
|
||||
$this -> createIssue();
|
||||
}
|
||||
|
||||
if($this -> message)
|
||||
{
|
||||
$ns->tablerender("", "<div style='text-align:center'><b>".$this -> message."</b></div>");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function showExistingNewsletters()
|
||||
{
|
||||
global $sql, $ns, $tp;
|
||||
|
||||
if(!$sql -> db_Select("newsletter", "*", "newsletter_parent='0' ORDER BY newsletter_id DESC"))
|
||||
{
|
||||
$text = NLLAN_05;
|
||||
}
|
||||
else
|
||||
{
|
||||
$text = "<form action='".e_SELF."' id='newsletterform' method='post'>
|
||||
<table style='".ADMIN_WIDTH."' class='fborder'>
|
||||
<tr>
|
||||
<td style='width:5%; text-align: center;' class='forumheader'>ID</td>
|
||||
<td style='width:65%' class='forumheader'>".NLLAN_06."</td>
|
||||
<td style='width:20%; text-align: center;' class='forumheader'>".NLLAN_07."</td>
|
||||
<td style='width:10%; text-align: center;' class='forumheader'>".NLLAN_08."</td>
|
||||
</tr>
|
||||
";
|
||||
|
||||
$nlArray = $sql -> db_getList();
|
||||
foreach($nlArray as $data)
|
||||
{
|
||||
$text .= "<tr>
|
||||
<td style='width:5%; text-align: center;' class='forumheader3'>".$data['newsletter_id']."</td>
|
||||
<td style='width:65%' class='forumheader3'>".$data['newsletter_title']."</td>
|
||||
<td style='width:20%; text-align: center;' class='forumheader'>".substr_count($data['newsletter_subscribers'], chr(1))."</td>
|
||||
<td style='width:10%; text-align: center;' class='forumheader3'>
|
||||
<a href='".e_SELF."?edit.".$data['newsletter_id']."'>".ADMIN_EDIT_ICON."</a>
|
||||
<input type='image' title='".LAN_DELETE."' name='delete[newsletter_".$data['newsletter_id']."]' src='".ADMIN_DELETE_ICON_PATH."' onclick=\"return jsconfirm('".$tp->toJS(NLLAN_09." [ID: ".$data['newsletter_id']." ]")."') \"/>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
";
|
||||
}
|
||||
|
||||
$text .= "</table>
|
||||
</form>
|
||||
</div>
|
||||
";
|
||||
}
|
||||
$ns -> tablerender(NLLAN_10, $text);
|
||||
|
||||
|
||||
if(!$sql -> db_Select("newsletter", "*", "newsletter_parent!='0' ORDER BY newsletter_id DESC"))
|
||||
{
|
||||
$text = NLLAN_11;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
$text = "<form action='".e_SELF."' id='newsletterform2' method='post'>
|
||||
<table style='".ADMIN_WIDTH."' class='fborder'>
|
||||
<tr>
|
||||
<td style='width:5%; text-align: center;' class='forumheader'>ID</td>
|
||||
<td style='width:10%; text-align: center;' class='forumheader'>".NLLAN_12."</td>
|
||||
<td style='width:65%' class='forumheader'>".NLLAN_13."</td>
|
||||
<td style='width:10%; text-align: center;' class='forumheader'>".NLLAN_14."</td>
|
||||
<td style='width:10%; text-align: center;' class='forumheader'>".NLLAN_15."</td>
|
||||
</tr>
|
||||
";
|
||||
|
||||
$nlArray = $sql -> db_getList();
|
||||
|
||||
foreach($nlArray as $data)
|
||||
{
|
||||
|
||||
$text .= "<tr>
|
||||
<td style='width:5%; text-align: center;' class='forumheader3'>".$data['newsletter_id']."</td>
|
||||
<td style='width:10%; text-align: center;' class='forumheader3'>".$data['newsletter_issue']."</td>
|
||||
<td style='width:65%' class='forumheader3'>[ ".$data['newsletter_parent']." ] ".$data['newsletter_title']."</td>
|
||||
<td style='width:10%; text-align: center;' class='forumheader3'>".($data['newsletter_flag'] ? NLLAN_16 : "<input class='button' type='submit' name='nlmailnow_".$data['newsletter_id']."' value='".NLLAN_17."' onclick=\"return jsconfirm('".$tp->toJS(NLLAN_18)."') \" />")."</td>
|
||||
<td style='width:10%; text-align: center;' class='forumheader3'>
|
||||
<a href='".e_SELF."?edit.".$data['newsletter_id']."'>".ADMIN_EDIT_ICON."</a>
|
||||
<input type='image' title='".LAN_DELETE."' name='delete[issue_".$data['newsletter_id']."]' src='".ADMIN_DELETE_ICON_PATH."' onclick=\"return jsconfirm('".$tp->toJS(NLLAN_19." [ID: ".$data['newsletter_id']." ]")."') \"/>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
";
|
||||
}
|
||||
|
||||
$text .= "</table>
|
||||
</form>
|
||||
</div>
|
||||
";
|
||||
|
||||
}
|
||||
$ns -> tablerender(NLLAN_20, $text);
|
||||
|
||||
}
|
||||
|
||||
|
||||
function defineNewsletter($edit=FALSE)
|
||||
{
|
||||
|
||||
global $ns, $tp;
|
||||
|
||||
if($edit)
|
||||
{
|
||||
extract($edit);
|
||||
$newsletter_title = $tp -> toFORM($newsletter_title);
|
||||
$newsletter_text = $tp -> toFORM($newsletter_text);
|
||||
$newsletter_footer = $tp -> toFORM($newsletter_footer);
|
||||
}
|
||||
|
||||
$text .= "<div style='text-align:center; margin-left:auto; margin-right: auto;'>
|
||||
<form action='".e_SELF."' id='newsletterform' method='post'>
|
||||
<table style='".ADMIN_WIDTH."' class='fborder'>
|
||||
<tr>
|
||||
<td style='width:30%;' class='forumheader3'>".NLLAN_21."</td>
|
||||
<td style='width:70%' class='forumheader3'><input class='tbox' type='text' name='newsletter_title' size='60' value='$newsletter_title' maxlength='200' /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style='width:30%;' class='forumheader3'>".NLLAN_22."</td>
|
||||
<td style='width:70%' class='forumheader3'><textarea class='tbox' id='data' name='newsletter_text' cols='80' rows='10' style='width:95%'>$newsletter_text</textarea></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style='width:30%;' class='forumheader3'>".NLLAN_23."</td>
|
||||
<td style='width:70%' class='forumheader3'><textarea class='tbox' id='data' name='newsletter_header' cols='80' rows='5' style='width:95%'>$newsletter_header</textarea></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style='width:30%;' class='forumheader3'>".NLLAN_24."</td>
|
||||
<td style='width:70%' class='forumheader3'><textarea class='tbox' id='data' name='newsletter_footer' cols='80' rows='5' style='width:95%'>$newsletter_footer</textarea></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan='2' style='text-align:center' class='forumheader'>
|
||||
".
|
||||
($edit ? "<input class='button' type='submit' name='createNewsletter' value='".NLLAN_25."' />\n<input type='hidden' name='editid' value='$newsletter_id' />" : "<input class='button' type='submit' name='createNewsletter' value='".NLLAN_26."' />")."
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
</form>
|
||||
</div>
|
||||
";
|
||||
|
||||
$caption = ($edit ? NLLAN_25 : NLLAN_26);
|
||||
|
||||
$ns -> tablerender($caption, $text);
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
function createNewsletter()
|
||||
{
|
||||
global $sql, $tp;
|
||||
|
||||
$newsletter_title = $tp -> toDB($_POST['newsletter_title']);
|
||||
$newsletter_text = $tp -> toDB($_POST['newsletter_text']);
|
||||
$newsletter_header = $tp -> toDB($_POST['newsletter_header']);
|
||||
$newsletter_footer = $tp -> toDB($_POST['newsletter_footer']);
|
||||
|
||||
if(isset($_POST['editid']))
|
||||
{
|
||||
$sql -> db_Update("newsletter", "newsletter_title='$newsletter_title', newsletter_text='$newsletter_text', newsletter_header='$newsletter_header', newsletter_footer='$newsletter_footer' WHERE newsletter_id='".$_POST['editid']."' ");
|
||||
$this -> message = NLLAN_27;
|
||||
}
|
||||
else
|
||||
{
|
||||
$sql -> db_Insert("newsletter", "0, '".time()."', '$newsletter_title', '$newsletter_text', '$newsletter_header', '$newsletter_footer', '', '0', '0', '0' ");
|
||||
$this -> message = NLLAN_28;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function makeNewsletter($edit=FALSE)
|
||||
{
|
||||
|
||||
global $sql, $ns, $tp;
|
||||
|
||||
if($edit)
|
||||
{
|
||||
extract($edit);
|
||||
$newsletter_title = $tp -> toFORM($newsletter_title);
|
||||
$newsletter_text = $tp -> toFORM($newsletter_text);
|
||||
}
|
||||
|
||||
if(!$sql -> db_Select("newsletter", "*", "newsletter_parent='0' "))
|
||||
{
|
||||
$this -> message = NLLAN_29;
|
||||
return;
|
||||
}
|
||||
|
||||
$nlArray = $sql -> db_getList();
|
||||
|
||||
$text .= "<div style='text-align:center; margin-left:auto; margin-right: auto;'>
|
||||
<form action='".e_SELF."' id='newsletterform' method='post'>
|
||||
<table style='".ADMIN_WIDTH."' class='fborder'>
|
||||
|
||||
<tr>
|
||||
<td style='width:30%;' class='forumheader3'>".NLLAN_30."</td>
|
||||
<td style='width:70%' class='forumheader3'>
|
||||
|
||||
<select name='newsletter_parent' class='tbox'>
|
||||
";
|
||||
|
||||
foreach($nlArray as $nl)
|
||||
{
|
||||
$text .= "<option value='".$nl['newsletter_id']."'>".$nl['newsletter_title']."</option>\n";
|
||||
}
|
||||
|
||||
$text .= "</select>
|
||||
|
||||
<tr>
|
||||
<td style='width:30%;' class='forumheader3'>".NLLAN_31."</td>
|
||||
<td style='width:70%' class='forumheader3'><input class='tbox' type='text' name='newsletter_title' size='60' value='$newsletter_title' maxlength='200' /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style='width:30%;' class='forumheader3'>".NLLAN_32."</td>
|
||||
<td style='width:70%' class='forumheader3'><input class='tbox' type='text' name='newsletter_issue' size='10' value='$newsletter_issue' maxlength='200' /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style='width:30%;' class='forumheader3'>".NLLAN_33."</td>
|
||||
<td style='width:70%' class='forumheader3'><textarea class='tbox' id='data' name='newsletter_text' cols='80' rows='10' style='width:95%'>$newsletter_text</textarea></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan='2' style='text-align:center' class='forumheader'>
|
||||
".
|
||||
($edit ? "<input class='button' type='submit' name='createIssue' value='".NLLAN_34."' />\n<input type='hidden' name='editid' value='$newsletter_id' />" : "<input class='button' type='submit' name='createIssue' value='".NLLAN_35."' />")."
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</div>
|
||||
";
|
||||
|
||||
$caption = ($edit ? NLLAN_36 : NLLAN_37);
|
||||
|
||||
$ns -> tablerender($caption, $text);
|
||||
}
|
||||
|
||||
|
||||
function createIssue()
|
||||
{
|
||||
global $sql, $tp;
|
||||
$newsletter_title = $tp -> toDB($_POST['newsletter_title']);
|
||||
$newsletter_text = $tp -> toDB($_POST['newsletter_text']);
|
||||
|
||||
if(isset($_POST['editid']))
|
||||
{
|
||||
$sql -> db_Update("newsletter", "newsletter_title='$newsletter_title', newsletter_text='$newsletter_text', newsletter_parent='".$_POST['newsletter_parent']."', newsletter_issue='".$_POST['newsletter_issue']."' WHERE newsletter_id='".$_POST['editid']."' ");
|
||||
$this -> message = NLLAN_38;
|
||||
}
|
||||
else
|
||||
{
|
||||
$sql -> db_Insert("newsletter", "0, '".time()."', '$newsletter_title', '$newsletter_text', '', '', '', '".$_POST['newsletter_parent']."', '0', '".$_POST['newsletter_issue']."' ");
|
||||
$this -> message = NLLAN_39;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function releaseIssue($issue)
|
||||
{
|
||||
|
||||
global $pref, $sql, $ns, $tp, $THEMES_DIRECTORY;
|
||||
|
||||
$issue = str_replace("nlmailnow_", "", $issue);
|
||||
|
||||
if(!$sql -> db_Select("newsletter", "*", "newsletter_id='$issue' "))
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
$newsletterInfo = $sql -> db_Fetch();
|
||||
|
||||
if(!$sql -> db_Select("newsletter", "*", "newsletter_id='".$newsletterInfo['newsletter_parent']."' "))
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
$newsletterParentInfo = $sql -> db_Fetch();
|
||||
$memberArray = explode(chr(1), $newsletterParentInfo['newsletter_subscribers']);
|
||||
|
||||
require(e_HANDLER."phpmailer/class.phpmailer.php");
|
||||
|
||||
$mail = new PHPMailer();
|
||||
|
||||
$mail->From = $pref['siteadminemail'];
|
||||
$mail->FromName = $pref['siteadmin'];
|
||||
if ($pref['mailer'] == "smtp")
|
||||
{
|
||||
$mail->Mailer = "smtp";
|
||||
$mail->SMTPKeepAlive = TRUE;
|
||||
$mail->SMTPAuth = TRUE;
|
||||
$mail->Username = $pref['smtp_username'];
|
||||
$mail->Password = $pref['smtp_password'];
|
||||
$mail->Host = $pref['smtp_server'];
|
||||
}
|
||||
else
|
||||
{
|
||||
$mail->Mailer = "mail";
|
||||
}
|
||||
|
||||
$mail->WordWrap = 50;
|
||||
$mail->Charset = CHARSET;
|
||||
$mail->Subject = $newsletterParentInfo['newsletter_title'] . ": ".$newsletterInfo['newsletter_title'];
|
||||
$mail->IsHTML(true);
|
||||
|
||||
// ============================ Render Results and Mailit =========
|
||||
|
||||
$message_subject = stripslashes($tp -> toHTML($mail->Subject));
|
||||
$message_body = stripslashes($tp -> toHTML($mail->Subject, TRUE));
|
||||
$message_body = str_replace(""", '"', $tp -> toHTML($newsletterInfo['newsletter_text'], TRUE));
|
||||
$message_body = str_replace('src="', 'src="'.SITEURL, $message_body);
|
||||
|
||||
$newsletter_header = $tp -> toHTML($newsletterParentInfo['newsletter_header'], TRUE);
|
||||
$newsletter_footer = $tp -> toHTML($newsletterParentInfo['newsletter_footer'], TRUE);
|
||||
|
||||
|
||||
$theme = $THEMES_DIRECTORY.$pref['sitetheme']."/";
|
||||
$mail_style = "<link rel=\"stylesheet\" href=\"".SITEURL.$theme."style.css\" type=\"text/css\" />";
|
||||
$mail_style .= "<div style='width:100%'>";
|
||||
$mail_style .= "<div style='width:90%; padding-top:10px'>";
|
||||
$mail_style .= "<div class='fcaption'><b>$message_subject<br />[ ".NLLAN_12." ".$newsletterInfo['newsletter_issue']." ]</b></div><br /><br />";
|
||||
$mail_style .= "<div class='forumheader3'>";
|
||||
$message_body = $mail_style.$newsletter_header."<hr />".$message_body."<br><br><hr />".$newsletter_footer."<br></div></div>";
|
||||
|
||||
$message_body = str_replace("\n", "<br>", $message_body);
|
||||
|
||||
$mail->Body = $tp->toHTML($message_body, TRUE);
|
||||
$mail->AltBody = strip_tags(str_replace("<br>", "\n", $message_body));
|
||||
|
||||
$sent_counter = 0;
|
||||
|
||||
foreach($memberArray as $memberID)
|
||||
{
|
||||
if($memberID)
|
||||
{
|
||||
if($sql -> db_Select("user", "user_name, user_email", "user_id='$memberID' "))
|
||||
{
|
||||
$row = $sql -> db_Fetch();
|
||||
$mname = $row['user_name'];
|
||||
$memail = $row['user_email'];
|
||||
}
|
||||
|
||||
$mail->AddAddress($memail, $mname);
|
||||
|
||||
echo "<b>".NLLAN_54."</b> ".$mname." ( ".$memail." ) <br />";
|
||||
|
||||
$mail->Send();
|
||||
$sent_counter ++;
|
||||
|
||||
$mail->ClearAddresses();
|
||||
if ($pref['mailer'] == "smtp") {
|
||||
$mail->SmtpClose();
|
||||
}
|
||||
}
|
||||
}
|
||||
$sql -> db_Update("newsletter", "newsletter_flag='1' WHERE newsletter_id='$issue' ");
|
||||
$this -> message = NLLAN_40.$sent_counter.NLLAN_41;
|
||||
}
|
||||
|
||||
|
||||
|
||||
function editNewsletter()
|
||||
{
|
||||
global $id, $sql;
|
||||
|
||||
if($sql -> db_Select("newsletter", "*", "newsletter_id='$id' "))
|
||||
{
|
||||
$foo = $sql -> db_Fetch();
|
||||
if(!$foo['newsletter_parent'])
|
||||
{
|
||||
$this -> defineNewsletter($foo);
|
||||
}
|
||||
else
|
||||
{
|
||||
$this -> makeNewsletter($foo);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function deleteNewsletter()
|
||||
{
|
||||
global $sql;
|
||||
$tmp = each($_POST['delete']);
|
||||
if(strstr($tmp['key'], "newsletter"))
|
||||
{
|
||||
$id = str_replace("newsletter_", "", $tmp['key']);
|
||||
$sql -> db_Delete("newsletter", "newsletter_id='$id' ");
|
||||
$this -> message = NLLAN_42;
|
||||
}
|
||||
else
|
||||
{
|
||||
$id = str_replace("issue_", "", $tmp['key']);
|
||||
$sql -> db_Delete("newsletter", "newsletter_id='$id' ");
|
||||
$this -> message = NLLAN_43;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
function show_options($action)
|
||||
{
|
||||
global $sql;
|
||||
if ($action == "")
|
||||
{
|
||||
$action = "main";
|
||||
}
|
||||
// ##### Display options ---------------------------------------------------------------------------------------------------------
|
||||
|
||||
$var['main']['text'] = NLLAN_44;
|
||||
$var['main']['link'] = e_SELF;
|
||||
|
||||
$var['define']['text'] = NLLAN_45;
|
||||
$var['define']['link'] = e_SELF."?define";
|
||||
|
||||
$var['make']['text'] = NLLAN_46;
|
||||
$var['make']['link'] = e_SELF."?make";
|
||||
|
||||
show_admin_menu(NLLAN_47, $action, $var);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
require_once(e_ADMIN."footer.php");
|
||||
|
||||
|
||||
function admin_config_adminmenu()
|
||||
{
|
||||
global $nl;
|
||||
global $action;
|
||||
$nl->show_options($action);
|
||||
}
|
||||
|
||||
|
||||
?>
|
BIN
e107_plugins/newsletter/images/nl_16.png
Normal file
BIN
e107_plugins/newsletter/images/nl_16.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1000 B |
BIN
e107_plugins/newsletter/images/nl_32.png
Normal file
BIN
e107_plugins/newsletter/images/nl_32.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.3 KiB |
86
e107_plugins/newsletter/languages/English.php
Normal file
86
e107_plugins/newsletter/languages/English.php
Normal file
@@ -0,0 +1,86 @@
|
||||
<?php
|
||||
/*
|
||||
+ ----------------------------------------------------------------------------+
|
||||
| e107 website system
|
||||
|
|
||||
| <20>Steve Dunstan 2001-2002
|
||||
| http://e107.org
|
||||
| jalist@e107.org
|
||||
|
|
||||
| Released under the terms and conditions of the
|
||||
| GNU General Public License (http://gnu.org).
|
||||
|
|
||||
| $Source: /cvs_backup/e107_0.8/e107_plugins/newsletter/languages/English.php,v $
|
||||
| $Revision: 1.1.1.1 $
|
||||
| $Date: 2006-12-02 04:35:32 $
|
||||
| $Author: mcfly_e107 $
|
||||
+----------------------------------------------------------------------------+
|
||||
*/
|
||||
|
||||
define("NLLAN_MENU_CAPTION", "Newsletter");
|
||||
|
||||
define("NLLAN_01", "Newsletter");
|
||||
define("NLLAN_02", "Provides a quick and easy way to configure and send newsletters");
|
||||
define("NLLAN_03", "Configure Newsletters");
|
||||
define("NLLAN_04", "The newsletter plugin has been successfully installed. To configure, return to your main admin page and click on 'Newsletter' in the plugin section.");
|
||||
define("NLLAN_05", "No newsletters defined yet");
|
||||
|
||||
define("NLLAN_06", "Name");
|
||||
define("NLLAN_07", "Subscribers");
|
||||
define("NLLAN_08", "Options");
|
||||
define("NLLAN_09", "Are you sure you want to delete this newsletter?");
|
||||
define("NLLAN_10", "Existing Newsletters");
|
||||
|
||||
define("NLLAN_11", "No newsletter issues yet");
|
||||
define("NLLAN_12", "Issue");
|
||||
define("NLLAN_13", "[ Parent ID ] Subject/Title");
|
||||
define("NLLAN_14", "Mailed?");
|
||||
define("NLLAN_15", "Options");
|
||||
define("NLLAN_16", "yes");
|
||||
define("NLLAN_17", "Not sent out - click to send");
|
||||
define("NLLAN_18", "Are you sure you want to mail this issue to subscribers?");
|
||||
define("NLLAN_19", "Are you sure you want to delete this newsletter issue?");
|
||||
define("NLLAN_20", "Existing Issues");
|
||||
define("NLLAN_21", "Title");
|
||||
define("NLLAN_22", "Description");
|
||||
define("NLLAN_23", "Header");
|
||||
define("NLLAN_24", "Footer");
|
||||
define("NLLAN_25", "Update Newsletter");
|
||||
define("NLLAN_26", "Create Newsletter");
|
||||
define("NLLAN_27", "Newsletter updated in database.");
|
||||
define("NLLAN_28", "Newsletter defined and saved in database.");
|
||||
define("NLLAN_29", "No newsletters defined yet.");
|
||||
define("NLLAN_30", "Newsletter");
|
||||
define("NLLAN_31", "Subject / Title");
|
||||
define("NLLAN_32", "Issue Number");
|
||||
define("NLLAN_33", "Text");
|
||||
define("NLLAN_34", "Update Mailing");
|
||||
define("NLLAN_35", "Create Mailing");
|
||||
define("NLLAN_36", "Update Newsletter Issue");
|
||||
define("NLLAN_37", "Create Newsletter Issue");
|
||||
define("NLLAN_38", "Newsletter updated in database.");
|
||||
define("NLLAN_39", "Newsletter issue saved in database - to send out, click the 'Release Issue' button in the Options menu.");
|
||||
define("NLLAN_40", "Mailout completed - issue sent to ");
|
||||
|
||||
define("NLLAN_41", " subscriber(s).");
|
||||
define("NLLAN_42", "Newsletter deleted.");
|
||||
define("NLLAN_43", "Newsletter issue deleted.");
|
||||
|
||||
define("NLLAN_44", "Newsletter Front Page");
|
||||
define("NLLAN_45", "Create Newsletter");
|
||||
define("NLLAN_46", "Create mailing");
|
||||
define("NLLAN_47", "Newsletter Options");
|
||||
|
||||
define("NLLAN_48", "you are subscribed to this newsletter - if you wish to unsubscribe please click the button below.");
|
||||
define("NLLAN_49", "Are you sure you want to un-subscribe from this newsletter?");
|
||||
define("NLLAN_50", "Click button to subscribe ( your subscription address is");
|
||||
define("NLLAN_51", "Unsubscribe");
|
||||
define("NLLAN_52", "Subscribe");
|
||||
define("NLLAN_53", "Are you sure you want to subscribe to this newsletter?");
|
||||
|
||||
define("NLLAN_54", "Sending");
|
||||
|
||||
|
||||
|
||||
|
||||
?>
|
91
e107_plugins/newsletter/newsletter_menu.php
Normal file
91
e107_plugins/newsletter/newsletter_menu.php
Normal file
@@ -0,0 +1,91 @@
|
||||
<?php
|
||||
/*
|
||||
+ ----------------------------------------------------------------------------+
|
||||
| e107 website system
|
||||
|
|
||||
| <20>Steve Dunstan 2001-2002
|
||||
| http://e107.org
|
||||
| jalist@e107.org
|
||||
|
|
||||
| Released under the terms and conditions of the
|
||||
| GNU General Public License (http://gnu.org).
|
||||
|
|
||||
| $Source: /cvs_backup/e107_0.8/e107_plugins/newsletter/newsletter_menu.php,v $
|
||||
| $Revision: 1.1.1.1 $
|
||||
| $Date: 2006-12-02 04:35:32 $
|
||||
| $Author: mcfly_e107 $
|
||||
+----------------------------------------------------------------------------+
|
||||
*/
|
||||
|
||||
if (!defined('e107_INIT')) { exit; }
|
||||
|
||||
if(!USER || !$sql -> db_Select("newsletter", "*", "newsletter_parent='0' "))
|
||||
{
|
||||
// no newsletters defined yet //
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
$newsletterArray = $sql -> db_getList();
|
||||
$requery = false;
|
||||
|
||||
foreach($_POST as $key => $value)
|
||||
{
|
||||
if(strstr($key, "nlUnsubscribe_"))
|
||||
{
|
||||
$subid = str_replace("nlUnsubscribe_", "", $key);
|
||||
$newsletterArray[$subid]['newsletter_subscribers'] = str_replace(chr(1).USERID, "", $newsletterArray[$subid]['newsletter_subscribers']);
|
||||
$sql -> db_Update("newsletter", "newsletter_subscribers='".$newsletterArray[$subid]['newsletter_subscribers']."' WHERE newsletter_id='".intval($subid)."' ");
|
||||
$requery = true;
|
||||
}
|
||||
else if(strstr($key, "nlSubscribe_"))
|
||||
{
|
||||
$subid = str_replace("nlSubscribe_", "", $key);
|
||||
$newsletterArray[$subid]['newsletter_subscribers'] .= chr(1).USERID;
|
||||
$sql -> db_Update("newsletter", "newsletter_subscribers='".$newsletterArray[$subid]['newsletter_subscribers']."' WHERE newsletter_id='".intval($subid)."' ");
|
||||
$requery = true;
|
||||
}
|
||||
}
|
||||
|
||||
global $tp;
|
||||
|
||||
if($requery)
|
||||
{
|
||||
if($sql -> db_Select("newsletter", "*", "newsletter_parent='0' "))
|
||||
{
|
||||
$newsletterArray = $sql -> db_getList();
|
||||
}
|
||||
}
|
||||
|
||||
$text = "";
|
||||
foreach($newsletterArray as $nl)
|
||||
{
|
||||
$text .= "<div style='text-align: center; margin-left: auto; margin-right: auto;'>
|
||||
<form method='post' action='".e_SELF."'>
|
||||
<b>".
|
||||
$tp -> toHTML($nl['newsletter_title'], TRUE)."</b><br />
|
||||
<span class='smalltext'>".
|
||||
$tp -> toHTML($nl['newsletter_text'], TRUE)."</span><br /><br />
|
||||
";
|
||||
|
||||
if(preg_match("#".chr(1).USERID."(".chr(1)."|$)#si", $nl['newsletter_subscribers']))
|
||||
{
|
||||
$text .= NLLAN_48."<br /><br />
|
||||
<input class='button' type='submit' name='nlUnsubscribe_".$nl['newsletter_id']."' value='".NLLAN_51."' onclick=\"return jsconfirm('".$tp->toJS(NLLAN_49)."') \" />
|
||||
";
|
||||
}
|
||||
else
|
||||
{
|
||||
$text .= NLLAN_50." <b>".USEREMAIL."</b> ) ...<br /><br />
|
||||
<input class='button' type='submit' name='nlSubscribe_".$nl['newsletter_id']."' value='".NLLAN_52."' onclick=\"return jsconfirm('".$tp->toJS(NLLAN_53)."') \" />
|
||||
";
|
||||
}
|
||||
$text .= "</form>
|
||||
</div>
|
||||
<br />
|
||||
";
|
||||
}
|
||||
|
||||
$ns -> tablerender(NLLAN_MENU_CAPTION, $text);
|
||||
|
||||
|
||||
?>
|
81
e107_plugins/newsletter/plugin.php
Normal file
81
e107_plugins/newsletter/plugin.php
Normal file
@@ -0,0 +1,81 @@
|
||||
<?php
|
||||
/*
|
||||
+ ----------------------------------------------------------------------------+
|
||||
| e107 website system
|
||||
|
|
||||
| <20>Steve Dunstan 2001-2002
|
||||
| http://e107.org
|
||||
| jalist@e107.org
|
||||
|
|
||||
| Released under the terms and conditions of the
|
||||
| GNU General Public License (http://gnu.org).
|
||||
|
|
||||
| $Source: /cvs_backup/e107_0.8/e107_plugins/newsletter/plugin.php,v $
|
||||
| $Revision: 1.1.1.1 $
|
||||
| $Date: 2006-12-02 04:35:32 $
|
||||
| $Author: mcfly_e107 $
|
||||
+----------------------------------------------------------------------------+
|
||||
*/
|
||||
|
||||
if (!defined('e107_INIT')) { exit; }
|
||||
|
||||
@include_once(e_PLUGIN."newsletter/languages/".e_LANGUAGE.".php");
|
||||
@include_once(e_PLUGIN."newsletter/languages/English.php");
|
||||
|
||||
// Plugin info -------------------------------------------------------------------------------------------------------
|
||||
$eplug_name = "NLLAN_01";
|
||||
$eplug_version = "1.0";
|
||||
$eplug_author = "Steve Dunstan (jalist)";
|
||||
$eplug_url = "http://e107.org";
|
||||
$eplug_email = "jalist@e107.org";
|
||||
$eplug_description = NLLAN_02;
|
||||
$eplug_compatible = "e107v0.7+";
|
||||
$eplug_readme = "";
|
||||
|
||||
// Name of the plugin's folder -------------------------------------------------------------------------------------
|
||||
$eplug_folder = "newsletter";
|
||||
|
||||
// Name of menu item for plugin ----------------------------------------------------------------------------------
|
||||
$eplug_menu_name = "newsletter_menu";
|
||||
|
||||
// Name of the admin configuration file --------------------------------------------------------------------------
|
||||
$eplug_conffile = "admin_config.php";
|
||||
|
||||
// Icon image and caption text ------------------------------------------------------------------------------------
|
||||
$eplug_icon = $eplug_folder."/images/nl_32.png";
|
||||
$eplug_icon_small = $eplug_folder."/images/nl_16.png";
|
||||
$eplug_caption = NLLAN_03;
|
||||
|
||||
// List of preferences -----------------------------------------------------------------------------------------------
|
||||
$eplug_prefs = array();
|
||||
|
||||
// List of table names -----------------------------------------------------------------------------------------------
|
||||
$eplug_table_names = array("newsletter");
|
||||
|
||||
// List of sql requests to create tables -----------------------------------------------------------------------------
|
||||
$eplug_tables = array(
|
||||
|
||||
"CREATE TABLE ".MPREFIX."newsletter (
|
||||
newsletter_id int(10) unsigned NOT NULL auto_increment,
|
||||
newsletter_datestamp int(10) unsigned NOT NULL,
|
||||
newsletter_title varchar(200) NOT NULL,
|
||||
newsletter_text text NOT NULL,
|
||||
newsletter_header text NOT NULL,
|
||||
newsletter_footer text NOT NULL,
|
||||
newsletter_subscribers text NOT NULL,
|
||||
newsletter_parent int(11) NOT NULL,
|
||||
newsletter_flag tinyint(4) NOT NULL,
|
||||
newsletter_issue varchar(100) NOT NULL,
|
||||
PRIMARY KEY (newsletter_id)
|
||||
) TYPE=MyISAM;");
|
||||
|
||||
|
||||
// Create a link in main menu (yes=TRUE, no=FALSE) -------------------------------------------------------------
|
||||
$eplug_link = FALSE;
|
||||
$eplug_link_name = "";
|
||||
$eplug_link_url = "";
|
||||
|
||||
// Text to display after plugin successfully installed ------------------------------------------------------------------
|
||||
$eplug_done = NLLAN_04;
|
||||
|
||||
?>
|
Reference in New Issue
Block a user