ich versuche gerade die Newsletteranmeldung in die Anmeldung zum Shop einzubauen.
Was funktioniert:
- Account anmeldung (hier wurde ja nichts geändert)
- Eintrag in newsletter_recipients mit "mail_status" = 0
- E-mail wird gesendet.
in dem Code bei Create_customer.inc ist ja der Aufruf das er eine Newsletter bestätitgung sendet - dies funktioniert aber nicht - es wird immer die standard anmelde Mail gesendet.
Ist hier ein gravierender Code Fehler meinerseits vorhanden?
---------------------------------------------------------------
\inc\create_customer.inc
---------------------------------------------------------------
Folgenden Code suchen:
Code: Alles auswählen
require_once (DIR_FS_INC.'xtc_write_user_info.inc.php');
Code: Alles auswählen
// Newsletter Erweiterung
require_once (DIR_FS_INC.'xtc_random_charcode.inc.php');
// Newsletter Erweiterung eof
Folgenden Code suchen:
Code: Alles auswählen
$confirmation = xtc_db_prepare_input($_POST['confirmation']);
Code: Alles auswählen
// Newsletter Erweiterung
****$aut_newsletter = xtc_db_prepare_input($_POST['aut_newsletter']);
// Newsletter Erweiterung eof
Code: Alles auswählen
if (SESSION_RECREATE == 'True') {
xtc_session_recreate();
}
Code: Alles auswählen
// Newsletter Erweiterung
if($aut_newsletter == 'true') {
$vlcode = xtc_random_charcode(32);
$link = xtc_href_link(FILENAME_NEWSLETTER, 'action=activate&email='.$email_address.'&key='.$vlcode, 'NONSSL');
// assign language to template for caching
$smarty->assign('language', $_SESSION['language']);
$smarty->assign('tpl_path', 'templates/'.CURRENT_TEMPLATE.'/');
$smarty->assign('logo_path', HTTP_SERVER.DIR_WS_CATALOG.'templates/'.CURRENT_TEMPLATE.'/img/');
// assign vars
$smarty->assign('EMAIL', xtc_db_input($_POST['email']));
$smarty->assign('LINK', $link);
// dont allow cache
$smarty->caching = false;
// create mails
$newsletter_html_mail = $smarty->fetch(CURRENT_TEMPLATE.'/mail/'.$_SESSION['language'].'/newsletter_mail.html');
$newsletter_txt_mail = $smarty->fetch(CURRENT_TEMPLATE.'/mail/'.$_SESSION['language'].'/newsletter_mail.txt');
$sql_data_array = array ('customers_email_address' => $email_address, 'customers_id' => $_SESSION['customer_id'], 'customers_status' => $customers_status, 'customers_firstname' => $firstname, 'customers_lastname' => $lastname, 'mail_status' => '0', 'mail_key' => xtc_db_input($vlcode), 'date_added' => 'now()');
xtc_db_perform(TABLE_NEWSLETTER_RECIPIENTS, $sql_data_array);
if (SEND_EMAILS == true) {
xtc_php_mail(EMAIL_SUPPORT_ADDRESS, EMAIL_SUPPORT_NAME, xtc_db_input($email_address), '', '', EMAIL_SUPPORT_REPLY_ADDRESS, EMAIL_SUPPORT_REPLY_ADDRESS_NAME, '', '', TEXT_EMAIL_SUBJECT, $newsletter_html_mail, $newsletter_txt_mail);
}
}
// Newsletter Erweiterung eof
Code: Alles auswählen
$smarty->assign('FORM_ACTION', xtc_draw_form('create_account', xtc_href_link(FILENAME_CREATE_ACCOUNT, '', 'SSL'), 'post', 'onsubmit="return check_form(create_account);"').xtc_draw_hidden_field('action', 'process'));
Code: Alles auswählen
// Newsletter Erweiterung
$smarty->assign('INPUT_AUT_NEWSLETTER', xtc_draw_checkbox_field('aut_newsletter', 'true', true));
// Newsletter Erweiterung eof
----------------------------------------------------------------------------
/templates/IHRTEMPLATE/snippets/create_account_form.html
----------------------------------------------------------------------------
Folgenden Code suchen:
Code: Alles auswählen
<div class="float">
<div class="right">{$BUTTON_SUBMIT}</div>
</div>
Code: Alles auswählen
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="main"></td>
</tr>
<tr>
<td class="main">Newsletter</td>
</tr>
</table>
<table class="formArea" width="100%" border="0" cellspacing="2" cellpadding="0">
<tr>
<td width="200" class="main">Newsletter abonnieren?</td>
<td class="inputRequirement">{$INPUT_AUT_NEWSLETTER}</td>
</tr>
</table>