diff --git a/django_mailbox/migrations/0006_mailbox_last_polling.py b/django_mailbox/migrations/0006_mailbox_last_polling.py new file mode 100644 index 0000000..a46713b --- /dev/null +++ b/django_mailbox/migrations/0006_mailbox_last_polling.py @@ -0,0 +1,20 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.9.8 on 2016-08-15 22:39 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('django_mailbox', '0005_auto_20160523_2240'), + ] + + operations = [ + migrations.AddField( + model_name='mailbox', + name='last_polling', + field=models.DateTimeField(blank=True, null=True, help_text='The time of last successfull polling of message. It is blank for new mailbox or processing email via pipe only.', verbose_name='Last polling'), + ), + ] diff --git a/django_mailbox/models.py b/django_mailbox/models.py index ec71e77..07a0632 100644 --- a/django_mailbox/models.py +++ b/django_mailbox/models.py @@ -25,6 +25,7 @@ from django.core.files.base import ContentFile from django.core.mail.message import make_msgid from django.db import models from django.utils.translation import ugettext_lazy as _ +from django.utils.timezone import now from django_mailbox import utils from django_mailbox.signals import message_received @@ -96,6 +97,14 @@ class Mailbox(models.Model): default=True, ) + last_polling = models.DateTimeField( + _(u"Last polling"), + help_text=(_("The time of last successfull polling of message. " + "It is blank for new mailbox or processing email via pipe only.")), + blank=True, + null=True + ) + objects = models.Manager() active_mailboxes = ActiveMailboxManager() @@ -372,6 +381,8 @@ class Mailbox(models.Model): for message in connection.get_message(condition): msg = self.process_incoming_message(message) new_mail.append(msg) + self.last_polling = now() + self.save(update_fields=['last_polling']) return new_mail def __unicode__(self):