Skip to content

Commit b21874d

Browse files
committed
feat(email): Hide empty rendered result
1 parent 7ba375c commit b21874d

File tree

1 file changed

+36
-23
lines changed

1 file changed

+36
-23
lines changed

templates/email/preview.html.twig

Lines changed: 36 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,10 @@
55
{% block title %}信件預覽{% endblock %}
66

77
{% block app %}
8+
{% set textContent = emailDeliveryEvent.email.textContent %}
9+
{% set htmlContent = emailDeliveryEvent.email.htmlContent %}
10+
{% set hasText, hasHtml = textContent|length > 0, htmlContent|length > 0 %}
11+
812
<main class="app-email-preview">
913
<div class="row">
1014
<section class="app-email-preview__rendered col-9">
@@ -15,33 +19,42 @@
1519

1620
<nav>
1721
<ul class="app-email-preview__rendered__mode_selector nav nav-tabs mb-3" role="tablist">
18-
<li class="nav-item" role="presentation">
19-
<button class="nav-link active" data-bs-toggle="tab"
20-
id="app-email-preview__html_content_selector"
21-
data-bs-target="#app-email-preview__html_content" type="button" role="tab"
22-
aria-controls="app-email-preview__html_content" aria-selected="true">HTML 格式信件
23-
</button>
24-
</li>
25-
<li class="nav-item" role="presentation">
26-
<button class="nav-link" data-bs-toggle="tab" data-bs-target="#app-email-preview__text_content"
27-
id="app-email-preview__text_content_selector"
28-
type="button" role="tab" aria-controls="app-email-preview__text_content"
29-
aria-selected="false">純文字格式信件
30-
</button>
31-
</li>
22+
{% if hasHtml %}
23+
<li class="nav-item" role="presentation">
24+
<button class="nav-link active" data-bs-toggle="tab"
25+
id="app-email-preview__html_content_selector"
26+
data-bs-target="#app-email-preview__html_content" type="button" role="tab"
27+
aria-controls="app-email-preview__html_content" aria-selected="true">HTML 格式信件
28+
</button>
29+
</li>
30+
{% endif %}
31+
{% if hasText %}
32+
<li class="nav-item" role="presentation">
33+
<button class="nav-link" data-bs-toggle="tab"
34+
data-bs-target="#app-email-preview__text_content"
35+
id="app-email-preview__text_content_selector"
36+
type="button" role="tab" aria-controls="app-email-preview__text_content"
37+
aria-selected="false">純文字格式信件
38+
</button>
39+
</li>
40+
{% endif %}
3241
</ul>
3342
</nav>
3443

3544
<article class="app-email-preview__rendered__content tab-content">
36-
<div class="tab-pane fade show active" id="app-email-preview__html_content" role="tabpanel"
37-
aria-labelledby="app-email-preview__text_content_selector"
38-
aria-labelledby="home-tab" tabindex="0">
39-
{{ emailDeliveryEvent.email.htmlContent|raw }}
40-
</div>
41-
<div class="tab-pane fade" id="app-email-preview__text_content" role="tabpanel"
42-
aria-labelledby="app-email-preview__text_content_selector" tabindex="0">
43-
<pre>{{ emailDeliveryEvent.email.textContent }}</pre>
44-
</div>
45+
{% if hasHtml %}
46+
<div class="tab-pane fade show active" id="app-email-preview__html_content" role="tabpanel"
47+
aria-labelledby="app-email-preview__text_content_selector"
48+
aria-labelledby="home-tab" tabindex="0">
49+
{{ emailDeliveryEvent.email.htmlContent|raw }}
50+
</div>
51+
{% endif %}
52+
{% if hasText %}
53+
<div class="tab-pane fade" id="app-email-preview__text_content" role="tabpanel"
54+
aria-labelledby="app-email-preview__text_content_selector" tabindex="0">
55+
<pre>{{ emailDeliveryEvent.email.textContent }}</pre>
56+
</div>
57+
{% endif %}
4558
</article>
4659
</section>
4760
<aside class="app-email-preview__meta col-3">

0 commit comments

Comments
 (0)