Jump to content

Mail alerts - přidání Adresy pro odpověď


makostka

Recommended Posts

Zdravím,

 

už nějakou dobu se snažím do Oznámení e-mailem (mail alerts), info o nové objednávce, doplnit parametr Adresa pro odpověď (reply to).

Jde mi o to, že když mi jako správci e-shopu přijde info o nové objednávce, potřeboval bych dát jednoduše Odpovědět a psát rovnou na e-mail zákazníkovi, který objednávku vytvořil, v současné době při volbě Odpovědět odpovídám svému e-shopu, respektive mé odesílací e-mailovce.

Zkoušel jsem to metodou pokus omyl dát nějak dohromady (nejsem programátor), ale stále nic, při zásahu do mailalerts.php mi pak e-shop po odeslání objednávky vyhodí chybu (např. Chyba: parametr "templateVars" je poškozen).

 

Prosím o pomoc či radu, díky všem!

 

Ještě přikládám upravený kód...

// Filling-in vars for email
 $template = 'new_order';
 $subject = $this->l('OBJEDNÁVKA Č:', (int)$id_lang).' '.sprintf('%06d', $order->id);
   $replyto = $this->l($customer->email);
 $templateVars = array(
  '{firstname}' => $customer->firstname,
  '{lastname}' => $customer->lastname,
  '{email}' => $customer->email,
  '{delivery_block_txt}' => $this->_getFormatedAddress($delivery, "\n"),
  '{invoice_block_txt}' => $this->_getFormatedAddress($invoice, "\n"),
  '{delivery_block_html}' => $this->_getFormatedAddress($delivery, "<br />",
  array(
   'firstname' => '<span style="color:#DB3484; font-weight:bold;">%s</span>',
   'lastname' => '<span style="color:#DB3484; font-weight:bold;">%s</span>')),
  '{invoice_block_html}' => $this->_getFormatedAddress($invoice, "<br />",
  array(
   'firstname' => '<span style="color:#DB3484; font-weight:bold;">%s</span>',
   'lastname' => '<span style="color:#DB3484; font-weight:bold;">%s</span>')),
  '{delivery_company}' => $delivery->company,
  '{delivery_firstname}' => $delivery->firstname,
  '{delivery_lastname}' => $delivery->lastname,
  '{delivery_address1}' => $delivery->address1,
  '{delivery_address2}' => $delivery->address2,
  '{delivery_city}' => $delivery->city,
  '{delivery_postal_code}' => $delivery->postcode,
  '{delivery_country}' => $delivery->country,
  '{delivery_state}' => $delivery->id_state ? $delivery_state->name : '',
  '{delivery_phone}' => $delivery->phone,
  '{delivery_other}' => $delivery->other,
  '{invoice_company}' => $invoice->company,
  '{invoice_firstname}' => $invoice->firstname,
  '{invoice_lastname}' => $invoice->lastname,
  '{invoice_address2}' => $invoice->address2,
  '{invoice_address1}' => $invoice->address1,
  '{invoice_city}' => $invoice->city,
  '{invoice_postal_code}' => $invoice->postcode,
  '{invoice_country}' => $invoice->country,
  '{invoice_state}' => $invoice->id_state ? $invoice_state->name : '',
  '{invoice_phone}' => $invoice->phone,
  '{invoice_other}' => $invoice->other,
  '{order_name}' => sprintf("%06d", $order->id),
  '{shop_name}' => Configuration::get('PS_SHOP_NAME'),
  '{date}' => $order_date_text,
  '{carrier}' => (($carrier->name == '0') ? Configuration::get('PS_SHOP_NAME') : $carrier->name),
  '{payment}' => Tools::substr($order->payment, 0, 32),
  '{items}' => $itemsTable,
  '{total_paid}' => Tools::displayPrice($order->total_paid, $currency),
  '{total_products}' => Tools::displayPrice($order->getTotalProductsWithTaxes(), $currency),
  '{total_discounts}' => Tools::displayPrice($order->total_discounts, $currency),
  '{total_shipping}' => Tools::displayPrice($order->total_shipping, $currency),
  '{total_wrapping}' => Tools::displayPrice($order->total_wrapping, $currency),
  '{currency}' => $currency->sign,
  '{message}' => $message
 );
 $iso = Language::getIsoById((int)($id_lang));
 if (file_exists(dirname(__FILE__).'/mails/'.$iso.'/'.$template.'.txt') AND file_exists(dirname(__FILE__).'/mails/'.$iso.'/'.$template.'.html'))
  Mail::Send((int)$id_lang, $template, $subject, $replyto, $templateVars, explode(self::__MA_MAIL_DELIMITOR__, $this->_merchant_mails), NULL, $configuration['PS_SHOP_EMAIL'], $configuration['PS_SHOP_NAME'], NULL, NULL, dirname(__FILE__).'/mails/');
Link to comment
Share on other sites

Řekl bych, že někde budeš muset nahradit PS_SHOP_EMAIL za $customer->email

 

Dík za odpověď, ale... já fakt nejsem programátor, dokážu se zorientovat v adminu, nastavit, co je potřeba, upravit šablony a pod. hovadiny, ale tohle už je na mě moc...

 

Ještě pro upřesnění: když přijde info o nový objednávce, potřebuju, aby byl odesilatel stále můj nějaký odesílací e-mail, a navíc tam byl parametr Adresa pro odpověď (reply-to), kam se "vloží" e-mailovka zákazníka, který objednávku odeslal, tím pádem při "Odpovědět" budu odpovídat přímo zákazníkovi.

 

Ještě jednou díky!

Link to comment
Share on other sites

Nevím jestli je to nedostatkem alkoholu když ho teď nemůžeme ale myslím je jasné že: objednavatel pracuje na tvém hostingu (systému ) tj. jeho email funguje pouze jako přihlášení a informace komu můžeš napsat s využitím BO který email najde v SQL. ale stále to odesílá tvůj system tudíž nelze mít jako odesílatele zákazníka . ale asi by šlo udělat to že by se do fakturační adresy přidal odkaz na email přes který by šlo odepsat

Link to comment
Share on other sites

asi si furt nerozumíme, ona je to fakt hovadina, ale mě by se to moc hodilo... zkusím ještě jinak:

přijde mi info e-mail z mail alerts o nové objednávce, kde:

odesilatel (from) je e-mail adresa, kterou si nastavím v e-shopu v kontaktních údajích

příjemce (komu) je můj další jakýkoliv e-mail určený pro příjem těhlech oznámení nastavený v modulu mail alerts

a potřeboval bych doplnit parametr adresa pro odpověď (reply to), kde by měl bejt e-mail zákazníka, který objednávku vytvořil

tím pádem když pak dám na Gmailu nebo v Outlooku odpovědět, odpověď půjde na Adresu pro odpověď (reply to)...

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...