diff --git a/notes/mixins.py b/notes/mixins.py index d669ba7..4730c0b 100644 --- a/notes/mixins.py +++ b/notes/mixins.py @@ -31,6 +31,7 @@ class NoteFormMixin(FormMixin): form = self.get_form(prefix) if form.is_valid(): form.save() + # TODO: Add message to notify which form was saved return self.form_valid(form) return self.form_invalid(form) diff --git a/suivi/search.py b/suivi/search.py new file mode 100644 index 0000000..1ad6b71 --- /dev/null +++ b/suivi/search.py @@ -0,0 +1,48 @@ +from django.views.generic.edit import FormMixin, ProcessFormView +from django import forms + +from django.shortcuts import redirect + +class SearchForm(forms.Form): + + search_text = forms.CharField(64, widget=forms.widgets.TextInput(attrs={'placeholder':"NotYetImplemented"})) + + def __init__(self, *args, **kwargs): + kwargs['prefix'] = 'search' + return super().__init__(*args, **kwargs) + + def clean(self): + super().clean() + #Do search and store result + self.result = None + + def is_valid(self): + valid = super().is_valid() + if not self.result: + return False + return valid + +class SearchFormMixin(FormMixin): + """ Add 'search_form' to context. + Made compatible with NoteFormMixin using 'prefix' argument in get_form + """ + def get_form(self, prefix): + if prefix == 'search': + return SearchForm() + return super().get_form(prefix) + + def get_context_data(self, **kwargs): + context = super().get_context_data(**kwargs) + context['search_form'] = self.get_form('search') + return context + +""" What to do ? + +- We shall use 'django-watson', need to install it + +- Create view to parse search_form data then redirect +- Link form in menu_sujets to this view +""" + +class SearchFormProcessView(ProcessFormView): + pass diff --git a/suivi/templates/suivi/menu_sujets.html b/suivi/templates/suivi/menu_sujets.html index c758dd0..5eda2ae 100644 --- a/suivi/templates/suivi/menu_sujets.html +++ b/suivi/templates/suivi/menu_sujets.html @@ -1,9 +1,14 @@ -{% load bootstrap3 %} -
  • +{% load bootstrap3 %}
  • Liste des sujets {% bootstrap_icon "list" %}
  • -{% if user.is_superuser %}{% load bootstrap3 %} + {% if search_form %} + + {% endif %} + {% if user.is_superuser %}