fix: follow became_rfc in ipr searches

This commit is contained in:
Robert Sparks 2023-08-19 09:33:04 -05:00
parent 05b71bb50c
commit 1ae0c0b838
No known key found for this signature in database
GPG key ID: 6E2A6A5775F91318
3 changed files with 11 additions and 5 deletions

View file

@ -720,7 +720,7 @@ Subject: test
'iprdocrel_set-INITIAL_FORMS' : 0,
'iprdocrel_set-0-id': '',
"iprdocrel_set-0-document": disclosure.docs.first().pk,
"iprdocrel_set-0-revisions": disclosure.docs.first().document.rev,
"iprdocrel_set-0-revisions": disclosure.docs.first().rev,
'holder_legal_name': disclosure.holder_legal_name,
'patent_number': patent_dict['Number'],
'patent_title': patent_dict['Title'],

View file

@ -40,7 +40,7 @@ def iprs_from_docs(docs,**kwargs):
iprdocrels += document.ipr(**kwargs)
return list(set([i.disclosure for i in iprdocrels]))
def related_docs(doc, relationship=('replaces', 'obs')):
def related_docs(doc, relationship=('replaces', 'obs'), reverse_relationship=("became_rfc",)):
"""Returns list of related documents"""
results = [doc]
@ -52,6 +52,12 @@ def related_docs(doc, relationship=('replaces', 'obs')):
rel.target.relation = rel.relationship.revname
results += [x.target for x in rels]
rev_rels = list(doc.all_relations_that(reverse_relationship))
for rel in rev_rels:
rel.source.related = rel
rel.source.relation = rel.relationship.name
results += [x.source for x in rev_rels]
return list(set(results))

View file

@ -69,7 +69,7 @@ def get_document_emails(ipr):
has been posted"""
messages = []
for rel in ipr.iprdocrel_set.all():
doc = rel.document.document
doc = rel.document
if doc.type_id=="draft":
doc_info = 'Internet-Draft entitled "{}" ({})'.format(doc.title,doc.name)
@ -716,7 +716,7 @@ def search(request):
related += related_docs(doc)
iprs = iprs_from_docs(list(set(docs+related)),states=states)
docs = [ doc for doc in docs if doc.ipr() ]
docs = sorted(docs, key=lambda x: max([ipr.disclosure.time for ipr in x.document.ipr()]), reverse=True)
docs = sorted(docs, key=lambda x: max([ipr.disclosure.time for ipr in x.ipr()]), reverse=True)
template = "ipr/search_wg_result.html"
q = Group.objects.get(id=q).acronym # make acronym for use in template
@ -729,7 +729,7 @@ def search(request):
related += related_docs(doc)
iprs = iprs_from_docs(list(set(docs+related)),states=states)
docs = [ doc for doc in docs if doc.ipr() ]
docs = sorted(docs, key=lambda x: max([ipr.disclosure.time for ipr in x.document.ipr()]), reverse=True)
docs = sorted(docs, key=lambda x: max([ipr.disclosure.time for ipr in x.ipr()]), reverse=True)
template = "ipr/search_doctitle_result.html"
# Search by title of IPR disclosure