From 675c9fcb7fabbcb79b971beb91256720b6ea1f29 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Emilio=20A=2E=20S=C3=A1nchez=20L=C3=B3pez?= Date: Thu, 3 Nov 2011 18:37:35 +0000 Subject: [PATCH] Restrict rules to match drafts and rfcs. Fixes #722 - Legacy-Id: 3590 --- ietf/community/rules.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/ietf/community/rules.py b/ietf/community/rules.py index 8731462a8..822367a1c 100644 --- a/ietf/community/rules.py +++ b/ietf/community/rules.py @@ -23,7 +23,7 @@ class WgAsociatedRule(RuleManager): description = 'All I-Ds associated with a particular WG' def get_documents(self): - return Document.objects.filter(group__acronym=self.value) + return Document.objects.filter(Q(type__name='Draft') | Q(state__name='rfc')).filter(group__acronym=self.value).distinct() class AreaAsociatedRule(RuleManager): @@ -31,7 +31,7 @@ class AreaAsociatedRule(RuleManager): description = 'All I-Ds associated with all WGs in a particular Area' def get_documents(self): - return Document.objects.filter(group__parent__acronym=self.value, group__parent__type='area') + return Document.objects.filter(Q(type__name='Draft') | Q(state__name='rfc')).filter(group__parent__acronym=self.value, group__parent__type='area').distinct() class AdResponsibleRule(RuleManager): @@ -39,7 +39,7 @@ class AdResponsibleRule(RuleManager): description = 'All I-Ds with a particular responsible AD' def get_documents(self): - return Document.objects.filter(ad__name__icontains=self.value) + return Document.objects.filter(Q(type__name='Draft') | Q(state__name='rfc')).filter(ad__name__icontains=self.value).distinct() class AuthorRule(RuleManager): @@ -47,7 +47,7 @@ class AuthorRule(RuleManager): description = 'All I-Ds with a particular author' def get_documents(self): - return Document.objects.filter(authors__person__name__icontains=self.value) + return Document.objects.filter(Q(type__name='Draft') | Q(state__name='rfc')).filter(authors__person__name__icontains=self.value).distinct() class ShepherdRule(RuleManager): @@ -55,7 +55,7 @@ class ShepherdRule(RuleManager): description = 'All I-Ds with a particular document shepherd' def get_documents(self): - return Document.objects.filter(shepherd__name__icontains=self.value) + return Document.objects.filter(Q(type__name='Draft') | Q(state__name='rfc')).filter(shepherd__name__icontains=self.value).distinct() class ReferenceToRFCRule(RuleManager): @@ -83,7 +83,7 @@ class WithTextRule(RuleManager): description = 'All I-Ds that contain a particular text string' def get_documents(self): - return Document.objects.filter(Q(title__icontains=self.value) | Q(abstract__icontains=self.value)) + return Document.objects.filter(Q(type__name='Draft') | Q(state__name='rfc')).filter(Q(title__icontains=self.value) | Q(abstract__icontains=self.value)).distinct() TYPES_OF_RULES = [(i.codename, i.description) for i in RuleManager.__subclasses__()]