1
0
mirror of https://gitlab.crans.org/bde/nk20 synced 2025-06-21 01:48:21 +02:00
This commit is contained in:
quark
2025-02-24 16:10:58 +01:00
parent 5f1b698d58
commit 587314e03c
14 changed files with 344 additions and 299 deletions

View File

@ -1,33 +1,19 @@
# Copyright (C) 2018-2024 by BDE ENS Paris-Saclay
# SPDX-License-Identifier: GPL-3.0-or-later
from hashlib import md5
import json
from django.conf import settings
from django.contrib.auth.mixins import LoginRequiredMixin
from django.contrib.contenttypes.models import ContentType
from django.core.exceptions import PermissionDenied
from django.db import transaction
from django.db.models import F, Q
from django.http import HttpResponse
from django.urls import reverse_lazy
from django.utils import timezone
from django.utils.decorators import method_decorator
from django.utils.translation import gettext_lazy as _
from django.views import View
from django.views.decorators.cache import cache_page
from django.views.generic import DetailView, TemplateView, UpdateView
from django.views.generic.list import ListView
from django_tables2.views import MultiTableMixin, SingleTableMixin, SingleTableView
from api.viewsets import is_regex
from note.models import Alias, NoteSpecial, NoteUser
from django.views.generic import DetailView
from django_tables2.views import SingleTableView
from permission.backends import PermissionBackend
from permission.views import ProtectQuerysetMixin, ProtectedCreateView
from permission.views import ProtectQuerysetMixin
from .models import Wrapped
from .tables import WrappedTable
class WrappedListView(ProtectQuerysetMixin, LoginRequiredMixin, SingleTableView):
"""
Display all Wrapped, and classify by year
@ -46,18 +32,20 @@ class WrappedListView(ProtectQuerysetMixin, LoginRequiredMixin, SingleTableView)
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
W = self.object_list.filter(note__noteclub__club__pk__gte=-1, public=False)
if W:
w = self.object_list.filter(note__noteclub__club__pk__gte=-1, public=False)
if w:
context['club_not_public'] = 'true'
else: context['club_not_public'] = 'false'
else:
context['club_not_public'] = 'false'
return context
class WrappedDetailView(ProtectQuerysetMixin, DetailView):
class WrappedDetailView(ProtectQuerysetMixin, LoginRequiredMixin, DetailView):
"""
View a wrapped
"""
model = Wrapped
template_name = 'wrapped/0/wrapped_view.html' #by default
template_name = 'wrapped/0/wrapped_view.html' # by default
def get(self, *args, **kwargs):
bde_id = Wrapped.objects.get(pk=kwargs['pk']).bde.id
@ -66,7 +54,7 @@ class WrappedDetailView(ProtectQuerysetMixin, DetailView):
return super().get(*args, **kwargs)
def get_context_data(self, **kwargs):
context = super().get_context_data( **kwargs)
context = super().get_context_data(**kwargs)
d = json.loads(self.object.data_json)
for key in d:
context[key] = d[key]