Aide - Recherche - Membres - Calendrier
Version complète : [addon] Box abonnement Newsletter
Forum osCommerce-fr > Adapter OsCommerce MS2 > Contributions
afid_75011
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
cyberghost
J'ai un petit problème :

il me marque ca !

Fatal error: Failed opening required 'includes/languages/french/FILENAME_ACCOUNT_NEWSLETTERS' (include_path='.;C:Program FilesEasyPHPphppear') in c:program fileseasyphpwwwcatalogincludesboxesnewsletter.php on line 19
azer
oui il semble qu il manque les define pour les languages , mais afid va surement vite nous les donner .
bien quon puisse les rentrer a la main dnas les fichiers de languages idea.gif
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'informations, la mise en page et les images, veuillez cliquer ici.
Invision Power Board © 2001-2013 Invision Power Services, Inc.