Add warning banner when all authentication results are missing
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
Explains the two most common causes: the mail server not being configured to verify email authentication, or a receiver hostname mismatch with --receiver-hostname. Bug: https://github.com/happyDomain/happydeliver/issues/11
This commit is contained in:
parent
2fcee1b885
commit
35fc997390
1 changed files with 28 additions and 0 deletions
|
|
@ -13,6 +13,12 @@
|
||||||
|
|
||||||
let { authentication, authenticationGrade, authenticationScore, dnsResults }: Props = $props();
|
let { authentication, authenticationGrade, authenticationScore, dnsResults }: Props = $props();
|
||||||
|
|
||||||
|
let allRequiredMissing = $derived(
|
||||||
|
!authentication.spf &&
|
||||||
|
(!authentication.dkim || authentication.dkim.length === 0) &&
|
||||||
|
!authentication.dmarc,
|
||||||
|
);
|
||||||
|
|
||||||
function getAuthResultClass(result: string, noneIsFail: boolean): string {
|
function getAuthResultClass(result: string, noneIsFail: boolean): string {
|
||||||
switch (result) {
|
switch (result) {
|
||||||
case "pass":
|
case "pass":
|
||||||
|
|
@ -97,6 +103,28 @@
|
||||||
</span>
|
</span>
|
||||||
</h4>
|
</h4>
|
||||||
</div>
|
</div>
|
||||||
|
{#if allRequiredMissing}
|
||||||
|
<div class="card-body border-bottom">
|
||||||
|
<div class="alert alert-warning mb-0">
|
||||||
|
<i class="bi bi-exclamation-triangle-fill me-2"></i>
|
||||||
|
<strong>No authentication results found.</strong>
|
||||||
|
<p class="mb-0 mt-1">
|
||||||
|
This usually means either:
|
||||||
|
</p>
|
||||||
|
<ul class="mb-0 mt-1">
|
||||||
|
<li>
|
||||||
|
The receiving mail server is not configured to verify email authentication
|
||||||
|
(no <code>Authentication-Results</code> header was found in the message).
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
The <code>Authentication-Results</code> header exists but the receiver
|
||||||
|
hostname does not match the configured
|
||||||
|
<code>--receiver-hostname</code> value.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{/if}
|
||||||
<div class="list-group list-group-flush">
|
<div class="list-group list-group-flush">
|
||||||
<!-- IPREV -->
|
<!-- IPREV -->
|
||||||
{#if authentication.iprev}
|
{#if authentication.iprev}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue