Jump to content

Vines

Members
  • Content count

    43
  • Joined

  • Last visited

1 Follower

Profile Information

  • Real Name
    Todd
  1. Vines

    Dynamic SiteMap

    I had the same problem of a blank page using dynamic sitemap and STS. I followed your advice and got it working. Then, because I just couldn't stand it, I compared the files to see what the error was. I found it in line 90 of catalog/dynamic_sitemap.php: If you are using STS and getting a blank site map page, you just need to change line 90 from: <?php //require(DIR_WS_INCLUDES . 'column_right.php'); ?> to: <?php require(DIR_WS_INCLUDES . 'column_right.php'); ?> In other words, uncomment the require.
  2. Vines

    [Contribution] STS v4

    I solved my own problem here, and of course it was something simple. Turns out my <div> code and CSS code were fine. The problem with Firefox not interpreting <div> and CSS properly with STS is related to the included STS_template.html file. The first line in this file is: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> For whatever reason I didn't care to research too deeply, this line should specify a version and should in fact read this way: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> Making this very minor change did the trick. Unfortunately, only after several hours of failed attempts to get Firefox to display <div> properly.
  3. Vines

    [Contribution] STS v4

    If you alter the tables in sts_template.html to include the images your reference, then they will show up on all pages. I would suggest making minor alterations to the tables in sts_template.html and then seeing what impact they have on your site and all the various pages. You can hard-code any images in the template file. You only need one template file for your whole site, unless you want different layouts on specific pages, in which case you make a specific template page for each page your want to be different as discussed in the user manual for STS.
  4. Just a quick note to make sure that everyone knows that there is a NEW THREAD for STS 4.x specifically. I believe the current one is for previous versions. For the latest thread and 4.x STS, go here: http://forums.oscommerce.com/index.php?showtopic=204381
  5. FYI - I was having this problem and it disappeared after installing and using STS to form the pages. Can't say why, but it might work for you. BTW - if you are not using STS, I highly recommend it. It seems a lot more complicated than it is. It's actually simple to install, but for most when it is activated there will be some layout issues. These are easily corrected.
  6. Vines

    [Contribution] STS v4

    Thanks to everyone who has contributed to STS. It's a fantastic contrib! And, has made my site look 1000Xs better. I have a problem with tabs though. I tried to include the Nav Bar with On/Off tabs contrib but couldn't figure out how to get it to display using STS. . . So, then I tried to incorporate similar code from my Wordpress Blog so that the header would be the same across osC and Wordpress. For the heck of it, I just copy/pasted the corresponding code from wordpress to my STS template file and osC stylesheet. To my surprise, it actually works in Internet Explorer but does not work in Firefox. Obviously, IE can interpret my poor code, but it's not quite "right" because Firefox doesn't show it. The problem is undoubtedly due to Wordpress' use of divs rather than tables, and my lack of expertise with divs, as well. Here is the relevant code I added to STS template (just what begins and end with divs): <table cellpadding="10" width="100%"> <tr> <td align="center"><br /> <div id="navigation"> <ul> <li><a href="http://www.vineswine.com/index.php" title="VINES WINE SHOP">HOME</a></li> <li class="current_page_item"><a href="http://vineswine.com/blog/" title="VINES WINE BLOG">BLOG</a></li> <li class="page_item"><a href="http://vineswine.com/blog/about/" title="ABOUT">ABOUT</a></li> </ul> </div><!-- end id:navigation --> <table border="0" width="960" cellspacing="0" cellpadding="3"> <tr class="header"> <td align="left"><br><a href="http://www.vineswine.com"><img src="http://www.vineswine.com/images/vineswine-temp.jpg" border="0" alt="VinesWine.com"></a><br></td> <td align="right"><?php echo tep_draw_form('search', tep_href_link(FILENAME_ADVANCED_SEARCH_RESULT, '', 'NONSSL', false), 'get') . tep_draw_hidden_field('search_in_description','1') . tep_draw_input_field('keywords', '', 'size="10" maxlength="30" style="width: ' . (BOX_WIDTH+10) . 'px"') . ' ' . tep_draw_pull_down_menu('categories_id', tep_get_categories(array(array('id' => '', 'text' => BOX_ALL_CATEGORIES)))) . ' ' . tep_hide_session_id() . '<input type="submit" name="Submit" value="Search">' . '</form>'; ?></td> </tr> And, here is the relevant CSS added to the osC stylesheet: #navigation { background: transparent; margin: 20px auto 0px; overflow: hidden; width: 940px; position: relative; text-align: left; font-family: Tahoma, Verdana, Arial, Serif; } html #navigation { height: 1%; } #navigation ul li { float: left; margin: 0px 5px 0px 0px; list-style-type: none; } #navigation ul li a { border: #ddd 1px solid; border-bottom:none; padding: 0 10px 2px 10px; display: block; background: #ededed; text-decoration: none; } #navigation ul li a:hover { background: #fafafa; } #navigation ul li a:active { background: #fafafa; } #navigation ul li.current_page_item a { background: #fff; color: #333; border: #ccc 1px solid; border-bottom:none; } #navigation ul li.search { font-size: 0.9em; right: 0px; position: absolute; top: 0px; } #navigation ul li.search input#s { border: #999 1px solid; font-size: 0.9em; width: 100px; padding: 2px; background:#fff; } #navigation ul li.search input#searchsubmit { border: #999 1px solid; font-size: 0.9em; background: #e6e6e6; margin: 0px 0px 0px 2px; color: #265e15; padding: 2px; } I hope someone can help me out. Is what I'm doing even possible in Firefox or generally? If so, it must be something simple. I very much will appreciate any advice. You can see what I'm talking about at the link below. Check it in IE and then in FF and you'll see the difference: http://vineswine.com/index.php Thanks!
  7. Thanks for a great module. I recently re-installed it after a failed first attempt. I thought I could get by without an easier template system, but I was wrong! Oscommerce is in bad need of something like STS integrated into the core. Anyway, on second install, I had the same problem as I did in the first attempt. My categories box and manufacturers drop downs were the only blocks that wouldn't show properly. I spent hours trying to figure out what the problem was and then finally I realized I should delete my cache, since these are the only two blocks in column_left.php that use an if statement related to cache. Lo and behold, turning off the cache fixed the disply problem on these blocks. Just a note in case someone else runs into this and spends hours dancing around the cache issue. The time was well spent though because I'm more familiar with STS - it's actually really SIMPLE as the name implies and my site is 1000 times nicer already. Thanks again for a great module!
  8. Vines

    dev of Media Monster v0.0 Beta

    Excellent! I'm very excited about your enthusiasm for this project. I will be interested to help in any way I can.
  9. Vines

    Seperate Pricing Per Customer v3.5

    Well, on further investigation, I discovered that the problem between Ezier New Fields information on the product_info.php page when using also SPPC and Quantity Price Breaks for SPPC, is actually related not to SPPC but to Quantity Price Breaks. Ezier New Fields and SPPC work fine together. When QPB is added, there is incompatibility on the product_info.php page between EZier new fields include of "ezier_new_fields.php" and QPB's "priceformatter.php." It's beyond my php skill to fix it and I realized that I need a price break that is not product specific, so I uninstalled QPB. Now my Ezier New Fields and SPPC work fine again, though I screwed many of the other contribs on the site, so now I am having to rebuild a lot of code. For what it's worth.
  10. Vines

    Seperate Pricing Per Customer v3.5

    Thanks for the response. I have Ezier New Fields installed which sounds similar to the "Show Your Price" contrib you mention. I will check out that contrib and also your suggestions as to how to make all of them work together. Perhaps I will uninstall EZier New Fields, if it looks like Show Your Price can do the same thing and be compatible with SPPC and Quantity Price Break.
  11. Yes, please. I will be very interested, especially in media (video) capabilities. Look forward to it. I can't offer much by way of php skill, but I can definitely add some stuff related to media.
  12. Thanks for your list. Your site is very nice. . I will be adding some of these!
  13. Vines

    Seperate Pricing Per Customer v3.5

    I've been doing a little more work on the problem I posted above and believe I've isolated it to the include statement on product_info.php that calls ezier_new_fields.php. I've posted this on the EZier New Fields thread but thought I would post here in case someone using SPPC has already encountered this and solved it, or in case I'm wrong about the source of the problem. EZier makes changes on product_info.php to add a call to include ezier_new_fields.php. This is what generates the EZier fields. The code in ezier_new_fields.php includes a section if the "customer discount" contrib is installed to get the discount price. I'm guessing that something similar needs to be written to get it to work with SPPC. If anyone has gotten EZier and SPPC to work together on product_info.php, I would very much appreciate any insights. Am I on the right track? Do I need to make changes to ezier_new_fields.php or is my problem elsewhere? Thanks in advance if you spend any time on this question. Here's the code I think is relevant from ezier_new_fields.php (note the sections about customer discounts): / Get the retail price & clean up the decimal places $retail = osc_ez(($currencies->display_price($product_info['products_retail_price'],tep_get_tax_rate($product_info['products_tax_class_id'])))); $special_flag = false; $cust_flag = false; if ($new_price = tep_get_products_special_price($product_info['products_id'])) { // If there is a special ... Special Overrides customer discount... $our = osc_ez(($currencies->display_price($product_info['products_price'],tep_get_tax_rate($product_info['products_tax_class_id'])))); $special_price = osc_ez(($currencies->display_price((tep_get_products_special_price($product_info['products_id'])),tep_get_tax_rate($product_info['products_tax_class_id']))),0,$strlen); $save2 = osc_ez($currencies->display_price($product_info['products_retail_price'] - (tep_get_products_special_price($product_info['products_id'])), '')); $save = (((tep_get_products_special_price($product_info['products_id'])) / ($product_info['products_retail_price'])) * 100); $special_flag = true; } if (((strstr($customer_discount, "-") != 0) && ((tep_get_products_special_price($product_info['products_id'])) == null))) { // If there isn't a special, but still a customer discount... We'll need those decimals.... $retail = osc_ez(($currencies->display_price_nodiscount($product_info['products_retail_price'],tep_get_tax_rate($product_info['products_tax_class_id'])))); $our = ($product_info['products_price']); $our = $our - $our * abs($customer_discount) / 100; $save2 = osc_ez($currencies->display_price_nodiscount(($product_info['products_retail_price'] - $our), '')); $save = (($our / ($product_info['products_retail_price'])) * 100); $our = osc_ez($currencies->display_price_nodiscount($product_info['products_price'], '')); $cust = osc_ez($currencies->display_price($product_info['products_price'], '')); $cust_flag = true; } // End cust discount if ((strstr($customer_discount, "-") == 0) && ((tep_get_products_special_price($product_info['products_id'])) == null)) { // Just a regular price $our = osc_ez(($currencies->display_price($product_info['products_price'],tep_get_tax_rate($product_info['products_tax_class_id'])))); $save = (($product_info['products_price'] / ($product_info['products_retail_price'])) * 100); $save2 = osc_ez($currencies->display_price($product_info['products_retail_price'] - $product_info['products_price'], '')); } // End of regular price $save = (100 - $save); $save = round($save); ?> </td> </tr> </table> <?php echo TEXT_PRODUCTS_RETAIL_PRICE_INFO . '<s>' . $retail . '</s>'; if ($special_flag == true) { echo TEXT_PRODUCTS_PRICE_INFO . '<s>' . $our . '</s>'; echo TEXT_PRODUCTS_PRICE_SPECIAL_INFO . $special_price . '</font>'; } else if ($cust_flag == true) { echo TEXT_PRODUCTS_PRICE_INFO_REGULAR . '<s>' . $our . '</s>'; echo TEXT_PRODUCTS_PRICE_SPECIAL_CUST . $cust . '</font>'; } else { echo TEXT_PRODUCTS_PRICE_INFO . $our; } // Uncomment the line that you want below, and comment our the default option if you like, description is to the right // echo TEXT_PRODUCTS_SAVE_INFO . $save2 . '</font>'; //This line is price shown // echo TEXT_PRODUCTS_SAVE_INFO . $save . '%</font>'; //This line is % shown echo TEXT_PRODUCTS_SAVE_INFO . $save2 . ' (' . $save . '%)</font>'; //This line is % and price together } else { ?> </td> </tr> </table> <?php
  14. Vines

    EZier New Fields

    EZier New Fields and SPPC: Has anyone gotten these two to work together on product_info.php? They work fine together most places, but on a product_info.php page, if a Separate Price Per Customer is set, the EZier section will just show the regular price. If no Separate Price is set or if a Special Price is set, everything works fine. It says in the EZier instructions that it is compatible with the "customer discount" contrib, but I don't think this is SPPC. The EZier changes on product_info.php add a call to include ezier_new_fields.php. This is what generates the EZier fields. The code in ezier_new_fields.php includes a section if the customer discount contrib is installed to get the discount price. I'm guessing that something similar needs to be written to get it to work with SPPC. Has anyone gotten EZier and SPPC to work together on product_info.php? I would very much appreciate any insights. Am I on the right track? Do I need to make changes to ezier_new_fields.php or is my problem elsewhere? Thanks in advance if you spend any time on this question. Here's the code I think is relevant from ezier_new_fields.php (note the sections about customer discounts): / Get the retail price & clean up the decimal places $retail = osc_ez(($currencies->display_price($product_info['products_retail_price'],tep_get_tax_rate($product_info['products_tax_class_id'])))); $special_flag = false; $cust_flag = false; if ($new_price = tep_get_products_special_price($product_info['products_id'])) { // If there is a special ... Special Overrides customer discount... $our = osc_ez(($currencies->display_price($product_info['products_price'],tep_get_tax_rate($product_info['products_tax_class_id'])))); $special_price = osc_ez(($currencies->display_price((tep_get_products_special_price($product_info['products_id'])),tep_get_tax_rate($product_info['products_tax_class_id']))),0,$strlen); $save2 = osc_ez($currencies->display_price($product_info['products_retail_price'] - (tep_get_products_special_price($product_info['products_id'])), '')); $save = (((tep_get_products_special_price($product_info['products_id'])) / ($product_info['products_retail_price'])) * 100); $special_flag = true; } if (((strstr($customer_discount, "-") != 0) && ((tep_get_products_special_price($product_info['products_id'])) == null))) { // If there isn't a special, but still a customer discount... We'll need those decimals.... $retail = osc_ez(($currencies->display_price_nodiscount($product_info['products_retail_price'],tep_get_tax_rate($product_info['products_tax_class_id'])))); $our = ($product_info['products_price']); $our = $our - $our * abs($customer_discount) / 100; $save2 = osc_ez($currencies->display_price_nodiscount(($product_info['products_retail_price'] - $our), '')); $save = (($our / ($product_info['products_retail_price'])) * 100); $our = osc_ez($currencies->display_price_nodiscount($product_info['products_price'], '')); $cust = osc_ez($currencies->display_price($product_info['products_price'], '')); $cust_flag = true; } // End cust discount if ((strstr($customer_discount, "-") == 0) && ((tep_get_products_special_price($product_info['products_id'])) == null)) { // Just a regular price $our = osc_ez(($currencies->display_price($product_info['products_price'],tep_get_tax_rate($product_info['products_tax_class_id'])))); $save = (($product_info['products_price'] / ($product_info['products_retail_price'])) * 100); $save2 = osc_ez($currencies->display_price($product_info['products_retail_price'] - $product_info['products_price'], '')); } // End of regular price $save = (100 - $save); $save = round($save); ?> </td> </tr> </table> <?php echo TEXT_PRODUCTS_RETAIL_PRICE_INFO . '<s>' . $retail . '</s>'; if ($special_flag == true) { echo TEXT_PRODUCTS_PRICE_INFO . '<s>' . $our . '</s>'; echo TEXT_PRODUCTS_PRICE_SPECIAL_INFO . $special_price . '</font>'; } else if ($cust_flag == true) { echo TEXT_PRODUCTS_PRICE_INFO_REGULAR . '<s>' . $our . '</s>'; echo TEXT_PRODUCTS_PRICE_SPECIAL_CUST . $cust . '</font>'; } else { echo TEXT_PRODUCTS_PRICE_INFO . $our; } // Uncomment the line that you want below, and comment our the default option if you like, description is to the right // echo TEXT_PRODUCTS_SAVE_INFO . $save2 . '</font>'; //This line is price shown // echo TEXT_PRODUCTS_SAVE_INFO . $save . '%</font>'; //This line is % shown echo TEXT_PRODUCTS_SAVE_INFO . $save2 . ' (' . $save . '%)</font>'; //This line is % and price together } else { ?> </td> </tr> </table> <?php
  15. Vines

    Seperate Pricing Per Customer v3.5

    Here is another question related to integrating Ezier New Fields with Quantity Price Break for SPPC. I've spent the last couple of days putting these three together and it's pretty much working perfectly as far as I can tell, with one exception. I previously had SPPC and Ezier New Fields working perfectly together. Then, I decided I need Quantity Price Break, so I backed up all my SPPC with Ezier files, then shifted to SPPC with Quantity Price Break. I test QPB for SPPC and this was working fine. So, then I went back into these files and re-added the Ezier New Fields code. I'm actually pretty impressed that I was able to do this and get it working 99%, given my lack of PHP expertise. There is only one problem now with the integration. The EZier fields on the product_info.php page do not read properly for special price customer groups anymore. The "retail price" and "your price" and thus "savings" remain at the default values regardless of whether the customer is in a different group. This was working fine before I tried to include QPB. Fortunately, all of the cart functionality and the QPB price break prices in the heading are the right prices for each customer group, it's just the part of the product listing that is generated by ezier_new_fields.php that are messed up. Here's the code. I'm hoping a php guru or someone who has put these three together before can easily spot the problem. It was such a complicated thing to put these 3 together, I'm sure that it's something simple. I just can't see it. Thoughts, comments, questions? Thanks! <?php /* $Id: product_info.php,v 1.97 2003/07/01 14:34:54 hpdl Exp $ adapted for Separate Pricing Per Customer v4 and Price Break 1.11.3 2005/03/12 osCommerce, Open Source E-Commerce Solutions http://www.oscommerce.com Copyright (c) 2003 osCommerce Released under the GNU General Public License */ require('includes/application_top.php'); require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_PRODUCT_INFO); $product_check_query = tep_db_query("select count(*) as total 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_check = tep_db_fetch_array($product_check_query); // BOF Separate Price per Customer if(!tep_session_is_registered('sppc_customer_group_id')) { $customer_group_id = '0'; } else { $customer_group_id = $sppc_customer_group_id; } // EOF Separate Price per Customer ?> <!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN"> <html <?php echo HTML_PARAMS; ?>> <head> <?php // BOF: Header Tag Controller v2.5.7 if ( file_exists(DIR_WS_INCLUDES . 'header_tags.php') ) { require(DIR_WS_INCLUDES . 'header_tags.php'); } else { ?> <title><?php echo TITLE; ?></title> <?php } // EOF: Header Tag Controller v2.5.7 ?> <base href="<?php echo (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . DIR_WS_CATALOG; ?>"> <link rel="stylesheet" type="text/css" href="stylesheet.css"> <script language="javascript"><!-- function popupWindow(url) { window.open(url,'popupWindow','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,res izable=yes,copyhistory=no,width=100,height=100,screenX=150,screenY=150,top=150,le ft=150') } //--></script> </head> <body marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0"> <!-- header //--> <?php require(DIR_WS_INCLUDES . 'header.php'); ?> <!-- header_eof //--> <!-- body //--> <table border="0" width="100%" cellspacing="3" cellpadding="3"> <tr> <td width="<?php echo BOX_WIDTH; ?>" valign="top"><table border="0" width="<?php echo BOX_WIDTH; ?>" cellspacing="0" cellpadding="3"> <!-- left_navigation //--> <?php require(DIR_WS_INCLUDES . 'column_left.php'); ?> <!-- left_navigation_eof //--> </table></td> <!-- body_text //--> <td width="100%" valign="top"><?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><?php new infoBox(array(array('text' => TEXT_PRODUCT_NOT_FOUND))); ?></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="3" class="infoBox"> <tr class="infoBoxContents"> <td><table border="0" width="100%" cellspacing="0" cellpadding="3"> <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 { // BOF Separate Price per Customer, Price Break 1.11.3 mod $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, p.products_pdfupload, pd.products_url, p.products_retail_price, p.products_price, NULL as specials_new_products_price, p.products_price1, p.products_price2, p.products_price3, p.products_price4, p.products_price5, p.products_price6, p.products_price7, p.products_price8, p.products_price1_qty, p.products_price2_qty, p.products_price3_qty, p.products_price4_qty, p.products_price5_qty, p.products_price6_qty, p.products_price7_qty, p.products_price8_qty, p.products_qty_blocks, 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); // EOF Separate Price per Customer, Price Break mod 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 . "'"); // BOF Separate Pricing per Customer, Price Break 1.11.3 mod $pf->loadProductSppc((int)$HTTP_GET_VARS['products_id'], (int)$languages_id, $product_info); $products_price = $pf->getPriceString(); // EOF Separate Pricing per Customer, Price Break 1.11.3 mod 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"><?php echo $products_name; ?></td> <td class="pageHeading" align="right" valign="top"><?php echo $products_price; ?></td> </tr> </table></td></tr> <tr> <td> <table border="0"> <tr> <td class="main" align="center" valign="top"> <?php if (tep_not_null($product_info['products_image'])) { ?> <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> <td class="main" valign="top"> <?php // START: Extra Fields Contribution v2.0i with fix list($products_id_clean) = split('{', $product_info['products_id']); $extra_fields_query = tep_db_query(" SELECT pef.products_extra_fields_name as name, ptf.products_extra_fields_value as value ,pef.products_extra_fields_status as status FROM ". TABLE_PRODUCTS_EXTRA_FIELDS ." pef LEFT JOIN ". TABLE_PRODUCTS_TO_PRODUCTS_EXTRA_FIELDS ." ptf ON ptf.products_extra_fields_id=pef.products_extra_fields_id WHERE ptf.products_id=".$products_id_clean." and ptf.products_extra_fields_value<>'' and (pef.languages_id='0' or pef.languages_id='".$languages_id."') ORDER BY products_extra_fields_order"); while ($extra_fields = tep_db_fetch_array($extra_fields_query)) { if (! $extra_fields['status']) // show only enabled extra field continue; echo ' <b><font color="#922248">'.$extra_fields['name'].': </b></font>'; echo '<font color="#333333">' .$extra_fields['value'].'<BR></font> '; } // END: Extra Fields Contribution ?> </td> <td class="main" valign="top" align="center"> <?php } include(DIR_WS_MODULES . 'ezier_new_fields.php'); ?> <br><br> <?php echo tep_draw_hidden_field('products_id', $product_info['products_id']) . tep_image_submit('button_in_cart.gif', IMAGE_BUTTON_IN_CART); ?> <br><br><br> <?php if (tep_not_null($product_info['products_pdfupload'])) { ?> <table border="1" cellspacing="0" cellpadding="5" align="right"> <tr> <td align="center"> <!-- Add Video Extract --> <?php if ($product_info['products_pdfupload'] == '') { echo '<a href="' . tep_href_link(DIR_WS_IMAGES . $product_info['products_pdfupload']) . '">' . TEXT_CLICK_TO_PDFUPLOAD2 . '</a>'; } else { echo '<a href="' . tep_href_link(DIR_WS_IMAGES . $product_info['products_pdfupload']) . '">' . TEXT_CLICK_TO_PDFUPLOAD . '</a>'; } ?> <!-- End Video Extract --> </br> </td> </tr> </table> <?php } ?> </td> </tr> </table> </td> </tr> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td> </tr> <tr> <td class="main"> <hr> <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']); if ($products_options['options_values_price'] != '0') { $products_options_array[sizeof($products_options_array)-1]['text'] .= ' (' . $products_options['price_prefix'] . $currencies->display_price($products_options['options_values_price'], tep_get_tax_rate($product_info['products_tax_class_id'])) .') '; } } 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><?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> <!-- BOF price-break-1.11.3 <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> --> <td class="main" align="right"> <table border="0" align="right"> <tr><td align="center"> <?php echo TEXT_ENTER_QUANTITY . ":" . tep_draw_input_field('cart_quantity', $pf->adjustQty(1), 'size="6"'); ?> </td></tr> <tr><td align="center"> <?php echo tep_draw_hidden_field('products_id', $product_info['products_id']) . tep_image_submit('button_in_cart.gif', IMAGE_BUTTON_IN_CART); ?> </td></tr> </table> </td> <!-- EOF price-break-1.11.3 --> <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> <tr> <td> <?php if ((USE_CACHE == 'true') && empty($SID)) { echo tep_cache_also_purchased(3600); } else { include(DIR_WS_MODULES . FILENAME_ALSO_PURCHASED_PRODUCTS); } } ?> </td> </tr> </table></form></td> <!-- body_text_eof //--> <td width="<?php echo BOX_WIDTH; ?>" valign="top"><table border="0" width="<?php echo BOX_WIDTH; ?>" cellspacing="0" cellpadding="2"> <!-- right_navigation //--> <?php require(DIR_WS_INCLUDES . 'column_right.php'); ?> <!-- right_navigation_eof //--> </table></td> </tr> </table> <!-- body_eof //--> <!-- footer //--> <?php require(DIR_WS_INCLUDES . 'footer.php'); ?> <!-- footer_eof //--> <br> </body> </html> <?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>
×