from tag import Tag
from django.utils.translation import ugettext as _
-question_view = django.dispatch.Signal(providing_args=['instance', 'user'])
-
class QuestionManager(NodeManager):
- def search(self, keywords):
+ def search(self, keywords, **kwargs):
return False, self.filter(models.Q(title__icontains=keywords) | models.Q(body__icontains=keywords))
class Question(Node):
@property
def headline(self):
+ return self._headline()
+
+ def _headline(self):
if self.nis.deleted:
return _('[deleted] ') + self.title
return [Question.objects.get(id=r['id']) for r in related_list]
- def get_active_users(self):
- active_users = []
-
- active_users.append(self.author)
-
- for answer in self.answers:
- active_users.append(answer.author)
-
- for child in self.children.all():
- active_users.append(child.author)
- for grandchild in child.children.all():
- active_users.append(grandchild.author)
-
- # Remove duplicates
- unique_active_users = []
- for user in active_users:
- if user not in unique_active_users:
- unique_active_users.append(user)
- active_users = unique_active_users
- del unique_active_users
-
- return active_users
-
-
-def question_viewed(instance, **kwargs):
- instance.extra_count += 1
- instance.save()
-question_view.connect(question_viewed)
class QuestionSubscription(models.Model):