* feat: allow reply_to and email_from to be set for an SMTP config * feat: use these SMTP values in the mailers * spec: test the application_mailer * fix: validate with email, and not url * feat: mimic macs changes from https://github.com/forem/forem/pull/16216 to use in this PR * setup packs for admin * refactor: order the keys and add a const for the auth methods * feat: rename the header to a more user friendlly name * chore: move the section with Emails * feat: add a toggle that will show and hide the SMTP form under certain conditions * feat: add the javaScript to handle the toggles * feat: add a better description until we convert to a dropdown * feat: ensure that we have declared sendgrid_enabled * chore: add anote to the config controller * chore: remove references of the email addresses to keep brnach scoped * feat: tweak js * test: cypress workflow to update smtp settings * feat : update the smtp tests * remove comments * update test * chore: rename NOTE * feat: polisha dn test ForemInstance.only_sendgrid_enabled? * chore: remove specs * Update app/lib/constants/settings/smtp.rb Co-authored-by: Julianna Tetreault <32834804+juliannatetreault@users.noreply.github.com> * Update spec/system/admin/config/admin_updates_smtp_settings_spec.rb Co-authored-by: Julianna Tetreault <32834804+juliannatetreault@users.noreply.github.com> * Update spec/system/admin/config/admin_updates_smtp_settings_spec.rb Co-authored-by: Julianna Tetreault <32834804+juliannatetreault@users.noreply.github.com> * Update spec/system/admin/config/admin_updates_smtp_settings_spec.rb Co-authored-by: Julianna Tetreault <32834804+juliannatetreault@users.noreply.github.com> * Update app/javascript/packs/admin/config/smtp.js Co-authored-by: Nick Taylor <nick@iamdeveloper.com> * refactor js as per comments * refactor as per comments * Update cypress/integration/seededFlows/adminFlows/config/emailServerSettingsSection.spec.js Co-authored-by: Suzanne Aitchison <suzanne@forem.com> * refactor: update the Cypress tests Co-authored-by: Julianna Tetreault <32834804+juliannatetreault@users.noreply.github.com> Co-authored-by: Nick Taylor <nick@iamdeveloper.com> Co-authored-by: Suzanne Aitchison <suzanne@forem.com>
23 lines
809 B
JavaScript
23 lines
809 B
JavaScript
document
|
|
.getElementById('settings_smtp_own_email_server')
|
|
?.addEventListener('change', (event) => {
|
|
const [customSMTPSection] = document.getElementsByClassName(
|
|
'js-custom-smtp-section',
|
|
);
|
|
|
|
if (event.target.checked) {
|
|
customSMTPSection.classList.remove('hidden');
|
|
} else {
|
|
// when the user indicates that they do not want to use their own server
|
|
// we clear the form values except for those fields that have a default value.
|
|
const inputs = customSMTPSection.getElementsByTagName('input');
|
|
const haveDefaultValues = ['authentication'];
|
|
|
|
for (const input of inputs) {
|
|
if (!haveDefaultValues.some((el) => input.name.includes(el))) {
|
|
input.value = '';
|
|
}
|
|
}
|
|
customSMTPSection.classList.add('hidden');
|
|
}
|
|
});
|