Jump to content
Sign in to follow this  
Rezolles_Net

Support Thread for Price Match

Recommended Posts

I have figured out the problem - you must be a LOGGED IN, REGISTERED user! Which is a good thing, but I need to add a notice to the page so the customers know that.

 

Or is there a way to send them to the log in page instead of the cookies page when they click the link?

Hmmm...

 

Thanks!

K

 

 

Hurm...But for my website..Customer who did not register/ login also can request for the pricematch...How did you do to require the customer to be logged in & registered? :thumbsup:

Edited by Rezolles_Net

Share this post


Link to post
Share on other sites

Hi,

 

Is it possible to show the price in the /catalog/pricematch.php file tax inclusive?

For now I have only 1 tax so I wanted to multiply my variable with 1,21 (because tax=21%)

 

In the file are the following codes:

 

$this_Price = $_REQUEST['price1'];

 

....

 

<tr>

<td><?php echo PRICEMATCH_OUR_PRICE; ?></td>

<td><input type="hidden" name="Price" size="10" value="<?php echo to_money($this_Price); ?>"><?php echo to_money($this_Price); ?></td>

</tr>

 

 

 

I wanted to add after $this_Price = $_REQUEST['price1'];, $this_Price2 = $this_Price*1,21; and use that variable then in my output....

 

But everything what I try it doesn't work. I think it is easy to solve but I'm not very good with variables

Can anyone help?

Edited by Rabaeys

Share this post


Link to post
Share on other sites

Added this contribution for my shop, it work fine BUT it doesn't alway pop up.

 

Sometime it do and sometime it doesn't - it like it having a mind of it own !! Anyone get this ?

Share this post


Link to post
Share on other sites
has anyone any answer to how i can get the price to show the VAT included?

 

In the product_info.php file pricematch entry replace

 

$this_Price = $product_info['products_price'];

 

with

 

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

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

} else {

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

}

 

This works for me using the VAT price it also shows special prices.

 

You can see it working at http://www.gr8fires.co.uk

Share this post


Link to post
Share on other sites

Hello Tross,

 

I do not have changed unfortunately functioned. Does it have still which with the language to do?

 

German code ? English code 1 ?

 

echo "\"java script:popupPricematch('pricematch.php?code1=" . $this_Code . "&product1=" . $this_Product . "&price1=" . $this_Price . "')\"";

Share this post


Link to post
Share on other sites
Hello Tross,

 

I do not have changed unfortunately functioned. Does it have still which with the language to do?

 

German code ? English code 1 ?

 

 

After you have installed pricematch. Search catalog/product_info.php and find:-

 

$this_Price = $product_info['products_price'];

 

replace it with

 

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

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

} else {

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

}

 

This has to be entered into the product_info.php file in root folder of your shop, not in the language folder so it doesn't matter what language your shop is using.

 

Regards

 

Tross

Share this post


Link to post
Share on other sites

I have also noticed an exploit which you can change the price easily on pricematch php..

 

For example:

 

Click on pricematch on product_info.php > new pricematch window opens > copy the url and paste into a new browser window>change-price-to-whatever-you-like-and-hope-store-staff-do-not-check!!

 

Is there a way to make it more robust?

 

 

PS what happened to the TAX Round fix I added before this post, people might need that!!?

Edited by chrish123

Share this post


Link to post
Share on other sites

Does not want to succeed simply :(

 

I always receive this line

 

java script:popupPricematch('pricematch.php?code1=&product1=&price1=0.00EUR')

 

No product name, no product price, why!?

Share this post


Link to post
Share on other sites

Has anyone actually gotten this to show both the Product name and the price at the same time?

 

I can get either or working but not both for some reason and I did try the latest fix for it!

Share this post


Link to post
Share on other sites

So there are still some unresolved issues with this. The first one that is a majorly important one for me is that not all the products with the pricematch feature work when you click the link to fill out the form. I've checked to see if form conflicts with a special or free shipping but it doesn't. Basically sometimes it works, sometimes it doesn't. Simple as that.

 

The second issue, which isn't too big of a concern for right now is that when you click the form, if a product is on special it still uses the higher price in the form.

 

Those are the major issues i've run into thus far.

Any help will be greatly appreciated.

Jeffrey

Share this post


Link to post
Share on other sites

So there are still some unresolved issues with this. The first one that is a majorly important one for me is that not all the products with the pricematch feature work when you click the link to fill out the form. I've checked to see if form conflicts with a special or free shipping but it doesn't. Basically sometimes it works, sometimes it doesn't. Simple as that.

 

The second issue, which isn't too big of a concern for right now is that when you click the form, if a product is on special it still uses the higher price in the form.

 

Those are the major issues i've run into thus far.

Any help will be greatly appreciated.

Jeffrey

 

 

 

Everything seems to work on my website with this contribution; only one question. The price being pulled to the pricematch popup is the original price and not the special price. Anyone know how to make it pull the specail price? Thanks!

 

-Travis

Share this post


Link to post
Share on other sites

I hope someone can help. I have a templated version of oscommerce and cant seem to get this to work.

 

Can someone please look at my product_info.php file and let me know how to edit it. Thanks a million!

 

<?php
/*
 $Id: product_info.php 1739 2007-12-20 00:52:16Z hpdl $

 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);
?>
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
<html <?php echo HTML_PARAMS; ?>>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">
<title><?php echo TITLE; ?></title>
<base href="<?php echo (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . DIR_WS_CATALOG; ?>">
<link rel="stylesheet" type="text/css" href="stylesheet.css">
<script type="text/javascript" src="iepngfix_tilebg.js"></script>
<style type="text/css">
.ie6_png 			{behavior: url("iepngfix.htc") }
.ie6_png img		{behavior: url("iepngfix.htc") }
.ie6_png input		{behavior: url("iepngfix.htc") }
</style>
<!--[if IE]>
  <script type="text/javascript" src="ie_png.js"></script>
  <script type="text/javascript">
      ie_png.fix('.png');
  </script>
<![endif]-->
<script language="javascript"><!--
function popupWindow(url) {
 window.open(url,'popupWindow','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,copyhistory=no,width=100,height=100,screenX=150,screenY=150,top=150,left=150')
}
//--></script>
</head>
<body>
<!-- header //-->
<?php require(DIR_WS_INCLUDES . 'header.php'); ?>
<!-- header_eof //-->

<!-- body //-->
<table border="0" class="<?php echo MAIN_TABLE; ?>" cellspacing="0" cellpadding="0">
<tr>
   <td class="<?php echo BOX_WIDTH_TD_LEFT; ?>"><table border="0" class="<?php echo BOX_WIDTH_LEFT; ?>" cellspacing="0" cellpadding="0">
<!-- left_navigation //-->
<?php require(DIR_WS_INCLUDES . 'column_left.php'); ?>
<!-- left_navigation_eof //-->
   </table></td>
<!-- body_text //-->
   <td class="<?php echo CONTENT_WIDTH_TD; ?>"><?php echo panel_top(); ?><?php echo tep_draw_form('cart_quantity', tep_href_link(FILENAME_PRODUCT_INFO, tep_get_all_get_params(array('action')) . 'action=add_product')); ?>



<?php
 if ($product_check['total'] < 1) {
?>
<?php echo tep_draw_top();?>

<?php echo tep_draw_title_top();?>

			<?php echo TEXT_PRODUCT_NOT_FOUND; ?>

<?php echo tep_draw_title_bottom();?>

<?php echo tep_draw1_top();?>

<?php echo tep_draw_infoBox2_top();?>

		<table border="0" width="100%" cellspacing="0" cellpadding="2">
			<tr><td align="right"><?php echo '<a href="' . tep_href_link(FILENAME_DEFAULT) . '">' . tep_image_button('button_continue.gif', IMAGE_BUTTON_CONTINUE) . '</a>'; ?></td></tr>
           </table>

<?php echo tep_draw_infoBox2_bottom();?>

<?php echo tep_draw1_bottom();?>

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

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

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

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

   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_top();?>

<?php echo tep_draw_title_top();?>

			<div class="left_part"><?php echo $breadcrumb->trail(' » ')?> »  <?php echo $products_name; ?></div><div class="right_part"><?php echo $products_price2; ?></div>

<?php echo tep_draw_title_bottom();?>

<?php echo tep_draw1_top();?>

	<?php /*  echo tep_draw2_top();  */?>

<?php /*  echo tep_pixel_trans();  */?>

<?php
   if (tep_not_null($product_info['products_image'])) {
?>



<div class="main prod_info" style="width:<?php echo (SMALL_IMAGE_WIDTH +23);?>px;">

<?php echo tep_draw_prod_pic_top();?><script language="javascript"><!--
document.write('<?php echo '<a href="javascript: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, '') . '</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, '') .  '</a>'; ?></noscript><?php echo tep_draw_prod_pic_bottom();?>

<script language="javascript"><!--
document.write('<?php echo '<a class="enlarge" href="javascript:popupWindow(\\\'' . tep_href_link(FILENAME_POPUP_IMAGE, 'pID=' . $product_info['products_id']) . '\\\')">' . TEXT_CLICK_TO_ENLARGE . '</a>'; ?>');
//--></script>
<noscript><?php echo '<a class="enlarge" href="' . tep_href_link(DIR_WS_IMAGES . $product_info['products_image']) . '" target="_blank">' .  TEXT_CLICK_TO_ENLARGE . '</a>'; ?></noscript></div>	
<div class="main"><div class="desc"><?php echo stripslashes($product_info['products_description']); ?></div><br>
			  <br><div><?php echo $products_price?></div></div><br>
<div style="clear:both;"></div>
<?php
   }
?>


	<?php /*  echo tep_draw2_bottom();  */?>

<div class="prod_line_x padd_gg"><?php echo tep_draw_separator('spacer.gif', '1', '1'); ?></div>

	<?php echo tep_draw2_top(); ?>

<?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="4" cellpadding="2">
           <tr>
             <td class="main" colspan="2"><strong class="strong"><?php echo TEXT_PRODUCT_OPTIONS; ?></strong></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 
   }
?>


<?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) {
?>
   <table cellpadding="0" cellspacing="4" border="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>
</table>
<?php
   }

   if (tep_not_null($product_info['products_url'])) {
?>
   <table cellpadding="0" cellspacing="4" border="0">
  <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>
</table>

<?php echo tep_pixel_trans();?>

<?php
   }

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

<?php echo tep_pixel_trans();?>

<table cellpadding="0" cellspacing="4" border="0">    
  <tr>
       <td class="main"><?php echo sprintf(TEXT_DATE_AVAILABLE, tep_date_long($product_info['products_date_available'])); ?></td>
     </tr>
</table>
<?php
   } else {
?>

<?php echo tep_pixel_trans();?>

  <table cellpadding="0" cellspacing="4" border="0">   
  <tr>
       <td class="main"><?php echo sprintf(TEXT_DATE_ADDED, tep_date_long($product_info['products_date_added'])); ?></td>
     </tr>
</table>
<?php
   }
?>

<?php echo tep_draw2_bottom(); ?>

<?php echo tep_pixel_trans();?> 

<div class="prod_line_x padd_gg"><?php echo tep_draw_separator('spacer.gif', '1', '1'); ?></div>

<?php echo tep_draw2_top(); ?>

<?php echo tep_pixel_trans();?>
<?php echo tep_pixel_trans();?>

<?php  /* echo tep_draw_infoBox2_top(); */ ?>

		<table border="0" width="100%" cellspacing="0" cellpadding="0"><tr>
               <td class="main button_marg"><?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>
               <td class="main button_marg" align="right"><?php echo tep_draw_hidden_field('products_id', $product_info['products_id']) . tep_image_submit('button_add_to_cart1.gif', IMAGE_BUTTON_IN_CART); ?></td>
             </tr>
           </table>

<?php  /* echo tep_draw_infoBox2_bottom(); */ ?>

	<?php echo tep_draw2_bottom(); ?>


<?php echo tep_draw1_bottom();?>

<?php
   if ((USE_CACHE == 'true') && empty($SID)) {
     echo tep_cache_also_purchased(3600);
   } else {
    include(DIR_WS_MODULES . FILENAME_ALSO_PURCHASED_PRODUCTS);
   }
 }
?>

<?php echo tep_draw_bottom();?>	

</form></td>
<!-- body_text_eof //-->
<td class="<?php echo BOX_WIDTH_TD_RIGHT; ?>"><table border="0" class="<?php echo BOX_WIDTH_RIGHT; ?>" cellspacing="0" cellpadding="0">
<!-- 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 //-->
</body>
</html>
<?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>

Share this post


Link to post
Share on other sites

Hello,

 

I've been using this contribution for quite awhile now.. no problems installing or having it work.

 

I have one problem with it tho: when I have multiple currencies in the store, say:

 

- for English language - USD (that's the main currency in the store)

- for German language - EUR (the price in EUR is calculated on the basis of forex USD->EUR).

 

When a customer uses English to send a pricematch request - thier suggested price is say 10 USD and pricematch request email shows 10 USD.

 

BUT

 

When a customer uses German to send a pricematch request - their suggested price is say 10 EUR but the email will show 6,65 EUR (oscommerce thinks 10 means 10 USD, so it converts those 10USD into EURO; 10USD * conversion rate 0,665 = 6,65 EUR).

 

This happens regardless of what "Switch To Default Language Currency" is set to (true/false).

 

Not sure if I am making myself clear :/

 

Oscommerce addons support multiple languages, right? So I would like this addon to support multiple currencies :)

 

Can this be done?

Share this post


Link to post
Share on other sites

After you have installed pricematch. Search catalog/product_info.php and find:-

 

$this_Price = $product_info['products_price'];

 

replace it with

 

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

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

} else {

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

}

 

This has to be entered into the product_info.php file in root folder of your shop, not in the language folder so it doesn't matter what language your shop is using.

 

Regards

 

Tross

 

 

This is exactly what I needed to pull in my special prices so thanks. One question though is that the products that are over $100 and less than $1,000 have a leading comma like this $,100.00. Do you know how to fix this?

Edited by djdeuce

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
Sign in to follow this  

×