Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

E-Commerce Modules /

Discuss about the various e-commerce modules available:
Ecommerce, SS Shop, SilverCart and SwipeStripe
Alternatively, have a look the shared mailinglist.

Moderators: martimiz, Nicolaas, Sean, frankmullenger, biapar, Willr, Ingo, Jedateach, swaiba, simon_w

e-commerce emails


Reply


3 Posts   1383 Views

Avatar
Llewe

Community Member, 1 Post

25 June 2009 at 10:16am

I'm a newbie so apologies in advance. I have setup the e-commerce module [v0.5.2] and everything seems ok except I am not getting the emails sent out to the customer and shop. I have tried setting this in both the ecommerce config.php and the mysite config.php using

// Set the email of the admin who looks after receiving the order emails.
Order::set_email('llewetest@gmail.com');

I have also set the admin email in mysite config.php using

Email::setAdminEmail('llewetest@gmail.com')

and this works, sending me two emails saying that "A message that you sent contained no recipient addresses"

Why is it not picking up the email addresses? Am I setting this in the wrong place?

Avatar
danqxx

Community Member, 14 Posts

9 July 2009 at 2:36pm

Hi, this is pretty old now but I had the same problem. It turned out to be a misordering of a parent constructor. Anyway the fix for me went like this:
ecommerce>order.php line 1195 (roughly)

class Order_receiptEmail extends Email {

   /*private static $StoreName = "Shop Sale";
   public function setStoreName($name){ $self->StoreName=$name; }
   public function getStoreName(){ return $self->StoreName; }*/
   
   protected $ss_template = 'Order_receiptEmail';
   
   public function __construct($to = null, $from = null, $subject = null) {
      parent::__construct();
      $this->to = $to ? $to : '$Member.Email';
      
      $this->from = $from;
      $this->subject = $subject ? $subject : '$StoreName reference (#$ID)';
            
      if(!isset($this->from, $this->subject)) {
         user_error('From or subject for email have not been defined. You probably haven\'t called Order::set_email() in your _config.php file.', E_USER_ERROR);
      }
      
      
   }
}


this is the fixed version. all i did was move the line

parent::__construct();

to the beginning of the function.
Hope this helps ;)

Avatar
Nickt

Community Member, 43 Posts

9 November 2009 at 4:39pm

thanks so much - this does work!