Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

How the newsletter works?


doctorTheo

Recommended Posts

Posted

Hi

 

In my admin part under "tools" There is a link to the newsletter manager, when I click on I get a page with headings and only 3 buttons (view,lock,new newsletter), from there I can create a newsletter but.... then I only have the option to save or cancel it.

 

How do I send my newsletter ? On the main newsletter page under the heading "send" all test newsletter I created are selected as if I did send them.

 

How do I get rid of misc. test newsletters I created which are now listed on my page? I do not have a button "delete" or something similar.

 

How do I manage my newsletters?

 

In other words: how does it work? I am using the regular newsletter module which come with the script.

 

Thanks

 

Theo

MS2

  • 9 months later...
Posted

Other than in the database, is there a quick and or easy way to remove an existing Test Newslatter from the Newsletter Manager?

 

I put one in to test the function and now I want to get rid of it and try one that might work? The first one didn't. :-"

 

2.2

Posted

Never mind, :rolleyes:

 

I did it in SQL Admin, it took a bit to figure it out but now I can play with format and try some options without cluttering things up :blush:

Posted

There are a couple newsletter contributions that add more functions to the module so if it something that you will be using a lot you might want to look at them.

The Knowledge Base is a wonderful thing.

Do you have a problem? Have you checked out Common Problems?

There are many very useful osC Contributions

Are you having trouble with a installed contribution? Have you checked out the support thread found Here

BACKUP BACKUP BACKUP!!! You did backup, right??

Posted

ozcsys

 

Thanks,

 

I noticed those in the process. I was thinking of checking them out.

 

I don't understand why, if they are adding the Newsletter Manager to the admin panel, they would not include the ability to delete old newsletters. It seems to me that what happend to me would happen to a lot of people.

 

You create a newsletter. :)

It does not work. >_<

 

You don't know how to get rid of it! :angry:

 

It sits there for the life of the cart and because it didn't work the first time you forget about newsletters. :-"

 

I like the idea of newsletters and a good percentage of the customers that signed up for an account opted for the newsletter so I feel responsible to provide one. :blush:

 

Hopefully one day soon I will have the time to check out the contributions you mentioned and get something going. <_<

Posted

I'm using Newsletter manager as well and am preparing to send out my first newsletter. I've created a draft and saved it, however there doesn't seem to be any way to edit it prior to sending it. Am I missing something? Do I need to edit it offsite in Dreamweaver, for example, then paste it in as a new newsletter?

 

Also, are newsletters controlled by the same style classes in the stylesheet.css file? If so, how can I override these settings?

 

Thanks!

  • 1 month later...
Posted
ozcsys

 

Thanks,

 

I noticed those in the process. I was thinking of checking them out.

 

I don't understand why, if they are adding the Newsletter Manager to the admin panel, they would not include the ability to delete old newsletters. It seems to me that what happend to me would happen to a lot of people.

 

You create a newsletter.  :)

It does not work.  >_<

 

You don't know how to get rid of it!  :angry:

 

It sits there for the life of the cart and because it didn't work the first time you forget about newsletters.  :-"

 

I like the idea of newsletters and a good percentage of the customers that signed up for an account opted for the newsletter so I feel responsible to provide one.  :blush: 

 

Hopefully one day soon I will have the time to check out the contributions you mentioned and get something going.  <_<

 

 

 

If you press the lock button at one newsletter in the list, you will see there will appear a send button and a delete button.

Untill you find this out, like I did, you search till you wait a ounce.

I think the send and delete button should be visible in all cases but just protected by the lock/unlock mechanism.

Security by obscurity as it now is totally wrong, certainly in a open source project like this.

Posted
If you press the lock button at one newsletter in the list, you will see there will appear a send button and a delete button.

Untill you find this out, like I did, you search till you wait a ounce.

I think the send and delete button should be visible in all cases but just protected by the lock/unlock mechanism.

Security by obscurity as it now is totally wrong, certainly in a open source project like this.

 

<_<

Thanks for the tip Bassie, it never occurred to me to lock the newsletter. I just tried it and it worked fine. I already figured out where to eliminate it in the database but this works much better.

 

This bothers me to some degree. If the newsletter is going to be so poorly supported by the documentation then why have it in the current release? I looked in as many places as I could come up with on deleting newsletters and there is nothing listed. Hopefully having this topic will help some people in the future.

 

All the best to everyone in 2005 and beyond :thumbsup:

Posted

Thanks for the wishes,

I am working on my copy of osc for quite some time and added a lot of my own features so I know most of the software inside out.

Only recently I had to use the Newsletter option and like you I was curious on how to handle a crippled interface, so I looked on the source.

The person that decided to leave out buttons to keep people from invoking functions while the newsletter was unlocked made a gross UI error in my opinion.

A better way would have been to keep the buttons and give a error box when the send or delete is pushed on a locked newsletter.

When I will change my setup with that, then I will leave a copy of that in contributions.

I just don't know when to do that.

Posted

Here is a quick hack of the admin/newsletters.php

 

It contains a short reminder to push the lock button to get the send and delete buttons.

 

One remark: this script has all the links SSL enabled, if this is a problem which shouldn't be, replace all the ,'SSL' to ,'NOSSL' inside the tep_href_link() function calls.

 

<?php
/*
 $Id: newsletters.php,v 1.17 2003/06/29 22:50:52 hpdl Exp $

 osCommerce, Open Source E-Commerce Solutions
 http://www.oscommerce.com

 Copyright (c) 2003 osCommerce

 Released under the GNU General Public License
*/

 require('includes/application_top.php');

 $action = (isset($HTTP_GET_VARS['action']) ? $HTTP_GET_VARS['action'] : '');

 if (tep_not_null($action)) {
   switch ($action) {
     case 'lock':
     case 'unlock':
       $newsletter_id = tep_db_prepare_input($HTTP_GET_VARS['nID']);
       $status = (($action == 'lock') ? '1' : '0');

       tep_db_query("update " . TABLE_NEWSLETTERS . " set locked = '" . $status . "' where newsletters_id = '" . (int)$newsletter_id . "'");

       tep_redirect(tep_href_link(FILENAME_NEWSLETTERS, 'page=' . $HTTP_GET_VARS['page'] . '&nID=' . $HTTP_GET_VARS['nID'], 'SSL'));
       break;
     case 'insert':
     case 'update':
       if (isset($HTTP_POST_VARS['newsletter_id'])) $newsletter_id = tep_db_prepare_input($HTTP_POST_VARS['newsletter_id']);
       $newsletter_module = tep_db_prepare_input($HTTP_POST_VARS['module']);
       $title = tep_db_prepare_input($HTTP_POST_VARS['title']);
       $content = tep_db_prepare_input($HTTP_POST_VARS['content']);

       $newsletter_error = false;
       if (empty($title)) {
         $messageStack->add(ERROR_NEWSLETTER_TITLE, 'error');
         $newsletter_error = true;
       }

       if (empty($module)) {
         $messageStack->add(ERROR_NEWSLETTER_MODULE, 'error');
         $newsletter_error = true;
       }

       if ($newsletter_error == false) {
         $sql_data_array = array('title' => $title,
                                 'content' => $content,
                                 'module' => $newsletter_module);

         if ($action == 'insert') {
           $sql_data_array['date_added'] = 'now()';
           $sql_data_array['status'] = '0';
           $sql_data_array['locked'] = '0';

           tep_db_perform(TABLE_NEWSLETTERS, $sql_data_array);
           $newsletter_id = tep_db_insert_id();
         } elseif ($action == 'update') {
           tep_db_perform(TABLE_NEWSLETTERS, $sql_data_array, 'update', "newsletters_id = '" . (int)$newsletter_id . "'");
         }

         tep_redirect(tep_href_link(FILENAME_NEWSLETTERS, (isset($HTTP_GET_VARS['page']) ? 'page=' . $HTTP_GET_VARS['page'] . '&' : '') . 'nID=' . $newsletter_id, 'SSL'));
       } else {
         $action = 'new';
       }
       break;
     case 'deleteconfirm':
       $newsletter_id = tep_db_prepare_input($HTTP_GET_VARS['nID']);

       tep_db_query("delete from " . TABLE_NEWSLETTERS . " where newsletters_id = '" . (int)$newsletter_id . "'");

       tep_redirect(tep_href_link(FILENAME_NEWSLETTERS, 'page=' . $HTTP_GET_VARS['page'], 'SSL'));
       break;
     case 'delete':
     case 'new': if (!isset($HTTP_GET_VARS['nID'])) break;
     case 'send':
     case 'confirm_send':
       $newsletter_id = tep_db_prepare_input($HTTP_GET_VARS['nID']);

       $check_query = tep_db_query("select locked from " . TABLE_NEWSLETTERS . " where newsletters_id = '" . (int)$newsletter_id . "'");
       $check = tep_db_fetch_array($check_query);

       if ($check['locked'] < 1) {
         switch ($action) {
           case 'delete': $error = ERROR_REMOVE_UNLOCKED_NEWSLETTER; break;
           case 'new': $error = ERROR_EDIT_UNLOCKED_NEWSLETTER; break;
           case 'send': $error = ERROR_SEND_UNLOCKED_NEWSLETTER; break;
           case 'confirm_send': $error = ERROR_SEND_UNLOCKED_NEWSLETTER; break;
         }

         $messageStack->add_session($error, 'error');

         tep_redirect(tep_href_link(FILENAME_NEWSLETTERS, 'page=' . $HTTP_GET_VARS['page'] . '&nID=' . $HTTP_GET_VARS['nID'], 'SSL'));
       }
       break;
   }
 }
?>
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
<html <?php echo HTML_PARAMS; ?>>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">
<title><?php echo TITLE; ?></title>
<link rel="stylesheet" type="text/css" href="includes/stylesheet.css">
<script language="javascript" src="includes/general.js"></script>
</head>
<body marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0" bgcolor="#FFFFFF">
<div id="spiffycalendar" class="text"></div>
<!-- header //-->
<?php require(DIR_WS_INCLUDES . 'header.php'); ?>
<!-- header_eof //-->

<!-- body //-->
<table border="0" width="100%" cellspacing="2" cellpadding="2">
 <tr>
   <td width="<?php echo BOX_WIDTH; ?>" valign="top"><table border="0" width="<?php echo BOX_WIDTH; ?>" cellspacing="1" cellpadding="1" class="columnLeft">
<!-- left_navigation //-->
<?php require(DIR_WS_INCLUDES . 'column_left.php'); ?>
<!-- left_navigation_eof //-->
   </table></td>
<!-- body_text //-->
   <td width="100%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="2">
     <tr>
       <td><table border="0" width="100%" cellspacing="0" cellpadding="0">
         <tr>
           <td class="pageHeading"><?php echo HEADING_TITLE; ?></td>
           <td class="pageHeading" align="right"><?php echo tep_draw_separator('pixel_trans.gif', HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT); ?></td>
         </tr>
       </table></td>
     </tr>
<?php
 if ($action == 'new') {
   $form_action = 'insert';

   $parameters = array('title' => '',
                       'content' => '',
                       'module' => '');

   $nInfo = new objectInfo($parameters);

   if (isset($HTTP_GET_VARS['nID'])) {
     $form_action = 'update';

     $nID = tep_db_prepare_input($HTTP_GET_VARS['nID']);

     $newsletter_query = tep_db_query("select title, content, module from " . TABLE_NEWSLETTERS . " where newsletters_id = '" . (int)$nID . "'");
     $newsletter = tep_db_fetch_array($newsletter_query);

     $nInfo->objectInfo($newsletter);
   } elseif ($HTTP_POST_VARS) {
     $nInfo->objectInfo($HTTP_POST_VARS);
   }

   $file_extension = substr($PHP_SELF, strrpos($PHP_SELF, '.'));
   $directory_array = array();
   if ($dir = dir(DIR_WS_MODULES . 'newsletters/')) {
     while ($file = $dir->read()) {
       if (!is_dir(DIR_WS_MODULES . 'newsletters/' . $file)) {
         if (substr($file, strrpos($file, '.')) == $file_extension) {
           $directory_array[] = $file;
         }
       }
     }
     sort($directory_array);
     $dir->close();
   }

   for ($i=0, $n=sizeof($directory_array); $i<$n; $i++) {
     $modules_array[] = array('id' => substr($directory_array[$i], 0, strrpos($directory_array[$i], '.')), 'text' => substr($directory_array[$i], 0, strrpos($directory_array[$i], '.')));
   }
?>
     <tr>
       <td><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
     </tr>
     <tr><?php echo tep_draw_form('newsletter', FILENAME_NEWSLETTERS, (isset($HTTP_GET_VARS['page']) ? 'page=' . $HTTP_GET_VARS['page'] . '&' : '') . 'action=' . $form_action); if ($form_action == 'update') echo tep_draw_hidden_field('newsletter_id', $nID); ?>
       <td><table border="0" cellspacing="0" cellpadding="2">
         <tr>
           <td class="main"><?php echo TEXT_NEWSLETTER_MODULE; ?></td>
           <td class="main"><?php echo tep_draw_pull_down_menu('module', $modules_array, $nInfo->module); ?></td>
         </tr>
         <tr>
           <td colspan="2"><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
         </tr>
         <tr>
           <td class="main"><?php echo TEXT_NEWSLETTER_TITLE; ?></td>
           <td class="main"><?php echo tep_draw_input_field('title', $nInfo->title, '', true); ?></td>
         </tr>
         <tr>
           <td colspan="2"><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
         </tr>
         <tr>
           <td class="main" valign="top"><?php echo TEXT_NEWSLETTER_CONTENT; ?></td>
           <td class="main"><?php echo tep_draw_textarea_field('content', 'soft', '100%', '20', $nInfo->content); ?></td>
         </tr>
       </table></td>
     </tr>
     <tr>
       <td><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
     </tr>
     <tr>
       <td><table border="0" width="100%" cellspacing="0" cellpadding="2">
         <tr>
           <td class="main" align="right"><?php echo (($form_action == 'insert') ? tep_image_submit('button_save.gif', IMAGE_SAVE) : tep_image_submit('button_update.gif', IMAGE_UPDATE)). '  <a href="' . tep_href_link(FILENAME_NEWSLETTERS, (isset($HTTP_GET_VARS['page']) ? 'page=' . $HTTP_GET_VARS['page'] . '&' : '') . (isset($HTTP_GET_VARS['nID']) ? 'nID=' . $HTTP_GET_VARS['nID'] : ''), 'SSL') . '">' . tep_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>'; ?></td>
         </tr>
       </table></td>
     </form></tr>
<?php
 } elseif ($action == 'preview') {
   $nID = tep_db_prepare_input($HTTP_GET_VARS['nID']);

   $newsletter_query = tep_db_query("select title, content, module from " . TABLE_NEWSLETTERS . " where newsletters_id = '" . (int)$nID . "'");
   $newsletter = tep_db_fetch_array($newsletter_query);

   $nInfo = new objectInfo($newsletter);
?>
     <tr>
       <td align="right"><?php echo '<a href="' . tep_href_link(FILENAME_NEWSLETTERS, 'page=' . $HTTP_GET_VARS['page'] . '&nID=' . $HTTP_GET_VARS['nID'], 'SSL') . '">' . tep_image_button('button_back.gif', IMAGE_BACK) . '</a>'; ?></td>
     </tr>
     <tr>
       <td><tt><?php echo nl2br($nInfo->content); ?></tt></td>
     </tr>
     <tr>
       <td align="right"><?php echo '<a href="' . tep_href_link(FILENAME_NEWSLETTERS, 'page=' . $HTTP_GET_VARS['page'] . '&nID=' . $HTTP_GET_VARS['nID'], 'SSL') . '">' . tep_image_button('button_back.gif', IMAGE_BACK) . '</a>'; ?></td>
     </tr>
<?php
 } elseif ($action == 'send') {
   $nID = tep_db_prepare_input($HTTP_GET_VARS['nID']);

   $newsletter_query = tep_db_query("select title, content, module from " . TABLE_NEWSLETTERS . " where newsletters_id = '" . (int)$nID . "'");
   $newsletter = tep_db_fetch_array($newsletter_query);

   $nInfo = new objectInfo($newsletter);

   include(DIR_WS_LANGUAGES . $language . '/modules/newsletters/' . $nInfo->module . substr($PHP_SELF, strrpos($PHP_SELF, '.')));
   include(DIR_WS_MODULES . 'newsletters/' . $nInfo->module . substr($PHP_SELF, strrpos($PHP_SELF, '.')));
   $module_name = $nInfo->module;
   $module = new $module_name($nInfo->title, $nInfo->content);
?>
     <tr>
       <td><?php if ($module->show_choose_audience) { echo $module->choose_audience(); } else { echo $module->confirm(); } ?></td>
     </tr>
<?php
 } elseif ($action == 'confirm') {
   $nID = tep_db_prepare_input($HTTP_GET_VARS['nID']);

   $newsletter_query = tep_db_query("select title, content, module from " . TABLE_NEWSLETTERS . " where newsletters_id = '" . (int)$nID . "'");
   $newsletter = tep_db_fetch_array($newsletter_query);

   $nInfo = new objectInfo($newsletter);

   include(DIR_WS_LANGUAGES . $language . '/modules/newsletters/' . $nInfo->module . substr($PHP_SELF, strrpos($PHP_SELF, '.')));
   include(DIR_WS_MODULES . 'newsletters/' . $nInfo->module . substr($PHP_SELF, strrpos($PHP_SELF, '.')));
   $module_name = $nInfo->module;
   $module = new $module_name($nInfo->title, $nInfo->content);
?>
     <tr>
       <td><?php echo $module->confirm(); ?></td>
     </tr>
<?php
 } elseif ($action == 'confirm_send') {
   $nID = tep_db_prepare_input($HTTP_GET_VARS['nID']);

   $newsletter_query = tep_db_query("select newsletters_id, title, content, module from " . TABLE_NEWSLETTERS . " where newsletters_id = '" . (int)$nID . "'");
   $newsletter = tep_db_fetch_array($newsletter_query);

   $nInfo = new objectInfo($newsletter);

   include(DIR_WS_LANGUAGES . $language . '/modules/newsletters/' . $nInfo->module . substr($PHP_SELF, strrpos($PHP_SELF, '.')));
   include(DIR_WS_MODULES . 'newsletters/' . $nInfo->module . substr($PHP_SELF, strrpos($PHP_SELF, '.')));
   $module_name = $nInfo->module;
   $module = new $module_name($nInfo->title, $nInfo->content);
?>
     <tr>
       <td><table border="0" cellspacing="0" cellpadding="2">
         <tr>
           <td class="main" valign="middle"><?php echo tep_image(DIR_WS_IMAGES . 'ani_send_email.gif', IMAGE_ANI_SEND_EMAIL); ?></td>
           <td class="main" valign="middle"><b><?php echo TEXT_PLEASE_WAIT; ?></b></td>
         </tr>
       </table></td>
     </tr>
<?php
 tep_set_time_limit(0);
 flush();
 $module->send($nInfo->newsletters_id);
?>
     <tr>
       <td><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
     </tr>
     <tr>
       <td class="main"><font color="#ff0000"><b><?php echo TEXT_FINISHED_SENDING_EMAILS; ?></b></font></td>
     </tr>
     <tr>
       <td><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
     </tr>
     <tr>
       <td><?php echo '<a href="' . tep_href_link(FILENAME_NEWSLETTERS, 'page=' . $HTTP_GET_VARS['page'] . '&nID=' . $HTTP_GET_VARS['nID'], 'SSL') . '">' . tep_image_button('button_back.gif', IMAGE_BACK) . '</a>'; ?></td>
     </tr>
<?php
 } else {
?>
     <tr>
       <td><table border="0" width="100%" cellspacing="0" cellpadding="0">
         <tr>
           <td valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="2">
             <tr class="dataTableHeadingRow">
               <td class="dataTableHeadingContent"><?php echo TABLE_HEADING_NEWSLETTERS; ?></td>
               <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_SIZE; ?></td>
               <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_MODULE; ?></td>
               <td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_SENT; ?></td>
               <td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_STATUS; ?></td>
               <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_ACTION; ?> </td>
             </tr>
<?php
   $newsletters_query_raw = "select newsletters_id, title, length(content) as content_length, module, date_added, date_sent, status, locked from " . TABLE_NEWSLETTERS . " order by date_added desc";
   $newsletters_split = new splitPageResults($HTTP_GET_VARS['page'], MAX_DISPLAY_SEARCH_RESULTS, $newsletters_query_raw, $newsletters_query_numrows);
   $newsletters_query = tep_db_query($newsletters_query_raw);
   while ($newsletters = tep_db_fetch_array($newsletters_query)) {
   if ((!isset($HTTP_GET_VARS['nID']) || (isset($HTTP_GET_VARS['nID']) && ($HTTP_GET_VARS['nID'] == $newsletters['newsletters_id']))) && !isset($nInfo) && (substr($action, 0, 3) != 'new')) {
       $nInfo = new objectInfo($newsletters);
     }

     if (isset($nInfo) && is_object($nInfo) && ($newsletters['newsletters_id'] == $nInfo->newsletters_id) ) {
       echo '                  <tr id="defaultSelected" class="dataTableRowSelected" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="document.location.href=\'' . tep_href_link(FILENAME_NEWSLETTERS, 'page=' . $HTTP_GET_VARS['page'] . '&nID=' . $nInfo->newsletters_id . '&action=preview', 'SSL') . '\'">' . "\n";
     } else {
       echo '                  <tr class="dataTableRow" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="document.location.href=\'' . tep_href_link(FILENAME_NEWSLETTERS, 'page=' . $HTTP_GET_VARS['page'] . '&nID=' . $newsletters['newsletters_id'], 'SSL') . '\'">' . "\n";
     }
?>
               <td class="dataTableContent"><?php echo '<a href="' . tep_href_link(FILENAME_NEWSLETTERS, 'page=' . $HTTP_GET_VARS['page'] . '&nID=' . $newsletters['newsletters_id'] . '&action=preview', 'SSL') . '">' . tep_image(DIR_WS_ICONS . 'preview.gif', ICON_PREVIEW) . '</a> ' . $newsletters['title']; ?></td>
               <td class="dataTableContent" align="right"><?php echo number_format($newsletters['content_length']) . ' bytes'; ?></td>
               <td class="dataTableContent" align="right"><?php echo $newsletters['module']; ?></td>
               <td class="dataTableContent" align="center"><?php if ($newsletters['status'] == '1') { echo tep_image(DIR_WS_ICONS . 'tick.gif', ICON_TICK); } else { echo tep_image(DIR_WS_ICONS . 'cross.gif', ICON_CROSS); } ?></td>
               <td class="dataTableContent" align="center"><?php if ($newsletters['locked'] > 0) { echo tep_image(DIR_WS_ICONS . 'locked.gif', ICON_LOCKED); } else { echo tep_image(DIR_WS_ICONS . 'unlocked.gif', ICON_UNLOCKED); } ?></td>
               <td class="dataTableContent" align="right"><?php if (isset($nInfo) && is_object($nInfo) && ($newsletters['newsletters_id'] == $nInfo->newsletters_id) ) { echo tep_image(DIR_WS_IMAGES . 'icon_arrow_right.gif', ''); } else { echo '<a href="' . tep_href_link(FILENAME_NEWSLETTERS, 'page=' . $HTTP_GET_VARS['page'] . '&nID=' . $newsletters['newsletters_id'], 'SSL') . '">' . tep_image(DIR_WS_IMAGES . 'icon_info.gif', IMAGE_ICON_INFO) . '</a>'; } ?> </td>
             </tr>
<?php
   }
?>
             <tr>
               <td colspan="6"><table border="0" width="100%" cellspacing="0" cellpadding="2">
                 <tr>
                   <td class="smallText" valign="top"><?php echo $newsletters_split->display_count($newsletters_query_numrows, MAX_DISPLAY_SEARCH_RESULTS, $HTTP_GET_VARS['page'], TEXT_DISPLAY_NUMBER_OF_NEWSLETTERS); ?></td>
                   <td class="smallText" align="right"><?php echo $newsletters_split->display_links($newsletters_query_numrows, MAX_DISPLAY_SEARCH_RESULTS, MAX_DISPLAY_PAGE_LINKS, $HTTP_GET_VARS['page']); ?></td>
                 </tr>
                 <tr>
                   <td align="right" colspan="2"><?php echo '<a href="' . tep_href_link(FILENAME_NEWSLETTERS, 'action=new', 'SSL') . '">' . tep_image_button('button_new_newsletter.gif', IMAGE_NEW_NEWSLETTER) . '</a>'; ?></td>
                 </tr>
               </table></td>
             </tr>
           </table></td>
<?php
 $heading = array();
 $contents = array();

 switch ($action) {
   case 'delete':
     $heading[] = array('text' => '<b>' . $nInfo->title . '</b>');

     $contents = array('form' => tep_draw_form('newsletters', FILENAME_NEWSLETTERS, 'page=' . $HTTP_GET_VARS['page'] . '&nID=' . $nInfo->newsletters_id . '&action=deleteconfirm'));
     $contents[] = array('text' => TEXT_INFO_DELETE_INTRO);
     $contents[] = array('text' => '<br><b>' . $nInfo->title . '</b>');
     $contents[] = array('align' => 'center', 'text' => '<br>' . tep_image_submit('button_delete.gif', IMAGE_DELETE) . ' <a href="' . tep_href_link(FILENAME_NEWSLETTERS, 'page=' . $HTTP_GET_VARS['page'] . '&nID=' . $HTTP_GET_VARS['nID'], 'SSL') . '">' . tep_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>');
     break;
   default:
     if (is_object($nInfo)) {
       $heading[] = array('text' => '<b>' . $nInfo->title . '</b>');

       if ($nInfo->locked > 0) {
         $contents[] = array('align' => 'center', 'text' => '<a href="' . tep_href_link(FILENAME_NEWSLETTERS, 'page=' . $HTTP_GET_VARS['page'] . '&nID=' . $nInfo->newsletters_id . '&action=new', 'SSL') . '">' . tep_image_button('button_edit.gif', IMAGE_EDIT) . '</a> <a href="' . tep_href_link(FILENAME_NEWSLETTERS, 'page=' . $HTTP_GET_VARS['page'] . '&nID=' . $nInfo->newsletters_id . '&action=delete', 'SSL') . '">' . tep_image_button('button_delete.gif', IMAGE_DELETE) . '</a> <a href="' . tep_href_link(FILENAME_NEWSLETTERS, 'page=' . $HTTP_GET_VARS['page'] . '&nID=' . $nInfo->newsletters_id . '&action=preview', 'SSL') . '">' . tep_image_button('button_preview.gif', IMAGE_PREVIEW) . '</a> <a href="' . tep_href_link(FILENAME_NEWSLETTERS, 'page=' . $HTTP_GET_VARS['page'] . '&nID=' . $nInfo->newsletters_id . '&action=send', 'SSL') . '">' . tep_image_button('button_send.gif', IMAGE_SEND) . '</a> <a href="' . tep_href_link(FILENAME_NEWSLETTERS, 'page=' . $HTTP_GET_VARS['page'] . '&nID=' . $nInfo->newsletters_id . '&action=unlock', 'SSL') . '">' . tep_image_button('button_unlock.gif', IMAGE_UNLOCK) . '</a>');
       } else {
         $contents[] = array('align' => 'center', 'text' => '<a href="' . tep_href_link(FILENAME_NEWSLETTERS, 'page=' . $HTTP_GET_VARS['page'] . '&nID=' . $nInfo->newsletters_id . '&action=preview', 'SSL') . '">' . tep_image_button('button_preview.gif', IMAGE_PREVIEW) . '</a> <a href="' . tep_href_link(FILENAME_NEWSLETTERS, 'page=' . $HTTP_GET_VARS['page'] . '&nID=' . $nInfo->newsletters_id . '&action=lock', 'SSL') . '">' . tep_image_button('button_lock.gif', IMAGE_LOCK) . '</a>');
       }
       
       if ($nInfo->locked > 0) {
       
       } else {
      	 $contents[] = array('text' => '<br>Press "Lock" button to make the "Send" and "Delete" buttons appear.<br>');
       }
       
       $contents[] = array('text' => '<br>' . TEXT_NEWSLETTER_DATE_ADDED . ' ' . tep_date_short($nInfo->date_added));
       if ($nInfo->status == '1') $contents[] = array('text' => TEXT_NEWSLETTER_DATE_SENT . ' ' . tep_date_short($nInfo->date_sent));
     }
     break;
 }

 if ( (tep_not_null($heading)) && (tep_not_null($contents)) ) {
   echo '            <td width="25%" valign="top">' . "\n";

   $box = new box;
   echo $box->infoBox($heading, $contents);

   echo '            </td>' . "\n";
 }
?>
         </tr>
       </table></td>
     </tr>
<?php
 }
?>
   </table></td>
<!-- body_text_eof //-->
 </tr>
</table>
<!-- body_eof //-->

<!-- footer //-->
<?php require(DIR_WS_INCLUDES . 'footer.php'); ?>
<!-- footer_eof //-->
<br>
</body>
</html>
<?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>

  • 2 weeks later...
Posted

I have no problems in creating a newsletter, but does anyone know how long it might take to send it out to about 250 subscribers? I started sending and it was in progress for a long time (more than 20 minutes).... still did not finish. So I cancelled the process. Is it normal to take so much time or was something wrong?

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...