Bladeren bron

feat: 显示收件人和抄送人

SongZihuan 2 jaren geleden
bovenliggende
commit
fb42ad7707
2 gewijzigde bestanden met toevoegingen van 24 en 2 verwijderingen
  1. 15 0
      mailbox/email.py
  2. 9 2
      templates/mailbox/mail.html

+ 15 - 0
mailbox/email.py

@@ -62,8 +62,23 @@ class Mail:
     def from_addr(self):
         if not self.msg_data['From']:
             return ""
+        print(self.to_addr)
         return str(email.header.make_header(email.header.decode_header(self.msg_data['From'])))
 
+    @property
+    def to_addr(self):
+        if not self.msg_data['To']:
+            return []
+        res = str(email.header.make_header(email.header.decode_header(self.msg_data['To'])))
+        return [i.strip() for i in res.split(",")]
+
+    @property
+    def cc_addr(self):
+        if not self.msg_data['Cc']:
+            return []
+        res = str(email.header.make_header(email.header.decode_header(self.msg_data['Cc'])))
+        return [i.strip() for i in res.split(",")]
+
     @property
     def date(self):
         if not self.msg_data['Date']:

+ 9 - 2
templates/mailbox/mail.html

@@ -5,8 +5,15 @@
 <div class="container text-start">
     <h2> {{ mail.title }} </h2>
     <div>
-        <span class="badge bg-danger"> {{ mail.date }} </span>
-        <span class="badge bg-success"> {{ mail.from_addr }} </span>
+        <span class="badge bg-danger"> Date: {{ mail.date }} </span>
+        <span class="badge bg-success"> From: {{ mail.from_addr }} </span>
+        {% for i in mail.to_addr %}
+            <span class="badge bg-dark"> To: {{ i }} </span>
+        {% endfor %}
+
+        {% for i in mail.cc_addr %}
+            <span class="badge bg-info"> To: {{ i }} </span>
+        {% endfor %}
     </div>
 
     {% for i in html_id %}