1
0
Fork 1
mirror of https://github.com/coddingtonbear/django-mailbox.git synced 2026-07-09 22:38:19 +02:00

save the from_email_address

This commit is contained in:
Gavin Palmer 2021-07-19 06:47:52 -05:00
parent 40263b6670
commit 131e7a4528
2 changed files with 55 additions and 0 deletions

View file

@ -0,0 +1,33 @@
# Generated by Django 3.2.4 on 2021-07-19 11:21
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('django_mailbox', '0008_auto_20190219_1553'),
]
operations = [
migrations.AddField(
model_name='message',
name='from_email_address',
field=models.CharField(blank=True, max_length=255, null=True, verbose_name='From email address'),
),
migrations.AlterField(
model_name='mailbox',
name='id',
field=models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID'),
),
migrations.AlterField(
model_name='message',
name='id',
field=models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID'),
),
migrations.AlterField(
model_name='messageattachment',
name='id',
field=models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID'),
),
]

View file

@ -369,6 +369,16 @@ class Mailbox(models.Model):
msg.message_id = message['message-id'][0:255].strip()
if 'from' in message:
msg.from_header = utils.convert_header_to_unicode(message['from'])
logger.info(
"from_header set to %s",
msg.from_header
)
if msg.from_header:
msg.from_email_address = parseaddr(msg.from_header)[1].lower()
logger.info(
"from_email_address set to %s",
msg.from_email_address
)
if 'to' in message:
msg.to_header = utils.convert_header_to_unicode(message['to'])
elif 'Delivered-To' in message:
@ -460,6 +470,11 @@ class UnreadMessageManager(models.Manager):
class Message(models.Model):
class Meta:
indexes = [
models.Index(fields=['from_email_address']),
]
mailbox = models.ForeignKey(
Mailbox,
related_name='messages',
@ -491,6 +506,13 @@ class Message(models.Model):
max_length=255,
)
from_email_address = models.CharField(
_('From email address'),
max_length = 255,
blank=True,
null=True,
)
to_header = models.TextField(
_('To header'),
)