Add a machine-readable view listing IPR declarations per draft/rfc

- Legacy-Id: 1321
This commit is contained in:
Henrik Levkowetz 2009-02-18 10:39:27 +00:00
parent df950d0869
commit 293898ef3f
3 changed files with 26 additions and 1 deletions

View file

@ -6,6 +6,7 @@ from ietf.ipr import models, views, new, search
urlpatterns = patterns('',
(r'^$', views.showlist),
(r'^about/$', views.default),
(r'^by-draft/$', views.list_drafts),
#(r'^(?P<removed>removed/)?(?P<ipr_id>\d+)/$', views.show),
(r'^(?P<ipr_id>\d+)/$', views.show),
(r'^update/$', views.updatelist),

View file

@ -3,8 +3,9 @@
import django.utils.html
from django.shortcuts import render_to_response as render, get_object_or_404
from django.template import RequestContext
from django.template.loader import render_to_string
from django.utils.html import escape
from django.http import Http404
from django.http import HttpResponse, Http404
from ietf.idtracker.models import IETFWG
from ietf.ipr.models import IprDetail, SELECT_CHOICES, LICENSE_CHOICES
from ietf.ipr.view_sections import section_table
@ -42,6 +43,26 @@ def list_all(request, template):
'thirdpty_disclosures': thirdpty_disclosures.order_by(* ['-submitted_date', ] ),
}, context_instance=RequestContext(request) )
def list_drafts(request):
iprs = IprDetail.objects.filter(status=1)
docipr = {}
docs = []
for ipr in iprs:
for draft in ipr.drafts.all():
name = draft.document.filename
if not name in docipr:
docipr[name] = []
docipr[name] += [ ipr.ipr_id ]
for rfc in ipr.rfcs.all():
name = "RFC%04d" % rfc.document.rfc_number
if not name in docipr:
docipr[name] = []
docipr[name] += [ ipr.ipr_id ]
docs = [ {"name":key, "iprs":value, } for key,value in docipr.items() ]
return HttpResponse(render_to_string("ipr/drafts.html", { "docs":docs, },
context_instance=RequestContext(request)),
mimetype="text/plain")
# Details views
def show(request, ipr_id=None, removed=None):

View file

@ -0,0 +1,3 @@
# Machine-readable list of ipr disclosures by draft name
{% for doc in docs %}{{doc.name}}{% for num in doc.iprs %} {{ num }}{% endfor %}
{% endfor %}