1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- from django.shortcuts import render
- from django.views.generic import ListView, CreateView, DetailView, UpdateView
- from django.contrib.auth.mixins import LoginRequiredMixin
- from django.contrib.auth.mixins import PermissionRequiredMixin
- from .models import Service, ServiceType, IPResource
- class ServiceMixin(PermissionRequiredMixin):
- model = Service
- permission_required = 'services.change_service'
- class ServiceList(ServiceMixin, ListView):
- pass
- class ServiceDetail(LoginRequiredMixin, DetailView):
- def get_queryset(self):
- if self.request.user.is_superuser:
- return Service.objects.all()
- else:
- return Service.objects.filter(adhesion__pk__in=self.request.user.profile.adhesions.values_list('pk')) \
- .order_by('-created')
- class ServiceUpdate(ServiceMixin, UpdateView):
- fields = ['label', 'notes', 'active']
- class ServiceTypeMixin(PermissionRequiredMixin):
- model = ServiceType
- permission_required = 'services.change_servicetype'
- class ServiceTypeList(ServiceTypeMixin, ListView):
- pass
- class ServiceTypeCreate(ServiceTypeMixin, CreateView):
- pass
- class ServiceTypeDetail(ServiceTypeMixin, DetailView):
- pass
- class ServiceTypeUpdate(ServiceTypeMixin, UpdateView):
- pass
- class IPResourceMixin(PermissionRequiredMixin):
- model = IPResource
- permission_required = 'services.change_ipresource'
- class IPResourceList(IPResourceMixin, ListView):
- pass
- class IPResourceDetail(IPResourceMixin, DetailView):
- pass
|