
Originally Posted by
lankeeyankee
Are you already using a customized tpl_shopping_cart_default?
If so, post your file and I will merge it for you, it will only take a minute or two. I will make sure to make the code blocks clear in the next release so it's easier to identify.
Thanks for the help Lankeeyankee!
Yes, I'm using a modified template. I've already added parts of the mod to this file. Here is the code:
Code:
<?php
/**
* Page Template
*
* Loaded automatically by index.php?main_page=shopping_cart.<br />
* Displays shopping-cart contents
*
* @package templateSystem
* @copyright Copyright 2003-2006 Zen Cart Development Team
* @copyright Portions Copyright 2003 osCommerce
* @license http://www.zen-cart.com/license/2_0.txt GNU Public License V2.0
* @version $Id: tpl_shopping_cart_default.php 5414 2006-12-27 07:51:03Z drbyte $
*/
?>
<div class="centerColumn" id="shoppingCartDefault">
<?php
if ($flagHasCartContents)
{
if ($_SESSION['cart']->count_contents() > 0) {
?>
<div class="forward"><?php echo TEXT_VISITORS_CART; ?></div>
<?php
}
?>
<h1 id="cartDefaultHeading"><?php echo HEADING_TITLE; ?></h1>
<?php if ($messageStack->size('shopping_cart') > 0) echo $messageStack->output('shopping_cart');
echo zen_draw_form('cart_quantity', zen_href_link(FILENAME_SHOPPING_CART, 'action=update_product','SSL')); ?>
<div id="cartInstructionsDisplay" class="content"><?php echo TEXT_INFORMATION; ?></div>
<?php if (!empty($totalsDisplay)) { ?>
<div class="cartTotalsDisplay important"><?php echo $totalsDisplay; ?></div>
<br class="clearBoth" />
<?php }
if ($flagAnyOutOfStock) {
if (STOCK_ALLOW_CHECKOUT == 'true') { ?>
<div class="messageStackError"><?php echo OUT_OF_STOCK_CAN_CHECKOUT; ?></div>
<?php } else { ?>
<div class="messageStackError"><?php echo OUT_OF_STOCK_CANT_CHECKOUT; ?></div>
<?php } //endif STOCK_ALLOW_CHECKOUT
} //endif flagAnyOutOfStock ?>
<table border="0" width="100%" cellspacing="0" cellpadding="0" id="cartContentsDisplay">
<tr class="tableHeading">
<th scope="col" id="scQuantityHeading" style="width:55px;"><?php echo TABLE_HEADING_QUANTITY; ?></th>
<!--<th scope="col" id="scUpdateQuantity"> </th>-->
<th scope="col" id="scProductImage" style="width:55px;"> </th>
<th scope="col" id="scProductsHeading"><?php echo TABLE_HEADING_PRODUCTS; ?></th>
<th scope="col" id="scUnitHeading" style="width:80px;"> <?php echo TABLE_HEADING_PRICE; ?> </th>
<th scope="col" id="scTotalHeading" style="width:80px;"> <?php echo TABLE_HEADING_TOTAL; ?> </th>
<th scope="col" id="scRemoveHeading" style="width:70px;"> <?php echo TABLE_HEADING_REMOVE; ?></th>
</tr>
<!-- Loop through all products /-->
<?php
foreach ($productArray as $product) {
?>
<tr class="<?php echo $product['rowClass']; ?>">
<td class="cartQuantity">
<?php
echo zen_draw_hidden_field('products_id[]', $product['id']);
if ($product['flagShowFixedQuantity']) {
echo $product['showFixedQuantityAmount'] . '<br /><span class="alert bold">' . $product['flagStockCheck'] . '</span><br />' . $product['showMinUnits'];
} else {
echo $product['quantityField'] . '<br /><span class="alert bold">' . $product['flagStockCheck'] . '</span><br />' . $product['showMinUnits'];
}
?>
</td>
<!-- <td class="cartQuantityUpdate">
<?php/*
if ($product['buttonUpdate'] == '') {
echo '' ;
} else {
echo $product['buttonUpdate'];
}*/
?>
</td>-->
<?php
if ($product['carrot'] == 1) {
echo TEXT_GIFT_IN_CART;
}elseif ($product['buttonUpdate'] == '') {
echo '' ;
} else {
echo $product['buttonUpdate'];
}
?>
<td class="cartProductImage">
<a href="<?php echo $product['linkProductsName']; ?>">
<?php echo $product['productsImage']; ?>
</a>
</td>
<td class="cartProductDisplay">
<a href="<?php echo $product['linkProductsName']; ?>"><span class="cartProdTitle"><?php echo $product['productsName'] . '<br /><span class="alert bold">' . $product['flagStockCheck'] . '</span>'; ?></span></a>
<br class="clearBoth" />
<?php
echo $product['attributeHiddenField'];
if (isset($product['attributes']) && is_array($product['attributes'])) {
echo '<div class="cartAttribsList">';
echo '<ul>';
reset($product['attributes']);
foreach ($product['attributes'] as $option => $value) {
?>
<li><?php echo $value['products_options_name'] . TEXT_OPTION_DIVIDER . nl2br($value['products_options_values_name']); ?></li>
<?php
}
echo '</ul>';
echo '</div>';
}
?>
</td>
<td class="cartUnitDisplay"><?php echo $product['productsPriceEach']; ?></td>
<td class="cartTotalDisplay"><?php echo $product['productsPrice']; ?></td>
<td class="cartRemoveItemDisplay">
<?php
//if ($product['buttonDelete']) {
?>
<!--<a href="<?php echo zen_href_link(FILENAME_SHOPPING_CART, 'action=remove_product&product_id=' . $product['id']); ?>"><?php echo zen_image($template->get_template_dir(ICON_IMAGE_TRASH, DIR_WS_TEMPLATE, $current_page_base,'images/icons'). '/' . ICON_IMAGE_TRASH, ICON_TRASH_ALT); ?></a>-->
<?php
//}
if ($product['checkBoxDelete'] ) {
echo zen_draw_checkbox_field('cart_delete[]', $product['id']);
}
?>
</td>
</tr>
<?php
} // end foreach ($productArray as $product)
?>
<!-- Finished loop through all products /-->
</table>
<div id="cartSubTotal"><?php echo SUB_TITLE_SUB_TOTAL; ?> <?php echo $cartShowTotal; ?></div>
<br class="clearBoth" />
<!--bof shopping cart buttons-->
<div class="buttonRow forward"><?php echo '<a href="' . zen_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL') . '">' . zen_image_button(BUTTON_IMAGE_CHECKOUT_GREEN, BUTTON_CHECKOUT_ALT) . '</a>'; ?></div>
<div class="buttonRow back"><?php echo zen_back_link() . zen_image_button(BUTTON_IMAGE_CONTINUE_SHOPPING, BUTTON_CONTINUE_SHOPPING_ALT) . '</a>'; ?></div>
<br class="clearBoth" />
<?php
// show update cart button
if (SHOW_SHOPPING_CART_UPDATE == 2 or SHOW_SHOPPING_CART_UPDATE == 3) {
?>
<div class="buttonRow back" style="padding-top: 5px;"><?php echo zen_image_submit(BUTTON_IMAGE_UPDATE, BUTTON_UPDATE_ALT); ?></div>
<br class="clearBoth" />
<?php
} else { // don't show update button below cart
?>
<?php
} // show checkout button
?>
<!--eof shopping cart buttons-->
</form>
<?php
switch (true) {
case (SHOW_SHIPPING_ESTIMATOR_BUTTON == '1'):
?>
<div class="buttonRow back" style="padding-top: 5px;"><?php echo '<a href="javascript:popupWindow(\'' . zen_href_link(FILENAME_POPUP_SHIPPING_ESTIMATOR) . '\')">' .
zen_image_button(BUTTON_IMAGE_SHIPPING_ESTIMATOR, BUTTON_SHIPPING_ESTIMATOR_ALT) . '</a>'; ?></div>
<?php
break;
case (SHOW_SHIPPING_ESTIMATOR_BUTTON == '2'):
/**
* load the shipping estimator code if needed
*/
?>
<?php require(DIR_WS_MODULES . zen_get_module_directory('shipping_estimator.php')); ?>
<?php
break;
}
?>
<!--BOF dangling carrot v1.0-->
<?php
if ($gift_message) {
echo '<div align="center"><span class="smallText">'.$gift_message.'</span></div><p>';
}
for ($i=0, $n=sizeof($freebie); $i<$n; $i++) {
if ($gift_exists > 0) {
$link = TEXT_REMOVE_GIFT;
} else {
$link = $freebie[$i]['link'];
}
echo '<table width="100%" align="center" cellspacing="1" bgcolor="#FFFFFF">
<tr> <br>
<td class="smallText" bgcolor="#F0F6D5">
<a href="' . zen_href_link(FILENAME_PRODUCT_INFO, 'products_id='.$freebie[$i]['id'], 'NONSSL') . '">' . zen_image(DIR_WS_IMAGES . $freebie[$i]['image'], $freebie[$i]['name'], GIFTS_IMAGE_WIDTH, GIFTS_IMAGE_WIDTH, 'align="left"' ) . '</a>'
. $freebie[$i]['message'].'
<br><b>'.$freebie[$i]['name'].'</b>
<br> ' . TEXT_MAX_1_GIFT . '
<br>'.$link.'
</td>
</tr>
</table>';
}
if ($freebie[0]['name']) {
?>
<?php
}
?>
<!--EOF dangling carrot v2.0-->
<?php
}
if($flagHasCartContents < 1)
{
?>
<h2 id="cartEmptyText"><?php echo TEXT_CART_EMPTY; ?></h2>
<?php
$show_display_shopping_cart_empty = $db->Execute(SQL_SHOW_SHOPPING_CART_EMPTY);
while (!$show_display_shopping_cart_empty->EOF)
{
if ($show_display_shopping_cart_empty->fields['configuration_key'] == 'SHOW_SHOPPING_CART_EMPTY_FEATURED_PRODUCTS')
{
/**
* display the Featured Products Center Box
*/
require($template->get_template_dir('tpl_modules_featured_products.php',DIR_WS_TEMPLATE, $current_page_base,'templates'). '/tpl_modules_featured_products.php');
}
if ($show_display_shopping_cart_empty->fields['configuration_key'] == 'SHOW_SHOPPING_CART_EMPTY_SPECIALS_PRODUCTS')
{
/**
* display the Special Products Center Box
*/
require($template->get_template_dir('tpl_modules_specials_default.php',DIR_WS_TEMPLATE, $current_page_base,'templates'). '/tpl_modules_specials_default.php');
}
if ($show_display_shopping_cart_empty->fields['configuration_key'] == 'SHOW_SHOPPING_CART_EMPTY_NEW_PRODUCTS')
{
/**
* display the New Products Center Box
*/
require($template->get_template_dir('tpl_modules_whats_new.php',DIR_WS_TEMPLATE, $current_page_base,'templates'). '/tpl_modules_whats_new.php');
}
if ($show_display_shopping_cart_empty->fields['configuration_key'] == 'SHOW_SHOPPING_CART_EMPTY_UPCOMING')
{
include(DIR_WS_MODULES . zen_get_module_directory(FILENAME_UPCOMING_PRODUCTS));
}
$show_display_shopping_cart_empty->MoveNext();
} // !EOF
//include(DIR_WS_MODULES . 'show_google_components.php');
}
?>
<!-- * BEGIN GOOGLE CHECKOUT * -->
<?php
// ** GOOGLE CHECKOUT **
include(DIR_WS_MODULES . 'show_google_components.php');
// ** END GOOGLE CHECKOUT **
?>
<!-- * END GOOGLE CHECKOUT * -->
<!-- ** BEGIN PAYPAL EXPRESS CHECKOUT ** -->
<?php // only display EC option if cart contents >0 and value >0
if (defined('MODULE_PAYMENT_PAYPALWPP_STATUS') && MODULE_PAYMENT_PAYPALWPP_STATUS == 'True' && $_SESSION['cart']->count_contents() > 0 && $_SESSION['cart']->total > 0) {
?>
<hr style="border: 0.1px dashed rgb(182, 181, 192);">
<?php echo TEXT_PAYPAL_EXPRESS_OFFER.TEXT_PAYPAL_EXPRESS_NOTE;?>
<br />
<?php
include(DIR_FS_CATALOG . DIR_WS_MODULES . 'payment/paypal/tpl_ec_button.php');
}
?>
<!-- ** END PAYPAL EXPRESS CHECKOUT ** -->
<br class="clearBoth" />
</div>
cheers, mate!