mirror of
https://gitlab.crans.org/bde/nk20
synced 2025-04-28 01:22:37 +00:00
Compare commits
7 Commits
9a90b1cb5e
...
8570669043
Author | SHA1 | Date | |
---|---|---|---|
|
8570669043 | ||
|
9e7f7df721 | ||
|
62baad7b69 | ||
|
6e49140900 | ||
|
e5567c6c8a | ||
|
694f54e1c4 | ||
|
0d0fdef363 |
@ -329,7 +329,7 @@ class ActivityEntryView(LoginRequiredMixin, SingleTableMixin, TemplateView):
|
|||||||
context["noteuser_ctype"] = ContentType.objects.get_for_model(NoteUser).pk
|
context["noteuser_ctype"] = ContentType.objects.get_for_model(NoteUser).pk
|
||||||
context["notespecial_ctype"] = ContentType.objects.get_for_model(NoteSpecial).pk
|
context["notespecial_ctype"] = ContentType.objects.get_for_model(NoteSpecial).pk
|
||||||
|
|
||||||
activities_open = Activity.objects.filter(open=True).filter(
|
activities_open = Activity.objects.filter(open=True, activity_type__manage_entries=True).filter(
|
||||||
PermissionBackend.filter_queryset(self.request, Activity, "view")).distinct().all()
|
PermissionBackend.filter_queryset(self.request, Activity, "view")).distinct().all()
|
||||||
context["activities_open"] = [a for a in activities_open
|
context["activities_open"] = [a for a in activities_open
|
||||||
if PermissionBackend.check_perm(self.request,
|
if PermissionBackend.check_perm(self.request,
|
||||||
|
@ -15,7 +15,6 @@ from django.utils.translation import gettext_lazy as _
|
|||||||
from note.models import NoteSpecial, Alias
|
from note.models import NoteSpecial, Alias
|
||||||
from note_kfet.inputs import Autocomplete, AmountInput
|
from note_kfet.inputs import Autocomplete, AmountInput
|
||||||
from permission.models import PermissionMask, Role
|
from permission.models import PermissionMask, Role
|
||||||
from permission.backends import PermissionBackend
|
|
||||||
from PIL import Image, ImageSequence
|
from PIL import Image, ImageSequence
|
||||||
|
|
||||||
from .models import Profile, Club, Membership
|
from .models import Profile, Club, Membership
|
||||||
@ -67,14 +66,6 @@ class ProfileForm(forms.ModelForm):
|
|||||||
super().__init__(*args, **kwargs)
|
super().__init__(*args, **kwargs)
|
||||||
self.fields['address'].widget.attrs.update({"placeholder": "4 avenue des Sciences, 91190 GIF-SUR-YVETTE"})
|
self.fields['address'].widget.attrs.update({"placeholder": "4 avenue des Sciences, 91190 GIF-SUR-YVETTE"})
|
||||||
self.fields['promotion'].widget.attrs.update({"max": timezone.now().year})
|
self.fields['promotion'].widget.attrs.update({"max": timezone.now().year})
|
||||||
|
|
||||||
def clean(self):
|
|
||||||
"""Force the values of fields that the user does not have permission to modify.."""
|
|
||||||
cleaned_data = super().clean()
|
|
||||||
for field_name in self.fields.keys():
|
|
||||||
if not PermissionBackend.check_perm(self.request, f"member.change_profile_{field_name}", self.instance):
|
|
||||||
cleaned_data[field_name] = getattr(self.instance, field_name) # Force the old value
|
|
||||||
return cleaned_data
|
|
||||||
|
|
||||||
@transaction.atomic
|
@transaction.atomic
|
||||||
def save(self, commit=True):
|
def save(self, commit=True):
|
||||||
|
@ -79,13 +79,17 @@ class UserUpdateView(ProtectQuerysetMixin, LoginRequiredMixin, UpdateView):
|
|||||||
del profile_form.fields["last_report"]
|
del profile_form.fields["last_report"]
|
||||||
|
|
||||||
fields_to_check = list(profile_form.fields.keys())
|
fields_to_check = list(profile_form.fields.keys())
|
||||||
|
fields_modifiable = False
|
||||||
|
|
||||||
# Delete the fields for which the user does not have the permission to modify
|
# Delete the fields for which the user does not have the permission to modify
|
||||||
for field_name in fields_to_check:
|
for field_name in fields_to_check:
|
||||||
if not PermissionBackend.check_perm(self.request, f"member.change_profile_{field_name}", context['user_object'].profile):
|
if not PermissionBackend.check_perm(self.request, f"member.change_profile_{field_name}", context['user_object'].profile):
|
||||||
profile_form.fields[field_name].widget = forms.HiddenInput()
|
profile_form.fields[field_name].widget = forms.HiddenInput()
|
||||||
|
else :
|
||||||
|
fields_modifiable = True
|
||||||
|
|
||||||
context['profile_form'] = profile_form
|
if fields_modifiable :
|
||||||
|
context['profile_form'] = profile_form
|
||||||
|
|
||||||
return context
|
return context
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user