Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Specials on default php


Guest

Recommended Posts

I have just installed this contribution:

 

Specials on default

 

On the home page it displays fine, like this:

 

specialscorrect.JPG

 

But when you click on a catagory it displays the prices incorrectly like this:

 

specialsincorrect.JPG

 

Can anyone tell me how to fix this?

Link to comment
Share on other sites

Sorry, here is the code for catalog>includes>modules>default_specials.php:

 

<?php
/*
 $Id: default_specials.php,v 2.0 2003/06/13

 osCommerce, Open Source E-Commerce Solutions
 http://www.oscommerce.com

 Copyright (c) 2003 osCommerce

 Released under the GNU General Public License
*/
?>
<!-- default_specials //-->

 <tr>
     </tr>
     <tr>
       <td><table border="0" width="100%" cellspacing="0" cellpadding="2">
         <tr>
<?php
$info_box_contents = array();
 $info_box_contents[] = array('align' => 'left', 'text' => sprintf(TABLE_HEADING_DEFAULT_SPECIALS, strftime('%B')));
 new infoBoxHeading($info_box_contents, false, false, tep_href_link(FILENAME_SPECIALS));

  if ( (!isset($new_products_category_id)) || ($new_products_category_id == '0') ) {
    $new = tep_db_query("select p.products_id, pd.products_name, p.products_price, p.products_tax_class_id, p.products_image, s.specials_new_products_price from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_SPECIALS . " s where p.products_status = '1' and s.products_id = p.products_id and p.products_id = pd.products_id and pd.language_id = '" . $languages_id . "' and s.status = '1' order by s.specials_date_added DESC limit " . MAX_DISPLAY_SPECIAL_PRODUCTS);
  } else {
    $new = tep_db_query("select distinct p.products_id, p.products_image, p.products_tax_class_id, if(s.status, s.specials_new_products_price, p.products_price) as products_price, s.specials_new_products_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c, " . TABLE_CATEGORIES . " c where p.products_id = p2c.products_id and p2c.categories_id = c.categories_id and c.parent_id = '" . (int)$new_products_category_id . "' and p.products_status = '1' and s.status = '1' order by p.products_date_added desc limit " . MAX_DISPLAY_NEW_PRODUCTS);
  }


$info_box_contents = array();
 $row = 0;
 $col = 0;
 while ($default_specials = tep_db_fetch_array($new)) {
   $default_specials['products_name'] = tep_get_products_name($default_specials['products_id']);
   $info_box_contents[$row][$col] = array('align' => 'center',
                                          'params' => 'class="smallText" width="33%" valign="top"',
                                          'text' => '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $default_specials["products_id"]) . '">' . tep_image(DIR_WS_IMAGES . $default_specials['products_image'], $default_specials['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '</a><br><a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $default_specials['products_id']) . '">' . $default_specials['products_name'] . '</a><br><s>' . $currencies->display_price($default_specials['products_price'], tep_get_tax_rate($default_specials['products_tax_class_id'])) . '</s><br><span class="productSpecialPrice">' . $currencies->display_price($default_specials['specials_new_products_price'], tep_get_tax_rate($default_specials['products_tax_class_id'])) . '</span>');
   $col ++;
   if ($col > 2) {
     $col = 0;
     $row ++;
   }
 }
 new contentBox($info_box_contents);
?>

<!-- default_specials_eof //-->

Link to comment
Share on other sites

the if and else queries give if top category then show products on special whereas the else which is if not in the top category show distinct products on special from that category thus the products change depending on whether or not you are in a category this is as intended.

 

Do you wish to show products on special from all products on special even when in a category?

No longer giving free advice. Please place deposit in meter slot provided.  Individual: [=] SME: [==] Corporation: [===]
If deposit does not fit one of the slots provided then you are asking too much! :P

Is your Osc dated try Phoenix  raising oscommerce from the ashes.

Link to comment
Share on other sites

I only want it to show the specials relevent to the catagory the customer is in, and it does this already.

 

What I do need to fix is the price it is displaying when in a catagory.

 

As you can see above they are the same price in the catagory, but displays fine on the homepage?

 

Any ideas how to fix this bug?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...