Twice today I have received orders on my website but I have not gotten the order confirmation email sent to the vendor. The order is still confirmed upon processing acceptance and the confirmed order is set to send the email. This is a sudden change, we have had our site up and running smoothly for almost a year at this version without this issue before.
We only knew about the new orders because we were notified by Authorize.net of a payment processed.
This afternoon (between the 2 orders) I updated to VM 3.0.14 and I updated my template (Virtueplanet Merchant) which was updated to accommodate the VM update.
Use vendor email is deselected to use the joomla system email. Receive System emails is set to yes. Both vendor and system emails are the same so I should be getting the email either way?
I am at a loss why the sudden change, nothing seems to be hacked and the customers still seem to be getting the emails, just not the vendor. I did need to cancel a duplicate order this morning and we got the cancellation email, but never the order confirmed email.
Joomla 3.4.1
Virtuemart 3.0.14
Just got another order where the same thing happened. I decided to check using the vendor email address and will see if that makes the difference.
Does anybody know if there would be issues that could pop up with the web host or the email host? I am at a loss as to why we aren't getting the emails, since all I did was update the virtuemart version.
sure they aren't being spam blocked at the server level?
also u don't need to wait for orders to check.. just make a test purchase and toggle the status back and forth to trigger the mails
Try to send a normal mail using standard Joomla mass mailer and check how it goes.
I am able to get emails through the joomla contact form. I believe the customers are receiving the confirmed order email (they might be getting a receipt from authorize.net? I am not sure if the customer gets those) but we the vendor do not get those order emails. I am also getting the error "Could not instantiate mail function." when I try and send a shipped email to the customer. My web host is telling me the php mail function is set up properly and it must be something in virtuemart. Nobody else seems to be having this issue after updating which is worrying us that we are not seeing something majorly wrong.
QuoteUse vendor email is deselected to use the joomla system email.
tried the other way?
sounds like there isn't a receive or sender email set but you can look further in the J php mailer class to check
I tried selecting the vendor email and it doesn't work still. At this point I'm assuming it is either some coding somewhere in the virtuemart messed up when I updated or the server really isn't equipped for php. It is bizarre that I am able to get the joomla contact form emails even though the error could not instantiate pops up, but the virtuemart emails don't work and give the error.
I think I'll try using a different send mail function, and if that doesn't work try and rewrite the virtuemart files.
This might be a silly question...but where is there coding in virtuemart I should check specifically to fix this issue? I've got to think something got messed up when I updated the virtuemart to 3.0.14.
I checked with our web host, things are set up right, no notice of any emails getting bounced or blocked.
Check with email host (different from web), everything set up right and nothing found getting bounced or blocked.
Emails to VM Customer: Yes
Emails from Joomla Contact form to same email address as VM: Yes / See error "Could not instantiate mail function." but the email works fine.
Emails from VM to vendor: No / Error "Could not instantiate mail function."
Don't really want to mess with changing to SMTP or sendmail function because php is working, just the vendor email is not working.
Same problem here!! going nuts...
users get mails after registration or contact.
admin also recieves contact form but No User Registration mail.
Tried all options but nothing works.
Using vm 3.0.14 + Joomla! 3.4.8
Also using ARTIO VM Invoices Version: 3.0.9
VP One Page Checkout
Hope someone has any clue.
Regards,
Pas
Quote"Could not instantiate mail function."
should never show and u need to debug as I said at the Joomla phpmailer level to see what is missing causing the failure ( one assumes the send from or send to email address ) and back trace from there
the mails are sent from the components\com_virtuemart\helpers\shopfunctionsf.php function renderMail()
you need to debug there
Not sure this helps, but I recieved the when trying to send registration:
Unknown column 'u.company' in 'field list' SQL=SELECT o.*, CONCAT_WS(' ',u.first_name,u.middle_name,u.last_name) AS order_name ,u.email as order_email, pm.payment_name AS payment_method, u.company AS company, u.city AS city, u.zip AS zip, u.phone_1 AS phone, st.address_type AS st_type, st.company AS st_company, st.city AS st_city, st.zip AS st_zip, u.customer_note AS customer_note FROM #__virtuemart_orders as o LEFT JOIN #__virtuemart_order_userinfos as u ON u.virtuemart_order_id = o.virtuemart_order_id AND u.address_type="BT" LEFT JOIN #__virtuemart_order_userinfos as st ON st.virtuemart_order_id = o.virtuemart_order_id AND st.address_type="ST" LEFT JOIN #__virtuemart_paymentmethods_nl_nl as pm ON o.virtuemart_paymentmethod_id = pm.virtuemart_paymentmethod_id WHERE ( u.virtuemart_user_id = 1945 ) order by o.modified_on DESC
Don't know where this comes from....
Regards, Pas
Hate to ask, how do I debug at the php mailer level? I understand debugging with the joomla configurations but it seems like you are implying something else.
I turned on the debug tools and for both the front end contact form (which works but kicks up error) and on backend sending order emails (send to customer but not vendor), we get 2 duplicate queries. I assume that is the issue but I am not understanding the codes here. I also think when i saved a pdf of the error on the vm page it scrunched things to make it so when copied it has extra letters like SSEELLEECCTT - could be normal - I'm not messing around with looking at these codes daily so I do not know.
Contact form (works but spits error) :
**Duplicate queries** #14
SELECT `category_child_id` AS `child`, `category_parent_id` AS `parent`
FROM smj3_virtuemart_category_categories AS `xref`
WHERE `xref`.`category_child_id`= 0
**Explain**
**Profile**
**Call Stack**
**Query Time: 0.27 ms** **After last query: 0.88 ms** **Query memory: 0.024 MB Memory before query: 12.430 MB** **Rows returned: 0**
-AND-
**Duplicate queries**: #13
SELECT `category_child_id` AS `child`, `category_parent_id` AS `parent`
FROM smj3_virtuemart_category_categories AS `xref`
WHERE `xref`.`category_child_id`= 0
**Explain**
**Profile**
**Call Stack**
Backend resending Joomla orders (goes to customer but not vendor) :
**Query Time: 0.28 ms ** **After last query: 0.34 ms ** **Rows returned: 1 **
Duplicate queries**: #28
**Query memory: 0.021 MB Memory before query: 11.586 MB **
SSEELLEECCTT `virtuemart_vendor_id`
FFRROOMM `ssmmjj33__vviirrttuueemmaarrtt__vvmmuusseerrss` as `au`
LLEEFFTT JJOOIINN `ssmmjj33__vviirrttuueemmaarrtt__uusseerriinnffooss` as `u`
OONN (au.virtuemart_user_id == u.virtuemart_user_id) WWHHEERREE `u`.`virtuemart_user_id`==85
**Explain**
**Profile**
**Call Stack**
-AND-
**Query Time: 0.27 ms ** **After last query: 0.47 ms ** **Rows returned: 1 **
**Duplicate queries**: #17
**Query memory: 0.023 MB Memory before query: 13.816 MB **
SSEELLEECCTT `virtuemart_vendor_id`
FFRROOMM `ssmmjj33__vviirrttuueemmaarrtt__vvmmuusseerrss` as `au`
LLEEFFTT JJOOIINN `ssmmjj33__vviirrttuueemmaarrtt__uusseerriinnffooss` as `u`
OONN (au.virtuemart_user_id == u.virtuemart_user_id) WWHHEERREE `u`.`virtuemart_user_id`==85
**Explain**
**Profile**
**Call Stack**
No .. I meant u would debug this as you would any script..
so start with what u know.. an error "Could not instantiate mail function"
find where that string is and what throws it
it is coming from mailSend($header, $body) in file \libraries\vendor\phpmailer\phpmailer\class.phpmailer.php
if (!$result) {
throw new phpmailerException($this->lang('instantiate'), self::STOP_CRITICAL);
}
add some debugging & backtrace to work backwards from there to find what is missing until u find what it is..
I still suspect sender email
Hi there,
Struggling with same sort of problem. All mail works except register mail to admin.
What should be checked in this file? or can I simply replace this by a default joomla file?
Hope you can tell me a bit more to solve this issue....finally.
More explained: http://forum.virtuemart.net/index.php?topic=133633.0
Regards, Pas
Quote from: 2cool on March 29, 2016, 14:38:28 PM
Struggling with same sort of problem. All mail works except register mail to admin.
ISTR that following a lot of compaints/requests the automatic registration email to Vendors was removed.
ehhh sorry, don't know what you mean. Is this function removed?
I really want to know how to get this working.
Regards, Pas
Hi Folks
I am also having similar problems
When a customers pays they get returned to site with error
Debug infomation
Invalid address: Name
Call stack
# Function Location
1 JApplicationCms->execute() /var/www/vhosts/43/386146/webspace/httpdocs/index.php:49
2 JApplicationSite->doExecute() /var/www/vhosts/43/386146/webspace/httpdocs/libraries/cms/application/cms.php:257
3 JApplicationSite->dispatch() /var/www/vhosts/43/386146/webspace/httpdocs/libraries/cms/application/site.php:230
4 JComponentHelper::renderComponent() /var/www/vhosts/43/386146/webspace/httpdocs/libraries/cms/application/site.php:191
5 JComponentHelper::executeComponent() /var/www/vhosts/43/386146/webspace/httpdocs/libraries/cms/component/helper.php:380
6 require_once() /var/www/vhosts/43/386146/webspace/httpdocs/libraries/cms/component/helper.php:405
7 JControllerLegacy->execute() /var/www/vhosts/43/386146/webspace/httpdocs/components/com_virtuemart/virtuemart.php:125
8 VirtueMartControllerCart->updatecart() /var/www/vhosts/43/386146/webspace/httpdocs/libraries/legacy/controller/legacy.php:728
9 VirtueMartControllerCart->display() /var/www/vhosts/43/386146/webspace/httpdocs/components/com_virtuemart/controllers/cart.php:188
10 VirtueMartCart->confirmDone() /var/www/vhosts/43/386146/webspace/httpdocs/components/com_virtuemart/controllers/cart.php:102
11 VirtueMartCart->confirmedOrder() /var/www/vhosts/43/386146/webspace/httpdocs/components/com_virtuemart/helpers/cart.php:895
12 JEventDispatcher->trigger() /var/www/vhosts/43/386146/webspace/httpdocs/components/com_virtuemart/helpers/cart.php:1183
13 JEvent->update() /var/www/vhosts/43/386146/webspace/httpdocs/libraries/joomla/event/dispatcher.php:160
14 call_user_func_array() /var/www/vhosts/43/386146/webspace/httpdocs/libraries/joomla/event/event.php:69
15 plgVmPaymentStandard->plgVmConfirmedOrder()
16 VirtueMartModelOrders->updateStatusForOneOrder() /var/www/vhosts/43/386146/webspace/httpdocs/plugins/vmpayment/standard/standard.php:139
17 VirtueMartModelOrders->notifyCustomer() /var/www/vhosts/43/386146/webspace/httpdocs/administrator/components/com_virtuemart/models/orders.php:875
18 shopFunctionsF::renderMail() /var/www/vhosts/43/386146/webspace/httpdocs/administrator/components/com_virtuemart/models/orders.php:1761
19 shopFunctionsF::sendVmMail() /var/www/vhosts/43/386146/webspace/httpdocs/components/com_virtuemart/helpers/shopfunctionsf.php:562
20 JMail->addReplyTo() /var/www/vhosts/43/386146/webspace/httpdocs/components/com_virtuemart/helpers/shopfunctionsf.php:657
21 JMail->add() /var/www/vhosts/43/386146/webspace/httpdocs/libraries/joomla/mail/mail.php:442
22 call_user_func() /var/www/vhosts/43/386146/webspace/httpdocs/libraries/joomla/mail/mail.php:278
23 PHPMailer->addReplyTo()
24 PHPMailer->addOrEnqueueAnAddress() /var/www/vhosts/43/386146/webspace/httpdocs/libraries/vendor/phpmailer/phpmailer/class.phpmailer.php:832
VM Version: 3.0.14
Joomla: Joomla! 3.5.1 Stable [ Unicorn ] 05-April-2016 22:45 GMT
No VM emails get sent
All other joomla mail works fine
also noticed that email customs button in products does not work
also noticed another issue that when customer adds product to cart it wont add for the first time and then its fine.
Any help advise grateful
can someone tell me can I overwrite VM files with older version until issues fixed safely?
You updated to Joomla 3.5.1 on a live site without testing? See http://forum.virtuemart.net/index.php?topic=133760.0
I haven't ever managed to find a fix to my original problem, would updating my joomla to 3.5 make a difference and fix the issue?
This is not simular to my problem.
All works fine exect the registration email to admin.
@Jenkin; Culd you explain this: 'ISTR that following a lot of compaints/requests the automatic registration email to Vendors was removed.'
Still not fixed this issue.
Tried clean install joomla + vm with same trouble.
What is different in the process of email orders, ask a question or vm registration to admin??
Regards,
pas
Joomla 3.5.1
Virtuemart 3.0.14
Community Builder 2.014
I just started having 3 issues after the last Joomla update. The first problem is the same as yours
Problem 1
I was not receiving email conformations when orders were placed.
SOLUTION:
Spam Assassin blocked my sending address. Whitelisting the send address resolved this problem and I am receiving emails again.
Problem 2
Charge Card payments no longer return users to a valid page upon completion of the charge. I am using Elavon as my payment processor. Paypal payments resolve correctly.
Unresolved
Problem 3
Product questions sent from my website fail when users are logged in. If users are not logged in - the question request processes normally. I also run Community Builder
Unresolved
Lots of people have email issues with virtuemart.
My only issue is the virtuemart registration mail to administrator...
Users do recieve an email after registratin.
And all other emails work fine.
I can't figure out what the difference is for sending this admin email !
Thanks,
Pas
Imiksch: You seem to have solved the problem I originally posted this thread about for you. I am not using spam assassin or any sort of spam blocker beyond what godaddys email provider does. Does anybody have any suggestions for whitelisting an email for that? Godaddy and my website host swear everything is right on their end but I only don't get that email to confirm an order to the vendor, all other emails work fine, and I haven't found any issues in the coding.
QuoteProblem 1
I was not receiving email conformations when orders were placed.
SOLUTION:
Spam Assassin blocked my sending address. Whitelisting the send address resolved this problem and I am receiving emails again.
GoDaddy? Check your error logs to see if there is a PHP resource issue or any other error. Also do you get a vendor email when changing the order status?
Jenkinhill:
There is nothing concerning in the logs that I can see. The vm logs only have an error about a png, which tcpdf doesn't like, and the joomla logs show errors of people trying to login and fail. (hackers) Sidenote: makes me want to look into better ways to prevent that.
We get the vendor emails when I change the order status. The backend gives the error "Could not instantiate mail function." But I still receive it. I also got an error for the customer saying it could not send to me/my email on a test order, but I got the email anyways so I am assuming the customer is getting the emails.
I did just get off support AGAIN with my hosting provider (web hosting hub) to double check that php mail was functioning properly. She claimed there was a missing line in the php.ini which she added, " sendmail_path = /usr/sbin/sendmail -t -I " so maybe that will fix it but I was getting emails, just not a confirmed order email. Godaddy is our email host and says nothing is throwing errors or bouncing.
I am still stumped about what is going wrong and where to cause the vendor emails to stop sending with the vm update.
Quote
The vm logs only have an error about a png, which tcpdf doesn't like
Is enough to stop the mail function. I guess it is a store logo, so replace with a jpg file.
That is interesting to know, thanks for pointing that out. I always assumed since it said underneath the upload area that a png was accepted it was fine. I will change that to a jpg and see if it indeed helps with sending those emails.
For most functions png files are OK, but this is about tcpdf used to generate the invoice,
@2cool..
while doing something else I came across this function in
administrator\components\com_virtuemart\models\user.php
maybe u can see if it is still used and debug why your not getting the admin one -- vm3.0.16
check -> $vars['doVendor']= (boolean)$usersConfig->get('mail_to_admin');
/**
* This uses the shopFunctionsF::renderAndSendVmMail function, which uses a controller and task to render the content
* and sents it then.
*
*
* @author Oscar van Eijk
* @author Max Milbers
* @author Christopher Roussel
* @author Valérie Isaksen
*/
private function sendRegistrationEmail($user, $password, $doUserActivation){
if(!class_exists('shopFunctionsF')) require(VMPATH_SITE.DS.'helpers'.DS.'shopfunctionsf.php');
$vars = array('user' => $user);
// Send registration confirmation mail
$password = preg_replace('/[\x00-\x1F\x7F]/', '', $password); //Disallow control chars in the email
$vars['password'] = $password;
if ($doUserActivation) {
jimport('joomla.user.helper');
$activationLink = 'index.php?option=com_users&task=registration.activate&token='.$user->get('activation');
$vars['activationLink'] = $activationLink;
}
$usersConfig = JComponentHelper::getParams( 'com_users' );
$vars['doVendor']= (boolean)$usersConfig->get('mail_to_admin');
// public function renderMail ($viewName, $recipient, $vars=array(),$controllerName = null)
shopFunctionsF::renderMail('user', $user->get('email'), $vars);
}
Hi GJC Web Design,
Problem is solved with latest update!!! happy!
Now running joomla 3.5.1 and virtuemart 3.0.16
Thanks,
Pas