Author Topic: No Order Confirmation To Admin - The problem persists!!!  (Read 53195 times)

new_phil

  • Beginner
  • *
  • Posts: 10
No Order Confirmation To Admin - The problem persists!!!
« on: August 11, 2009, 05:06:16 am »
Hello all....Our store admin must login to see new orders accurately. No admin confirmation emails going out again

Order Confirmations (HTML) going to customers are perfect using PHPmailer/SMTP/sendmail. they dont miss a beat.

New Order Confirmations to store admin are hit and miss, maybe 2 in a row make it, then 3 wont make it to admin@mysite.com. What in the world is causing this!!!

I did read the manual......there is a joomla main email (admin@mysite.com). Joomla sends mail well from the contact page (linked to admin)

Virtuemart store contact info is set to admin@mysite.com we also tried creating a seperate email account called orders@mysite.com.......same issues

have tried SMTP, PHP Mail, Sendmail  

running Joomla 1.5.10 / Virtuemart 1.1.3

Does anyone have any thoughts, has anyone re-written the email functions or the confirmation portion of the code. Has anyone made this work!

Please I am open to suggestions.

thanks to all of you

Scar

  • Full Member
  • ***
  • Posts: 1035
    • J-lux
Re: No Order Confirmation To Admin - The problem persists!!!
« Reply #1 on: August 11, 2009, 10:49:58 am »
If you click Users in VM menu, find your admin accout and make sure it has the email specified to witch you want to recieve your store emails. You can see an option Recieve system emails. Make sure it's set to yes. This was my issue anyway with similar email problems. Some also claim that this has to be different to store email but I have the same and it's working great, maybe worth trying both ways.

new_phil

  • Beginner
  • *
  • Posts: 10
Re: No Order Confirmation To Admin - The problem persists!!!
« Reply #2 on: August 12, 2009, 20:57:35 pm »
Further development on this issue.

Joomla 1.5.10
Virtuemart 1.1.3

I use a GoDaddy Deluxe shared hosting account....:( and so after much more research (wasted Time) I tried Gmail mail service and changed all of the MX records and it looked as if I would finally get some resolution on this issue, then I encountered this...godaddy does not support that authenticated SMTP host connection below using port 465 !!!!!

Mailer: SMTP Server
Mail From: <your_user_id>@gmail.com
SMTP Auth: Yes
SMTP User: <your_user_id>@gmail.com
SMTP Password: <your_password>
SMTP Host: ssl://smtp.gmail.com:465

So I had to go back to using the GoDaddy generic SMTP host settings
(relay-hosting.secureserver.net) just to even get anything going through.

Then it dawned on me!!!

I'm having the exact same issue with the Gmail MX records as I did when GoDaddy was the MX settings.

So I looked at all the orders/admin confirmations that NEVER came through. They are for orders with a public email address (Yahoo, Hotmail, MSN)...the customer confirmations go out but the admin confirmation breaks down and does not go out for all orders made with a PUBLIC email address!

So I tried the joomla basic contact form and used a public address and it errors out with this error:

PHPMAILER_FROM_FAILEDxxxxxxxxx@yahoo.com

any thoughts?

has anyone successfully ever used the Gmail Authenticated SMTP host settings with a GoDaddy shared hosting account.

any thoughts? (other than don't use godaddy) :)

Phil

Jason Farmer

  • Beginner
  • *
  • Posts: 49
Re: No Order Confirmation To Admin - The problem persists!!!
« Reply #3 on: August 15, 2009, 23:58:54 pm »
This might help you...

You need to make a little change to phpmailer...  it splits your host string into host and port on the colon, so the ssl:/smtp.gmail.com:465 required for gmail makes it fail.

./libraries/phpmailer/phpmailer.php on my system

around line 538 in function SmtpConnect
replace

Code: [Select]
            if(strstr($hosts[$index], ":"))
                list($host, $port) = explode(":", $hosts[$index]);
            else
            {
                $host = $hosts[$index];
                $port = $this->Port;
            }
with
Code: [Select]
preg_match("/^(.*?)(?:\:(\d+))?$/im",$hosts[$index],$matches);
$host = $matches[1];
$port = count($matches)>2?$matches[2]:$this->Port;
DevelopmentProduction
VirtueMart  
2.0.12b
1.1.3
Joomla!  
2.5.6
1.5.14
Mysql 
5.5.8
5.0.51
PhP  
5.3.5
5.2.4

MikeUK

  • Global Moderator
  • Full Member
  • *
  • Posts: 1343
Re: No Order Confirmation To Admin - The problem persists!!!
« Reply #4 on: August 16, 2009, 11:23:08 am »
I would suggest also searching the forum here and at joomla.org. Lots of threads about similar issues.
Get answers faster:

I can build your online shop, setup or customize Virtuemart or help your existing shop maximize its potential. Email / PM for info

jenkinhill

  • UK Web Developer & Consultant
  • Global Moderator
  • Super Hero
  • *
  • Posts: 28541
  • Always on vacation
    • Jenkin Hill Internet
Re: No Order Confirmation To Admin - The problem persists!!!
« Reply #5 on: August 16, 2009, 13:42:27 pm »
So I looked at all the orders/admin confirmations that NEVER came through. They are for orders with a public email address (Yahoo, Hotmail, MSN)...the customer confirmations go out but the admin confirmation breaks down and does not go out for all orders made with a PUBLIC email address!

I think this issue may be due to the customer email address being used as the FROM address for the email to admin, which is interpreted in some way by the GoDaddy server as an attempt to send spam though your account. Try this:

Around line 2321 in ps_checkout.php find
Code: [Select]
$vendor_mail = vmMail( $shopper_email, $shopper_name, $vendor_email, $vendor_subject, $vendor_mail_Body, $vendor_mail_AltBody, true, null, null, $EmbeddedImages);

change to
Code: [Select]
$vendor_mail = vmMail( $from_email, $shopper_name, $vendor_email, $vendor_subject, $vendor_mail_Body, $vendor_mail_AltBody, true, null, null, $EmbeddedImages);

ie. $shopper_email is changed to $from_email

This puts the site admin as the FROM field so may get around this problem. This does mean that an admin cannot simply reply to the order email, but the customer email address is still shown in the order mail body.

ps_checkout.php is located in /administrator/components/com_virtuemart/classes/
Kelvyn

Jenkin Hill Internet,
Lowestoft, Suffolk, UK

Unsolicited PMs/emails will be ignored.

Please mention your VirtueMart, Joomla and PHP versions when asking a question in this forum

Currently using VirtueMart 4.0.14 10805  J 3.10.11 PHP 8.0.27

new_phil

  • Beginner
  • *
  • Posts: 10
Re: No Order Confirmation To Admin - The problem persists!!!
« Reply #6 on: August 20, 2009, 00:00:01 am »
So I looked at all the orders/admin confirmations that NEVER came through. They are for orders with a public email address (Yahoo, Hotmail, MSN)...the customer confirmations go out but the admin confirmation breaks down and does not go out for all orders made with a PUBLIC email address!

I think this issue may be due to the customer email address being used as the FROM address for the email to admin, which is interpreted in some way by the GoDaddy server as an attempt to send spam though your account. Try this:

Around line 2321 in ps_checkout.php find
Code: [Select]
$vendor_mail = vmMail( $shopper_email, $shopper_name, $vendor_email, $vendor_subject, $vendor_mail_Body, $vendor_mail_AltBody, true, null, null, $EmbeddedImages);

change to
Code: [Select]
$vendor_mail = vmMail( $from_email, $shopper_name, $vendor_email, $vendor_subject, $vendor_mail_Body, $vendor_mail_AltBody, true, null, null, $EmbeddedImages);

ie. $shopper_email is changed to $from_email

This puts the site admin as the FROM field so may get around this problem. This does mean that an admin cannot simply reply to the order email, but the customer email address is still shown in the order mail body.

ps_checkout.php is located in /administrator/components/com_virtuemart/classes/

Excellent, Thank You Kelvyn!

Thats what I needed to work around the host and get my customer his notifications of new orders.

OK, as a recap......VM was working fine and doing it's job ...it was godaddy and their shared hosting account my client has. For those godaddy people who find yourselves faced with no admin order confirmations, or sporadic new order confirmations arriving at the admin mail box you have few options to resolve this issue.

As Kelvyn surmised godaddy restricts the re-mailing of mail from "Public Email Services" so we got order confirmations from most customers but not from those with public email (Yahoo, AOL, Hotmail, MSN, etc)

The original customer order confirmation is sent out no problem it's when VM composes admin confirmation and the $vendor_mail uses the $shopper_email it gets deleted apparently by the smtp relay host at godaddy because it's seen as spam from an external PUBLIC email address   

The work around Kelvyn suggested did the trick for what we need.

tcolomb

  • Beginner
  • *
  • Posts: 8
Re: No Order Confirmation To Admin - The problem persists!!!
« Reply #7 on: August 21, 2009, 23:35:29 pm »
I have the same problem but unfortunately, even the solution explained by Kelvyn does not work. I use the smtp server of gmail and an existing gmail adress. My configuration is exactly the one already presented:
Mailer: SMTP Server
Mail From: <your_user_id>@gmail.com
SMTP Auth: Yes
SMTP User: <your_user_id>@gmail.com
SMTP Password: <your_password>
SMTP Host: ssl://smtp.gmail.com:465

I use Joomla 1.5.14 and virtuemart 1.1.3. The ./libraries/phpmailer/phpmailer.php is in principle already modified to allow smtp gmail server.

All the messages send by others module such as phoca guestbook or Artforms arrive in my mailbox with the specified email gmail, even if the name is different. For example:

client<your_user_id@gmail.com>

But no email arrive from the identification virtuemart module or from the shop. I modify all the email in the virtuemart configuration to be your_user_id@gmail.com and I do the modification proposed in the previous message. I also modify ps_communication.php in the same way. But nothing seems to work.

Somebody has another idea ?

Thank you in advance

Scar

  • Full Member
  • ***
  • Posts: 1035
    • J-lux
Re: No Order Confirmation To Admin - The problem persists!!!
« Reply #8 on: August 21, 2009, 23:38:14 pm »
I'm not sure what the Authentication - Gmail plugin in Joomla plugins do but it's there, maybe you have to activate it to be able to use a Gmail account? Just a wild guess...

tcolomb

  • Beginner
  • *
  • Posts: 8
Re: No Order Confirmation To Admin - The problem persists!!!
« Reply #9 on: August 21, 2009, 23:45:29 pm »
I don't think it is a solution. The gmail authentification is a plugin to allow to login with a gmail account. It is not what I want. I want that somebody who want to create a new identification (with any kind of email) receive an email to confirm his inscription and that I recieve alos an alert for a new entry.

Scar

  • Full Member
  • ***
  • Posts: 1035
    • J-lux
Re: No Order Confirmation To Admin - The problem persists!!!
« Reply #10 on: August 21, 2009, 23:47:36 pm »
Yeah, I know what you want, I just never used the gmail Auth. so I just wanted to throw it out there just in case. Never even thought about it before.

tcolomb

  • Beginner
  • *
  • Posts: 8
Re: No Order Confirmation To Admin - The problem persists!!!
« Reply #11 on: August 21, 2009, 23:52:42 pm »
To be certain, I tried to activate the gmail module, but nothing happens as I thougth :-(

Scar

  • Full Member
  • ***
  • Posts: 1035
    • J-lux
Re: No Order Confirmation To Admin - The problem persists!!!
« Reply #12 on: August 21, 2009, 23:57:00 pm »
Found this in the Joomla forum: use "gmail-smtp-in.l.google.com" as SMTP.
Also maker sure you have POP3 and SMTP enabled in gmail!

Scar

  • Full Member
  • ***
  • Posts: 1035
    • J-lux
Re: No Order Confirmation To Admin - The problem persists!!!
« Reply #13 on: August 22, 2009, 00:02:12 am »
I also found this in another forum:

phpmailer.php file in 1.5

on line 537 or close to it

The original code is:
Code: [Select]
if(strstr($hosts[$index], ":"))
        list($host, $port) = explode(":", $hosts[$index]);
else
{
        $host = $hosts[$index];
        $port = $this->Port;
}

Change to:
Code: [Select]
if (preg_match('#(([a-z]+://)?[^:]+):(\d+)#i', $hosts[$index], $match))
{
        $host = $match[1];
        $port = $match[3];
}
else
{
        $host = $hosts[$index];
        $port = $this->Port;
}

After you complete that go to your global configuration settings in you joomla administration panel.
change the smtp host to ssl://smtp.gmail.com:465
make sure all of your other mail settings are set and gmail might need to allow pop mail. (that can be changed in the gmail settings when you log in to your email.)
be sure to include your full email especially if you use your own domain with google aps.
example: email@domain.com or email@gmail.com

from http://byet.net

tcolomb

  • Beginner
  • *
  • Posts: 8
Re: No Order Confirmation To Admin - The problem persists!!!
« Reply #14 on: August 22, 2009, 00:13:01 am »
I activate POP3 and use "gmail-smtp-in.l.google.com" as SMTP but error the connection to smtp is impossible :-(


In joomla 1.5.14 I think the code was already corrected because I could't find the sequence. I had already found this idea !