3 replies [Last post]
petednz's picture
Offline
Joined: 03/11/2009
Juice: 10

Hi - first dipping of toe in the ubercart waters here. So apologies if I take a while to get used to your forum culture etc. Using Drupal and 6.x-2.2 so I will head off and upgrade. Meanwhile:

Product is set up with Attribute = Size (5 options, small etc)

On the Order it says

Qty 1x, Product = amazing t-shirt, size XL

But on the receipt that was generated simply says

Invoice Description: 1x amazing t-shirt , size: Array

Not sure if this is a bug, a failure on our part, a missing handler, a customisation of the receipt template etc.

Appreciate any pointers.

petednz's picture
Offline
Joined: 03/11/2009
Juice: 10
Re: Attributes is showing in the invoice/receipt that is emailed

Also in case it is a pointer to an underlaying problem with that attribute - when i reset the attribute from 'select' to 'radio' no change was observed in shop, inc after clearing caches. So maybe the attribute is munted - will replace and report back.

petednz's picture
Offline
Joined: 03/11/2009
Juice: 10
Re: Re: Attributes is showing in the invoice/receipt that is ema

And I see that the Invoice at admin/store/orders/14/invoice does show the size = XL

And I now realise this is included in the Mail Invoice.

The problem is an email possibly generated by the Payment Process (eWay) since the subject of the email is: Receipt of APPROVED purchase/payment @ EWAY

Guess I am getting closer and will hold off my monologue for a bit.

5t4rdu5t's picture
Offline
Joined: 01/26/2011
Juice: 3
Hi, You need to upgrade your

Hi,

You need to upgrade your customer.itpl.php file to version 1.5.2.9 or later. Or in case you're using a custom template, you need to change the code section that shows attributes for products.

It used to look like this:

                              <?php if (is_array($product->data['attributes']) && count($product->data['attributes']) > 0) {?>
                              <?php foreach ($product->data['attributes'] as $key => $value) {
                                echo
'<li>'. $key .': '. $value .'</li>';
                              }
?>

                              <?php } ?>

You should change it with this:

                              <?php if (is_array($product->data['attributes']) && count($product->data['attributes']) > 0) {?>
                              <?php foreach ($product->data['attributes'] as $attribute => $option) {
                                echo
'<li>'. t('@attribute: @options', array('@attribute' => $attribute, '@options' => implode(', ', (array)$option))) .'</li>';
                              }
?>

                              <?php } ?>

Hope that helps!