|
8 | 8 | import os |
9 | 9 | import textwrap |
10 | 10 |
|
11 | | -from django.http import HttpResponseRedirect, HttpResponseNotFound, HttpResponseForbidden, Http404 |
| 11 | +from django.http import HttpResponseRedirect, HttpResponseNotFound, Http404 |
12 | 12 | from django.shortcuts import get_object_or_404, redirect, render |
13 | 13 | from django.urls import reverse as urlreverse |
14 | 14 | from django import forms |
|
32 | 32 | change_group_state_after_charter_approval, fix_charter_revision_after_approval, |
33 | 33 | split_charter_name) |
34 | 34 | from ietf.doc.mails import email_state_changed, email_charter_internal_review |
| 35 | +from ietf.group.mails import email_admin_re_charter |
35 | 36 | from ietf.group.models import Group, ChangeStateGroupEvent, MilestoneGroupEvent |
36 | 37 | from ietf.group.utils import save_group_in_history, save_milestone_in_history, can_manage_group_type |
| 38 | +from ietf.group.views import fill_in_charter_info |
37 | 39 | from ietf.ietfauth.utils import has_role, role_required |
38 | 40 | from ietf.name.models import GroupStateName |
39 | 41 | from ietf.person.models import Person |
40 | 42 | from ietf.utils.history import find_history_active_at |
41 | 43 | from ietf.utils.mail import send_mail_preformatted |
42 | 44 | from ietf.utils.textupload import get_cleaned_text_file_content |
43 | | -from ietf.group.mails import email_admin_re_charter |
44 | | -from ietf.group.views import fill_in_charter_info |
| 45 | +from ietf.utils.response import permission_denied |
45 | 46 |
|
46 | 47 | class ChangeStateForm(forms.Form): |
47 | 48 | charter_state = forms.ModelChoiceField(State.objects.filter(used=True, type="charter"), label="Charter state", empty_label=None, required=False) |
@@ -70,7 +71,7 @@ def change_state(request, name, option=None): |
70 | 71 | group = charter.group |
71 | 72 |
|
72 | 73 | if not can_manage_group_type(request.user, group): |
73 | | - return HttpResponseForbidden("You don't have permission to access this view") |
| 74 | + permission_denied(request, "You don't have permission to access this view.") |
74 | 75 |
|
75 | 76 | chartering_type = get_chartering_type(charter) |
76 | 77 |
|
@@ -261,7 +262,7 @@ def change_title(request, name, option=None): |
261 | 262 | charter = get_object_or_404(Document, type="charter", name=name) |
262 | 263 | group = charter.group |
263 | 264 | if not can_manage_group_type(request.user, group): |
264 | | - return HttpResponseForbidden("You don't have permission to access this view") |
| 265 | + permission_denied(request, "You don't have permission to access this view.") |
265 | 266 | by = request.user.person |
266 | 267 | if request.method == 'POST': |
267 | 268 | form = ChangeTitleForm(request.POST, charter=charter) |
@@ -374,7 +375,7 @@ def submit(request, name, option=None): |
374 | 375 | charter_rev = "00-00" |
375 | 376 |
|
376 | 377 | if not can_manage_group_type(request.user, group) or not group.features.has_chartering_process: |
377 | | - return HttpResponseForbidden("You don't have permission to access this view") |
| 378 | + permission_denied(request, "You don't have permission to access this view.") |
378 | 379 |
|
379 | 380 |
|
380 | 381 | path = os.path.join(settings.CHARTER_PATH, '%s-%s.txt' % (charter_canonical_name, charter_rev)) |
|
0 commit comments