Voila un petit addon pour s'abbonner ou se desabonner de la newsletter via une box a doite
un nouveau fichier a enregistrer sous /includes/boxes/newsletter.php
CODE |
<?php
/*
$Id: newsletter.php,v 1.0 2003/06/21 18:31:00 Afid
osCommerce, Open Source E-Commerce Solutions
http://www.oscommerce.com
Copyright (c) 2003 osCommerce
Par Afid.b@free.fr
Released under the GNU General Public License
*/
?>
<!-- newsletter //-->
<tr>
<td>
<?php
require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_ACCOUNT_NEWSLETTERS);
$newsletter_query = tep_db_query("select customers_newsletter from " . TABLE_CUSTOMERS . " where customers_id = '" . (int)$customer_id . "'");
$newsletter = tep_db_fetch_array($newsletter_query);
if (isset($HTTP_POST_VARS['action']) && ($HTTP_POST_VARS['action'] == 'process')) {
if (isset($HTTP_POST_VARS['newsletter_general']) && is_numeric($HTTP_POST_VARS['newsletter_general'])) {
$newsletter_general = tep_db_prepare_input($HTTP_POST_VARS['newsletter_general']);
} else {
$newsletter_general = '0';
}
if ($newsletter_general != $newsletter['customers_newsletter']) {
$newsletter_general = (($newsletter['customers_newsletter'] == '1') ? '0' : '1');
tep_db_query("update " . TABLE_CUSTOMERS . " set customers_newsletter = '" . (int)$newsletter_general . "' where customers_id = '" . (int)$customer_id . "'");
}
$messageStack->add_session('account', SUCCESS_NEWSLETTER_UPDATED, 'success');
tep_redirect(tep_href_link(FILENAME_ACCOUNT, '', 'SSL'));
}
$breadcrumb->add(NAVBAR_TITLE_1, tep_href_link(FILENAME_ACCOUNT, '', 'SSL'));
$breadcrumb->add(NAVBAR_TITLE_2, tep_href_link(FILENAME_ACCOUNT_NEWSLETTERS, '', 'SSL'));
?>
<script language="javascript"><!--
function checkBox(object) {
document.account_newsletter.elements[object].checked = !document.account_newsletter.elements[object].checked;
}
//--></script>
<?php
$info_box_contents = array();
$info_box_contents[] = array('text' => MY_NEWSLETTERS_TITLE);
new infoBoxHeading($info_box_contents, false, false);
?>
<table border="0" width="100%" cellspacing="1" cellpadding="0" class="infoBox">
<tr><td><?php echo tep_draw_form('account_newsletter', tep_href_link(FILENAME_ACCOUNT_NEWSLETTERS, '', 'SSL')) . tep_draw_hidden_field('action', 'process'); ?><table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<td><table border="0" width="100%" cellspacing="0" cellpadding="0" class="infoBox">
<tr class="infoBoxContents">
<td><table border="0" width="100%" cellspacing="0" cellpadding="2">
<tr class="moduleRow" onclick="checkBox('newsletter_general')">
<td class="main"><?php echo tep_draw_checkbox_field('newsletter_general', '1', (($newsletter['customers_newsletter'] == '1') ? true : false), 'onclick="checkBox('newsletter_general')"'); ?></td>
<td class="main"><b><?php echo MY_NEWSLETTERS_GENERAL_NEWSLETTER; ?></b></td>
</tr>
<tr>
<td colspan="2" >
<table border="0" cellspacing="0" cellpadding="2">
<tr>
<td class="main"><?php echo MY_NEWSLETTERS_GENERAL_NEWSLETTER_DESCRIPTION; ?></td>
</tr>
<tr>
<td class="main" align="center"><?php echo tep_image_submit('button_continue.gif', IMAGE_BUTTON_CONTINUE); ?></td>
</tr>
</table>
</td>
</tr>
</table></td></tr>
</table></td>
</tr>
</table></form>
</td></tr>
</table>
</td>
</tr>
<!-- newsletter_eof //-->
|
Puis ajouter dans includes/column_right.php
CODE |
if (tep_session_is_registered('customer_id')) include(DIR_WS_BOXES . 'newsletter.php'); |
Base sur la version 2.2
Par Afid BENAYAD
afid.b@free.fr
http://www.xagogo.com