def award_to(self, laureate): laureate_ctype = ContentType.objects.get_for_model(laureate) # Check if the laureate already has this badge has_badge = False laureate_badges = BadgeToLaureate.objects.filter(badge=self, laureate_content_type=laureate_ctype, laureate_object_id=laureate.pk) if laureate_badges.count(): has_badge = True if self.meta_badge.one_time_only and has_badge: return False # Create badge BadgeToLaureate.objects.create(badge=self, laureate_content_type=laureate_ctype, laureate_object_id=laureate.pk) badge_awarded.send(sender=self.meta_badge, laureate=laureate, badge=self) # message_template = "You just got the %s Badge!" # user.message_set.create(message = message_template % self.title) return BadgeToLaureate.objects.filter(badge=self, laureate_content_type=laureate_ctype, laureate_object_id=laureate.pk).count()
def award_to(self, user): has_badge = self in user.badges.all() if self.meta_badge.one_time_only and has_badge: return False BadgeToUser.objects.create(badge=self, user=user) badge_awarded.send(sender=self.meta_badge, user=user, badge=self) return BadgeToUser.objects.filter(badge=self, user=user).count()
def award_to(self, user): has_badge = self in user.badges.all() if self.meta_badge.one_time_only and has_badge: return False BadgeToUser.objects.create(badge=self, user=user) badge_awarded.send(sender=self.meta_badge, user=user, badge=self) message_template = "You just got the %s Badge!" user.message_set.create(message = message_template % self.title) return BadgeToUser.objects.filter(badge=self, user=user).count()
def award_to(self, user): has_badge = self in user.badges.all() if self.meta_badge.one_time_only and has_badge: return False BadgeToUser.objects.create(badge=self, user=user) ################## user.profile.num_of_achievements += 1 user.profile.save() ################## badge_awarded.send(sender=self.meta_badge, user=user, badge=self) return BadgeToUser.objects.filter(badge=self, user=user).count()