|
@@ -21,7 +21,7 @@ from django.urls import reverse, reverse_lazy
|
|
|
from django.http import HttpResponseRedirect, Http404, HttpResponse
|
|
from django.http import HttpResponseRedirect, Http404, HttpResponse
|
|
|
from django.db import models
|
|
from django.db import models
|
|
|
from django.db.models import Count
|
|
from django.db.models import Count
|
|
|
-from django.views import generic
|
|
|
|
|
|
|
+from django.views import generic, View
|
|
|
from django.views.generic import TemplateView
|
|
from django.views.generic import TemplateView
|
|
|
from django.views.generic import FormView
|
|
from django.views.generic import FormView
|
|
|
from django.views.generic.edit import *
|
|
from django.views.generic.edit import *
|
|
@@ -751,6 +751,12 @@ class EnergyProjektCreateView(ProductCreateView):
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+# class ProductUpdateView(LoginRequiredMixin, View):
|
|
|
|
|
+#
|
|
|
|
|
+# def dispatch(request, *args, **kwargs):
|
|
|
|
|
+#
|
|
|
|
|
+# pass
|
|
|
|
|
+
|
|
|
|
|
|
|
|
|
|
|
|
|
class ProductUpdateView(LoginRequiredMixin, UpdateView):
|
|
class ProductUpdateView(LoginRequiredMixin, UpdateView):
|
|
@@ -767,6 +773,7 @@ class ProductUpdateView(LoginRequiredMixin, UpdateView):
|
|
|
context['info_txt'] = Template(config.INFO_TXT).render(Context(context))
|
|
context['info_txt'] = Template(config.INFO_TXT).render(Context(context))
|
|
|
return context
|
|
return context
|
|
|
|
|
|
|
|
|
|
+
|
|
|
def get_object(self, queryset=None):
|
|
def get_object(self, queryset=None):
|
|
|
obj = super().get_object()
|
|
obj = super().get_object()
|
|
|
if ( obj.user_can_manage(self.request.user) ):
|
|
if ( obj.user_can_manage(self.request.user) ):
|
|
@@ -794,6 +801,36 @@ class ProductUpdateView(LoginRequiredMixin, UpdateView):
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+class ProductGenericUpdateView(ProductUpdateView):
|
|
|
|
|
+
|
|
|
|
|
+ model = Product
|
|
|
|
|
+ form_class = ProductForm
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ def dispatch(self, request, *args, **kwargs):
|
|
|
|
|
+
|
|
|
|
|
+ if self.kwargs['type'] == 'BASE':
|
|
|
|
|
+ super().dispatch(request, *args, **kwargs)
|
|
|
|
|
+ elif self.kwargs['type'] == 'WOHN':
|
|
|
|
|
+ self.model = Wohnprojekt
|
|
|
|
|
+ self.form_class = WohnprojektForm
|
|
|
|
|
+ return super().dispatch(request, *args, **kwargs)
|
|
|
|
|
+ elif self.kwargs['type'] == 'MOBI':
|
|
|
|
|
+ self.model = MobilitaetsProjekt
|
|
|
|
|
+ self.form_class = MobilitaetsForm
|
|
|
|
|
+ return super().dispatch(request, *args, **kwargs)
|
|
|
|
|
+ elif self.kwargs['type'] == 'ERNA':
|
|
|
|
|
+ self.model = ErnaehrungsProjekt
|
|
|
|
|
+ self.form_class = ErnaehrungsForm
|
|
|
|
|
+ return super().dispatch(request, *args, **kwargs)
|
|
|
|
|
+ elif self.kwargs['type'] == 'ENER':
|
|
|
|
|
+ self.model = EnergyProjekt
|
|
|
|
|
+ self.form_class = EnergyForm
|
|
|
|
|
+ return super().dispatch(request, *args, **kwargs)
|
|
|
|
|
+
|
|
|
|
|
+ raise Http404('Keine Objekte gefunden' )
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
class WohnProjektUpdateView(ProductUpdateView):
|
|
class WohnProjektUpdateView(ProductUpdateView):
|
|
|
model = Wohnprojekt
|
|
model = Wohnprojekt
|
|
|
form_class = WohnprojektForm
|
|
form_class = WohnprojektForm
|