mirror of
https://github.com/e107inc/e107.git
synced 2025-08-19 12:51:52 +02:00
Latest mailer updates - primarily use new features in newsletter and notify. Also newsletter enhancements; thanks nlstart
This commit is contained in:
@@ -6,40 +6,56 @@
|
||||
* Released under the terms and conditions of the
|
||||
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt)
|
||||
*
|
||||
*
|
||||
* Administration - Site Maintenance
|
||||
*
|
||||
* $Source: /cvs_backup/e107_0.8/e107_plugins/newsletter/newsletter_menu.php,v $
|
||||
* $Revision: 1.3 $
|
||||
* $Date: 2009-11-18 01:05:53 $
|
||||
* $Author: e107coders $
|
||||
*/
|
||||
* $Revision: 1.4 $
|
||||
* $Date: 2009-11-19 20:24:21 $
|
||||
* $Author: e107steved $
|
||||
*
|
||||
*/
|
||||
|
||||
if (!defined('e107_INIT')) { exit; }
|
||||
|
||||
if(!USER || !$sql -> db_Select("newsletter", "*", "newsletter_parent='0' "))
|
||||
if (!$e107->isInstalled('newsletter'))
|
||||
{
|
||||
// no newsletters defined yet //
|
||||
return;
|
||||
}
|
||||
|
||||
if(!USER || !$sql -> db_Select('newsletter', '*', "newsletter_parent='0'"))
|
||||
{ // no newsletters defined yet
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
$newsletterArray = $sql -> db_getList();
|
||||
$requery = false;
|
||||
include_lan(e_PLUGIN.'newsletter/languages/'.e_LANGUAGE.'.php');
|
||||
|
||||
foreach($_POST as $key => $value)
|
||||
{
|
||||
if(strstr($key, "nlUnsubscribe_"))
|
||||
if(strpos($key, 'nlUnsubscribe_') === 0)
|
||||
{
|
||||
$subid = str_replace("nlUnsubscribe_", "", $key);
|
||||
$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)."' ");
|
||||
$sql -> db_Update('newsletter', "newsletter_subscribers='".$newsletterArray[$subid]['newsletter_subscribers']."' WHERE newsletter_id='".intval($subid)."' ");
|
||||
$requery = true;
|
||||
}
|
||||
else if(strstr($key, "nlSubscribe_"))
|
||||
else if(strpos($key, 'nlSubscribe_') === 0)
|
||||
{
|
||||
$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;
|
||||
$nl_subscriber_array = $newsletterArray[$subid]['newsletter_subscribers'];
|
||||
if (!array_key_exists(USERID, $nl_subscriber_array))
|
||||
{ // prevent double entry of same user id
|
||||
$newsletterArray[$subid]['newsletter_subscribers'] .= chr(1).USERID;
|
||||
$subscribers_list = array_flip(explode(chr(1), $newsletterArray[$subid]['newsletter_subscribers']));
|
||||
sort($subscribers_list);
|
||||
$new_subscriber_list = implode(chr(1), array_keys($subscribers_list));
|
||||
if (substr($new_subscriber_list, 0, 1) == '0')
|
||||
{ // remove the possible zero caused by function array_flip
|
||||
$new_subscriber_list = substr($new_subscriber_list, 1);
|
||||
}
|
||||
$sql -> db_Update('newsletter', "newsletter_subscribers='".$new_subscriber_list."' WHERE newsletter_id='".intval($subid)."' ");
|
||||
$requery = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -47,13 +63,13 @@ global $tp;
|
||||
|
||||
if($requery)
|
||||
{
|
||||
if($sql -> db_Select("newsletter", "*", "newsletter_parent='0' "))
|
||||
if($sql -> db_Select('newsletter', '*', "newsletter_parent='0' "))
|
||||
{
|
||||
$newsletterArray = $sql -> db_getList();
|
||||
}
|
||||
}
|
||||
|
||||
$text = "";
|
||||
$text = '';
|
||||
foreach($newsletterArray as $nl)
|
||||
{
|
||||
$text .= "<div style='text-align: center; margin-left: auto; margin-right: auto;'>
|
||||
@@ -72,10 +88,15 @@ foreach($newsletterArray as $nl)
|
||||
}
|
||||
else
|
||||
{
|
||||
$text .= NLLAN_50." <b>".USEREMAIL."</b> ) ...<br /><br />
|
||||
$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)."') \" />
|
||||
";
|
||||
}
|
||||
$nl_count = $sql -> db_Count('newsletter', "(*)", "WHERE newsletter_parent='".$nl['newsletter_id']."' AND newsletter_flag='1'");
|
||||
if($nl_count > 0 && USER)
|
||||
{ // display issued newsletters
|
||||
$text .= "<br /><a href='".e_PLUGIN."newsletter/nl_archive.php?show.".$nl['newsletter_id']."' alt='".NLLAN_72."' title='".NLLAN_72."'>".NLLAN_72."</a><br/><br/>";
|
||||
}
|
||||
$text .= "</form>
|
||||
</div>
|
||||
<br />
|
||||
@@ -83,6 +104,4 @@ foreach($newsletterArray as $nl)
|
||||
}
|
||||
|
||||
$ns -> tablerender(NLLAN_MENU_CAPTION, $text);
|
||||
|
||||
|
||||
?>
|
Reference in New Issue
Block a user