[ Index ]
 

Code source de Zen Cart E-Commerce Shopping Cart 1.3.7.1

Accédez au Source d'autres logiciels libres

Classes | Fonctions | Variables | Constantes | Tables

title

Body

[fermer]

/includes/modules/pages/tell_a_friend/ -> header_php.php (source)

   1  <?php
   2  /**

   3   * Tell a Friend

   4   *

   5   * @package page

   6   * @copyright Copyright 2003-2006 Zen Cart Development Team

   7   * @copyright Portions Copyright 2003 osCommerce

   8   * @license http://www.zen-cart.com/license/2_0.txt GNU Public License V2.0

   9   * @version $Id: header_php.php 3000 2006-02-09 21:11:37Z wilt $

  10   */
  11  
  12  //

  13  if (!$_SESSION['customer_id'] && (ALLOW_GUEST_TO_TELL_A_FRIEND == 'false')) {
  14    $_SESSION['navigation']->set_snapshot();
  15    zen_redirect(zen_href_link(FILENAME_LOGIN, '', 'SSL'));
  16  }
  17  
  18  $valid_product = false;
  19  if (isset($_GET['products_id'])) {
  20    $product_info_query = "SELECT pd.products_name
  21                           FROM " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd
  22                           WHERE p.products_status = '1'
  23                           AND p.products_id = :productsID
  24                           AND p.products_id = pd.products_id
  25                           AND pd.language_id = :languageID";
  26  
  27    $product_info_query = $db->bindVars($product_info_query, ':productsID', $_GET['products_id'], 'integer');
  28    $product_info_query = $db->bindVars($product_info_query, ':languageID', $_SESSION['languages_id'], 'integer');
  29    $product_info = $db->Execute($product_info_query);
  30  
  31    if ($product_info->RecordCount() > 0) {
  32      $valid_product = true;
  33    }
  34  }
  35  
  36  if ($valid_product == false) {
  37    zen_redirect(zen_href_link(zen_get_info_page($_GET['products_id']), 'products_id=' . $_GET['products_id']));
  38  }
  39  
  40  require(DIR_WS_MODULES . zen_get_module_directory('require_languages.php'));
  41  
  42  if (isset($_GET['action']) && ($_GET['action'] == 'process')) {
  43    $error = false;
  44  
  45    $to_email_address = zen_db_prepare_input($_POST['to_email_address']);
  46    $to_name = zen_db_prepare_input($_POST['to_name']);
  47    $from_email_address = zen_db_prepare_input($_POST['from_email_address']);
  48    $from_name = zen_db_prepare_input($_POST['from_name']);
  49    $message = zen_db_prepare_input($_POST['message']);
  50  
  51    if (empty($from_name)) {
  52      $error = true;
  53  
  54      $messageStack->add('friend', ERROR_FROM_NAME);
  55    }
  56  
  57    if (!zen_validate_email($from_email_address)) {
  58      $error = true;
  59  
  60      $messageStack->add('friend', ERROR_FROM_ADDRESS);
  61    }
  62  
  63    if (empty($to_name)) {
  64      $error = true;
  65  
  66      $messageStack->add('friend', ERROR_TO_NAME);
  67    }
  68  
  69    if (!zen_validate_email($to_email_address)) {
  70      $error = true;
  71  
  72      $messageStack->add('friend', ERROR_TO_ADDRESS);
  73    }
  74  
  75    if ($error == false) {
  76      $email_subject = sprintf(EMAIL_TEXT_SUBJECT, $from_name, STORE_NAME);
  77      $email_body = sprintf(EMAIL_TEXT_GREET, $to_name);
  78      $email_body .= sprintf(EMAIL_TEXT_INTRO,$from_name, $product_info->fields['products_name'], STORE_NAME) . "\n\n";
  79      $html_msg['EMAIL_GREET'] = str_replace('\n','',sprintf(EMAIL_TEXT_GREET, $to_name));
  80      $html_msg['EMAIL_INTRO'] = sprintf(EMAIL_TEXT_INTRO,$from_name, $product_info->fields['products_name'], STORE_NAME);
  81  
  82      if (zen_not_null($message)) {
  83        $email_body .= sprintf(EMAIL_TELL_A_FRIEND_MESSAGE, $from_name)  . "\n\n";
  84        $email_body .= strip_tags($message) . "\n\n" . EMAIL_SEPARATOR . "\n\n";
  85        $html_msg['EMAIL_MESSAGE_HTML'] = sprintf(EMAIL_TELL_A_FRIEND_MESSAGE, $from_name).'<br />';
  86        $html_msg['EMAIL_MESSAGE_HTML'] .= strip_tags($message);
  87      } else {
  88        $email_body .= '';
  89        $html_msg['EMAIL_MESSAGE_HTML'] = '';
  90      }
  91  
  92      $email_body .= sprintf(EMAIL_TEXT_LINK, zen_href_link(zen_get_info_page($_GET['products_id']), 'products_id=' . $_GET['products_id']), '', false) . "\n\n" .
  93      sprintf(EMAIL_TEXT_SIGNATURE, STORE_NAME . "\n" . HTTP_SERVER . DIR_WS_CATALOG . "\n");
  94  
  95      $html_msg['EMAIL_TEXT_HEADER'] = EMAIL_TEXT_HEADER;
  96      $html_msg['EMAIL_PRODUCT_LINK'] = sprintf(str_replace('\n\n','<br />',EMAIL_TEXT_LINK), '<a href="'.zen_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $_GET['products_id']).'">'.$product_info->fields['products_name'].'</a>' , '', false);
  97      $html_msg['EMAIL_TEXT_SIGNATURE'] = sprintf(str_replace('\n','',EMAIL_TEXT_SIGNATURE), '' );
  98  
  99      // include disclaimer

 100      $email_body .= "\n\n" . EMAIL_ADVISORY . "\n\n";
 101  
 102      //send the email

 103      zen_mail($to_name, $to_email_address, $email_subject, $email_body, $from_name, $from_email_address, $html_msg, 'tell_a_friend');
 104  
 105      // send additional emails

 106      if (SEND_EXTRA_TELL_A_FRIEND_EMAILS_TO_STATUS == '1' and SEND_EXTRA_TELL_A_FRIEND_EMAILS_TO !='') {
 107        if ($_SESSION['customer_id']) {
 108          $account_query = "SELECT customers_firstname, customers_lastname, customers_email_address
 109                            FROM " . TABLE_CUSTOMERS . "
 110                            WHERE customers_id = :customersID";
 111  
 112          $account_query = $db->bindVars($account_query, ':customersID', $_SESSION['customer_id'], 'integer');
 113          $account = $db->Execute($account_query);
 114        }
 115        $extra_info=email_collect_extra_info($from_name,$from_email_address, $account->fields['customers_firstname'] . ' ' . $account->fields['customers_lastname'] , $account->fields['customers_email_address'] );
 116  
 117        $html_msg['EXTRA_INFO'] = $extra_info['HTML'];
 118        zen_mail('', SEND_EXTRA_TELL_A_FRIEND_EMAILS_TO, SEND_EXTRA_TELL_A_FRIEND_EMAILS_TO_SUBJECT . ' ' . $email_subject,
 119        $email_body . $extra_info['TEXT'], STORE_NAME, EMAIL_FROM, $html_msg, 'tell_a_friend_extra');
 120      }
 121  
 122      $messageStack->add_session('header', sprintf(TEXT_EMAIL_SUCCESSFUL_SENT, $product_info->fields['products_name'], zen_output_string_protected($to_name)), 'success');
 123  
 124      zen_redirect(zen_href_link(zen_get_info_page($_GET['products_id']), 'products_id=' . $_GET['products_id']));
 125    }
 126  } elseif ($_SESSION['customer_id']) {
 127    $account_query = "SELECT customers_firstname, customers_lastname, customers_email_address
 128                      FROM " . TABLE_CUSTOMERS . "
 129                      WHERE customers_id = :customersID";
 130  
 131    $account_query = $db->bindVars($account_query, ':customersID', $_SESSION['customer_id'], 'integer');
 132    $account = $db->Execute($account_query);
 133  
 134    $from_name = $account->fields['customers_firstname'] . ' ' . $account->fields['customers_lastname'];
 135    $from_email_address = $account->fields['customers_email_address'];
 136  }
 137  
 138  $breadcrumb->add(NAVBAR_TITLE);
 139  ?>


Généré le : Mon Nov 26 16:45:43 2007 par Balluche grâce à PHPXref 0.7
  Clicky Web Analytics