Имейте в виду, что я не очень хорошо знаком с JavaScript и делаю это, чтобы помочь коллеге.
Я пытаюсь внести изменения в автоматические ответы по электронной почте контактной формы. Изменение, которое я хочу внести, - это когда человек отправляет электронное письмо кому-то на веб-сайте, ответ отправляется обратно человеку, в котором говорится: «Это копия следующего сообщения, которое вы отправили ПЕРСОНАЛУ ВЕБ-САЙТА через НАЗВАНИЕ ВЕБ-САЙТА». Человек, получающий электронное письмо, получает только имя человека, который его отправил, и сообщение.
Мне нужно добавить сообщение «Это копия следующего сообщения, которое вы отправили ПЕРСОНАЛУ ВЕБ-САЙТА через НАЗВАНИЕ ВЕБ-САЙТА» на другой адрес электронной почты, потому что один человек получает все электронные письма и отправляет их соответствующему лицу. Я знаю, это звучит необоснованно, но это то, о чем просили.
Я нашел код в contact.php, но не совсем уверен, как внести изменения.
Здесь код получает нужную мне часть:
// Check whether email copy function activated
if ($copy_email_activated == true && !empty($data['contact_email_copy']))
{
$copytext = JText::sprintf('COM_CONTACT_COPYTEXT_OF', $contact->name, $sitename);
$copytext .= "\r\n\r\n" . $body;
$copysubject = JText::sprintf('COM_CONTACT_COPYSUBJECT_OF', $subject);
$mail = JFactory::getMailer();
$mail->addRecipient($email);
$mail->addReplyTo($email, $name);
$mail->setSender(array($mailfrom, $fromname));
$mail->setSubject($copysubject);
$mail->setBody($copytext);
$sent = $mail->Send();
}
return $sent;
}
}
И мне нужно это для работы с
// Prepare email body
$prefix = JText::sprintf('COM_CONTACT_ENQUIRY_TEXT', JUri::base());
$body = $prefix . "\n" . $name . ' <' . $email . '>' . "\r\n\r\n" . stripslashes($body);
// Load the custom fields
if (!empty($data['com_fields']) && $fields = FieldsHelper::getFields('com_contact.mail', $contact->email_to, true, $data['com_fields']))
{
$output = FieldsHelper::render(
'com_contact.mail',
'fields.render',
array(
'context' => 'com_contact.mail',
'item' => $contact,
'fields' => $fields,
)
);
if ($output)
{
$body .= "\r\n\r\n" . $output;
}
}
$mail = JFactory::getMailer();
$mail->addRecipient($contact->email_to);
$mail->addReplyTo($email, $name);
$mail->setSender(array($mailfrom, $fromname));
$mail->setSubject($sitename . ': ' . $subject);
$mail->setBody($body);
$sent = $mail->Send();
Я думал, что это будет так же просто, как скопировать какой-нибудь код, но я ошибался. Я знаю, что в Joomla есть переопределения, чтобы предотвратить изменение основного кода. Как только я смогу это выяснить, я могу выполнить переопределение, чтобы правильно добавить свои изменения.
Заранее спасибо!



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Извините, я пользовался мобильным телефоном, поэтому проверить сложно
// Check whether email copy function activated if ($copy_email_activated == true && !empty($data['contact_email_copy'])) { $copytext = JText::sprintf('COM_CONTACT_COPYTEXT_OF', $contact->name, $sitename); $copytext .= "\r\n\r\n" . $body; $copysubject = JText::sprintf('COM_CONTACT_COPYSUBJECT_OF', $subject);
// Загружаем настраиваемые поля if (! Empty ($ data ['com_fields']) && $ fields = FieldsHelper :: getFields ('com_contact.mail', $ contact-> email_to, true, $ data ['com_fields']) ) {$ output = FieldsHelper :: render ('com_contact.mail', 'fields.render', array ('context' => 'com_contact.mail', 'item' => $ contact, 'fields' => $ fields ,)); if ($ output) {$ copytext. = "\ r \ n \ r \ n". $ output; }}
$ mail = JFactory :: getMailer (); $ mail-> addRecipient ($ email); $ mail-> addReplyTo ($ email, $ name); $ mail-> setSender (массив ($ mailfrom, $ fromname)); $ mail-> setSubject ($ copysubject); $ mail-> setBody ($ copytext); $ sent = $ mail-> Отправить (); } return $ sent; }}