|
- {{template "head.html" .}}
- {{template "nav.html" .}}
- {{template "util.html" .}}
-
- <div class="page-wrap">
- {{ $current := .Mailbox }}
- {{ template "aside" . }}
- <div class="container">
- <main class="message">
- <section class="actions">
- <div class="actions-wrap">
- <div class="actions-message">
- {{$back := printf "%v?page=%v" .Mailbox.URL .MailboxPage}}
- <a href="{{$back}}" class="button-link">« Back</a>
-
- {{ if and (ne .Mailbox.Name "Archive") (ne .Mailbox.Name "Drafts") (ne .Mailbox.Name "Sent") }}
- <form class="action-group" method="post" action="/message/{{.Mailbox.Name | pathescape}}/move">
- <input type="hidden" name="uids" value="{{.Message.Uid}}">
- <input type="hidden" name="to" value="Archive">
- <input type="hidden" name="next" value="{{$back}}">
- <button>Archive</button>
- </form>
- {{ end }}
-
- {{ if and (ne .Mailbox.Name "INBOX") (ne .Mailbox.Name "Sent") (ne .Mailbox.Name "Drafts") }}
- <form class="action-group" method="post" action="/message/{{.Mailbox.Name | pathescape}}/move">
- <input type="hidden" name="uids" value="{{.Message.Uid}}">
- <input type="hidden" name="to" value="INBOX">
- <button>
- {{ if (eq .Mailbox.Name "Junk") }}
- Not Spam
- {{ else }}
- Move to Inbox
- {{ end }}
- </button>
- </form>
- {{ end }}
-
- {{ if or (eq .Mailbox.Name "INBOX") (eq .Mailbox.Name "Trash") }}
- <form class="action-group" method="post" action="/message/{{.Mailbox.Name | pathescape}}/move">
- <input type="hidden" name="uids" value="{{.Message.Uid}}">
- <input type="hidden" name="next" value="{{$back}}">
- <input type="hidden" name="to" value="Junk">
- <button>Report Spam</button>
- </form>
- {{ end }}
-
- {{ if or (eq .Mailbox.Name "Trash") (eq .Mailbox.Name "Junk") }}
- <form class="action-group" method="post" action="/message/{{.Mailbox.Name | pathescape}}/delete">
- <input type="hidden" name="uids" value="{{.Message.Uid}}">
- <input type="hidden" name="next" value="{{$back}}">
- <button>Delete Permanently</button>
- </form>
- {{ else }}
- <form class="action-group" method="post" action="/message/{{.Mailbox.Name | pathescape}}/move">
- <input type="hidden" name="uids" value="{{.Message.Uid}}">
- <input type="hidden" name="next" value="{{$back}}">
- <input type="hidden" name="to" value="Trash">
- <button>Delete</button>
- </form>
- {{ end }}
-
- <form class="action-group" method="post" action="/message/{{.Mailbox.Name | pathescape}}/flag">
- <input type="hidden" name="uids" value="{{.Message.Uid}}">
- <input type="hidden" name="action" value="remove">
- <input type="hidden" name="flags" value="\Seen">
- <input type="hidden" name="next" value="{{$back}}">
- <button>Mark Unread</button>
- </form>
-
- <form class="action-group" method="post" action="/message/{{.Mailbox.Name | pathescape}}/move">
- <input type="hidden" name="uids" value="{{.Message.Uid}}">
- <select class="action-group" name="to">
- {{range .Mailboxes}}
- <option value="{{.Name}}" {{if eq .Name $.Mailbox.Name}}selected>Move to...{{else}}>{{.Name}}{{ end }}</option>
- {{end}}
- </select>
- <button class="action-group" type="submit">Move</button>
- </form>
-
- <span class="followups action-group">
- {{if .Message.HasFlag "\\Draft"}}
- <a class="action-group button-link" href="{{.Message.URL}}/edit{{if .Message.TextPart}}?part={{.Message.TextPart.PathString}}{{end}}">Edit draft</a>
- {{else}}
- <a class="action-group button-link" href="{{.Message.URL}}/reply{{if .Message.TextPart}}?part={{.Message.TextPart.PathString}}{{end}}">Reply</a>
- <a class="action-group button-link" href="{{.Message.URL}}/forward{{if .Message.TextPart}}?part={{.Message.TextPart.PathString}}{{end}}">Forward</a>
- {{end}}
- </span>
-
- <span class="action-group">
- <a
- class="action-group button-link"
- id="print"
- href="#"
- style="display: none"
- >Print</a>
- </span>
- </div>
- </div>
- </section>
-
- <div class="message-header">
- <table>
- <tr>
- <th colspan="2">
- <h1>
- {{if .Message.Envelope.Subject}}
- {{.Message.Envelope.Subject}}
- {{else}}
- (No subject)
- {{end}}
- </h1>
- </th>
- </tr>
- <tr>
- <th>From:</th>
- <td>{{template "addr-list" .Message.Envelope.From}}</td>
- </tr>
- <tr>
- <th>Date:</th>
- <td>{{.Message.Envelope.Date | formatdate}}</td>
- </tr>
- <tr>
- <th>To:</th><td>{{template "addr-list" .Message.Envelope.To}}</td>
- </tr>
- {{if .Message.Envelope.Cc}}
- <tr>
- <th>Cc:</th><td>{{template "addr-list" .Message.Envelope.Cc}}</td>
- </tr>
- {{end}}
- {{if .Message.Envelope.Bcc}}
- <tr>
- <th>Bcc:</th>
- <td>{{template "addr-list" .Message.Envelope.Bcc}}</td>
- </tr>
- {{ end }}
- {{if and .Extra.HasRemoteResources (not .Extra.RemoteResourcesAllowed)}}
- <tr class="remote-content">
- <td colspan="2">
- This message contains remote content, such as external images.
- <a href="?part={{.Part.PathString}}&allow-remote-resources=1">
- Load remote content »
- </a>
- </td>
- </tr>
- {{end}}
- </table>
- {{ $attachments := .Message.Attachments }}
- {{ if $attachments }}
- <section class="parts">
- <h3>Attachments</h3>
- <ul>
- {{ range .Message.Attachments }}
- <li>
- <a
- class="nav-link"
- {{if .IsText}}
- href="?part={{.PathString}}"
- {{else}}
- href="{{$.Message.URL}}/raw?part={{.PathString}}"
- {{end}}
- >
- {{- if .Filename -}}
- {{.Filename}}
- {{- else -}}
- (no filename)
- {{- end -}}
- </a> ({{.MIMEType}}, {{.SizeString}})
- </li>
- {{ end }}
- </ul>
- </section>
- {{ end }}
- </div>
-
- {{define "addr-list"}}
- {{range $i, $addr := .}}
- {{if $i}},{{end}}
- <strong>{{.PersonalName}}</strong>
- <<a href="/compose?to={{.Address}}">{{.Address}}</a>>
- {{end}}
- {{end}}
-
- {{ $html := .Message.HTMLPart }}
- {{ $text := .Message.TextPart }}
- <div class="tabs">
- {{/* https://github.com/golang/go/issues/31103 */}}
- <a
- href="?part={{$text.PathString}}"
- {{ if eq $text.PathString .Part.PathString }}
- class="active"
- {{ end }}
- >
- {{ if eq $text.MIMEType "text/html" }}
- HTML
- {{ else }}
- Plain text
- {{ end }}
- </a>
- {{ if and $html $text }}
- {{ if ne $html.PathString $text.PathString }}
- <a
- href="?part={{$html.PathString}}"
- {{ if eq $html.PathString .Part.PathString }}
- class="active"
- {{ end }}
- >HTML</a>
- {{ end }}
- {{ end }}
- <a href="{{.Message.URL}}/raw?plain=1">Raw email</a>
- </div>
-
- {{if .View}}
- {{.View}}
- {{else}}
- <p>Can't preview this message part.</p>
- <a href="{{.Message.URL}}/raw?part={{.Part.PathString}}">Download</a>
- {{end}}
- </main>
- </div>
- </div>
- <script src="/themes/alps/assets/print.js"></script>
-
- {{template "foot.html"}}
|