@@ -177,7 +177,16 @@ def revisions(self):
177177 revisions .sort ()
178178 return revisions
179179
180+
180181 def href (self , meeting = None ):
182+ return self ._get_ref (meeting = meeting ,meeting_doc_refs = settings .MEETING_DOC_HREFS )
183+
184+
185+ def gref (self , meeting = None ):
186+ return self ._get_ref (meeting = meeting ,meeting_doc_refs = settings .MEETING_DOC_GREFS )
187+
188+
189+ def _get_ref (self , meeting = None , meeting_doc_refs = settings .MEETING_DOC_HREFS ):
181190 """
182191 Returns an url to the document text. This differs from .get_absolute_url(),
183192 which returns an url to the datatracker page for the document.
@@ -198,10 +207,10 @@ def href(self, meeting=None):
198207 pass
199208
200209
201- if self .type_id in settings .DOC_HREFS and self .type_id in settings . MEETING_DOC_HREFS :
210+ if self .type_id in settings .DOC_HREFS and self .type_id in meeting_doc_refs :
202211 if self .meeting_related ():
203212 self .is_meeting_related = True
204- format = settings . MEETING_DOC_HREFS [self .type_id ]
213+ format = meeting_doc_refs [self .type_id ]
205214 else :
206215 self .is_meeting_related = False
207216 format = settings .DOC_HREFS [self .type_id ]
@@ -211,7 +220,7 @@ def href(self, meeting=None):
211220 format = settings .DOC_HREFS ['rfc' ]
212221 else :
213222 format = settings .DOC_HREFS [self .type_id ]
214- elif self .type_id in settings . MEETING_DOC_HREFS :
223+ elif self .type_id in meeting_doc_refs :
215224 self .is_meeting_related = True
216225 else :
217226 if len (self .external_url ):
@@ -231,7 +240,7 @@ def href(self, meeting=None):
231240 # After IETF 96, meeting materials acquired revision
232241 # handling, and the document naming changed.
233242 if meeting .number .isdigit () and int (meeting .number ) > 96 :
234- format = settings . MEETING_DOC_HREFS [self .type_id ]
243+ format = meeting_doc_refs [self .type_id ]
235244 else :
236245 format = settings .MEETING_DOC_OLD_HREFS [self .type_id ]
237246 info = dict (doc = self , meeting = meeting )
0 commit comments