Jump to content

Mail potwierdzający zamówienie Klienta wysyłany również na mail sklepu


hakeryk2

Recommended Posts

Witam,

Jak sprawić by email który otrzymuje Klient z potwierdzeniem zamówienia (ten z listą produktów) by również był wysyłany jako np ukryta kopia na adres mailowy sklepu?

Mam taką potrzebę ponieważ w tych mailach mam również daty dostępności produktów w momencie złożenia zamówienia i Klienci wykłócają się, że w mailu nie było daty dostępności i odsyłają edytowane przez siebie (!) maile w których usuwają tę datę pomimo tego, że mogę sprawdzić czy w momencie złożenia zamówienia produkt był dostępny lub nie. Chciałbym proceder ukrócić informacją o tym, że również otrzymujemy kopie potwierdzenia na nasz mail.

Presta 1.6.1.18

 

Edited by hakeryk2 (see edit history)
Link to comment
Share on other sites

Just now, mr.suchy said:

Moim zdaniem należy zmodyfikować kontroler. Mówimy o tym: Lokalizacja -> Tłumaczenia -> Tłumaczenia wiadomości ->  order_conf ?

Tak, dokładnie o ten mail chodzi. 

Chyba odnalazłem gdzie to jest. W PaymentModule.php w funkcji validateOrder jest taka linijka

 

   if (Validate::isEmail($this->context->customer->email)) {
                            Mail::Send(
                                (int)$order->id_lang,
                                'order_conf',
                                Mail::l('Order confirmation', (int)$order->id_lang),
                                $data,
                                $this->context->customer->email,
                                $this->context->customer->firstname.' '.$this->context->customer->lastname,
                                null,
                                null,
                                $file_attachement,
                                null, _PS_MAIL_DIR_, false, (int)$order->id_shop
                            );
                        }

Chyba 2 ostatnie parametry  w funkcji Mail to $bcc oraz $reply_to więc bcc jako ukryta kopia do może być tym czego szukam. Sprawdzę i dam znać :) 

 

Link to comment
Share on other sites

Tak dla porządku.

/**
     * Send Email
     *
     * @param int $id_lang Language ID of the email (to translate the template)
     * @param string $template Template: the name of template not be a var but a string !
     * @param string $subject Subject of the email
     * @param string $template_vars Template variables for the email
     * @param string|array $to To email
     * @param string|array $to_name To name
     * @param string $from From email
     * @param string $from_name To email
     * @param array $file_attachment Array with three parameters (content, mime and name). You can use an array of array to attach multiple files
     * @param bool $mode_smtp SMTP mode (deprecated)
     * @param string $template_path Template path
     * @param bool $die Die after error
     * @param int $id_shop Shop ID
     * @param string|array $bcc Bcc recipient(s) (email address)
     * @param string $reply_to Email address for setting the Reply-To header
     * @return bool|int Whether sending was successful. If not at all, false, otherwise amount of recipients succeeded.
     */
    public static function Send($id_lang, $template, $subject, $template_vars, $to,
        $to_name = null, $from = null, $from_name = null, $file_attachment = null, $mode_smtp = null,
        $template_path = _PS_MAIL_DIR_, $die = false, $id_shop = null, $bcc = null, $reply_to = null)
    {

 

  • Thanks 1
Link to comment
Share on other sites

@hakeryk2 dokładnie, tak klasa wysyła maila. A resztę informacji masz w klasie Mail:

    public static function Send($id_lang, $template, $subject, $template_vars, $to,
        $to_name = null, $from = null, $from_name = null, $file_attachment = null, $mode_smtp = null,
        $template_path = _PS_MAIL_DIR_, $die = false, $id_shop = null, $bcc = null, $reply_to = null)
    {

Edit:
W tym samym momencie co @mr.suchy napisałem to samo :D

 

Edited by e_com (see edit history)
  • Thanks 1
Link to comment
Share on other sites

Na podsumowanie całego tematu - parametr $bcc jest właśnie tym parametrem w który można wpisać z palucha adres na który ma zostać wysłana ukryta kopia lub wykorzystać Configuration::get('PS_SHOP_EMAIL') - dzięki panowie @e_com i @mr.suchy
 

if (Validate::isEmail($this->context->customer->email)) {
                            Mail::Send(
                                (int)$order->id_lang,
                                'order_conf',
                                Mail::l('Order confirmation', (int)$order->id_lang),
                                $data,
                                $this->context->customer->email,
                                $this->context->customer->firstname.' '.$this->context->customer->lastname,
                                null,
                                null,
                                $file_attachement,
                                null, _PS_MAIL_DIR_, false, (int)$order->id_shop, Configuration::get('PS_SHOP_EMAIL')
                            );
                        }

Tak to powinno wyglądać w PaymentModule.php :)

Edited by hakeryk2 (see edit history)
  • Like 1
  • Thanks 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...