Ok I've been trying to work this out for two weeks now and I don't want to wait much longer... I've posted a $25 bounty on getting the answer quickly at http://answers.google.com/answers/threadview?id=270037 I'm sure it's easy if you know how.
I had a look at the workflow to see if I could achieve this there, but I couldn't find anything that looked like it might work. Right now with no workflow the system does everything I need except the extra e-mails to the suppliers/creators of the products. The customer will not be making any payment for the products they have chosen; they will simply wait to be contacted by the supplier(s) of the product(s) they have chosen; so no payment gateway to deal with, just send the two normal e-mails (to the shopkeeper and the customer) plus one e-mail to each of the product 'owners'/creators to send them their part of the order so they can contact the customer.
You need to write a workflow event that will send the email after you checkout your list. If you know php it isn't too diffficult. But learning can be time consuming.
You should set up a new workflow. Then in the trigger section associate your new workflow with 'shop checkout before'. The aim here is to execute some specific code when your client checkouts, in your case this will be to send an email.
To go through with this you need to write a workflow event that will take the order and send the email. Once you have this event you can associate it with the workflow, then the system should work as expected.
okay, at least it's a hint... but don't think I'll be able to get very far. I'm only just learning php right now. Before I sit myself down for an all nighter and hopefully before you're gone for the day...
If I use the gift wrapping code as a template, how would I find the orderID and the items in that order from there. Do I need to find the order in the database or is it passed on to the workflow as a variable?
Would it just be... $order =& eZOrder::fetch( $orderID ); ?