[ Index ] |
|
Code source de Zen Cart E-Commerce Shopping Cart 1.3.7.1 |
1 <?php 2 /** 3 * reviews Write 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 4274 2006-08-26 03:16:53Z drbyte $ 10 */ 11 /** 12 * Header code file for product reviews "write" page 13 * 14 */ 15 16 // This should be first line of the script: 17 $zco_notifier->notify('NOTIFY_HEADER_START_PRODUCT_REVIEWS_WRITE'); 18 19 if (!$_SESSION['customer_id']) { 20 $_SESSION['navigation']->set_snapshot(); 21 zen_redirect(zen_href_link(FILENAME_LOGIN, '', 'SSL')); 22 } 23 24 require(DIR_WS_MODULES . zen_get_module_directory('require_languages.php')); 25 26 $product_info_query = "SELECT p.products_id, p.products_model, p.products_image, 27 p.products_price, p.products_tax_class_id, pd.products_name 28 FROM " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd 29 WHERE p.products_id = :productsID 30 AND p.products_status = '1' 31 AND p.products_id = pd.products_id 32 AND pd.language_id = :languagesID"; 33 34 $product_info_query = $db->bindVars($product_info_query, ':productsID', $_GET['products_id'], 'integer'); 35 $product_info_query = $db->bindVars($product_info_query, ':languagesID', $_SESSION['languages_id'], 'integer'); 36 $product_info = $db->Execute($product_info_query); 37 38 if (!$product_info->RecordCount()) { 39 zen_redirect(zen_href_link(FILENAME_PRODUCT_REVIEWS, zen_get_all_get_params(array('action')))); 40 } 41 42 $customer_query = "SELECT customers_firstname, customers_lastname, customers_email_address 43 FROM " . TABLE_CUSTOMERS . " 44 WHERE customers_id = :customersID"; 45 46 47 $customer_query = $db->bindVars($customer_query, ':customersID', $_SESSION['customer_id'], 'integer'); 48 $customer = $db->Execute($customer_query); 49 50 if (isset($_GET['action']) && ($_GET['action'] == 'process')) { 51 $rating = zen_db_prepare_input($_POST['rating']); 52 $review_text = zen_db_prepare_input($_POST['review_text']); 53 54 $error = false; 55 if (strlen($review_text) < REVIEW_TEXT_MIN_LENGTH) { 56 $error = true; 57 58 $messageStack->add('review_text', JS_REVIEW_TEXT); 59 } 60 61 if (($rating < 1) || ($rating > 5)) { 62 $error = true; 63 64 $messageStack->add('review_text', JS_REVIEW_RATING); 65 } 66 67 if ($error == false) { 68 if (REVIEWS_APPROVAL == '1') { 69 $review_status = '0'; 70 } else { 71 $review_status = '1'; 72 } 73 74 $sql = "INSERT INTO " . TABLE_REVIEWS . " (products_id, customers_id, customers_name, reviews_rating, date_added, status) 75 VALUES (:productsID, :customersID, :customersName, :rating, now(), " . $review_status . ")"; 76 77 78 $sql = $db->bindVars($sql, ':productsID', $_GET['products_id'], 'integer'); 79 $sql = $db->bindVars($sql, ':customersID', $_SESSION['customer_id'], 'integer'); 80 $sql = $db->bindVars($sql, ':customersName', $customer->fields['customers_firstname'] . ' ' . $customer->fields['customers_lastname'], 'string'); 81 $sql = $db->bindVars($sql, ':rating', $rating, 'string'); 82 83 $db->Execute($sql); 84 85 $insert_id = $db->Insert_ID(); 86 87 $sql = "INSERT INTO " . TABLE_REVIEWS_DESCRIPTION . " (reviews_id, languages_id, reviews_text) 88 VALUES (:insertID, :languagesID, :reviewText)"; 89 90 $sql = $db->bindVars($sql, ':insertID', $insert_id, 'integer'); 91 $sql = $db->bindVars($sql, ':languagesID', $_SESSION['languages_id'], 'integer'); 92 $sql = $db->bindVars($sql, ':reviewText', $review_text, 'string'); 93 94 $db->Execute($sql); 95 // send review-notification email to admin 96 if (REVIEWS_APPROVAL == '1' && SEND_EXTRA_REVIEW_NOTIFICATION_EMAILS_TO_STATUS == '1' and defined('SEND_EXTRA_REVIEW_NOTIFICATION_EMAILS_TO') and SEND_EXTRA_REVIEW_NOTIFICATION_EMAILS_TO !='') { 97 $email_text = sprintf(EMAIL_PRODUCT_REVIEW_CONTENT_INTRO, $product_info->fields['products_name']) . "\n\n" ; 98 $email_text .= sprintf(EMAIL_PRODUCT_REVIEW_CONTENT_DETAILS, $review_text)."\n\n"; 99 $email_subject = sprintf(EMAIL_REVIEW_PENDING_SUBJECT,$product_info->fields['products_name']); 100 $html_msg['EMAIL_SUBJECT'] = sprintf(EMAIL_REVIEW_PENDING_SUBJECT,$product_info->fields['products_name']); 101 $html_msg['EMAIL_MESSAGE_HTML'] = str_replace('\n','',sprintf(EMAIL_PRODUCT_REVIEW_CONTENT_INTRO, $product_info->fields['products_name'])); 102 $html_msg['EMAIL_MESSAGE_HTML'] .= '<br />'; 103 $html_msg['EMAIL_MESSAGE_HTML'] .= str_replace('\n','',sprintf(EMAIL_PRODUCT_REVIEW_CONTENT_DETAILS, $review_text)); 104 $extra_info=email_collect_extra_info($name,$email_address, $customer->fields['customers_firstname'] . ' ' . $customer->fields['customers_lastname'] , $customer->fields['customers_email_address'] ); 105 $html_msg['EXTRA_INFO'] = $extra_info['HTML']; 106 zen_mail('', SEND_EXTRA_REVIEW_NOTIFICATION_EMAILS_TO, $email_subject , 107 $email_text . $extra_info['TEXT'], STORE_NAME, EMAIL_FROM, $html_msg, 'reviews_extra'); 108 } 109 // end send email 110 111 zen_redirect(zen_href_link(FILENAME_PRODUCT_REVIEWS, zen_get_all_get_params(array('action')))); 112 } 113 } 114 115 $products_price = zen_get_products_display_price($product_info->fields['products_id']); 116 117 $products_name = $product_info->fields['products_name']; 118 119 if ($product_info->fields['products_model'] != '') { 120 $products_model = '<br /><span class="smallText">[' . $product_info->fields['products_model'] . ']</span>'; 121 } else { 122 $products_model = ''; 123 } 124 125 // set image 126 // $products_image = $product_info->fields['products_image']; 127 if ($product_info->fields['products_image'] == '' and PRODUCTS_IMAGE_NO_IMAGE_STATUS == '1') { 128 $products_image = PRODUCTS_IMAGE_NO_IMAGE; 129 } else { 130 $products_image = $product_info->fields['products_image']; 131 } 132 133 $breadcrumb->add(NAVBAR_TITLE); 134 135 // This should be last line of the script: 136 $zco_notifier->notify('NOTIFY_HEADER_END_PRODUCT_REVIEWS_WRITE'); 137 ?>
titre
Description
Corps
titre
Description
Corps
titre
Description
Corps
titre
Corps
Généré le : Mon Nov 26 16:45:43 2007 | par Balluche grâce à PHPXref 0.7 |
![]() |