# msg/model.py

from django.db import models
from django.contrib.auth.models import User

class Message(models.Model):
    messageID = models.CharField(unique=True, maxlength=10, blank=False)
    description = models.CharField(maxlength=60, blank=False)
    # hard code using settlings.MAILER_FROM_EMAIL as teh sender
    # default if left blank in EmailMessage()
    # sender = models.CharField(maxlength=60,blank=True)
    toQueryName = models.CharField(maxlength=20, blank=False)
    displayFields = models.CharField(maxlength=60, blank=True)
    subject = models.CharField(maxlength=50, blank=False)
    # keywords = models.CharField(maxlength=50)
    body = models.TextField()
    def __str__(self):
        return "%s-%s" % (self.messageID, self.description )
    class Admin:
        list_display = ('messageID', 'toQueryName', 'description', 'subject')
    # Class Meta:
    #     permissions = (("send_mailer",    "Can send a mailer e-mail"),)

class MessageLog(models.Model):
    """
    Log of what .mailBlast() sent.
    Doesn't use a FK link to Message so that you can see what was sent,
    even if Message gets updated.
    """
    timestamp = models.DateTimeField(auto_now_add=True)
    user = models.ForeignKey(User)
    messageID = models.CharField(maxlength=10,blank=False)
    sender = models.CharField(maxlength=100, blank=False)
    to = models.CharField(maxlength=100, blank=False)
    subject = models.CharField(maxlength=150, blank=False)
    body = models.TextField()
    class Admin:
        list_display = ('timestamp', 'messageID', 'to', 'subject')
