Page 1 of 2 12 LastLast
Results 1 to 10 of 12
  1. #1
    Join Date
    Jan 2009
    Posts
    33
    Plugin Contributions
    0

    application error Interesting Page Layout Problem

    Hi all,

    I have an interesting layout problem that I have been unable to solve. When I have an item without attributes, the product information lines up appropriately:

    http://ourcollegetown.net/index.php?...products_id=44

    However, when I introduce attributes into the product, I get a large block of whitespace between the attributes and product information:

    http://ourcollegetown.net/index.php?...products_id=47


    My TPL Product Display is below. You will notice that I have moved the add to cart and attributes to the top of the page. When I remove the attributes block, the white space disappears:

    PHP Code:
    <?php
    /**
     * Page Template
     *
     * Loaded automatically by index.php?main_page=product_info.<br />
     * Displays details of a typical product
     *
     * @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_product_info_display.php 5369 2006-12-23 10:55:52Z drbyte $
     */
     //require(DIR_WS_MODULES . '/debug_blocks/product_info_prices.php');
    ?>
    <div class="centerColumn" id="productGeneral">

    <!--bof Form start-->
    <?php echo zen_draw_form('cart_quantity'zen_href_link(zen_get_info_page($_GET['products_id']), zen_get_all_get_params(array('action')) . 'action=add_product'), 'post''enctype="multipart/form-data"') . "\n"?>
    <!--eof Form start-->

    <?php if ($messageStack->size('product_info') > 0) echo $messageStack->output('product_info'); ?>

    <!--bof Category Icon -->
    <?php if ($module_show_categories != 0) {?>
    <?php
    /**
     * display the category icons
     */
    require($template->get_template_dir('/tpl_modules_category_icon_display.php',DIR_WS_TEMPLATE$current_page_base,'templates'). '/tpl_modules_category_icon_display.php'); ?>
    <?php 
    ?>
    <!--eof Category Icon -->

    <center>

    <!--bof Product Name-->
    <h1 id="productName" class="productGeneral"><?php echo $products_name?></h1>
    <!--eof Product Name-->


    <br class="clearBoth" />
    <center>
    <!--bof Main Product Image -->
    <div style="text-align: center;">
    <?php
      
    if (zen_not_null($products_image)) {
      
    ?>
    <?php
    /**
     * display the main product image
     */
       
    require($template->get_template_dir('/tpl_modules_main_product_image.php',DIR_WS_TEMPLATE$current_page_base,'templates'). '/tpl_modules_main_product_image.php'); ?>
    <?php
      
    }
    ?>
    <!--eof Main Product Image-->

    <br class="clearBoth" />

    <!--bof Product Price block -->
    <h2 id="productPrices" class="productGeneral">
    <?php
    // base price
      
    if ($show_onetime_charges_description == 'true') {
        
    $one_time '<span >' TEXT_ONETIME_CHARGE_SYMBOL TEXT_ONETIME_CHARGE_DESCRIPTION '</span><br />';
      } else {
        
    $one_time '';
      }
      echo 
    $one_time . ((zen_has_product_attributes_values((int)$_GET['products_id']) and $flag_show_product_info_starting_at == 1) ? TEXT_BASE_PRICE '') . zen_get_products_display_price((int)$_GET['products_id']);
    ?></h2>
    <!--eof Product Price block -->
    <!--bof Additional Product Images -->
    <?php
    /**
     * display the products additional images
     */
      
    require($template->get_template_dir('/tpl_modules_additional_images.php',DIR_WS_TEMPLATE$current_page_base,'templates'). '/tpl_modules_additional_images.php'); ?>
    <!--eof Additional Product Images -->

    </center></div>
    <div style="text-align: left;">
    <!--bof free ship icon  -->
    <?php if(zen_get_product_is_always_free_shipping($products_id_current) && $flag_show_product_info_free_shipping) { ?>
    <div id="freeShippingIcon"><?php echo TEXT_PRODUCT_FREE_SHIPPING_ICON?></div>
    <?php ?>
    <!--eof free ship icon  -->



    </center>

    <!--bof Add to Cart Box -->
    <?php
    if (CUSTOMERS_APPROVAL == and TEXT_LOGIN_FOR_PRICE_BUTTON_REPLACE_SHOWROOM == '') {
      
    // do nothing
    } else {
    ?>
                <?php
        $display_qty 
    = (($flag_show_product_info_in_cart_qty == and $_SESSION['cart']->in_cart($_GET['products_id'])) ? '<p>' PRODUCTS_ORDER_QTY_TEXT_IN_CART $_SESSION['cart']->get_quantity($_GET['products_id']) . '</p>' '');
                if (
    $products_qty_box_status == or $products_quantity_order_max== 1) {
                  
    // hide the quantity box and default to 1
                  
    $the_button '<input type="hidden" name="cart_quantity" value="1" />' zen_draw_hidden_field('products_id', (int)$_GET['products_id']) . zen_image_submit(BUTTON_IMAGE_IN_CARTBUTTON_IN_CART_ALT);
                } else {
                  
    // show the quantity box
        
    $the_button PRODUCTS_ORDER_QTY_TEXT '<input type="text" name="cart_quantity" value="' . (zen_get_buy_now_qty($_GET['products_id'])) . '" maxlength="6" size="4" /><br />' zen_get_products_quantity_min_units_display((int)$_GET['products_id']) . '<br />' zen_draw_hidden_field('products_id', (int)$_GET['products_id']) . zen_image_submit(BUTTON_IMAGE_IN_CARTBUTTON_IN_CART_ALT);
                }
        
    $display_button zen_get_buy_now_button($_GET['products_id'], $the_button);
      
    ?>
      <?php if ($display_qty != '' or $display_button != '') { ?>
        <div id="cartAdd">
        <?php
          
    echo $display_qty;
          echo 
    $display_button;
                
    ?>
              </div>
      <?php // display qty and button ?>
    <?php 
    // CUSTOMERS_APPROVAL == 3 ?>
    <!--eof Add to Cart Box--><br />


    <!--bof Attributes Module -->
    <?php
      
    if ($pr_attr->fields['total'] > 0) {
    ?>
    <?php
    /**
     * display the product atributes
     */
      
    require($template->get_template_dir('/tpl_modules_attributes.php',DIR_WS_TEMPLATE$current_page_base,'templates'). '/tpl_modules_attributes.php'); ?>
    <?php
      
    }
    ?>
    <!--eof Attributes Module -->


    </center>
     <!--bof Product description -->
    <?php if ($products_description != '') { ?>
    <div id="productDescription" class="productGeneral biggerText"><?php echo stripslashes($products_description); ?></div>
    <?php ?>
    <!--eof Product description -->
    <div style="text-align: center;">



    <!--bof Product details list  -->
    <?php if ( (($flag_show_product_info_model == and $products_model != '') or ($flag_show_product_info_weight == and $products_weight !=0) or ($flag_show_product_info_quantity == 1) or ($flag_show_product_info_manufacturer == and !empty($manufacturers_name))) ) { ?>
    <ul id="productDetailsList" class="floatingBox back">
      <?php echo (($flag_show_product_info_model == and $products_model !='') ? '<li>' TEXT_PRODUCT_MODEL $products_model '</li>' '') . "\n"?>
      <?php echo (($flag_show_product_info_weight == and $products_weight !=0) ? '<li>' TEXT_PRODUCT_WEIGHT .  $products_weight TEXT_PRODUCT_WEIGHT_UNIT '</li>'  '') . "\n"?>
      <?php echo (($flag_show_product_info_quantity == 1) ? '<li>' $products_quantity TEXT_PRODUCT_QUANTITY '</li>'  '') . "\n"?>
      <?php echo (($flag_show_product_info_manufacturer == and !empty($manufacturers_name)) ? '<li>' TEXT_PRODUCT_MANUFACTURER $manufacturers_name '</li>' '') . "\n"?>
    </ul>
    <br class="clearBoth" />
    <?php
      
    }
    ?>
    <!--eof Product details list -->


    <!--bof Quantity Discounts table -->
    <?php
      
    if ($products_discount_type != 0) { ?>
    <?php
    /**
     * display the products quantity discount
     */
     
    require($template->get_template_dir('/tpl_modules_products_quantity_discounts.php',DIR_WS_TEMPLATE$current_page_base,'templates'). '/tpl_modules_products_quantity_discounts.php'); ?>
    <?php
      
    }
    ?>
    <!--eof Quantity Discounts table -->

    <!--bof Prev/Next bottom position -->
    <?php if (PRODUCT_INFO_PREVIOUS_NEXT == or PRODUCT_INFO_PREVIOUS_NEXT == 3) { ?>
    <?php
    /**
     * display the product previous/next helper
     */
     
    require($template->get_template_dir('/tpl_products_next_previous.php',DIR_WS_TEMPLATE$current_page_base,'templates'). '/tpl_products_next_previous.php'); ?>
    <?php 
    ?>
    <!--eof Prev/Next bottom position -->

    <!--bof Tell a Friend button -->
    <?php
      
    if ($flag_show_product_info_tell_a_friend == 1) { ?>
    <div id="productTellFriendLink" class="buttonRow forward"><?php echo ($flag_show_product_info_tell_a_friend == '<a href="' zen_href_link(FILENAME_TELL_A_FRIEND'products_id=' $_GET['products_id']) . '">' zen_image_button(BUTTON_IMAGE_TELLAFRIENDBUTTON_TELLAFRIEND_ALT) . '</a>' ''); ?></div>
    <?php
      
    }
    ?>
    <!--eof Tell a Friend button -->

    <!--bof Reviews button and count-->
    <?php
      
    if ($flag_show_product_info_reviews == 1) {
        
    // if more than 0 reviews, then show reviews button; otherwise, show the "write review" button
        
    if ($reviews->fields['count'] > ) { ?>
    <div id="productReviewLink" class="buttonRow back"><?php echo '<a href="' zen_href_link(FILENAME_PRODUCT_REVIEWSzen_get_all_get_params()) . '">' zen_image_button(BUTTON_IMAGE_REVIEWSBUTTON_REVIEWS_ALT) . '</a>'?></div>
    <br class="clearBoth" />
    <p class="reviewCount"><?php echo ($flag_show_product_info_reviews_count == TEXT_CURRENT_REVIEWS ' ' $reviews->fields['count'] : ''); ?></p>
    <?php } else { ?>
    <div id="productReviewLink" class="buttonRow back"><?php echo '<a href="' zen_href_link(FILENAME_PRODUCT_REVIEWS_WRITEzen_get_all_get_params(array())) . '">' zen_image_button(BUTTON_IMAGE_WRITE_REVIEWBUTTON_WRITE_REVIEW_ALT) . '</a>'?></div>
    <br class="clearBoth" />
    <?php
      
    }
    }
    ?>
    <!--eof Reviews button and count -->


    <!--bof Product date added/available-->
    <?php
      
    if ($products_date_available date('Y-m-d H:i:s')) {
        if (
    $flag_show_product_info_date_available == 1) {
    ?>
      <p id="productDateAvailable" class="productGeneral centeredContent"><?php echo sprintf(TEXT_DATE_AVAILABLEzen_date_long($products_date_available)); ?></p>
    <?php
        
    }
      } else {
        if (
    $flag_show_product_info_date_added == 1) {
    ?>
          <p id="productDateAdded" class="productGeneral centeredContent"><?php echo sprintf(TEXT_DATE_ADDEDzen_date_long($products_date_added)); ?></p>
    <?php
        
    // $flag_show_product_info_date_added
      
    }
    ?>
    <!--eof Product date added/available -->

    <!--bof Product URL -->
    <?php
      
    if (zen_not_null($products_url)) {
        if (
    $flag_show_product_info_url == 1) {
    ?>
        <p id="productInfoLink" class="productGeneral centeredContent"><?php echo sprintf(TEXT_MORE_INFORMATIONzen_href_link(FILENAME_REDIRECT'action=url&goto=' urlencode($products_url), 'NONSSL'truefalse)); ?></p>
    <?php
        
    // $flag_show_product_info_url
      
    }
    ?>
    <!--eof Product URL -->

    <!--bof also purchased products module-->
    <?php require($template->get_template_dir('tpl_modules_also_purchased_products.php'DIR_WS_TEMPLATE$current_page_base,'templates'). '/' 'tpl_modules_also_purchased_products.php');?>
    <!--eof also purchased products module-->

    <!--bof Form close-->
    </form>
    <!--bof Form close-->
    </div>
    My TPL Module Attributes is below. You will notice a string of <br> tags that I have used to move the attributes box below the add to cart box. Removing the string of BR tags does not resolve my problem.

    PHP Code:
    <?php
    /**
     * Module Template
     *
     * Template used to render attribute display/input fields
     *
     * @package templateSystem
     * @copyright Copyright 2003-2005 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_modules_attributes.php 3208 2006-03-19 16:48:57Z birdbrain $
     */
    ?>
    <div id="productAttributes">
    <?php if ($zv_display_select_option 0) { ?>
    <br /><br /><br /><br /><br /><br /><br /><br /><br />
    <h3 id="attribsOptionsText"><?php echo TEXT_PRODUCT_OPTIONS?></h3>
    <?php // show please select unless all are readonly ?>

    <?php
        
    for($i=0;$i<sizeof($options_name);$i++) {
    ?>
    <?php
      
    if ($options_comment[$i] != '' and $options_comment_position[$i] == '0') {
    ?>
    <h3 class="attributesComments"><?php echo $options_comment[$i]; ?></h3>
    <?php
      
    }
    ?>

    <div class="wrapperAttribsOptions">
    <h4 class="optionName back"><?php echo $options_name[$i]; ?></h4>
    <div class="back"><?php echo "\n" $options_menu[$i]; ?></div>
    <br class="clearBoth" />
    </div>


    <?php if ($options_comment[$i] != '' and $options_comment_position[$i] == '1') { ?>
        <div class="ProductInfoComments"><?php echo $options_comment[$i]; ?></div>
    <?php ?>


    <?php
    if ($options_attributes_image[$i] != '') {
    ?>
    <?php 
    echo $options_attributes_image[$i]; ?>
    <?php
    }
    ?>
    <br class="clearBoth" />
    <?php
        
    }
    ?>


    <?php
      
    if ($show_onetime_charges_description == 'true') {
    ?>
        <div class="wrapperAttribsOneTime"><?php echo TEXT_ONETIME_CHARGE_SYMBOL TEXT_ONETIME_CHARGE_DESCRIPTION?></div>
    <?php ?>


    <?php
      
    if ($show_attributes_qty_prices_description == 'true') {
    ?>
        <div class="wrapperAttribsQtyPrices"><?php echo zen_image(DIR_WS_TEMPLATE_ICONS 'icon_status_green.gif'TEXT_ATTRIBUTES_QTY_PRICE_HELP_LINK1010) . '&nbsp;' '<a href="javascript:popupWindowPrice(\'' zen_href_link(FILENAME_POPUP_ATTRIBUTES_QTY_PRICES'products_id=' $_GET['products_id'] . '&products_tax_class_id=' $products_tax_class_id) . '\')">' TEXT_ATTRIBUTES_QTY_PRICE_HELP_LINK '</a>'?></div>
    <?php ?>
    </div>
    I am using the latest version of zen cart with a number of add-ons. Any suggestions or observations will be greatly appreciated

  2. #2
    Join Date
    Aug 2005
    Location
    Arizona
    Posts
    27,755
    Plugin Contributions
    9

    Default Re: Interesting Page Layout Problem

    You will notice that I have moved the add to cart and attributes to the top of the page.
    There is just so much relestate so when you add an attribute your description is pushed down. Also, by default the image is first which you have also changed. Other things do not look like they are displayed in proper order as you have them???

    What do you expect it to look like?
    I would order it as you want it displayed
    Your add to cart is after the additional images
    Zen-Venom Get Bitten

  3. #3
    Join Date
    Jan 2009
    Posts
    33
    Plugin Contributions
    0

    Default Re: Interesting Page Layout Problem

    Quote Originally Posted by kobra View Post
    There is just so much relestate so when you add an attribute your description is pushed down. Also, by default the image is first which you have also changed. Other things do not look like they are displayed in proper order as you have them???

    What do you expect it to look like?
    I would order it as you want it displayed
    Your add to cart is after the additional images

    I have the items in the order I would like them to display. Are they not showing up in that order? And, I understand there is only so much real estate, but why would there be SO much whitespace between the attributes and the product information?

  4. #4
    Join Date
    Aug 2005
    Location
    Arizona
    Posts
    27,755
    Plugin Contributions
    9

    Default Re: Interesting Page Layout Problem

    I have the items in the order I would like them to display. Are they not showing up in that order?
    No they are not especially on your first link as add to cart is early in display but late in the code after the additional images
    Zen-Venom Get Bitten

  5. #5
    Join Date
    Jan 2009
    Posts
    33
    Plugin Contributions
    0

    Default Re: Interesting Page Layout Problem

    What could be causing it to not show up appropriately? How do I fix the problem if I have it in the order I would like to to show up.

  6. #6
    Join Date
    Aug 2005
    Location
    Arizona
    Posts
    27,755
    Plugin Contributions
    9

    Default Re: Interesting Page Layout Problem

    From your OP
    When I have an item without attributes, the product information lines up appropriately:
    What you are stating
    How do I fix the problem if I have it in the order I would like to to show up.
    And I am stating that it is not in the order as you suspect is correct
    Zen-Venom Get Bitten

  7. #7
    Join Date
    Jan 2009
    Posts
    33
    Plugin Contributions
    0

    Default Re: Interesting Page Layout Problem

    I'm not sure I follow you, since the items show up in the places I want them to, except for the whitespace between the attributes and product information.

    If I move the add to cart and/or attributes info any closer to the top of the document, Zen kicks them to the left side and under the main product image. If I move them any lower, they are moved below the product information.

    Another interesting twist to this is if I add an additional attribute box, such as at http://ourcollegetown.net/index.php?...products_id=48 , the second attribute box is kicked way down also.

  8. #8
    Join Date
    Aug 2005
    Location
    Arizona
    Posts
    27,755
    Plugin Contributions
    9

    Default Re: Interesting Page Layout Problem

    Look for yourself that the add to cart's order in the code is AFTER your additional image code and through some code quirk it is where you want it and not due to the order.

    I am only suggesting doing it right where you will then have some control versus relying on a "quirk" that gets upset when something else changes as you now have
    Last edited by kobra; 14 Feb 2009 at 01:04 PM.
    Zen-Venom Get Bitten

  9. #9
    Join Date
    Jan 2009
    Posts
    33
    Plugin Contributions
    0

    Default Re: Interesting Page Layout Problem

    But, do you see that when I put it in the "right" order, the entire layout is thrown off. And the cart is moved to the left hand side?

    What is the best way to get it in the correct order with the layout acting appropriately?

  10. #10
    Join Date
    Feb 2008
    Posts
    1,336
    Plugin Contributions
    1

    Default Re: Interesting Page Layout Problem

    Well I am not sure where to start.
    You are trying to force styling in the PHP file when you are suppose to style in the CSS. I understand you are trying to have the add to cart button in the top of the page so the customer can easy find it but you are hiding the price between the images it took me a while to find it.

    Just like Kobra said you will need to start with your default tpl_product_info_display.php and use the CSS that is associate with each div to style them. Also you might need to add new tags to the CSS to get the final look you want.

    I would recommend using the developer toolbar in FF to identify the div ids and classes.

    hope that was helpful good luck.

 

 
Page 1 of 2 12 LastLast

Similar Threads

  1. Interesting Problem
    By accurax in forum General Questions
    Replies: 1
    Last Post: 9 Feb 2009, 12:49 PM
  2. Interesting Problem???
    By kikboxr777 in forum General Questions
    Replies: 2
    Last Post: 16 Dec 2008, 09:39 PM
  3. Interesting Inventory problem.
    By birdoasis in forum General Questions
    Replies: 4
    Last Post: 17 Dec 2007, 06:21 PM
  4. Interesting Shipping Problem...
    By tsh in forum Built-in Shipping and Payment Modules
    Replies: 1
    Last Post: 19 Oct 2007, 04:59 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