Skip to content

Commit 0c4d58a

Browse files
committed
Based on feedback from the Secretariat, changed the 404 for IPR declarations in other states than 'posted' to a 403 with a login link.
- Legacy-Id: 18333
1 parent 35c7f0f commit 0c4d58a

2 files changed

Lines changed: 6 additions & 5 deletions

File tree

ietf/ipr/tests.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -100,17 +100,17 @@ def test_show_posted(self):
100100
def test_show_parked(self):
101101
ipr = HolderIprDisclosureFactory(state_id='parked')
102102
r = self.client.get(urlreverse("ietf.ipr.views.show", kwargs=dict(id=ipr.pk)))
103-
self.assertEqual(r.status_code, 404)
103+
self.assertEqual(r.status_code, 403)
104104

105105
def test_show_pending(self):
106106
ipr = HolderIprDisclosureFactory(state_id='pending')
107107
r = self.client.get(urlreverse("ietf.ipr.views.show", kwargs=dict(id=ipr.pk)))
108-
self.assertEqual(r.status_code, 404)
108+
self.assertEqual(r.status_code, 403)
109109

110110
def test_show_rejected(self):
111111
ipr = HolderIprDisclosureFactory(state_id='rejected')
112112
r = self.client.get(urlreverse("ietf.ipr.views.show", kwargs=dict(id=ipr.pk)))
113-
self.assertEqual(r.status_code, 404)
113+
self.assertEqual(r.status_code, 403)
114114

115115
def test_show_removed(self):
116116
ipr = HolderIprDisclosureFactory(state_id='removed')

ietf/ipr/views.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@
77

88
from django.conf import settings
99
from django.contrib import messages
10-
from django.urls import reverse as urlreverse
1110
from django.db.models import Q
1211
from django.forms.models import inlineformset_factory, model_to_dict
1312
from django.forms.formsets import formset_factory
1413
from django.http import HttpResponse, Http404, HttpResponseRedirect
1514
from django.shortcuts import render, get_object_or_404, redirect
1615
from django.template.loader import render_to_string
16+
from django.urls import reverse as urlreverse
1717
from django.utils.html import escape
1818

1919
import debug # pyflakes:ignore
@@ -41,6 +41,7 @@
4141
from ietf.secr.utils.document import get_rfc_num, is_draft
4242
from ietf.utils.draft_search import normalize_draftname
4343
from ietf.utils.mail import send_mail, send_mail_message
44+
from ietf.utils.response import permission_denied
4445
from ietf.utils.text import text_to_dict
4546

4647
# ----------------------------------------------------------------
@@ -779,7 +780,7 @@ def show(request, id):
779780
'ipr': ipr
780781
})
781782
elif ipr.state.slug != 'posted':
782-
raise Http404
783+
permission_denied(request, "Restricted to role: Secretariat.")
783784

784785
updates_iprs = ipr.relatedipr_source_set.all().order_by('source__time')
785786
prev_rel = updates_iprs.last()

0 commit comments

Comments
 (0)