Moved document methods rfc_number() and rfcnum() to the abstract parent class to have them available also for historical document records. Should fix the recent server 500 on /doc/draft-ietf-aaa-diameter/17/.
- Legacy-Id: 15454
This commit is contained in:
parent
3d4eb192b0
commit
89b8fe6c1b
|
@ -350,6 +350,21 @@ class DocumentInfo(models.Model):
|
||||||
self._cached_is_rfc = self.pk and self.type_id == 'draft' and self.states.filter(type='draft',slug='rfc').exists()
|
self._cached_is_rfc = self.pk and self.type_id == 'draft' and self.states.filter(type='draft',slug='rfc').exists()
|
||||||
return self._cached_is_rfc
|
return self._cached_is_rfc
|
||||||
|
|
||||||
|
def rfc_number(self):
|
||||||
|
if not hasattr(self, '_cached_rfc_number'):
|
||||||
|
self._cached_rfc_number = None
|
||||||
|
if self.is_rfc():
|
||||||
|
n = self.canonical_name()
|
||||||
|
if n.startswith("rfc"):
|
||||||
|
self._cached_rfc_number = n[3:]
|
||||||
|
else:
|
||||||
|
logger.error("Document self.is_rfc() is True but self.canonical_name() is %s" % n)
|
||||||
|
return self._cached_rfc_number
|
||||||
|
|
||||||
|
@property
|
||||||
|
def rfcnum(self):
|
||||||
|
return self.rfc_number()
|
||||||
|
|
||||||
def author_list(self):
|
def author_list(self):
|
||||||
return u", ".join(author.email_id for author in self.documentauthor_set.all() if author.email_id)
|
return u", ".join(author.email_id for author in self.documentauthor_set.all() if author.email_id)
|
||||||
|
|
||||||
|
@ -735,21 +750,6 @@ class Document(DocumentInfo):
|
||||||
def displayname_with_link(self):
|
def displayname_with_link(self):
|
||||||
return mark_safe('<a href="%s">%s-%s</a>' % (self.get_absolute_url(), self.name , self.rev))
|
return mark_safe('<a href="%s">%s-%s</a>' % (self.get_absolute_url(), self.name , self.rev))
|
||||||
|
|
||||||
def rfc_number(self):
|
|
||||||
if not hasattr(self, '_cached_rfc_number'):
|
|
||||||
self._cached_rfc_number = None
|
|
||||||
if self.is_rfc():
|
|
||||||
n = self.canonical_name()
|
|
||||||
if n.startswith("rfc"):
|
|
||||||
self._cached_rfc_number = n[3:]
|
|
||||||
else:
|
|
||||||
logger.error("Document self.is_rfc() is True but self.canonical_name() is %s" % n)
|
|
||||||
return self._cached_rfc_number
|
|
||||||
|
|
||||||
@property
|
|
||||||
def rfcnum(self):
|
|
||||||
return self.rfc_number()
|
|
||||||
|
|
||||||
def ipr(self,states=('posted','removed')):
|
def ipr(self,states=('posted','removed')):
|
||||||
"""Returns the IPR disclosures against this document (as a queryset over IprDocRel)."""
|
"""Returns the IPR disclosures against this document (as a queryset over IprDocRel)."""
|
||||||
from ietf.ipr.models import IprDocRel
|
from ietf.ipr.models import IprDocRel
|
||||||
|
|
|
@ -26,7 +26,7 @@ from ietf.utils.storage import NoLocationMigrationFileSystemStorage
|
||||||
from ietf.utils.mail import formataddr
|
from ietf.utils.mail import formataddr
|
||||||
from ietf.person.name import unidecode_name
|
from ietf.person.name import unidecode_name
|
||||||
from ietf.utils import log
|
from ietf.utils import log
|
||||||
from ietf.utils.models import ForeignKey, OneToOneField
|
#from ietf.utils.models import ForeignKey, OneToOneField
|
||||||
|
|
||||||
|
|
||||||
class Person(models.Model):
|
class Person(models.Model):
|
||||||
|
@ -338,6 +338,7 @@ class PersonalApiKey(models.Model):
|
||||||
|
|
||||||
PERSON_EVENT_CHOICES = [
|
PERSON_EVENT_CHOICES = [
|
||||||
("apikey_login", "API key login"),
|
("apikey_login", "API key login"),
|
||||||
|
("gdpr_notice_email", "GDPR notice email"),
|
||||||
]
|
]
|
||||||
|
|
||||||
class PersonEvent(models.Model):
|
class PersonEvent(models.Model):
|
||||||
|
|
Loading…
Reference in a new issue