summaryrefslogtreecommitdiffstats
path: root/forum/models/meta.py
diff options
context:
space:
mode:
Diffstat (limited to 'forum/models/meta.py')
-rw-r--r--forum/models/meta.py34
1 files changed, 18 insertions, 16 deletions
diff --git a/forum/models/meta.py b/forum/models/meta.py
index d0530694..5f36d76e 100644
--- a/forum/models/meta.py
+++ b/forum/models/meta.py
@@ -1,9 +1,7 @@
+import datetime
from django.db import models
-from base import MetaContent, UserContent
-from base import render_post_text_and_get_newly_mentioned_users
-from base import save_content
from forum import const
-import datetime
+from forum.models import base
class VoteManager(models.Manager):
def get_up_vote_count_from_user(self, user):
@@ -26,7 +24,7 @@ class VoteManager(models.Manager):
return 0
-class Vote(MetaContent, UserContent):
+class Vote(base.MetaContent, base.UserContent):
VOTE_UP = +1
VOTE_DOWN = -1
VOTE_CHOICES = (
@@ -39,7 +37,7 @@ class Vote(MetaContent, UserContent):
objects = VoteManager()
- class Meta(MetaContent.Meta):
+ class Meta(base.MetaContent.Meta):
unique_together = ('content_type', 'object_id', 'user')
db_table = u'vote'
@@ -65,25 +63,28 @@ class FlaggedItemManager(models.Manager):
else:
return 0
-class FlaggedItem(MetaContent, UserContent):
+class FlaggedItem(base.MetaContent, base.UserContent):
"""A flag on a Question or Answer indicating offensive content."""
flagged_at = models.DateTimeField(default=datetime.datetime.now)
objects = FlaggedItemManager()
- class Meta(MetaContent.Meta):
+ class Meta(base.MetaContent.Meta):
unique_together = ('content_type', 'object_id', 'user')
db_table = u'flagged_item'
def __unicode__(self):
return '[%s] flagged at %s' %(self.user, self.flagged_at)
-class Comment(MetaContent, UserContent):
+class Comment(base.MetaContent, base.UserContent):
comment = models.CharField(max_length = const.COMMENT_HARD_MAX_LENGTH)
added_at = models.DateTimeField(default = datetime.datetime.now)
html = models.CharField(max_length = const.COMMENT_HARD_MAX_LENGTH, default='')
- class Meta(MetaContent.Meta):
+ _urlize = True
+ _use_markdown = False
+
+ class Meta(base.MetaContent.Meta):
ordering = ('-added_at',)
db_table = u'comment'
@@ -97,15 +98,13 @@ class Comment(MetaContent, UserContent):
def set_text(self, text):
self.comment = text
- _render_text_and_get_newly_mentioned_users = \
- render_post_text_and_get_newly_mentioned_users
-
- _save = save_content
+ def parse(self):
+ return base.parse_post_text(self)
def save(self,**kwargs):
- self._save(urlize_content = True)
+ base.save_post(self)
- def get_updated_activity_type(self):
+ def get_updated_activity_type(self, created = False):
if self.content_object.__class__.__name__ == 'Question':
return const.TYPE_ACTIVITY_COMMENT_QUESTION
elif self.content_object.__class__.__name__ == 'Answer':
@@ -123,6 +122,9 @@ class Comment(MetaContent, UserContent):
users -= set([self.user])#remove activity user
return list(users)
+ def get_time_of_last_edit(self):
+ return self.added_at
+
def delete(self, **kwargs):
#todo: not very good import in models of other models
#todo: potentially a circular import