Enable tagging questions.
[prawokultury.git] / questions / models.py
index 06addd3..2955ddb 100644 (file)
@@ -7,6 +7,8 @@ from django.db import models
 from django.template import loader, Context
 from django.utils.translation import ugettext_lazy as _
 from markupfield.fields import MarkupField
+from taggit_autosuggest.managers import TaggableManager
+
 
 class Question(models.Model):
     email = models.EmailField(_('contact e-mail'), null=True, blank=True)
@@ -25,6 +27,8 @@ class Question(models.Model):
         help_text=_('Check to display answered question on site.'))
     published_at = models.DateTimeField(_('published at'), null=True, blank=True, db_index=True)
 
+    tags = TaggableManager()
+
     class Meta:
         ordering = ['-created_at']
         verbose_name = _('question')
@@ -55,6 +59,24 @@ class Question(models.Model):
         msg.attach_alternative(html_content, "text/html")
         msg.send()
 
+    def ack_author(self):
+        if not self.email:
+            return
+        site = Site.objects.get_current()
+        context = Context({
+                'question': self,
+                'site': site,
+            })
+        text_content = loader.get_template('questions/ack_mail.txt'
+            ).render(context)
+        html_content = loader.get_template('questions/ack_mail.html'
+            ).render(context)
+        msg = EmailMultiAlternatives(
+            u'Twoje pytanie zostaƂo zarejestrowane w serwisie %s.' % site.domain,
+            text_content, settings.SERVER_EMAIL, [self.email])
+        msg.attach_alternative(html_content, "text/html")
+        msg.send()
+
     def save(self, *args, **kwargs):
         now = datetime.now()
         notify = False