added SignalementForm, updated NoteFormMixin, various fixes
This commit is contained in:
@@ -2,7 +2,6 @@ from .models import Note
|
||||
from utilisateurs.models import Professionnel
|
||||
|
||||
from django import forms
|
||||
from django.utils import timezone
|
||||
from django_select2.forms import Select2Widget
|
||||
from django.forms import Textarea
|
||||
|
||||
@@ -33,7 +32,8 @@ class SimpleNoteForm(forms.ModelForm):
|
||||
|
||||
class UserNoteForm(NoteForm):
|
||||
""" Form that sets 'created_by' with current user id.
|
||||
This requires 'request' object at initialization
|
||||
|
||||
It requires 'request' object at initialization
|
||||
"""
|
||||
class Meta(NoteForm.Meta):
|
||||
fields = ['sujet', 'text', 'created_date', 'created_time']
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
from django.views.generic.edit import FormMixin, ProcessFormView
|
||||
from django.shortcuts import redirect
|
||||
from django.views.generic.edit import FormMixin
|
||||
|
||||
from .forms import *
|
||||
|
||||
@@ -7,24 +6,37 @@ class NoteFormMixin(FormMixin):
|
||||
|
||||
form_class = None
|
||||
|
||||
def get_form(self):
|
||||
forms = None
|
||||
|
||||
def get_form(self, prefix, form_class=None):
|
||||
# Should add test to ensure this instance class is
|
||||
# has SingleObjectMixin set with Sujet model ??
|
||||
kwargs = self.get_form_kwargs()
|
||||
return self.form_class(
|
||||
kwargs['prefix'] = prefix
|
||||
if not form_class:
|
||||
form_class = self.forms[prefix]
|
||||
try:
|
||||
form = form_class(
|
||||
**kwargs
|
||||
)
|
||||
except TypeError: #Forms that requires request
|
||||
form = form_class(
|
||||
self.request,
|
||||
**kwargs
|
||||
)
|
||||
return form
|
||||
|
||||
def post(self, request, **kwargs):
|
||||
form = self.get_form()
|
||||
if form.is_valid():
|
||||
form.save()
|
||||
return self.form_valid(form)
|
||||
for prefix in self.forms.keys():
|
||||
form = self.get_form(prefix)
|
||||
if form.is_valid():
|
||||
form.save()
|
||||
return self.form_valid(form)
|
||||
return self.form_invalid(form)
|
||||
|
||||
def get_context_data(self, **kwargs):
|
||||
context = super().get_context_data(**kwargs)
|
||||
context['note_form'] = self.get_form()
|
||||
context = super(FormMixin, self).get_context_data(**kwargs)
|
||||
for prefix in self.forms.keys():
|
||||
context['%s_form' % prefix] = self.get_form(prefix)
|
||||
return context
|
||||
|
||||
|
||||
@@ -49,11 +49,11 @@ class Note(models.Model):
|
||||
|
||||
def note_date(self):
|
||||
""" Default 'created_date' value. Child may override this method. """
|
||||
return timezone.now().date()
|
||||
return timezone.localtime(timezone.now()).date()
|
||||
|
||||
def note_time(self):
|
||||
""" Default 'created_time' value. Child may override this method. """
|
||||
return timezone.now().time()
|
||||
return timezone.localtime(timezone.now()).time()
|
||||
|
||||
def note_bg_colors(self):
|
||||
""" Returns (header background color, labels color).
|
||||
|
||||
Reference in New Issue
Block a user