Skip to content

Commit f07e02b

Browse files
committed
Merged in [8057] from olau@iola.dk:\n Change Document.get_absolute_url to handle case of non-meeting-based group materials, fixes ietf-tools#1440
- Legacy-Id: 8064 Note: SVN reference [8057] has been migrated to Git commit 9eba9f7
2 parents aefe2d7 + 9eba9f7 commit f07e02b

1 file changed

Lines changed: 17 additions & 16 deletions

File tree

ietf/doc/models.py

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -247,22 +247,23 @@ def get_absolute_url(self):
247247
if self.type_id == "draft" and self.get_state_slug() == "rfc":
248248
name = self.canonical_name()
249249
elif self.type_id in ('slides','agenda','minutes'):
250-
session = self.session_set.all()[0]
251-
meeting = session.meeting
252-
if self.type_id in ('agenda','minutes'):
253-
filename = os.path.splitext(self.external_url)[0]
254-
else:
255-
filename = self.external_url
256-
if meeting.type_id == 'ietf':
257-
url = '%sproceedings/%s/%s/%s' % (settings.MEDIA_URL,meeting.number,self.type_id,filename)
258-
elif meeting.type_id == 'interim':
259-
url = "%sproceedings/interim/%s/%s/%s/%s" % (
260-
settings.MEDIA_URL,
261-
meeting.date.strftime('%Y/%m/%d'),
262-
session.group.acronym,
263-
self.type_id,
264-
filename)
265-
return url
250+
session = self.session_set.first()
251+
if session:
252+
meeting = session.meeting
253+
if self.type_id in ('agenda','minutes'):
254+
filename = os.path.splitext(self.external_url)[0]
255+
else:
256+
filename = self.external_url
257+
if meeting.type_id == 'ietf':
258+
url = '%sproceedings/%s/%s/%s' % (settings.MEDIA_URL,meeting.number,self.type_id,filename)
259+
elif meeting.type_id == 'interim':
260+
url = "%sproceedings/interim/%s/%s/%s/%s" % (
261+
settings.MEDIA_URL,
262+
meeting.date.strftime('%Y/%m/%d'),
263+
session.group.acronym,
264+
self.type_id,
265+
filename)
266+
return url
266267
return urlreverse('doc_view', kwargs={ 'name': name }, urlconf="ietf.urls")
267268

268269

0 commit comments

Comments
 (0)