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
Code:
<?php
$autoLoadConfig[90][] = array('autoType'=>'class',
'loadFile'=>'observers/class.freeProduct.php');
$autoLoadConfig[90][] = array('autoType'=>'classInstantiate',
'className'=>'freeProduct',
'objectName'=>'freeProduct');
?>
and made this file named class.freeProduct.php and uploaded to includes/classes/observers
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
Bookmarks