Results 1 to 9 of 9
  1. #1
    Join Date
    Oct 2014
    Posts
    11
    Plugin Contributions
    0

    Default How to deal with this problem?

    I add review and MSRP price on the product_listing.php page. But the first item gives a "More info", not a buy now button. Is there something wrong?

    Name:  1.jpg
Views: 284
Size:  32.6 KB


    PHP Code:

    <?php
    /**
     * product_listing module
     *
     * @package modules
     * @copyright Copyright 2003-2007 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: product_listing.php 6787 2007-08-24 14:06:33Z drbyte $
     * UPDATED TO WORK WITH COLUMNAR PRODUCT LISTING For Zen Cart v1.3.6 - 10/25/2006
     */
    if (!defined('IS_ADMIN_FLAG')) {
      die(
    'Illegal Access');
    }
    // Column Layout Support originally added for Zen Cart v 1.1.4 by Eric Stamper - 02/14/2004
    // Upgraded to be compatible with Zen-cart v 1.2.0d by Rajeev Tandon - Aug 3, 2004
    // Column Layout Support (Grid Layout) upgraded for v1.3.0 compatibility DrByte 04/04/2006
    //
    if (!defined('PRODUCT_LISTING_LAYOUT_STYLE')) define('PRODUCT_LISTING_LAYOUT_STYLE','rows');
    if (!
    defined('PRODUCT_LISTING_COLUMNS_PER_ROW')) define('PRODUCT_LISTING_COLUMNS_PER_ROW',3);
    $row 0;
    $col 0;
    $list_box_contents = array();
    $title '';

    $max_results = (PRODUCT_LISTING_LAYOUT_STYLE=='columns' && PRODUCT_LISTING_COLUMNS_PER_ROW>0) ? (PRODUCT_LISTING_COLUMNS_PER_ROW * (int)(MAX_DISPLAY_PRODUCTS_LISTING/PRODUCT_LISTING_COLUMNS_PER_ROW)) : MAX_DISPLAY_PRODUCTS_LISTING;


    $show_submit zen_run_normal();
    $listing_split = new splitPageResults($listing_sql$max_results'p.products_id''page');
    $zco_notifier->notify('NOTIFY_MODULE_PRODUCT_LISTING_RESULTCOUNT'$listing_split->number_of_rows);
    $how_many 0;

    // Begin Row Layout Header
    if (PRODUCT_LISTING_LAYOUT_STYLE == 'rows') {        // For Column Layout (Grid Layout) add on module

    $list_box_contents[0] = array('params' => 'class="productListing-rowheading"');

    $zc_col_count_description 0;
    $lc_align '';
    for (
    $col=0$n=sizeof($column_list); $col<$n$col++) {
      switch (
    $column_list[$col]) {
        case 
    'PRODUCT_LIST_MODEL':
        
    $lc_text TABLE_HEADING_MODEL;
        
    $lc_align '';
        
    $zc_col_count_description++;
        break;
        case 
    'PRODUCT_LIST_NAME':
        
    $lc_text TABLE_HEADING_PRODUCTS;
        
    $lc_align '';
        
    $zc_col_count_description++;
        break;
        case 
    'PRODUCT_LIST_MANUFACTURER':
        
    $lc_text TABLE_HEADING_MANUFACTURER;
        
    $lc_align '';
        
    $zc_col_count_description++;
        break;
        case 
    'PRODUCT_LIST_PRICE':
        
    $lc_text TABLE_HEADING_PRICE;
        
    $lc_align 'right' . (PRODUCTS_LIST_PRICE_WIDTH '" width="' PRODUCTS_LIST_PRICE_WIDTH '');
        
    $zc_col_count_description++;
        break;
        case 
    'PRODUCT_LIST_QUANTITY':
        
    $lc_text TABLE_HEADING_QUANTITY;
        
    $lc_align 'right';
        
    $zc_col_count_description++;
        break;
        case 
    'PRODUCT_LIST_WEIGHT':
        
    $lc_text TABLE_HEADING_WEIGHT;
        
    $lc_align 'right';
        
    $zc_col_count_description++;
        break;
        case 
    'PRODUCT_LIST_IMAGE':
        
    $lc_text TABLE_HEADING_IMAGE;
        
    $lc_align 'center';
        
    $zc_col_count_description++;
        break;
      }

      if ( (
    $column_list[$col] != 'PRODUCT_LIST_IMAGE') ) {
        
    $lc_text zen_create_sort_heading($_GET['sort'], $col+1$lc_text);
      }



      
    $list_box_contents[0][$col] = array('align' => $lc_align,
                                          
    'params' => 'class="productListing-heading"',
                                          
    'text' => $lc_text );
    }

    // End Row Layout Header used in Column Layout (Grid Layout) add on module

    /////////////  HEADER ROW ABOVE /////////////////////////////////////////////////

    $num_products_count $listing_split->number_of_rows;

    if (
    $listing_split->number_of_rows 0) {
      
    $rows 0;
      
    // Used for Column Layout (Grid Layout) add on module
      
    $column 0;    
      if (
    PRODUCT_LISTING_LAYOUT_STYLE == 'columns') {
        if (
    $num_products_count PRODUCT_LISTING_COLUMNS_PER_ROW || PRODUCT_LISTING_COLUMNS_PER_ROW == ) {
          
    $col_width floor(100/$num_products_count) - 0.5;
        } else {
          
    $col_width floor(100/PRODUCT_LISTING_COLUMNS_PER_ROW) - 0.5;
        }
      }
      
    // Used for Column Layout (Grid Layout) add on module


      
    $listing $db->Execute($listing_split->sql_query);
      
    $extra_row 0;
      while (!
    $listing->EOF) {

        if (
    PRODUCT_LISTING_LAYOUT_STYLE == 'rows') { // Used in Column Layout (Grid Layout) Add on module
        
    $rows++;

        if (((
    $rows-$extra_row)/2) == floor(($rows-$extra_row)/2)) {
          
    $list_box_contents[$rows] = array('params' => 'class="productListing-even"');
        } else {
          
    $list_box_contents[$rows] = array('params' => 'class="productListing-odd"');
        }

        
    $cur_row sizeof($list_box_contents) - 1;
        }   
    // End of Conditional execution - only for row (regular style layout)

        
    $product_contents = array(); // Used For Column Layout (Grid Layout) Add on module

        
    for ($col=0$n=sizeof($column_list); $col<$n$col++) {
          
    $lc_align '';
          switch (
    $column_list[$col]) {
            case 
    'PRODUCT_LIST_MODEL':
            
    $lc_align '';
            
    $lc_text $listing->fields['products_model'];
            break;
            case 
    'PRODUCT_LIST_NAME':
            
    $lc_align '';
            if (isset(
    $_GET['manufacturers_id'])) {
              
    $lc_text '<h3 class="itemTitle"><a href="' zen_href_link(zen_get_info_page($listing->fields['products_id']), 'cPath=' . (($_GET['manufacturers_id'] > and $_GET['filter_id']) > ?  zen_get_generated_category_path_rev($_GET['filter_id']) : ($_GET['cPath'] > zen_get_generated_category_path_rev($_GET['cPath']) : zen_get_generated_category_path_rev($listing->fields['master_categories_id']))) . '&products_id=' $listing->fields['products_id']) . '">' $listing->fields['products_name'] . '</a></h3><div class="listingDescription">' '</div>' ;
            } else {
              
    $lc_text '<h3 class="itemTitle"><a href="' zen_href_link(zen_get_info_page($listing->fields['products_id']), 'cPath=' . (($_GET['manufacturers_id'] > and $_GET['filter_id']) > ?  zen_get_generated_category_path_rev($_GET['filter_id']) : ($_GET['cPath'] > zen_get_generated_category_path_rev($_GET['cPath']) : zen_get_generated_category_path_rev($listing->fields['master_categories_id']))) . '&products_id=' $listing->fields['products_id']) . '">' $listing->fields['products_name'] . '</a></h3><div class="listingDescription">' '</div>';            
            }
            
    // 2P added BOF - Average Product Rating
            
    $link_of_product zen_href_link(zen_get_info_page($listing->fields['products_id']), 'cPath=' . ( ($_GET['manufacturers_id'] > and $_GET['filter_id']) > zen_get_generated_category_path_rev($_GET['filter_id']) : $_GET['cPath'] > zen_get_generated_category_path_rev($_GET['cPath']) : zen_get_generated_category_path_rev($listing->fields['master_categories_id'])) . '&products_id=' $listing->fields['products_id']);
            
    // 2P added EOF - Average Product Rating
            // 2P added BOF - Average Product Rating
              
    if (reviews_count_function($listing->fields['products_id'], 'count') > ) {
                
    $stars_image_suffix str_replace('.''_'zen_round(reviews_average_rating_function($listing->fields['products_id'], 'average_rating') * 20) / 2); // for stars_0_5.gif, stars_1.gif, stars_1_5.gif etc.
                
    $average_rating zen_round(reviews_average_rating_function($listing->fields['products_id'], 'average_rating'), 2);
                
    $lc_text .= '(<a href="' $link_of_product '"><strong>' reviews_count_function($listing->fields['products_id'], 'count') . '</strong></a>)' zen_image(DIR_WS_TEMPLATE_IMAGES 'stars_' $stars_image_suffix '.gif'sprintf(BOX_REVIEWS_TEXT_OF_5_STARS$average_rating));
              }else{
                
    $lc_text .= '(<a href="' $link_of_product '"><strong>0</strong></a>)' zen_image(DIR_WS_TEMPLATE_IMAGES 'stars_5.gif'sprintf(BOX_REVIEWS_TEXT_OF_5_STARS'5'));
              }

            
    // 2P added EOF - Average Product Rating
            
    break;
            case 
    'PRODUCT_LIST_MANUFACTURER':
            
    $lc_align '';
            
    $lc_text '<a href="' zen_href_link(FILENAME_DEFAULT'manufacturers_id=' $listing->fields['manufacturers_id']) . '">' $listing->fields['manufacturers_name'] . '</a>';
            break;
            case 
    'PRODUCT_LIST_PRICE':
            
            
    //MSRP price begin
            
    $msrpprice npf_field_value($listing->fields['products_id'],'products_msrp');
            
    $msrp_price "$" number_format($msrpprice2);
            
    $lc_text =  '<span class="price">'.$msrp_price.'</span>';
            
    //MSRP price over

            
    $lc_price zen_get_products_display_price($listing->fields['products_id']) . '<br />';
            
    $lc_align 'right';
            
    $lc_text .=  '<span class="price">'.$lc_price.'</span>';

            
    // more info in place of buy now
            
    $lc_button '';
            if (
    zen_has_product_attributes($listing->fields['products_id']) or PRODUCT_LIST_PRICE_BUY_NOW == '0') {
              
    $lc_button '<a href="' zen_href_link(zen_get_info_page($listing->fields['products_id']), 'cPath=' . (($_GET['manufacturers_id'] > and $_GET['filter_id']) > ?  zen_get_generated_category_path_rev($_GET['filter_id']) : ($_GET['cPath'] > $_GET['cPath'] : zen_get_generated_category_path_rev($listing->fields['master_categories_id']))) . '&products_id=' $listing->fields['products_id']) . '">' MORE_INFO_TEXT '</a>';
            } else {
              if (
    PRODUCT_LISTING_MULTIPLE_ADD_TO_CART != 0) {
                if (
                    
    // not a hide qty box product
                    
    $listing->fields['products_qty_box_status'] != &&
                    
    // product type can be added to cart
                    
    zen_get_products_allow_add_to_cart($listing->fields['products_id']) != 'N'
                    
    &&
                    
    // product is not call for price
                    
    $listing->fields['product_is_call'] == 0
                    
    &&
                    
    // product is in stock or customers may add it to cart anyway
                    
    ($listing->fields['products_quantity'] > || SHOW_PRODUCTS_SOLD_OUT_IMAGE == 0) ) {
                  
    $how_many++;
                }
                
    // hide quantity box
                
    if ($listing->fields['products_qty_box_status'] == 0) {
                  
    $lc_button '<a href="' zen_href_link($_GET['main_page'], zen_get_all_get_params(array('action')) . 'action=buy_now&products_id=' $listing->fields['products_id']) . '">' zen_image_button(BUTTON_IMAGE_BUY_NOWBUTTON_BUY_NOW_ALT'class="listingBuyNowButton"') . '</a>';
                } else {
                  
    $lc_button TEXT_PRODUCT_LISTING_MULTIPLE_ADD_TO_CART "<input type=\"text\" name=\"products_id[" $listing->fields['products_id'] . "]\" value=\"0\" size=\"4\" />";
                }
              } else {
    // qty box with add to cart button
                
    if (PRODUCT_LIST_PRICE_BUY_NOW == '2' && $listing->fields['products_qty_box_status'] != 0) {
                  
    $lc_buttonzen_draw_form('cart_quantity'zen_href_link(zen_get_info_page($listing->fields['products_id']), zen_get_all_get_params(array('action')) . 'action=add_product&products_id=' $listing->fields['products_id']), 'post''enctype="multipart/form-data"') . '<input type="text" name="cart_quantity" value="' . (zen_get_buy_now_qty($listing->fields['products_id'])) . '" maxlength="6" size="4" /><br />' zen_draw_hidden_field('products_id'$listing->fields['products_id']) . zen_image_submit(BUTTON_IMAGE_IN_CARTBUTTON_IN_CART_ALT) . '</form>';
                } else {
                  
    $lc_button '<a href="' zen_href_link($_GET['main_page'], zen_get_all_get_params(array('action')) . 'action=buy_now&products_id=' $listing->fields['products_id']) . '">' zen_image_button(BUTTON_IMAGE_BUY_NOWBUTTON_BUY_NOW_ALT'class="listingBuyNowButton"') . '</a>';
                }
              }
            }
            
    $the_button $lc_button;
            
    $products_link '<a href="' zen_href_link(zen_get_info_page($listing->fields['products_id']), 'cPath=' . ( ($_GET['manufacturers_id'] > and $_GET['filter_id']) > zen_get_generated_category_path_rev($_GET['filter_id']) : $_GET['cPath'] > zen_get_generated_category_path_rev($_GET['cPath']) : zen_get_generated_category_path_rev($listing->fields['master_categories_id'])) . '&products_id=' $listing->fields['products_id']) . '">' MORE_INFO_TEXT '</a>';
            
    $lc_text .= '<br />' zen_get_buy_now_button($listing->fields['products_id'], $the_button$products_link) . '<br />' zen_get_products_quantity_min_units_display($listing->fields['products_id']);
            
    $lc_text .= '<br />' . (zen_get_show_product_switch($listing->fields['products_id'], 'ALWAYS_FREE_SHIPPING_IMAGE_SWITCH') ? (zen_get_product_is_always_free_shipping($listing->fields['products_id']) ? TEXT_PRODUCT_FREE_SHIPPING_ICON '<br />' '') : '');    
            break;
            case 
    'PRODUCT_LIST_QUANTITY':
            
    $lc_align 'right';
            
    $lc_text $listing->fields['products_quantity'];
            break;
            case 
    'PRODUCT_LIST_WEIGHT':
            
    $lc_align 'right';
            
    $lc_text $listing->fields['products_weight'];
            break;
            case 
    'PRODUCT_LIST_IMAGE':
            
    $lc_align 'center';
            if (
    $listing->fields['products_image'] == '' and PRODUCTS_IMAGE_NO_IMAGE_STATUS == 0) {
              
    $lc_text '';
            } else {
              if (isset(
    $_GET['manufacturers_id'])) {
                
    $lc_text '<span class="image"><a href="' zen_href_link(zen_get_info_page($listing->fields['products_id']), 'cPath=' . (($_GET['manufacturers_id'] > and $_GET['filter_id']) > ?  zen_get_generated_category_path_rev($_GET['filter_id']) : ($_GET['cPath'] > zen_get_generated_category_path_rev($_GET['cPath']) : zen_get_generated_category_path_rev($listing->fields['master_categories_id']))) . '&products_id=' $listing->fields['products_id']) . '">' zen_image(DIR_WS_IMAGES $listing->fields['products_image'], $listing->fields['products_name'], IMAGE_PRODUCT_LISTING_WIDTHIMAGE_PRODUCT_LISTING_HEIGHT'class="listingProductImage"') . '</a></span>';
              } else {
                
    $lc_text '<span class="image"><a href="' zen_href_link(zen_get_info_page($listing->fields['products_id']), 'cPath=' . (($_GET['manufacturers_id'] > and $_GET['filter_id']) > ?  zen_get_generated_category_path_rev($_GET['filter_id']) : ($_GET['cPath'] > zen_get_generated_category_path_rev($_GET['cPath']) : zen_get_generated_category_path_rev($listing->fields['master_categories_id']))) . '&products_id=' $listing->fields['products_id']) . '">' zen_image(DIR_WS_IMAGES $listing->fields['products_image'], $listing->fields['products_name'], IMAGE_PRODUCT_LISTING_WIDTHIMAGE_PRODUCT_LISTING_HEIGHT'class="listingProductImage"') . '</a></span>';
              }
            }
            break;
          }

          
    $product_contents[] = $lc_text// Used For Column Layout (Grid Layout) Option

          
    if (PRODUCT_LISTING_LAYOUT_STYLE == 'rows') {
          
    $list_box_contents[$rows][$col] = array('align' => $lc_align,
                                                  
    'params' => 'class="productListing-data"',
                                                  
    'text'  => $lc_text);
        }
        }

        
    // add description and match alternating colors
        //if (PRODUCT_LIST_DESCRIPTION > 0) {
        //  $rows++;
        //  if ($extra_row == 1) {
        //    $list_box_description = "productListing-data-description-even";
        //    $extra_row=0;
        //  } else {
        //    $list_box_description = "productListing-data-description-odd";
        //    $extra_row=1;
        //  }
        //  $list_box_contents[$rows][] = array('params' => 'class="' . $list_box_description . '" colspan="' . $zc_col_count_description . '"',
        //  'text' => zen_trunc_string(zen_clean_html(stripslashes(zen_get_products_description($listing->fields['products_id'], $_SESSION['languages_id']))), PRODUCT_LIST_DESCRIPTION));
        //}

        // Following code will be executed only if Column Layout (Grid Layout) option is chosen
        
    if (PRODUCT_LISTING_LAYOUT_STYLE == 'columns') {
          
    $lc_text implode('<br />'$product_contents);
          
    $list_box_contents[$rows][$column] = array('params' => 'class="centerBoxContentsProducts centeredContent back"' ' ' 'style="width:' $col_width '%;"',
                                                     
    'text'  => $lc_text);
          
    $column ++;
          if (
    $column >= PRODUCT_LISTING_COLUMNS_PER_ROW) {
            
    $column 0;
            
    $rows ++;
          }
        }
        
    // End of Code fragment for Column Layout (Grid Layout) option in add on module
        
    $listing->MoveNext();
      }
      
    $error_categories false;
    } else {
      
    $list_box_contents = array();

      
    $list_box_contents[0] = array('params' => 'class="productListing-odd"');
      
    $list_box_contents[0][] = array('params' => 'class="productListing-data"',
                                                  
    'text' => TEXT_NO_PRODUCTS);

      
    $error_categories true;
    }

    if ((
    $how_many and $show_submit == true and $listing_split->number_of_rows 0) and (PRODUCT_LISTING_MULTIPLE_ADD_TO_CART == or  PRODUCT_LISTING_MULTIPLE_ADD_TO_CART == 3) ) {
      
    $show_top_submit_button true;
    } else {
      
    $show_top_submit_button false;
    }
    if ((
    $how_many and $show_submit == true and $listing_split->number_of_rows 0) and (PRODUCT_LISTING_MULTIPLE_ADD_TO_CART >= 2) ) {
      
    $show_bottom_submit_button true;
    } else {
      
    $show_bottom_submit_button false;
    }



      if (
    $how_many && PRODUCT_LISTING_MULTIPLE_ADD_TO_CART != and $show_submit == true and $listing_split->number_of_rows 0) {
      
    // bof: multiple products
        
    echo zen_draw_form('multiple_products_cart_quantity'zen_href_link(FILENAME_DEFAULTzen_get_all_get_params(array('action')) . 'action=multiple_products_add_product'), 'post''enctype="multipart/form-data"');
      }

    ?>

  2. #2
    Join Date
    Dec 2011
    Location
    Wisconsin, USA
    Posts
    674
    Plugin Contributions
    21

    Default Re: How to deal with this problem?

    Quote Originally Posted by andis02 View Post
    I add review and MSRP price on the product_listing.php page. But the first item gives a "More info", not a buy now button. Is there something wrong?

    Name:  1.jpg
Views: 284
Size:  32.6 KB


    PHP Code:

    <?php
    /**
     * product_listing module
     *
     * @package modules
     * @copyright Copyright 2003-2007 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: product_listing.php 6787 2007-08-24 14:06:33Z drbyte $
     * UPDATED TO WORK WITH COLUMNAR PRODUCT LISTING For Zen Cart v1.3.6 - 10/25/2006
     */
    if (!defined('IS_ADMIN_FLAG')) {
      die(
    'Illegal Access');
    }
    // Column Layout Support originally added for Zen Cart v 1.1.4 by Eric Stamper - 02/14/2004
    // Upgraded to be compatible with Zen-cart v 1.2.0d by Rajeev Tandon - Aug 3, 2004
    // Column Layout Support (Grid Layout) upgraded for v1.3.0 compatibility DrByte 04/04/2006
    //
    if (!defined('PRODUCT_LISTING_LAYOUT_STYLE')) define('PRODUCT_LISTING_LAYOUT_STYLE','rows');
    if (!
    defined('PRODUCT_LISTING_COLUMNS_PER_ROW')) define('PRODUCT_LISTING_COLUMNS_PER_ROW',3);
    $row 0;
    $col 0;
    $list_box_contents = array();
    $title '';

    $max_results = (PRODUCT_LISTING_LAYOUT_STYLE=='columns' && PRODUCT_LISTING_COLUMNS_PER_ROW>0) ? (PRODUCT_LISTING_COLUMNS_PER_ROW * (int)(MAX_DISPLAY_PRODUCTS_LISTING/PRODUCT_LISTING_COLUMNS_PER_ROW)) : MAX_DISPLAY_PRODUCTS_LISTING;


    $show_submit zen_run_normal();
    $listing_split = new splitPageResults($listing_sql$max_results'p.products_id''page');
    $zco_notifier->notify('NOTIFY_MODULE_PRODUCT_LISTING_RESULTCOUNT'$listing_split->number_of_rows);
    $how_many 0;

    // Begin Row Layout Header
    if (PRODUCT_LISTING_LAYOUT_STYLE == 'rows') {        // For Column Layout (Grid Layout) add on module

    $list_box_contents[0] = array('params' => 'class="productListing-rowheading"');

    $zc_col_count_description 0;
    $lc_align '';
    for (
    $col=0$n=sizeof($column_list); $col<$n$col++) {
      switch (
    $column_list[$col]) {
        case 
    'PRODUCT_LIST_MODEL':
        
    $lc_text TABLE_HEADING_MODEL;
        
    $lc_align '';
        
    $zc_col_count_description++;
        break;
        case 
    'PRODUCT_LIST_NAME':
        
    $lc_text TABLE_HEADING_PRODUCTS;
        
    $lc_align '';
        
    $zc_col_count_description++;
        break;
        case 
    'PRODUCT_LIST_MANUFACTURER':
        
    $lc_text TABLE_HEADING_MANUFACTURER;
        
    $lc_align '';
        
    $zc_col_count_description++;
        break;
        case 
    'PRODUCT_LIST_PRICE':
        
    $lc_text TABLE_HEADING_PRICE;
        
    $lc_align 'right' . (PRODUCTS_LIST_PRICE_WIDTH '" width="' PRODUCTS_LIST_PRICE_WIDTH '');
        
    $zc_col_count_description++;
        break;
        case 
    'PRODUCT_LIST_QUANTITY':
        
    $lc_text TABLE_HEADING_QUANTITY;
        
    $lc_align 'right';
        
    $zc_col_count_description++;
        break;
        case 
    'PRODUCT_LIST_WEIGHT':
        
    $lc_text TABLE_HEADING_WEIGHT;
        
    $lc_align 'right';
        
    $zc_col_count_description++;
        break;
        case 
    'PRODUCT_LIST_IMAGE':
        
    $lc_text TABLE_HEADING_IMAGE;
        
    $lc_align 'center';
        
    $zc_col_count_description++;
        break;
      }

      if ( (
    $column_list[$col] != 'PRODUCT_LIST_IMAGE') ) {
        
    $lc_text zen_create_sort_heading($_GET['sort'], $col+1$lc_text);
      }



      
    $list_box_contents[0][$col] = array('align' => $lc_align,
                                          
    'params' => 'class="productListing-heading"',
                                          
    'text' => $lc_text );
    }

    // End Row Layout Header used in Column Layout (Grid Layout) add on module

    /////////////  HEADER ROW ABOVE /////////////////////////////////////////////////

    $num_products_count $listing_split->number_of_rows;

    if (
    $listing_split->number_of_rows 0) {
      
    $rows 0;
      
    // Used for Column Layout (Grid Layout) add on module
      
    $column 0;    
      if (
    PRODUCT_LISTING_LAYOUT_STYLE == 'columns') {
        if (
    $num_products_count PRODUCT_LISTING_COLUMNS_PER_ROW || PRODUCT_LISTING_COLUMNS_PER_ROW == ) {
          
    $col_width floor(100/$num_products_count) - 0.5;
        } else {
          
    $col_width floor(100/PRODUCT_LISTING_COLUMNS_PER_ROW) - 0.5;
        }
      }
      
    // Used for Column Layout (Grid Layout) add on module


      
    $listing $db->Execute($listing_split->sql_query);
      
    $extra_row 0;
      while (!
    $listing->EOF) {

        if (
    PRODUCT_LISTING_LAYOUT_STYLE == 'rows') { // Used in Column Layout (Grid Layout) Add on module
        
    $rows++;

        if (((
    $rows-$extra_row)/2) == floor(($rows-$extra_row)/2)) {
          
    $list_box_contents[$rows] = array('params' => 'class="productListing-even"');
        } else {
          
    $list_box_contents[$rows] = array('params' => 'class="productListing-odd"');
        }

        
    $cur_row sizeof($list_box_contents) - 1;
        }   
    // End of Conditional execution - only for row (regular style layout)

        
    $product_contents = array(); // Used For Column Layout (Grid Layout) Add on module

        
    for ($col=0$n=sizeof($column_list); $col<$n$col++) {
          
    $lc_align '';
          switch (
    $column_list[$col]) {
            case 
    'PRODUCT_LIST_MODEL':
            
    $lc_align '';
            
    $lc_text $listing->fields['products_model'];
            break;
            case 
    'PRODUCT_LIST_NAME':
            
    $lc_align '';
            if (isset(
    $_GET['manufacturers_id'])) {
              
    $lc_text '<h3 class="itemTitle"><a href="' zen_href_link(zen_get_info_page($listing->fields['products_id']), 'cPath=' . (($_GET['manufacturers_id'] > and $_GET['filter_id']) > ?  zen_get_generated_category_path_rev($_GET['filter_id']) : ($_GET['cPath'] > zen_get_generated_category_path_rev($_GET['cPath']) : zen_get_generated_category_path_rev($listing->fields['master_categories_id']))) . '&products_id=' $listing->fields['products_id']) . '">' $listing->fields['products_name'] . '</a></h3><div class="listingDescription">' '</div>' ;
            } else {
              
    $lc_text '<h3 class="itemTitle"><a href="' zen_href_link(zen_get_info_page($listing->fields['products_id']), 'cPath=' . (($_GET['manufacturers_id'] > and $_GET['filter_id']) > ?  zen_get_generated_category_path_rev($_GET['filter_id']) : ($_GET['cPath'] > zen_get_generated_category_path_rev($_GET['cPath']) : zen_get_generated_category_path_rev($listing->fields['master_categories_id']))) . '&products_id=' $listing->fields['products_id']) . '">' $listing->fields['products_name'] . '</a></h3><div class="listingDescription">' '</div>';            
            }
            
    // 2P added BOF - Average Product Rating
            
    $link_of_product zen_href_link(zen_get_info_page($listing->fields['products_id']), 'cPath=' . ( ($_GET['manufacturers_id'] > and $_GET['filter_id']) > zen_get_generated_category_path_rev($_GET['filter_id']) : $_GET['cPath'] > zen_get_generated_category_path_rev($_GET['cPath']) : zen_get_generated_category_path_rev($listing->fields['master_categories_id'])) . '&products_id=' $listing->fields['products_id']);
            
    // 2P added EOF - Average Product Rating
            // 2P added BOF - Average Product Rating
              
    if (reviews_count_function($listing->fields['products_id'], 'count') > ) {
                
    $stars_image_suffix str_replace('.''_'zen_round(reviews_average_rating_function($listing->fields['products_id'], 'average_rating') * 20) / 2); // for stars_0_5.gif, stars_1.gif, stars_1_5.gif etc.
                
    $average_rating zen_round(reviews_average_rating_function($listing->fields['products_id'], 'average_rating'), 2);
                
    $lc_text .= '(<a href="' $link_of_product '"><strong>' reviews_count_function($listing->fields['products_id'], 'count') . '</strong></a>)' zen_image(DIR_WS_TEMPLATE_IMAGES 'stars_' $stars_image_suffix '.gif'sprintf(BOX_REVIEWS_TEXT_OF_5_STARS$average_rating));
              }else{
                
    $lc_text .= '(<a href="' $link_of_product '"><strong>0</strong></a>)' zen_image(DIR_WS_TEMPLATE_IMAGES 'stars_5.gif'sprintf(BOX_REVIEWS_TEXT_OF_5_STARS'5'));
              }

            
    // 2P added EOF - Average Product Rating
            
    break;
            case 
    'PRODUCT_LIST_MANUFACTURER':
            
    $lc_align '';
            
    $lc_text '<a href="' zen_href_link(FILENAME_DEFAULT'manufacturers_id=' $listing->fields['manufacturers_id']) . '">' $listing->fields['manufacturers_name'] . '</a>';
            break;
            case 
    'PRODUCT_LIST_PRICE':
            
            
    //MSRP price begin
            
    $msrpprice npf_field_value($listing->fields['products_id'],'products_msrp');
            
    $msrp_price "$" number_format($msrpprice2);
            
    $lc_text =  '<span class="price">'.$msrp_price.'</span>';
            
    //MSRP price over

            
    $lc_price zen_get_products_display_price($listing->fields['products_id']) . '<br />';
            
    $lc_align 'right';
            
    $lc_text .=  '<span class="price">'.$lc_price.'</span>';

            
    // more info in place of buy now
            
    $lc_button '';
            if (
    zen_has_product_attributes($listing->fields['products_id']) or PRODUCT_LIST_PRICE_BUY_NOW == '0') {
              
    $lc_button '<a href="' zen_href_link(zen_get_info_page($listing->fields['products_id']), 'cPath=' . (($_GET['manufacturers_id'] > and $_GET['filter_id']) > ?  zen_get_generated_category_path_rev($_GET['filter_id']) : ($_GET['cPath'] > $_GET['cPath'] : zen_get_generated_category_path_rev($listing->fields['master_categories_id']))) . '&products_id=' $listing->fields['products_id']) . '">' MORE_INFO_TEXT '</a>';
            } else {
              if (
    PRODUCT_LISTING_MULTIPLE_ADD_TO_CART != 0) {
                if (
                    
    // not a hide qty box product
                    
    $listing->fields['products_qty_box_status'] != &&
                    
    // product type can be added to cart
                    
    zen_get_products_allow_add_to_cart($listing->fields['products_id']) != 'N'
                    
    &&
                    
    // product is not call for price
                    
    $listing->fields['product_is_call'] == 0
                    
    &&
                    
    // product is in stock or customers may add it to cart anyway
                    
    ($listing->fields['products_quantity'] > || SHOW_PRODUCTS_SOLD_OUT_IMAGE == 0) ) {
                  
    $how_many++;
                }
                
    // hide quantity box
                
    if ($listing->fields['products_qty_box_status'] == 0) {
                  
    $lc_button '<a href="' zen_href_link($_GET['main_page'], zen_get_all_get_params(array('action')) . 'action=buy_now&products_id=' $listing->fields['products_id']) . '">' zen_image_button(BUTTON_IMAGE_BUY_NOWBUTTON_BUY_NOW_ALT'class="listingBuyNowButton"') . '</a>';
                } else {
                  
    $lc_button TEXT_PRODUCT_LISTING_MULTIPLE_ADD_TO_CART "<input type=\"text\" name=\"products_id[" $listing->fields['products_id'] . "]\" value=\"0\" size=\"4\" />";
                }
              } else {
    // qty box with add to cart button
                
    if (PRODUCT_LIST_PRICE_BUY_NOW == '2' && $listing->fields['products_qty_box_status'] != 0) {
                  
    $lc_buttonzen_draw_form('cart_quantity'zen_href_link(zen_get_info_page($listing->fields['products_id']), zen_get_all_get_params(array('action')) . 'action=add_product&products_id=' $listing->fields['products_id']), 'post''enctype="multipart/form-data"') . '<input type="text" name="cart_quantity" value="' . (zen_get_buy_now_qty($listing->fields['products_id'])) . '" maxlength="6" size="4" /><br />' zen_draw_hidden_field('products_id'$listing->fields['products_id']) . zen_image_submit(BUTTON_IMAGE_IN_CARTBUTTON_IN_CART_ALT) . '</form>';
                } else {
                  
    $lc_button '<a href="' zen_href_link($_GET['main_page'], zen_get_all_get_params(array('action')) . 'action=buy_now&products_id=' $listing->fields['products_id']) . '">' zen_image_button(BUTTON_IMAGE_BUY_NOWBUTTON_BUY_NOW_ALT'class="listingBuyNowButton"') . '</a>';
                }
              }
            }
            
    $the_button $lc_button;
            
    $products_link '<a href="' zen_href_link(zen_get_info_page($listing->fields['products_id']), 'cPath=' . ( ($_GET['manufacturers_id'] > and $_GET['filter_id']) > zen_get_generated_category_path_rev($_GET['filter_id']) : $_GET['cPath'] > zen_get_generated_category_path_rev($_GET['cPath']) : zen_get_generated_category_path_rev($listing->fields['master_categories_id'])) . '&products_id=' $listing->fields['products_id']) . '">' MORE_INFO_TEXT '</a>';
            
    $lc_text .= '<br />' zen_get_buy_now_button($listing->fields['products_id'], $the_button$products_link) . '<br />' zen_get_products_quantity_min_units_display($listing->fields['products_id']);
            
    $lc_text .= '<br />' . (zen_get_show_product_switch($listing->fields['products_id'], 'ALWAYS_FREE_SHIPPING_IMAGE_SWITCH') ? (zen_get_product_is_always_free_shipping($listing->fields['products_id']) ? TEXT_PRODUCT_FREE_SHIPPING_ICON '<br />' '') : '');    
            break;
            case 
    'PRODUCT_LIST_QUANTITY':
            
    $lc_align 'right';
            
    $lc_text $listing->fields['products_quantity'];
            break;
            case 
    'PRODUCT_LIST_WEIGHT':
            
    $lc_align 'right';
            
    $lc_text $listing->fields['products_weight'];
            break;
            case 
    'PRODUCT_LIST_IMAGE':
            
    $lc_align 'center';
            if (
    $listing->fields['products_image'] == '' and PRODUCTS_IMAGE_NO_IMAGE_STATUS == 0) {
              
    $lc_text '';
            } else {
              if (isset(
    $_GET['manufacturers_id'])) {
                
    $lc_text '<span class="image"><a href="' zen_href_link(zen_get_info_page($listing->fields['products_id']), 'cPath=' . (($_GET['manufacturers_id'] > and $_GET['filter_id']) > ?  zen_get_generated_category_path_rev($_GET['filter_id']) : ($_GET['cPath'] > zen_get_generated_category_path_rev($_GET['cPath']) : zen_get_generated_category_path_rev($listing->fields['master_categories_id']))) . '&products_id=' $listing->fields['products_id']) . '">' zen_image(DIR_WS_IMAGES $listing->fields['products_image'], $listing->fields['products_name'], IMAGE_PRODUCT_LISTING_WIDTHIMAGE_PRODUCT_LISTING_HEIGHT'class="listingProductImage"') . '</a></span>';
              } else {
                
    $lc_text '<span class="image"><a href="' zen_href_link(zen_get_info_page($listing->fields['products_id']), 'cPath=' . (($_GET['manufacturers_id'] > and $_GET['filter_id']) > ?  zen_get_generated_category_path_rev($_GET['filter_id']) : ($_GET['cPath'] > zen_get_generated_category_path_rev($_GET['cPath']) : zen_get_generated_category_path_rev($listing->fields['master_categories_id']))) . '&products_id=' $listing->fields['products_id']) . '">' zen_image(DIR_WS_IMAGES $listing->fields['products_image'], $listing->fields['products_name'], IMAGE_PRODUCT_LISTING_WIDTHIMAGE_PRODUCT_LISTING_HEIGHT'class="listingProductImage"') . '</a></span>';
              }
            }
            break;
          }

          
    $product_contents[] = $lc_text// Used For Column Layout (Grid Layout) Option

          
    if (PRODUCT_LISTING_LAYOUT_STYLE == 'rows') {
          
    $list_box_contents[$rows][$col] = array('align' => $lc_align,
                                                  
    'params' => 'class="productListing-data"',
                                                  
    'text'  => $lc_text);
        }
        }

        
    // add description and match alternating colors
        //if (PRODUCT_LIST_DESCRIPTION > 0) {
        //  $rows++;
        //  if ($extra_row == 1) {
        //    $list_box_description = "productListing-data-description-even";
        //    $extra_row=0;
        //  } else {
        //    $list_box_description = "productListing-data-description-odd";
        //    $extra_row=1;
        //  }
        //  $list_box_contents[$rows][] = array('params' => 'class="' . $list_box_description . '" colspan="' . $zc_col_count_description . '"',
        //  'text' => zen_trunc_string(zen_clean_html(stripslashes(zen_get_products_description($listing->fields['products_id'], $_SESSION['languages_id']))), PRODUCT_LIST_DESCRIPTION));
        //}

        // Following code will be executed only if Column Layout (Grid Layout) option is chosen
        
    if (PRODUCT_LISTING_LAYOUT_STYLE == 'columns') {
          
    $lc_text implode('<br />'$product_contents);
          
    $list_box_contents[$rows][$column] = array('params' => 'class="centerBoxContentsProducts centeredContent back"' ' ' 'style="width:' $col_width '%;"',
                                                     
    'text'  => $lc_text);
          
    $column ++;
          if (
    $column >= PRODUCT_LISTING_COLUMNS_PER_ROW) {
            
    $column 0;
            
    $rows ++;
          }
        }
        
    // End of Code fragment for Column Layout (Grid Layout) option in add on module
        
    $listing->MoveNext();
      }
      
    $error_categories false;
    } else {
      
    $list_box_contents = array();

      
    $list_box_contents[0] = array('params' => 'class="productListing-odd"');
      
    $list_box_contents[0][] = array('params' => 'class="productListing-data"',
                                                  
    'text' => TEXT_NO_PRODUCTS);

      
    $error_categories true;
    }

    if ((
    $how_many and $show_submit == true and $listing_split->number_of_rows 0) and (PRODUCT_LISTING_MULTIPLE_ADD_TO_CART == or  PRODUCT_LISTING_MULTIPLE_ADD_TO_CART == 3) ) {
      
    $show_top_submit_button true;
    } else {
      
    $show_top_submit_button false;
    }
    if ((
    $how_many and $show_submit == true and $listing_split->number_of_rows 0) and (PRODUCT_LISTING_MULTIPLE_ADD_TO_CART >= 2) ) {
      
    $show_bottom_submit_button true;
    } else {
      
    $show_bottom_submit_button false;
    }



      if (
    $how_many && PRODUCT_LISTING_MULTIPLE_ADD_TO_CART != and $show_submit == true and $listing_split->number_of_rows 0) {
      
    // bof: multiple products
        
    echo zen_draw_form('multiple_products_cart_quantity'zen_href_link(FILENAME_DEFAULTzen_get_all_get_params(array('action')) . 'action=multiple_products_add_product'), 'post''enctype="multipart/form-data"');
      }

    ?>
    Does test01 have attributes?

  3. #3
    Join Date
    Feb 2006
    Location
    Tampa Bay, Florida
    Posts
    10,523
    Plugin Contributions
    127

    Default Re: How to deal with this problem?

    Check other things in the configuration too - is it in stock with quantity > 0? Call for Price = No, etc.
    That Software Guy. My Store: Zen Cart Support
    Available for hire - See my ad in Services
    Plugin Moderator, Documentation Curator, Chief Cook and Bottle-Washer.
    Do you benefit from Zen Cart? Then please support the project.

  4. #4
    Join Date
    Oct 2014
    Posts
    11
    Plugin Contributions
    0

    Default Re: How to deal with this problem?

    Quote Originally Posted by bislewl View Post
    Does test01 have attributes?
    Yes, I add attributes for test01

  5. #5
    Join Date
    Feb 2006
    Location
    Tampa Bay, Florida
    Posts
    10,523
    Plugin Contributions
    127

    Default Re: How to deal with this problem?

    Then that's why. Products with attributes cannot be added to the cart from the listing pages; you must go to the product info page, set the attributes and then add to cart.
    That Software Guy. My Store: Zen Cart Support
    Available for hire - See my ad in Services
    Plugin Moderator, Documentation Curator, Chief Cook and Bottle-Washer.
    Do you benefit from Zen Cart? Then please support the project.

  6. #6
    Join Date
    Oct 2014
    Posts
    11
    Plugin Contributions
    0

    Default Re: How to deal with this problem?

    Thank you Sir, I wasted 2 days here.

  7. #7
    Join Date
    Jul 2012
    Posts
    16,816
    Plugin Contributions
    17

    Default Re: How to deal with this problem?

    Quote Originally Posted by andis02 View Post
    Thank you Sir, I wasted 2 days here.
    In the future assuming that the site might be accessible (or an example) via the internet, the answer likely would have been relatively quick. Or if ever more detail had been made available such as what the difference was between when it last worked as expected and now. (Ie. Had worked initially, but then added an attribute.)

    That type of information helps those helping you get to the answer a lot quicker.
    ZC Installation/Maintenance Support <- Site
    Contribution for contributions welcome...

  8. #8
    Join Date
    Feb 2006
    Location
    Tampa Bay, Florida
    Posts
    10,523
    Plugin Contributions
    127

    Default Re: How to deal with this problem?

    I think @andis02 was just expressing frustration that this was hard to figure out.

    @andis02, don't give up hope! No one is born knowing this stuff. The time you put into understanding how your cart works will pay dividends in the future as your business runs successfully. One thing that might help is getting the manual - see the link in the footer to the book "e-Start your ZenCart website."
    That Software Guy. My Store: Zen Cart Support
    Available for hire - See my ad in Services
    Plugin Moderator, Documentation Curator, Chief Cook and Bottle-Washer.
    Do you benefit from Zen Cart? Then please support the project.

  9. #9
    Join Date
    Jul 2012
    Posts
    16,816
    Plugin Contributions
    17

    Default Re: How to deal with this problem?

    No doubt there, that @andis02 was expressing frustraton or other dsappointment. I *did* try to frame my post so as not to be confrontational however successful (or not). When I got to that last post, I saw a potential for others that mght eventually get to this thread to misinterpret the frustration as the forum not successfully helping. Those that stepped up to the plate definitely would have been able to answer the question in the first post if the posting gudelines had been followed.

    That said, I know that I am not beyond making a posting mistake. I've posted in the wrong forum before, there are some posts where I have confused two different discussions about two different plugins, and I've gone off topic in a thread... Might I make those mistakes again? I hope not, but possible. In the end though, following the posting guidelines has made obtaining answers go ather quickly and I encourage following those guideliines as much as possible.

    Swguy is correct, keep it up. From the picture and description of what has been done to successfully get this far, has been a great start to a successful business.
    ZC Installation/Maintenance Support <- Site
    Contribution for contributions welcome...

 

 

Similar Threads

  1. How to deal with a weekly rate
    By afukada in forum General Questions
    Replies: 0
    Last Post: 17 Jan 2011, 01:14 AM
  2. How to deal with unnecessary blank spaces
    By perfumbg in forum Templates, Stylesheets, Page Layout
    Replies: 2
    Last Post: 2 Jan 2011, 07:11 PM
  3. how to deal with shoes size?
    By summerhere in forum Setting Up Categories, Products, Attributes
    Replies: 2
    Last Post: 28 Aug 2009, 01:55 AM
  4. How to deal with shipping costs using a drop shipper?
    By kburner in forum Built-in Shipping and Payment Modules
    Replies: 0
    Last Post: 29 Aug 2008, 01:03 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
disjunctive-egg