hi everyone sorry to post again. we are working on getting a free gift mod in out store. we figured out how to do it, this is what we did
we made this file and named it config.freeProduct.php and uploaded to includes/autoloaders
and made this file named class.freeProduct.php and uploaded to includes/classes/observersCode:<?php $autoLoadConfig[90][] = array('autoType'=>'class', 'loadFile'=>'observers/class.freeProduct.php'); $autoLoadConfig[90][] = array('autoType'=>'classInstantiate', 'className'=>'freeProduct', 'objectName'=>'freeProduct'); ?>
Code:<?php /** * Observer class used to add a free product to the cart if the user spends more than $x * */ class freeProduct extends base { /** * The threshold amount the customer needs to spend. * * Note this is defined in the shops base currency, and so works with multi currency shops * * @var decimal */ var $freeAmount = 50; /** * The id of the free product. * * Note. This must be a true free product. e.g. price = 0 Also make sure that if you don't want the customer * to be charged shipping on this, that you have it set correctly. * * @var integer */ var $freeProductID = 57; /** * constructor method * * Attaches our class to the $_SESSION['cart'] class and watches for 2 notifier events. */ function freeProduct() { $_SESSION['cart']->attach($this, array('NOTIFIER_CART_ADD_CART_END', 'NOTIFIER_CART_REMOVE_END')); } /** * Update Method * * Called by observed class when any of our notifiable events occur * * @param object $class * @param string $eventID */ function update(&$class, $eventID) { if ($_SESSION['cart']->show_total() >= $this->freeAmount && !$_SESSION['cart']->in_cart($this->freeProductID) ) { $_SESSION['cart']->add_cart($this->freeProductID); } if ($_SESSION['cart']->show_total() < $this->freeAmount && $_SESSION['cart']->in_cart($this->freeProductID) ) { $_SESSION['cart']->remove($this->freeProductID); } if ($_SESSION['cart']->in_cart($this->freeProductID)) { $_SESSION['cart']->contents[$this->freeProductID]['qty'] = 1; } } } ?>
once these were uploaded we got these errors
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/cara1977/public_html/includes/auto_loaders/config.freeProduct.php:8) in /home/cara1977/public_html/includes/functions/sessions.php on line 100
Warning: Cannot modify header information - headers already sent by (output started at /home/cara1977/public_html/includes/auto_loaders/config.freeProduct.php:8) in /home/cara1977/public_html/includes/init_includes/init_templates.php on line 78
also the font sizes on our site changed.
i searched and found alot of header error but none related to this mod.
we are using 1.3.0.2
im just not sure what to do, if anyone has any insight i would greatly appreciate it.
thanks so much
Cara



