View Single Post
  #3  
Old 11-23-2006, 02:10 PM
  ShishaPipeUK's Avatar 
ShishaPipeUK ShishaPipeUK is offline
 

Senior Member
  
Join Date: Jul 2005
Location: London, England.
Posts: 118
 

Lightbulb Re: Notify me when the product's information, price and stock level is changed

include/product_modify.php

Find this code:

Code:
# Update the default price if (!$is_variant) func_array2update("pricing", array("price" => $price), "productid='$productid' AND quantity='1' AND membershipid = 0 AND variantid = 0"); if ($fields['price'] == 'Y' && $geid && !$is_variant) { while ($pid = func_ge_each($geid, 1, $productid)) { $is_variant_sub = (func_query_first_cell("SELECT COUNT(*) FROM $sql_tbl[variants] WHERE productid = '$pid'") > 0); if (!$is_variant_sub) func_array2update("pricing", array("price" => $price), "productid='$pid' AND quantity='1' AND membershipid = 0 AND variantid = 0"); } }

and replace it with:

Code:
# Update the default price if (!$is_variant) func_array2update("pricing", array("price" => $price), "productid='$productid' AND quantity='1' AND membershipid = 0 AND variantid = 0"); if ($fields['price'] == 'Y' && $geid && !$is_variant) { while ($pid = func_ge_each($geid, 1, $productid)) { $is_variant_sub = (func_query_first_cell("SELECT COUNT(*) FROM $sql_tbl[variants] WHERE productid = '$pid'") > 0); if (!$is_variant_sub) func_array2update("pricing", array("price" => $price), "productid='$pid' AND quantity='1' AND membershipid = 0 AND variantid = 0"); # START: SHISHAPIPE UK MOD - theshisha.com $notify_emails = func_query("SELECT email FROM $sql_tbl[email_for_changed_products] WHERE productid='$pid'"); if ($notify_emails){ foreach($notify_emails as $v){ global $mail_smarty; $mail_smarty->assign("productid", $pid); $mail_smarty->assign("email", $v["email"]); func_send_mail($v["email"], "mail/productinfo_has_changed_subj.tpl", "mail/productinfo_has_changed.tpl", $config["Company"]["orders_department"], false); db_query("UPDATE $sql_tbl[email_for_changed_products] SET price='".abs($price)."' WHERE productid='$pid' AND email='$v[email]'"); } } # END: SHISHAPIPE UK MOD - theshisha.com } }

In the same file include/product_modify.php look for:

Code:
# Update taxes db_query("DELETE FROM $sql_tbl[product_taxes] WHERE productid='$productid'"); if($geid && $fields['taxes']) { while ($pid = func_ge_each($geid, 100, $productid)) { db_query("DELETE FROM $sql_tbl[product_taxes] WHERE productid IN ('".implode("','", $pid)."')"); } } if (!empty($taxes) && is_array($taxes)) { foreach ($taxes as $k=>$v) { if (intval($v) > 0) { $query_data = array( "productid" => $productid, "taxid" => intval($v) ); func_array2insert("product_taxes", $query_data, true); if($geid && $fields['taxes']) { while ($pid = func_ge_each($geid, 1, $productid)) { $query_data['productid'] = $pid; func_array2insert("product_taxes", $query_data, true); } } } } }

and replace it with:

Code:
# Update taxes db_query("DELETE FROM $sql_tbl[product_taxes] WHERE productid='$productid'"); if($geid && $fields['taxes']) { while ($pid = func_ge_each($geid, 100, $productid)) { db_query("DELETE FROM $sql_tbl[product_taxes] WHERE productid IN ('".implode("','", $pid)."')"); } } # START: SHISHAPIPE UK MOD - theshisha.com # Check email for changed product $notify_emails = func_query("SELECT email FROM $sql_tbl[email_for_changed_products] WHERE productid='$productid'"); if ($notify_emails){ foreach($notify_emails as $v){ $old_product_data = func_query_first("SELECT * FROM $sql_tbl[email_for_changed_products] WHERE productid='$productid' AND email='$v[email]'"); if ($old_product_data["descr"] != $query_data["descr"] || $old_product_data["fulldescr"] != $query_data["fulldescr"] || $old_product_data["price"] != abs($price) || $old_product_data["avail"] != $query_data["avail"]){ global $mail_smarty; $mail_smarty->assign("productid", $productid); $mail_smarty->assign("email", $v["email"]); func_send_mail($v["email"], "mail/productinfo_has_changed_subj.tpl", "mail/productinfo_has_changed.tpl", $config["Company"]["orders_department"], false); db_query("UPDATE $sql_tbl[email_for_changed_products] SET descr='".addslashes($query_data["descr"])."', fulldescr='".addslashes($query_data["fulldescr"])."', avail='$query_data[avail]', price='".abs($price)."' WHERE productid='$productid' AND email='$v[email]'"); } } } # END: SHISHAPIPE UK MOD - theshisha.com if (!empty($taxes) && is_array($taxes)) { foreach ($taxes as $k=>$v) { if (intval($v) > 0) { $query_data = array( "productid" => $productid, "taxid" => intval($v) ); func_array2insert("product_taxes", $query_data, true); if($geid && $fields['taxes']) { while ($pid = func_ge_each($geid, 1, $productid)) { $query_data['productid'] = $pid; func_array2insert("product_taxes", $query_data, true); } } } } }

In the same file include/product_modify.php look for:

Code:
FROM $sql_tbl[variants] WHERE productid = '$pid'") > 0); if ($is_variant_sub) { func_unset($query_data_sub, "avail", "weight"); } func_array2update("products", $query_data_sub, "productid = '$pid'"); } else { func_array2update("products", $query_data, "productid IN ('".implode("','", $pid)."')"); } } } }

and replace it with:

Code:
FROM $sql_tbl[variants] WHERE productid = '$pid'") > 0); if ($is_variant_sub) { func_unset($query_data_sub, "avail", "weight"); } func_array2update("products", $query_data_sub, "productid = '$pid'"); } else { func_array2update("products", $query_data, "productid IN ('".implode("','", $pid)."')"); } # START: SHISHAPIPE UK MOD - theshisha.com $notify_emails = func_query("SELECT email FROM $sql_tbl[email_for_changed_products] WHERE productid='$pid'"); if ($notify_emails){ foreach($notify_emails as $v){ $old_product_data = func_query_first("SELECT * FROM $sql_tbl[email_for_changed_products] WHERE productid='$pid' AND email='$v[email]'"); if ($old_product_data["descr"] != $query_data_sub["descr"] || $old_product_data["fulldescr"] != $query_data_sub["fulldescr"] || $old_product_data["avail"] != $query_data_sub["avail"]){ global $mail_smarty; $mail_smarty->assign("prodictid", $pid); $mail_smarty->assign("email", $v["email"]); func_send_mail($v["email"], "mail/productinfo_has_changed_subj.tpl", "mail/productinfo_has_changed.tpl", $config["Company"]["orders_department"], false); db_query("UPDATE $sql_tbl[email_for_changed_products] SET descr='".addslashes($query_data_sub["descr"])."', fulldescr='".addslashes($query_data_sub["fulldescr"])."', avail='$query_data_sub[avail]' WHERE productid='$id' AND email='$v[email]'"); } } } # END: SHISHAPIPE UK MOD - theshisha.com } } }
__________________
Apache/2.0.55 (Red Hat) & MYSQL Server: 5.0.24
PERL: 5.008005 / PHP: 4.4.4 - 4.3.1 X-CART

Shop carts at
http://www.nightscene.co.uk/shop/home.php
http://www.theshisha.net/shopcart/home.php
http://www.system-maintenance.com/maint/home.php
http://www.tabac4u.com
Reply With Quote