Я новичок в javascript, любая помощь будет оценена.
Обновление
Шаги на данный момент:
1.) Создан Wixsite и форма
2.) Создана учетная запись Mailjet и зарегистрированный адрес электронной почты в качестве утвержденного отправителя
3.) У меня есть мой API-ключ и мой Секретный API-ключ
4.) У меня есть 2 бэкэнда .js файлы
_a.) Mailjet.js
_b.) Email.js
Следующий коднаходится в моем mailjet.js:
import wixFetch from 'wix-fetch'; export function sendWithMailjet(MJ_APIKEY_PUBLIC, MJ_APIKEY_PRIVATE, FromEmail, FromName, Recipients, subject, content) {
var headers = {
"Authorization": "Basic" + btoa(MJ_APIKEY_PUBLIC + ":" + MJ_APIKEY_PRIVATE),
"Content-Type": "application/json"
};
var body = {
"FromEmail": FromEmail,
"FromName": FromName,
"Subject": subject,
"Text-part": content,
"Recipients": [{
"Email": Recipients
}
]
};
return fetch('"https://api.mailjet.com/v3/send', {
method: 'POST',
headers: headers,
body: JSON.stringify(body)
})
.then((res) => {
if (res.status === 200)
return 'Email was sent';
else {
var headersString = '';
res.headers.forEach((value, name) => headersString += `${name}: ${value}\n`);
return res.text()
.then((bodyText) => {
return Promise.reject(new Error('Failed to send email.\n' +
`Status: ${res.status}\n` +
headersString +
bodyText));
})
}
});}
Следующий код находится в моем email.js
import {sendWithMailjet} from 'backend/mailjet.js'; export function sendEmail(FromEmail, FromName, Recipients, subject, content) {
const MJ_APIKEY_PUBLIC = 'myapipubliccode'; //mailjet API key
const MJ_APIKEY_PRIVATE = 'myapisecretcode'; //mailjet secret key
FromEmail = 'jparks@jonescarter.com';
FromName = '"James Parks" <jparks@jonescarter.com>';
return sendWithMailjet(MJ_APIKEY_PUBLIC, MJ_APIKEY_PRIVATE, FromEmail, FromName, Recipients, subject, content);
}
На моей странице формы у меня есть следующий код:
import {sendEmail} from 'backend/email';
function SendClientEmail() {
const Subject = `New Submission from ${$w("#input3").value}`;
var content = `Name: ${$w("#input1").value}
\rEmail: ${$w("#input3").value}
\rFirstName: ${$w("#input1").value}
\rLastName: ${$w("#input2").value}
\rUserEmail: ${$w("#input3").value}
\rLocation: ${$w("#dropdown1").value}
\rPractice: ${$w("#dropdown2").value}
\rEventName: ${$w("#input4").value}
\rEventDate: ${$w("#datePicker1").value}
\rNeededBy: ${$w("#datePicker2").value}
\rQuantity: ${$w("#input5").value}
\rConfirm: ${$w("#dropdown3").value}
\rComments: ${$w("#textBox1").value}`;
var Recipients = `${$w("#input3").value}`;
//Make sure your from email address is validated in mailjet
sendEmail("FromEmail","FromName","Recipients",Subject, content)
.then(response => console.log(response));}
Ресурсы:
Wix, как отправлять отправленные формы электронной почты - https://support.wix.com/en/article/how-to-send-an-email-on-form-submission
Mailjet для разработчиков - https://dev.mailjet.com/guides/?java#getting-started
Опять же, любая помощь будет принята с благодарностью.Спасибо!