Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

product_info problem with B2Bsuite+Master_products


cyaneo

Recommended Posts

Hi

 

I use

- OSC2.2 MS2 with

- STS 1.2

- b2bsuite 081b

- Master Products v1.1.2

- x-sell 2.2.1a

 

I hope someone can help me please... :(

 

 

 

 

 

 

So - nearly all works fine at this time, only there are 2 problems with the "product_info.php.tpl":

 

Normal Product:

- here I have two "add to basket" buttons:

...one with the "Quantity" and button

...one only with button

Both of them are working

 

 

Master Product with slave Product:

- here I have also two "add to basket" buttons:

...one with the "Quantity" and the Button

...one only with button

Both of them are working, but in the slave Products option, there is a dropdown where I can select the Quantity, but if I select 2 or more, only one added to basket

 

 

Here's the code of the product_info.php.tpl:

 

<?php echo tep_draw_form('cart_quantity', tep_href_link(FILENAME_PRODUCT_INFO, tep_get_all_get_params(array('action')) . 'action=add_product')); ?><table border="0" width="100%" cellspacing="0" cellpadding="0">

<?php

  if ($product_check['total'] < 1) {

?>

      <tr>

        <td><h1><?php new infoBox(array(array('text' => TEXT_PRODUCT_NOT_FOUND))); ?></h1></td>

      </tr>

      <tr>

        <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>

      </tr>

      <tr>

        <td><table border="0" width="100%" cellspacing="1" cellpadding="2" class="infoBox">

          <tr class="infoBoxContents">

            <td><table border="0" width="100%" cellspacing="0" cellpadding="2">

              <tr>

                <td width="10"><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></td>

                <td align="right"><?php echo '<a href="' . tep_href_link(FILENAME_DEFAULT) . '">' . tep_image_button('button_continue.gif', IMAGE_BUTTON_CONTINUE) . '</a>'; ?></td>

                <td width="10"><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></td>

              </tr>

            </table></td>

          </tr>

        </table></td>

      </tr>

<?php

  } else {

    $product_info_query = tep_db_query("select p.products_id, pd.products_name, pd.products_description, p.products_model, p.products_quantity, p.products_image, pd.products_url, p.products_price, p.products_tax_class_id, p.products_date_added, p.products_date_available, p.manufacturers_id from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_status = '1' and p.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "'");

    $product_info = tep_db_fetch_array($product_info_query);

 

    tep_db_query("update " . TABLE_PRODUCTS_DESCRIPTION . " set products_viewed = products_viewed+1 where products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and language_id = '" . (int)$languages_id . "'");

 

    if ($new_price = tep_get_products_special_price($product_info['products_id'])) {

//***** START OF B2BSUITE MODIFICATION

            global $customer_id;

          $customer_group_query = tep_db_query("select customers_group_id from " . TABLE_CUSTOMERS . " where customers_id =  '" . $customer_id . "'");

          $customer_group = tep_db_fetch_array($customer_group_query);

                $scustomer_group_price_query = tep_db_query("select customers_group_price from " . TABLE_PRODUCTS_GROUPS . " where products_id = '" . (int)$HTTP_GET_VARS['products_id']. "' and customers_group_id =  '" . $customer_group['customers_group_id'] . "'");

        if ($scustomer_group_price = tep_db_fetch_array($scustomer_group_price_query))

        $product_info['products_price']= $scustomer_group_price['customers_group_price'];

 

      $products_price = '<s>' . $currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id'])) . '</s> <span class="productSpecialPrice">' . $currencies->display_price($new_price, tep_get_tax_rate($product_info['products_tax_class_id'])) . '</span>';

    } else {

      //$products_price = $currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id']));

    global $customer_id;

                $customer_group_query = tep_db_query("select customers_group_id from " . TABLE_CUSTOMERS . " where customers_id =  '" . $customer_id . "'");

                $customer_group = tep_db_fetch_array($customer_group_query);

                $customer_group_price_query = tep_db_query("select customers_group_price from " . TABLE_PRODUCTS_GROUPS . " where products_id = '" . $HTTP_GET_VARS['products_id'] . "' and customers_group_id =  '" . $customer_group['customers_group_id'] . "'");

                if ( $customer_group['customers_group_id'] != 0) {

                  if ($customer_group_price = tep_db_fetch_array($customer_group_price_query)) {

                            $products_price = "";

                                        $products_price = $currencies->display_price($customer_group_price['customers_group_price'], tep_get_tax_rate($product_info['products_tax_class_id']));

                                  } else {

      $products_price = $currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id']));

    }

                } else {

    $products_price = $currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id']));

          }

//***** END OF B2BSUITE MODIFICATION

                }

 

    if (tep_not_null($product_info['products_model'])) {

      $products_name = $product_info['products_name'] . '<br><span class="smallText">[' . $product_info['products_model'] . ']</span>';

    } else {

      $products_name = $product_info['products_name'];

    }

?>

      <tr>

        <td><table border="0" width="100%" cellspacing="0" cellpadding="0">

          <tr>

            <td class="pageHeading" valign="top"><h1><?php echo $products_name; ?></h1></td>

            <!--  <td class="pageHeading" align="right" valign="top"><?php echo $products_price; ?></td> -->

          <td align="left" class="pageHeading"><?php echo $product_info_values['products_name']; ?></td>

            <td align="right" class="tableHeading">

          <?php

        //displays product price logged_in

        if (PRICES_LOGGED_IN == 'false') {

                                                    $product_price_d = $products_price;

                                                    }

                          if ((PRICES_LOGGED_IN == 'true') && (!tep_session_is_registered('customer_id'))) {

                                $product_price_d = ('<a href="' . tep_href_link(FILENAME_LOGIN, '','SSL') . '">'  . PRICES_LOGGED_IN_SUBMIT . '</a> ' );

                                  }  else  {

                                                                //!UNCOMMENT LINES BELOW IF YOU DONT WANNA DISPLAY YOUR BASED PRICE TO REGISTERED CUSTOMERS group zero

                                                                //if ( $customer_group['customers_group_id'] == 0) {

                                                                //$product_price_d = ('In elaborazione ' );

                                                          //                        }  else  {

                              $product_price_d = $products_price;

                                  //} //UNCOMMENT ALSO THIS PARENTHESIS

//#######################################

                                                                }

                            echo $product_price_d;

?>

            </td>

          </tr>

          </tr>

        </table></td>

      </tr>

      <tr>

        <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>

      </tr>

      <tr>

        <td class="main">

<?php

    if (tep_not_null($product_info['products_image'])) {

?>

          <table border="0" cellspacing="0" cellpadding="2" align="right">

            <tr>

              <td align="center" class="smallText">

<script language="javascript"><!--

document.write('<?php echo '<a href="java script:popupWindow(\\\'' . tep_href_link(FILENAME_POPUP_IMAGE, 'pID=' . $product_info['products_id']) . '\\\')">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], addslashes($product_info['products_name']), SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT, 'hspace="5" vspace="5"') . '<br>' . TEXT_CLICK_TO_ENLARGE . '</a>'; ?>');

//--></script>

<noscript>

<?php echo '<a href="' . tep_href_link(DIR_WS_IMAGES . $product_info['products_image']) . '" target="_blank">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], $product_info['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT, 'hspace="5" vspace="5"') . '<br>' . TEXT_CLICK_TO_ENLARGE . '</a>'; ?>

</noscript>

              </td>

            </tr>

          </table>

<?php

    }

?>

          <p><?php echo stripslashes($product_info['products_description']); ?></p>

<?php

    $products_attributes_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS_OPTIONS . " popt, " . TABLE_PRODUCTS_ATTRIBUTES . " patrib where patrib.products_id='" . (int)$HTTP_GET_VARS['products_id'] . "' and patrib.options_id = popt.products_options_id and popt.language_id = '" . (int)$languages_id . "'");

    $products_attributes = tep_db_fetch_array($products_attributes_query);

    if ($products_attributes['total'] > 0) {

?>

          <table border="0" cellspacing="0" cellpadding="2">

            <tr>

              <td class="main" colspan="2"><?php echo TEXT_PRODUCT_OPTIONS; ?></td>

            </tr>

<?php

      $products_options_name_query = tep_db_query("select distinct popt.products_options_id, popt.products_options_name from " . TABLE_PRODUCTS_OPTIONS . " popt, " . TABLE_PRODUCTS_ATTRIBUTES . " patrib where patrib.products_id='" . (int)$HTTP_GET_VARS['products_id'] . "' and patrib.options_id = popt.products_options_id and popt.language_id = '" . (int)$languages_id . "' order by popt.products_options_name");

      while ($products_options_name = tep_db_fetch_array($products_options_name_query)) {

        $products_options_array = array();

        $products_options_query = tep_db_query("select pov.products_options_values_id, pov.products_options_values_name, pa.options_values_price, pa.price_prefix from " . TABLE_PRODUCTS_ATTRIBUTES . " pa, " . TABLE_PRODUCTS_OPTIONS_VALUES . " pov where pa.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and pa.options_id = '" . (int)$products_options_name['products_options_id'] . "' and pa.options_values_id = pov.products_options_values_id and pov.language_id = '" . (int)$languages_id . "'");

        while ($products_options = tep_db_fetch_array($products_options_query)) {

          $products_options_array[] = array('id' => $products_options['products_options_values_id'], 'text' => $products_options['products_options_values_name']);

//***** START OF B2BSUITE MODIFICATION

 

          if ($products_options['options_values_price'] != '0') {

      $option_price_display = ' (' . $products_options['price_prefix'] . $currencies->display_price($products_options['options_values_price'], tep_get_tax_rate($product_info['products_tax_class_id'])) .') ';

                                                if (PRICES_LOGGED_IN == 'false') {

                                $option_price_display_d = $option_price_display;

                                        }

                                                if ((PRICES_LOGGED_IN == 'true') && (!tep_session_is_registered('customer_id'))) {

                                $option_price_display_d = '';

                        }  else  {

                                //!UNCOMMENT LINES BELOW IF YOU DONT WANNA DISPLAY YOUR BASED PRICE TO REGISTERED CUSTOMERS group zero

                                //                                if ( $customer_group['customers_group_id'] == 0) {

                                //                                $option_price_display_d = '';

                    //}  else  {

                                $option_price_display_d = $option_price_display;

                        }

                        //} //UNCOMMENT ALSO THIS

//#######################################

        $products_options_array[sizeof($products_options_array)-1]['text'] .= ' (' . $products_options['price_prefix'] . $option_price_display_d . $currencies->display_price($products_options['options_values_price'], tep_get_tax_rate($product_info['products_tax_class_id'])) .') ';

//***** END OF B2BSUITE MODIFICATION

          }

        }

 

        if (isset($cart->contents[$HTTP_GET_VARS['products_id']]['attributes'][$products_options_name['products_options_id']])) {

          $selected_attribute = $cart->contents[$HTTP_GET_VARS['products_id']]['attributes'][$products_options_name['products_options_id']];

        } else {

          $selected_attribute = false;

        }

?>

            <tr>

              <td class="main"><?php echo $products_options_name['products_options_name'] . ':'; ?></td>

              <td class="main"><?php echo tep_draw_pull_down_menu('id[' . $products_options_name['products_options_id'] . ']', $products_options_array, $selected_attribute); ?></td>

            </tr>

<?php

      }

?>

          </table>

<?php

    }

?>

        </td>

      </tr>

      <tr>

        <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>

      </tr>

<?php

    $reviews_query = tep_db_query("select count(*) as count from " . TABLE_REVIEWS . " where products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "'");

    $reviews = tep_db_fetch_array($reviews_query);

    if ($reviews['count'] > 0) {

?>

      <tr>

        <td class="main"><?php echo TEXT_CURRENT_REVIEWS . ' ' . $reviews['count']; ?></td>

      </tr>

      <tr>

        <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>

      </tr>

<?php

    }

 

    if (tep_not_null($product_info['products_url'])) {

?>

      <tr>

        <td class="main"><?php echo sprintf(TEXT_MORE_INFORMATION, tep_href_link(FILENAME_REDIRECT, 'action=url&goto=' . urlencode($product_info['products_url']), 'NONSSL', true, false)); ?></td>

      </tr>

      <tr>

        <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>

      </tr>

<?php

    }

 

    if ($product_info['products_date_available'] > date('Y-m-d H:i:s')) {

?>

      <tr>

        <td align="center" class="smallText"><?php echo sprintf(TEXT_DATE_AVAILABLE, tep_date_long($product_info['products_date_available'])); ?></td>

      </tr>

<?php

    } else {

?>

      <tr>

        <td align="center" class="smallText"><?php echo sprintf(TEXT_DATE_ADDED, tep_date_long($product_info['products_date_added'])); ?></td>

      </tr>

<?php

    }

?>

      <tr>

        <td align="center"><?php include(DIR_WS_MODULES . FILENAME_DYNAMIC_MOPICS); ?></td>

      </tr>

      <tr>

        <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>

      </tr>

      <tr>

        <td><table border="0" width="100%" cellspacing="1" cellpadding="2" class="infoBox">

          <tr class="infoBoxContents">

            <td><table border="0" width="100%" cellspacing="0" cellpadding="2">

              <tr>

                <td width="10"><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></td>

                <td class="main"><?php echo '<a href="' . tep_href_link(FILENAME_PRODUCT_REVIEWS, tep_get_all_get_params()) . '">' . tep_image_button('button_reviews.gif', IMAGE_BUTTON_REVIEWS) . '</a>'; ?></td>

<!-- Master Products //-->

<?php if ($product_master['product_master_status']!= 1) { ?>

                <td class="main" align="right"><?php echo tep_draw_hidden_field('products_id', $product_info['products_id']) . tep_image_submit('button_in_cart.gif', IMAGE_BUTTON_IN_CART); ?></td>

<?php

}

//logic for displaying incart button or test message

if (PRICES_LOGGED_IN == 'false')

      $submit_button = tep_image_submit('button_in_cart.gif', IMAGE_BUTTON_IN_CART);

      $submit_product_quant = 'Quantity:   <input type="text" name="cart_quantity" value="1" maxlength="2" size="2">  ';

 

if ( (PRICES_LOGGED_IN == 'true') && (!tep_session_is_registered('customer_id'))) {

      $submit_button = '<a href="' . tep_href_link(FILENAME_LOGIN, '','SSL') . '">'  . PRICES_LOGGED_IN_SUBMIT . '</a> ';

      $submit_product_quant = '';

        }  else {

                                //!UNCOMMENT LINES BELOW IF YOU DONT WANNA DISPLAY YOUR BASED PRICE TO REGISTERED CUSTOMERS group zero

                                //if ( (PRICES_LOGGED_IN == 'true') && ($customer_group['customers_group_id'] == 0)) {

                          //    $buy_now_button_d = '<a href="' . tep_href_link(FILENAME_LOGIN, '','SSL') . '">'  . PRICES_LOGGED_IN_BUY_TEXT . '</a> ';

                                //                $submit_product_quant = '';

                                  //}  else {

      $submit_button = tep_image_submit('button_in_cart.gif', IMAGE_BUTTON_IN_CART);

      $submit_product_quant = 'Quantity:   <input type="text" name="cart_quantity" value="1" maxlength="2" size="2">  ';

          //} //UNCOMMENT ALSO THIS LINE

                                        }

//#######################################

?>

<?php echo $submit_product_quant;

                    echo $submit_button; ?>

 

                <td width="10"><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></td>

              </tr>

            </table></td>

          </tr>

        </table></td>

      </tr>

      <tr>

        <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>

      </tr>

<?php

 

$master_query = tep_db_query("select products_id from " . TABLE_PRODUCTS . " where products_master =  '" . (int)$HTTP_GET_VARS['products_id'] . "'");

$results = tep_db_fetch_array($master_query);

if ($results['products_id'] != null) { ?>

 

  <tr>

    <td align="left" class="main"><?php echo TEXT_SLAVE_PRODUCTS; ?></td>

  </tr>

      <tr>

        <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>

      </tr>

  <tr>

    <td><?php include(DIR_WS_MODULES . FILENAME_MASTER_PRODUCTS); ?></td>

  </tr>

 

<?php

  }

?>

<!-- Master Products EOF //-->

      <tr>

        <td>

<?php

//added for cross -sell

  if ( (USE_CACHE == 'true') && !SID) {

    echo tep_cache_also_purchased(3600);

    include(DIR_WS_MODULES . FILENAME_XSELL_PRODUCTS);

  } else {

    include(DIR_WS_MODULES . FILENAME_XSELL_PRODUCTS);

      include(DIR_WS_MODULES . FILENAME_ALSO_PURCHASED_PRODUCTS);

    }

  }

?>

        </td>

      </tr>

</table>

</form>

 

 

 

 

 

 

Many thanks,

 

greetings,

 

cyaneo

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...