• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

liqd / adhocracy-plus / 18908688697

29 Oct 2025 12:59PM UTC coverage: 44.622% (-44.5%) from 89.135%
18908688697

Pull #2986

github

web-flow
Merge 1dfde8ee7 into 445e1d498
Pull Request #2986: Draft: Speed up Github Ci Tests

3012 of 6750 relevant lines covered (44.62%)

0.45 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

61.7
/apps/interactiveevents/views.py
1
from django.views import generic
1✔
2
from rules.contrib.views import PermissionRequiredMixin
1✔
3

4
from adhocracy4.dashboard.mixins import DashboardBaseMixin
1✔
5
from adhocracy4.dashboard.mixins import DashboardComponentMixin
1✔
6
from adhocracy4.projects.mixins import DisplayProjectOrModuleMixin
1✔
7
from adhocracy4.projects.mixins import ProjectMixin
1✔
8

9
from . import forms
1✔
10
from . import models
1✔
11

12

13
class InteractiveEventModuleDetail(
1✔
14
    ProjectMixin, generic.TemplateView, DisplayProjectOrModuleMixin
15
):
16
    template_name = "a4_candy_interactive_events/module_detail.html"
1✔
17

18
    def get_context_data(self, **kwargs):
1✔
19
        context = super().get_context_data(**kwargs)
×
20
        context["extra_fields"] = models.ExtraFieldsInteractiveEvent.objects.filter(
×
21
            module=self.module
22
        ).first()
23
        return context
×
24

25

26
class LiveQuestionModuleDetail(
1✔
27
    ProjectMixin, generic.TemplateView, DisplayProjectOrModuleMixin
28
):
29
    template_name = "a4_candy_interactive_events/livequestion_module_detail.html"
1✔
30

31
    def get_context_data(self, **kwargs):
1✔
32
        context = super().get_context_data(**kwargs)
×
33
        context["extra_fields"] = models.ExtraFieldsInteractiveEvent.objects.filter(
×
34
            module=self.module
35
        ).first()
36
        return context
×
37

38

39
class LiveQuestionPresentationListView(
1✔
40
    ProjectMixin, PermissionRequiredMixin, generic.ListView
41
):
42
    model = models.LiveQuestion
1✔
43
    permission_required = "a4_candy_interactive_events.change_livequestion"
1✔
44

45
    def get_permission_object(self):
1✔
46
        return self.module
×
47

48
    def get_template_names(self):
1✔
49
        return ["a4_candy_interactive_events/present_list.html"]
×
50

51
    def get_queryset(self):
1✔
52
        return super().get_queryset().filter(module=self.module)
×
53

54
    def get_full_url(self):
1✔
55
        request = self.request
×
56
        url = self.project.get_absolute_url()
×
57
        full_url = request.build_absolute_uri(url)
×
58
        return full_url
×
59

60

61
class ExtraFieldsDashboardView(
1✔
62
    ProjectMixin, DashboardBaseMixin, DashboardComponentMixin, generic.UpdateView
63
):
64
    model = models.ExtraFieldsInteractiveEvent
1✔
65
    template_name = "a4_candy_interactive_events/extrafields_dashboard_form.html"
1✔
66
    permission_required = "a4projects.change_project"
1✔
67
    form_class = forms.ExtraFieldsForm
1✔
68

69
    def get_permission_object(self):
1✔
70
        return self.project
×
71

72
    def form_valid(self, form):
1✔
73
        form.instance.creator = self.request.user
×
74
        form.instance.module = self.module
×
75
        return super().form_valid(form)
×
76

77
    def get_object(self, queryset=None):
1✔
78
        return models.ExtraFieldsInteractiveEvent.objects.filter(
×
79
            module=self.module
80
        ).first()
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc