3 class VoteManager(models.Manager):
\r
4 def get_up_vote_count_from_user(self, user):
\r
6 return self.filter(user=user, vote=1).count()
\r
10 def get_down_vote_count_from_user(self, user):
\r
11 if user is not None:
\r
12 return self.filter(user=user, vote=-1).count()
\r
16 def get_votes_count_today_from_user(self, user):
\r
17 if user is not None:
\r
18 today = datetime.date.today()
\r
19 return self.filter(user=user, voted_at__range=(today, today + datetime.timedelta(1))).count()
\r
25 class Vote(MetaContent):
\r
30 (VOTE_DOWN, u'Down'),
\r
33 vote = models.SmallIntegerField(choices=VOTE_CHOICES)
\r
34 voted_at = models.DateTimeField(default=datetime.datetime.now)
\r
36 objects = VoteManager()
\r
38 class Meta(MetaContent.Meta):
\r
39 unique_together = ('content_type', 'object_id', 'user')
\r
42 def __unicode__(self):
\r
43 return '[%s] voted at %s: %s' %(self.user, self.voted_at, self.vote)
\r
45 def is_upvote(self):
\r
46 return self.vote == self.VOTE_UP
\r
48 def is_downvote(self):
\r
49 return self.vote == self.VOTE_DOWN
\r
52 class FlaggedItemManager(models.Manager):
\r
53 def get_flagged_items_count_today(self, user):
\r
54 if user is not None:
\r
55 today = datetime.date.today()
\r
56 return self.filter(user=user, flagged_at__range=(today, today + datetime.timedelta(1))).count()
\r
60 class FlaggedItem(MetaContent):
\r
61 """A flag on a Question or Answer indicating offensive content."""
\r
62 flagged_at = models.DateTimeField(default=datetime.datetime.now)
\r
64 objects = FlaggedItemManager()
\r
66 class Meta(MetaContent.Meta):
\r
67 unique_together = ('content_type', 'object_id', 'user')
\r
68 db_table = u'flagged_item'
\r
70 def __unicode__(self):
\r
71 return '[%s] flagged at %s' %(self.user, self.flagged_at)
\r
73 class Comment(MetaContent):
\r
74 comment = models.CharField(max_length=300)
\r
75 added_at = models.DateTimeField(default=datetime.datetime.now)
\r
77 class Meta(MetaContent.Meta):
\r
78 ordering = ('-added_at',)
\r
79 db_table = u'comment'
\r
81 def save(self,**kwargs):
\r
82 super(Comment,self).save(**kwargs)
\r
86 logging.debug('problem pinging google did you register you sitemap with google?')
\r
88 def __unicode__(self):
\r