Jump to content
kymation

[Contribution] Products Specifications

Recommended Posts

I can't reproduce the display errors. I suspect that you have one or more files corrupted. Check your uploads or just reload all files.

 

In the Admin Specifications page, "Show More" is not a True/False selector, it is a text box that allows you to change the Show More text.

 

I'm looking at the Add to Cart button. I'll post a fix when I figure out what's wrong with it.

 

Regards

Jim


See my profile for a list of my addons and ways to get support.

Share this post


Link to post
Share on other sites

The Buy Now button was hiding behind the tabs. I've coaxed it out in all of the browsers that I have available for testing (No IE 8, sorry). In product_info.php, find this code:

 

  <div class="buttonSet">
   <span class="buttonAction"><?php echo tep_draw_hidden_field('products_id', $product_info['products_id']) . tep_draw_button(IMAGE_BUTTON_IN_CART, 'cart', null, 'primary'); ?></span>

   <?php //echo tep_draw_button(IMAGE_BUTTON_REVIEWS . (($reviews['count'] > 0) ? ' (' . $reviews['count'] . ')' : ''), 'comment', tep_href_link(FILENAME_PRODUCT_REVIEWS, tep_get_all_get_params())); ?>
 </div>

and replace with this:

 

  <br />
 <div class="buttonSet">
   <span class="buttonAction"><?php echo tep_draw_hidden_field('products_id', $product_info['products_id']) . tep_draw_button(IMAGE_BUTTON_IN_CART, 'cart', null, 'primary'); ?></span>
 </div>
 <div style="clear: both;"></div>
 <br />

You can tweak that to adjust the button position however you want it. Just remember to keep the button inside the form tags.

 

I'll add this fix to the next release. I'm not going to put together a release just for this.

 

Regards

Jim


See my profile for a list of my addons and ways to get support.

Share this post


Link to post
Share on other sites

Bret: You have an error in your code related to the front page. This could be somewhere in the bottom part of your index.php or in one of the files that is included there, like the New Products module. The error is a mismatched div or table tag. Check that all starting tags have a corresponding ending tag, and that you don't have too many ending tags.

 

The W3C validator says that you have 93 errors on that page. Some of those appear to be from Addons not designed for osC 2.3.1, or from code designed for HTML being used on an XHTML page. This is a pain, but you should fix these errors where possible. Most of them are harmless, but some will break certain browsers, such as older versions of IE.

 

Regards

Jim


See my profile for a list of my addons and ways to get support.

Share this post


Link to post
Share on other sites

Thanks i will look into it. It was from a template that i purchased last week. The only addon i have added was the product specs and the document manager.

Share this post


Link to post
Share on other sites

Jim i have one question, if this add ons is good for webside with clothes. If user can filtering the products by size end color if not do you know other addons. Do you know some page with PS addons ??

Share this post


Link to post
Share on other sites

You can filter by size, color, and any other quantity that you can think of. Gender? Adults/kids? Pattern? Use your imagination, or look at what other stores are doing.

 

Regards

Jim


See my profile for a list of my addons and ways to get support.

Share this post


Link to post
Share on other sites

Hi Everyone, Where places i make a mistike pls help me

http://www.sklep.emcmoda.pl/index.php

 

index.php

<?php
/*
 $Id$

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

 Copyright (c) 2010 osCommerce

 Released under the GNU General Public License
*/

 require('includes/application_top.php');

 // Products Specifications
 require_once (DIR_WS_FUNCTIONS . 'products_specifications.php');

// the following cPath references come from application_top.php
 $category_depth = 'top';
 if (isset($cPath) && tep_not_null($cPath)) {
   $categories_products_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS_TO_CATEGORIES . " where categories_id = '" . (int)$current_category_id . "'");
   $categories_products = tep_db_fetch_array($categories_products_query);
   if ($categories_products['total'] > 0) {
     $category_depth = 'products'; // display products
   } else {
     $category_parent_query = tep_db_query("select count(*) as total from " . TABLE_CATEGORIES . " where parent_id = '" . (int)$current_category_id . "'");
     $category_parent = tep_db_fetch_array($category_parent_query);
     if ($category_parent['total'] > 0) {
       $category_depth = 'nested'; // navigate through the categories
     } else {
       $category_depth = 'products'; // category has no products, but display the 'no products' message
     }
   }
 }

 require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_DEFAULT);

 require(DIR_WS_INCLUDES . 'template_top.php');

 if ($category_depth == 'nested') {
 // $category_query = tep_db_query("select cd.categories_name, c.categories_image from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.categories_id = '" . (int)$current_category_id . "' and cd.categories_id = '" . (int)$current_category_id . "' and cd.language_id = '" . (int)$languages_id . "'");
   /*** Begin Header Tags SEO ***/
   $category_query = tep_db_query("select cd.categories_name, c.categories_image, cd.categories_htc_title_tag, cd.categories_htc_description from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.categories_id = '" . (int)$current_category_id . "' and cd.categories_id = '" . (int)$current_category_id . "' and cd.language_id = '" . (int)$languages_id . "'");
   /*** end Header Tags SEO ***/
   $category = tep_db_fetch_array($category_query);
?>

<h1><?php /* echo $category['categories_name'];*/ echo $category['categories_htc_title_tag']; ?></h1>

<?php 
/*** Begin Header Tags SEO ***/ 
if (tep_not_null($category['categories_htc_description'])) { 
  echo '<h2 style="text-decoration:none;">' . $category['categories_htc_description'] . '</h2>';
} 
/*** End Header Tags SEO ***/ 
?>

<div class="contentContainer">
 <div class="contentText">
   <table border="0" width="100%" cellspacing="0" cellpadding="2">
<?php
// Start Products Specifications
   if (SPECIFICATIONS_FILTERS_MODULE == 'True') {
?>
     <tr>
       <td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
     </tr>
     <tr>
       <td>
<?php
     require (DIR_WS_MODULES . 'products_filter.php');
?>
       </td>
     </tr>
<?php
   }
// End Products Specifications
?>
     <tr>
<?php
   if (isset($cPath) && strpos('_', $cPath)) {
// check to see if there are deeper categories within the current category
     $category_links = array_reverse($cPath_array);
     for($i=0, $n=sizeof($category_links); $i<$n; $i++) {
       $categories_query = tep_db_query("select count(*) as total from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '" . (int)$category_links[$i] . "' and c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "'");
       $categories = tep_db_fetch_array($categories_query);
       if ($categories['total'] < 1) {
         // do nothing, go through the loop
       } else {
         $categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.categories_image, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '" . (int)$category_links[$i] . "' and c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "' order by sort_order, cd.categories_name");
         break; // we've found the deepest category the customer is in
       }
     }
   } else {
     $categories_query = tep_db_query("select c.categories_id, cd.categories_name, c.categories_image, c.parent_id from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.parent_id = '" . (int)$current_category_id . "' and c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "' order by sort_order, cd.categories_name");
   }

   $number_of_categories = tep_db_num_rows($categories_query);

   $rows = 0;
   while ($categories = tep_db_fetch_array($categories_query)) {
     $rows++;
     $cPath_new = tep_get_path($categories['categories_id']);
     $width = (int)(100 / MAX_DISPLAY_CATEGORIES_PER_ROW) . '%';
     echo '        <td align="center" class="smallText" width="' . $width . '" valign="top"><a href="' . tep_href_link(FILENAME_DEFAULT, $cPath_new) . '">' . tep_image(DIR_WS_IMAGES . $categories['categories_image'], $categories['categories_name'], SUBCATEGORY_IMAGE_WIDTH, SUBCATEGORY_IMAGE_HEIGHT) . '<br />' . $categories['categories_name'] . '</a></td>' . "\n";
     if ((($rows / MAX_DISPLAY_CATEGORIES_PER_ROW) == floor($rows / MAX_DISPLAY_CATEGORIES_PER_ROW)) && ($rows != $number_of_categories)) {
       echo '      </tr>' . "\n";
       echo '      <tr>' . "\n";
     }
   }

// needed for the new products module shown below
   $new_products_category_id = $current_category_id;
?>
     </tr>
   </table>

   <br />

<?php include(DIR_WS_MODULES . FILENAME_NEW_PRODUCTS); ?>
<!--- BEGIN Header Tags SEO Social Bookmarks -->
<?php if (HEADER_TAGS_DISPLAY_SOCIAL_BOOKMARKS == 'true') 
include(DIR_WS_MODULES . 'header_tags_social_bookmarks.php'); 
?>
<!--- END Header Tags SEO Social Bookmarks -->              
 </div>
</div>

<?php
 } //end if ($category_depth == 'nested')
 elseif ($category_depth == 'products' || isset($HTTP_GET_VARS['manufacturers_id'])) {
 // Start Product Specifications
   if ($category_depth == 'products' && SPECIFICATIONS_BOX_COMP_INDEX == 'True') {
     require_once (DIR_WS_MODULES . FILENAME_COMPARISON);
   } else {
// End Product Specifications
// create column list
   $define_list = array('PRODUCT_LIST_MODEL' => PRODUCT_LIST_MODEL,
                        'PRODUCT_LIST_NAME' => PRODUCT_LIST_NAME,
                        'PRODUCT_LIST_MANUFACTURER' => PRODUCT_LIST_MANUFACTURER,
                        'PRODUCT_LIST_PRICE' => PRODUCT_LIST_PRICE,
                        'PRODUCT_LIST_QUANTITY' => PRODUCT_LIST_QUANTITY,
                        'PRODUCT_LIST_WEIGHT' => PRODUCT_LIST_WEIGHT,
                        'PRODUCT_LIST_IMAGE' => PRODUCT_LIST_IMAGE,
                        'PRODUCT_LIST_BUY_NOW' => PRODUCT_LIST_BUY_NOW);

   asort($define_list);

   $column_list = array();
   reset($define_list);
   while (list($key, $value) = each($define_list)) {
     if ($value > 0) $column_list[] = $key;
   }

   $select_column_list = '';

   for ($i=0, $n=sizeof($column_list); $i<$n; $i++) {
     switch ($column_list[$i]) {
       case 'PRODUCT_LIST_MODEL':
         $select_column_list .= 'p.products_model, ';
         break;
       case 'PRODUCT_LIST_NAME':
         $select_column_list .= 'pd.products_name, ';
         break;
       case 'PRODUCT_LIST_MANUFACTURER':
         $select_column_list .= 'm.manufacturers_name, ';
         break;
       case 'PRODUCT_LIST_QUANTITY':
         $select_column_list .= 'p.products_quantity, ';
         break;
       case 'PRODUCT_LIST_IMAGE':
         $select_column_list .= 'p.products_image, ';
         break;
       case 'PRODUCT_LIST_WEIGHT':
         $select_column_list .= 'p.products_weight, ';
         break;
     }
   }

// show the products of a specified manufacturer
   if (isset($HTTP_GET_VARS['manufacturers_id'])) {
     if (isset($HTTP_GET_VARS['filter_id']) && tep_not_null($HTTP_GET_VARS['filter_id'])) {
// We are asked to show only a specific category
       $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_MANUFACTURERS . " m, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$HTTP_GET_VARS['filter_id'] . "'";
     } else {
// We show them all
       $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_MANUFACTURERS . " m where p.products_status = '1' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "'";
     }
   } else {
// show the products in a given categorie
     if (isset($HTTP_GET_VARS['filter_id']) && tep_not_null($HTTP_GET_VARS['filter_id'])) {
// We are asked to show only specific catgeory
       $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_MANUFACTURERS . " m, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and m.manufacturers_id = '" . (int)$HTTP_GET_VARS['filter_id'] . "' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$current_category_id . "'";
     } else {
// We show them all
       $listing_sql = "select " . $select_column_list . " p.products_id, p.manufacturers_id, p.products_price, p.products_tax_class_id, IF(s.status, s.specials_new_products_price, NULL) as specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) as final_price from " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_PRODUCTS . " p left join " . TABLE_MANUFACTURERS . " m on p.manufacturers_id = m.manufacturers_id left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_status = '1' and p.products_id = p2c.products_id and pd.products_id = p2c.products_id and pd.language_id = '" . (int)$languages_id . "' and p2c.categories_id = '" . (int)$current_category_id . "'";
     }
   }

   if ( (!isset($HTTP_GET_VARS['sort'])) || (!preg_match('/^[1-8][ad]$/', $HTTP_GET_VARS['sort'])) || (substr($HTTP_GET_VARS['sort'], 0, 1) > sizeof($column_list)) ) {
     for ($i=0, $n=sizeof($column_list); $i<$n; $i++) {
       if ($column_list[$i] == 'PRODUCT_LIST_NAME') {
         $HTTP_GET_VARS['sort'] = $i+1 . 'a';
         $listing_sql .= " order by pd.products_name";
         break;
       }
     }
   } else {
     $sort_col = substr($HTTP_GET_VARS['sort'], 0 , 1);
     $sort_order = substr($HTTP_GET_VARS['sort'], 1);

     switch ($column_list[$sort_col-1]) {
       case 'PRODUCT_LIST_MODEL':
         $listing_sql .= " order by p.products_model " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name";
         break;
       case 'PRODUCT_LIST_NAME':
         $listing_sql .= " order by pd.products_name " . ($sort_order == 'd' ? 'desc' : '');
         break;
       case 'PRODUCT_LIST_MANUFACTURER':
         $listing_sql .= " order by m.manufacturers_name " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name";
         break;
       case 'PRODUCT_LIST_QUANTITY':
         $listing_sql .= " order by p.products_quantity " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name";
         break;
       case 'PRODUCT_LIST_IMAGE':
         $listing_sql .= " order by pd.products_name";
         break;
       case 'PRODUCT_LIST_WEIGHT':
         $listing_sql .= " order by p.products_weight " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name";
         break;
       case 'PRODUCT_LIST_PRICE':
         $listing_sql .= " order by final_price " . ($sort_order == 'd' ? 'desc' : '') . ", pd.products_name";
         break;
     }
   }
   /*** Begin Header Tags SEO ***/
   if (isset($HTTP_GET_VARS['manufacturers_id'])) {
     $image = tep_db_query("select manufacturers_image, manufacturers_name as catname from " . TABLE_MANUFACTURERS . " where manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "'");
     $image = tep_db_fetch_array($image);
     $db_query = tep_db_query("select manufacturers_htc_title_tag as htc_title, manufacturers_htc_description as htc_description from " . TABLE_MANUFACTURERS_INFO . " where languages_id = '" . (int)$languages_id . "' and manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "'");
   } elseif ($current_category_id) {
     $image = tep_db_query("select c.categories_image, cd.categories_name as catname from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.categories_id = '" . (int)$current_category_id . "' and c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "'");
     $image = tep_db_fetch_array($image);
     $db_query = tep_db_query("select categories_htc_title_tag as htc_title, categories_htc_description as htc_description from " . TABLE_CATEGORIES_DESCRIPTION . " where categories_id = '" . (int)$current_category_id . "' and language_id = '" . (int)$languages_id . "'");
   }
   $htc = tep_db_fetch_array($db_query);
?>

<h1><?php echo $htc['htc_title']; // naglowek?></h1>
   <?php /*** End Header Tags SEO ***/ ?>
<div class="contentContainer">

<?php
// optional Product List Filter
   if (PRODUCT_LIST_FILTER > 0) {
     if (isset($HTTP_GET_VARS['manufacturers_id'])) {
       $filterlist_sql = "select distinct c.categories_id as id, cd.categories_name as name from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c, " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where p.products_status = '1' and p.products_id = p2c.products_id and p2c.categories_id = c.categories_id and p2c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "' and p.manufacturers_id = '" . (int)$HTTP_GET_VARS['manufacturers_id'] . "' order by cd.categories_name";
     } else {
       $filterlist_sql= "select distinct m.manufacturers_id as id, m.manufacturers_name as name from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c, " . TABLE_MANUFACTURERS . " m where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and p.products_id = p2c.products_id and p2c.categories_id = '" . (int)$current_category_id . "' order by m.manufacturers_name";
     }
     $filterlist_query = tep_db_query($filterlist_sql);
     if (tep_db_num_rows($filterlist_query) > 1) {
       echo '<div>' . tep_draw_form('filter', FILENAME_DEFAULT, 'get') . '<p align="right">' . TEXT_SHOW . ' ';
       if (isset($HTTP_GET_VARS['manufacturers_id'])) {
         echo tep_draw_hidden_field('manufacturers_id', $HTTP_GET_VARS['manufacturers_id']);
         $options = array(array('id' => '', 'text' => TEXT_ALL_CATEGORIES));
       } else {
         echo tep_draw_hidden_field('cPath', $cPath);
         $options = array(array('id' => '', 'text' => TEXT_ALL_MANUFACTURERS));
       }
       echo tep_draw_hidden_field('sort', $HTTP_GET_VARS['sort']);
       while ($filterlist = tep_db_fetch_array($filterlist_query)) {
         $options[] = array('id' => $filterlist['id'], 'text' => $filterlist['name']);
       }
       echo tep_draw_pull_down_menu('filter_id', $options, (isset($HTTP_GET_VARS['filter_id']) ? $HTTP_GET_VARS['filter_id'] : ''), 'onchange="this.form.submit()"');
       echo tep_hide_session_id() . '</p></form></div>' . "\n";
     }
   }

   /*** Begin Header Tags SEO ***/ 
   if (tep_not_null($htc['htc_description'])) { 
        echo '<h2 style="text-decoration:none;">'. $htc['htc_description'] . '</h2>';
    }
   /*** End Header Tags SEO ***/ 

   include(DIR_WS_MODULES . FILENAME_PRODUCT_LISTING);
?>

</div>

  <!--- BEGIN Header Tags SEO Social Bookmarks -->
  <?php if (HEADER_TAGS_DISPLAY_SOCIAL_BOOKMARKS == 'true') 
  include(DIR_WS_MODULES . 'header_tags_social_bookmarks.php'); 
  ?>
     <!--- END Header Tags SEO Social Bookmarks -->  
  <?php
// Products Specifications
   }
?>
<?php
 } else { // default page
?>

<h1><?php echo HEADING_TITLE; ?></h1>

<div class="contentContainer">
 <div class="contentText">
   <?php echo tep_customer_greeting(); ?>
 </div>

<?php
   if (tep_not_null(TEXT_MAIN)) {
?>

 <div class="contentText">
   <?php echo TEXT_MAIN; ?>
 </div>

<?php
   } //if (tep_not_null(TEXT_MAIN

   include(DIR_WS_MODULES . FILENAME_NEW_PRODUCTS);

   // <!--- BEGIN Header Tags SEO Social Bookmarks -->
 /*  if (HEADER_TAGS_DISPLAY_SOCIAL_BOOKMARKS == 'true') {
       include(DIR_WS_MODULES . 'header_tags_social_bookmarks.php'); 
   }*/	
   // <!--- END Header Tags SEO Social Bookmarks --> 

   include(DIR_WS_MODULES . FILENAME_UPCOMING_PRODUCTS);
?>
<?php
// Start Product Specifications
     // Check the number of products is above the minimum for the comparison table
     $check_query_raw = "select distinct p2c.products_id
                          from " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c,
                               " . TABLE_SPECIFICATION_GROUPS . " sg,
                               " . TABLE_SPECIFICATIONS_TO_CATEGORIES . " sg2c
                          where sg.show_comparison = 'True'
                            and sg.specification_group_id = sg2c.specification_group_id
                            and p2c.categories_id = sg2c.categories_id
                            and sg2c.categories_id = '" . (int) $current_category_id . "'
                        ";
     // print $check_query_raw . "<br>\n";
     $check_query = tep_db_query ($check_query_raw);
     $show_comparison = SPECIFICATIONS_MINIMUM_COMPARISON <= tep_db_num_rows ($check_query);

     if (SPECIFICATIONS_BOX_COMP_INDEX == 'False' && SPECIFICATIONS_COMP_LINK == 'True' && $current_category_id != 0 && $show_comparison == true && tep_has_spec_group ($current_category_id, 'show_comparison') == true) {
       echo '                <td align="center"><a href="' . tep_href_link (FILENAME_COMPARISON, 'cPath=' . $cPath) . '">' . tep_image_button ('button_products_comparison.gif', TEXT_BUTTON_COMPARISON) . '</a></td>' . "\n";
     } // if (SPECIFICATIONS_BOX_COMP_INDEX
// End Product Specifications
?>

</div>
<?php
// Start Products Specifications
   if (SPECIFICATIONS_FILTERS_MODULE == 'True') {
?>

 <div class="contentText">

<?php
     require (DIR_WS_MODULES . 'products_filter.php');
?>

 </div>

<?php
   }
// End Products Specifications
?>

<?php
 }

 require(DIR_WS_INCLUDES . 'template_bottom.php');
 require(DIR_WS_INCLUDES . 'application_bottom.php');
?>

Edited by emcmoda

Share this post


Link to post
Share on other sites

Hi

http://www.sklep.emcmoda.pl/kurtka-damska-k1000-p-31.html

 

When i sending review instead of add new review, adding product to add cart

 

<?php
/*
 $Id$

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

 Copyright (c) 2010 osCommerce

 Released under the GNU General Public License
*/

 require('includes/application_top.php');

 require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_PRODUCT_INFO);

 // Start Products Specifications
 require_once (DIR_WS_FUNCTIONS . 'products_specifications.php');

// Process data from the on-page forms
 require_once( DIR_WS_MODULES . 'product_info_process.php' );
// End Products Specifications

 $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);


 // Start Products Specifications
 if (SPECIFICATIONS_BOX_FRAME_STYLE == 'Tabs') {
   // Insert the javascript for the tabs
   $head_javascript = '  <script language="javascript" type="text/javascript">' . PHP_EOL;
   $head_javascript .= '    $(document).ready(function(){' . PHP_EOL;
   $head_javascript .= '      initTabs();' . PHP_EOL;
   $head_javascript .= '    });' . PHP_EOL;
   $head_javascript .= '    function initTabs() {' . PHP_EOL;
   $head_javascript .= "      $('#tabMenu a').bind('click',function(e) {" . PHP_EOL;
   $head_javascript .= '      e.preventDefault();' . PHP_EOL;
   $head_javascript .= '      var thref = $(this).attr("href").replace(/#/, "");' . PHP_EOL;
   $head_javascript .= "      $('#tabMenu a').removeClass('active');" . PHP_EOL;
   $head_javascript .= "      $(this).addClass('active');" . PHP_EOL;
   $head_javascript .= "      $('#tabContent div.content').removeClass('active');" . PHP_EOL;
   $head_javascript .= "      $('#'+thref).addClass('active');" . PHP_EOL;
   $head_javascript .= '      });' . PHP_EOL;
   $head_javascript .= '    }' . PHP_EOL;
   $head_javascript .= '  </script>' . PHP_EOL;
   $head_javascript .= '  <script src="ext/jquery/star_rating/jquery.rating.pack.js" type="text/javascript" language="javascript"></script>' . PHP_EOL;
   $head_javascript .= '  <link href="ext/jquery/star_rating/jquery.rating.css" type="text/css" rel="stylesheet"/>' . PHP_EOL;

   $oscTemplate->addBlock( $head_javascript, 'header_tags' );
 }

 require(DIR_WS_INCLUDES . 'template_top.php');

 /*** Begin Header Tags SEO ***/  
 echo "<a name=\"\$header_tags_array['title']\"></a>";
 /*** End Header Tags SEO ***/ 

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

<div class="contentContainer">
 <div class="contentText">
   <?php echo TEXT_PRODUCT_NOT_FOUND; ?>
 </div>

 <div style="float: right;">
   <?php echo tep_draw_button(IMAGE_BUTTON_CONTINUE, 'triangle-1-e', tep_href_link(FILENAME_DEFAULT)); ?>
 </div>
</div>

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

// Products Specifications
   $product_info_query = tep_db_query("select p.products_id, pd.products_name, pd.products_description, p.products_model, p.products_quantity, p.products_image, pd.products_url, p.products_price, p.products_tax_class_id, p.products_date_added, p.products_date_available, p.manufacturers_id, pd.products_tab_1, pd.products_tab_2, pd.products_tab_3, pd.products_tab_4, pd.products_tab_5, pd.products_tab_6 from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_status = '1' and p.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "'");
   $product_info = tep_db_fetch_array($product_info_query);

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

   if ($new_price = tep_get_products_special_price($product_info['products_id'])) {
     $products_price = '<del>' . $currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id'])) . '</del> <span class="productSpecialPrice">' . $currencies->display_price($new_price, tep_get_tax_rate($product_info['products_tax_class_id'])) . '</span>';
   } else {
     $products_price = $currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id']));
   }

   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'];
   }
?>

<?php echo tep_draw_form('cart_quantity', tep_href_link(FILENAME_PRODUCT_INFO, tep_get_all_get_params(array('action')) . 'action=add_product')); ?>

<div>
 <h1 style="float: right;"><?php echo $products_price; ?></h1>
 <h1><?php echo $products_name; ?></h1>
</div>

<div class="contentContainer">
 <div class="contentText">

<?php
   if (tep_not_null($product_info['products_image'])) {
     $pi_query = tep_db_query("select image, htmlcontent from " . TABLE_PRODUCTS_IMAGES . " where products_id = '" . (int)$product_info['products_id'] . "' order by sort_order");

     if (tep_db_num_rows($pi_query) > 0) {
?>

   <div id="piGal" style="float: right;">
     <ul>

<?php

       $pi_counter = 0;
       while ($pi = tep_db_fetch_array($pi_query)) {
         $pi_counter++;

         $pi_entry = '        <li><a href="';

         $pi_entry .= tep_href_link(DIR_WS_IMAGES . $pi['image']);

         $pi_entry .= '" target="_blank" rel="fancybox" title="' . $pi['htmlcontent'] . '">' . tep_image(DIR_WS_IMAGES . $pi['image'], $pi['htmlcontent']) . '</a>';

         $pi_entry .= '</li>';

         echo $pi_entry;
       }

?>

     </ul>
   </div>

<script type="text/javascript">
$('#piGal ul').bxGallery({
 maxwidth: 600,
 maxheight: 400,
 thumbwidth: <?php echo (($pi_counter > 1) ? '50' : '0'); ?>,
 thumbcontainer: 300,
 load_image: 'ext/jquery/bxGallery/spinner.gif'
});
</script>

<?php
     } else {
?>

   <div id="piGal" style="float: right;">
     <?php echo '<a href="' . tep_href_link(DIR_WS_IMAGES . $product_info['products_image']) . '" target="_blank" rel="fancybox">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], addslashes($product_info['products_name']), null, null, 'hspace="5" vspace="5"') . '</a>'; ?>
   </div>

<?php
     }
?>

<script type="text/javascript">
$("#piGal a[rel^='fancybox']").fancybox({
 cyclic: true
});
</script>

<?php
   }
?>

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

<?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) {
?>

   <p><?php echo TEXT_PRODUCT_OPTIONS; ?></p>

   <p>
<?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 (is_string($HTTP_GET_VARS['products_id']) && 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;
       }
?>
     <strong><?php echo $products_options_name['products_options_name'] . ':'; ?></strong><br /><?php echo tep_draw_pull_down_menu('id[' . $products_options_name['products_options_id'] . ']', $products_options_array, $selected_attribute); ?><br />
<?php
     }
?>

   </p>


<?php
   }
?>
 <div class="buttonSet">
   <span class="buttonAction"><?php echo tep_draw_hidden_field('products_id', $product_info['products_id']) . tep_draw_button(IMAGE_BUTTON_IN_CART, 'cart', null, 'primary'); ?></span>

   <?php //echo tep_draw_button(IMAGE_BUTTON_REVIEWS . (($reviews['count'] > 0) ? ' (' . $reviews['count'] . ')' : ''), 'comment', tep_href_link(FILENAME_PRODUCT_REVIEWS, tep_get_all_get_params())); ?>
 </div>
 <?php
   include_once (DIR_WS_MODULES . FILENAME_PRODUCTS_TABS);
// End Products Specifications
?>

   <div style="clear: both;"></div>

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

   <p style="text-align: center;"><?php echo sprintf(TEXT_DATE_AVAILABLE, tep_date_long($product_info['products_date_available'])); ?></p>

<?php
   }
?>

 </div>

<?php
   $reviews_query = tep_db_query("select count(*) as count from " . TABLE_REVIEWS . " where products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and reviews_status = 1");
   $reviews = tep_db_fetch_array($reviews_query);
?>

     <!--- BEGIN Header Tags SEO Social Bookmarks -->
     <?php if (HEADER_TAGS_DISPLAY_SOCIAL_BOOKMARKS == 'true') {
        echo '<div style="margin-top:5px;">';
        include(DIR_WS_MODULES . 'header_tags_social_bookmarks.php');
        echo '</div>'; 
     }
     ?>
     <!--- END Header Tags SEO Social Bookmarks -->      
<?php
   if ((USE_CACHE == 'true') && empty($SID)) {
     echo tep_cache_also_purchased(3600);
   } else {
     include(DIR_WS_MODULES . FILENAME_ALSO_PURCHASED_PRODUCTS);
   }
?>
     <?php /*** Begin Header Tags SEO ***/  ?>
     <?php  
      if (! tep_not_null($header_tags_array['title'])) {
         $header_tags_array['title'] = $product_info['products_name']; 
      }	 
      echo '<div class="contentText" style="margin-top:5px; text-align:center;">' . TEXT_VIEWING . ' ';
      echo '<a title="' . $header_tags_array['title'] . '" href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $product_info['products_id'], 'NONSSL') . '"/# ' . $header_tags_array['title'] . '">' . $header_tags_array['title'] . '</a></div>'; 
     /*** End Header Tags SEO ***/ 
     ?>  
</div>

</form>

<?php
 }

 require(DIR_WS_INCLUDES . 'template_bottom.php');
 require(DIR_WS_INCLUDES . 'application_bottom.php');
?>

 

Where i can show box shipping or warranty video or manuals ? in to cart product info

Edited by emcmoda

Share this post


Link to post
Share on other sites

Hi when i add: in Filters in Specification: cena some value i have this bug :

 

Fatal error: Call to a member function format() on a non-object in /home/emc/domains/emcmoda.pl/public_html/sklep/includes/modules/boxes/bm_products_filter.php on line 143

Share this post


Link to post
Share on other sites

Hi

 

other error

 

http://www.sklep.emcmoda.pl/products_filter.php?sort=5a

I don't see values of filter

 

when i add: in Filters in Specification: cena some value i have this bug :

 

Fatal error: Call to a member function format() on a non-object in /home/emc/domains/emcmoda.pl/public_html/sklep/includes/modules/boxes/bm_products_filter.php on line 143

 

if Show Comparison Page is true i have a bug

 

http://www.sklep.emcmoda.pl/plaszcze-damskie-c-23.html

1054 - Nieznana kolumna 'p.products_sort_order' w order clause

select distinct p.products_id from products_to_categories p2c join specification_groups_to_categories s2c on (p2c.categories_id = s2c.categories_id) join products p on (p.products_id = p2c.products_id) where p.products_status = 1 and p2c.categories_id = '23' and s2c.specification_group_id = '1' order by p.products_sort_order

when SCP is False all page don't load

Share this post


Link to post
Share on other sites

Hi Jim i have some problem with adding your products specification if you have access to serwer and shop login and password can you help me ? BR Michał user emcmoda

Share this post


Link to post
Share on other sites

I will answer questions -- if I know the answer.

 

I will not fix all of your problems for you. That's not what the forum is for.

 

In order to answer your questions, I need to know the version of osCommerce that you are using and the version of Products Specifications that you are trying to install.

 

Regards

Jim


See my profile for a list of my addons and ways to get support.

Share this post


Link to post
Share on other sites

Fatal error: Call to a member function format() on a non-object in /home/emc/domains/emcmoda.pl/public_html/sklep/includes/modules/boxes/bm_products_filter.php on line 143

<snipped>

That's a bug. Find this line in that file:

 

      global $current_category_id, $languages_id, $oscTemplate;

and replace it with this:

 

      global $current_category_id, $languages_id, $oscTemplate, $currencies;

1054 - Nieznana kolumna 'p.products_sort_order' w order clause

Another bug. In catalog/includes/modules/comparison.php, find this line:

 

          p.products_sort_order

and replace it with:

          p.products_id

Make the same change in catalog/includes/modules/comparison_horiz.php.

 

Thanks for the bug reports. I'll fix these in the master and post a new download.

 

Regards

Jim


See my profile for a list of my addons and ways to get support.

Share this post


Link to post
Share on other sites

If the package mising the file catalog/admin/includes/modules/tabs.php

The filename is products_tabs.php.

 

Regards

Jim


See my profile for a list of my addons and ways to get support.

Share this post


Link to post
Share on other sites

Where i can show box shipping or warranty video or manuals ? in to cart product info

<snipped>

There are six generic tabs that you can use for videos or whatever you want. The data is entered into the corresponding tab in the Categories/Products page in your Admin. See 4.1.5.4 in the User's Manual.

 

For manuals I recommend adding the Document Manager Addon and setting Show Documents Tab in the Admin Specifications configuration panel to True. Manuals can then be uploaded using the Document Manager's Admin panel.

 

Regards

Jim


See my profile for a list of my addons and ways to get support.

Share this post


Link to post
Share on other sites

I see the stars just fine. Browser problem?

 

Regards

Jim


See my profile for a list of my addons and ways to get support.

Share this post


Link to post
Share on other sites

I tried your site in Chrome, Opera, and Firefox. Your site works as expected in all of them. I can't fix something that isn't broken.

 

Regards

Jim


See my profile for a list of my addons and ways to get support.

Share this post


Link to post
Share on other sites

I change the above files and in the categories or subcategories is another bug where is below functions i searched folder 'SP1.1.6'

Fatal error: Call to undefined function tep_fill_existing_fields() in /home/emc/domains/emcmoda.pl/public_html/sklep/includes/modules/comparison.php on line 179 

 

Regards

Michał

Thanks for your time

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×