From e475273cd33c9e36f3dad3a5219a5f5619feabcd Mon Sep 17 00:00:00 2001 From: Bartuccio Antoine Date: Fri, 5 Jul 2019 12:31:49 +0200 Subject: [PATCH] pedagogy: enhance StarList widget --- pedagogy/forms.py | 20 ++++++++++---- pedagogy/templates/pedagogy/starlist.jinja | 29 ++++++++++++++------- pedagogy/templates/pedagogy/uv_detail.jinja | 22 ++++++++-------- 3 files changed, 45 insertions(+), 26 deletions(-) diff --git a/pedagogy/forms.py b/pedagogy/forms.py index 00984cf7..98a90438 100644 --- a/pedagogy/forms.py +++ b/pedagogy/forms.py @@ -77,6 +77,16 @@ class UVForm(forms.ModelForm): class StarList(forms.NumberInput): template_name = "pedagogy/starlist.jinja" + def __init__(self, nubmer_of_stars=0): + super(StarList, self).__init__(None) + self.number_of_stars = nubmer_of_stars + + def get_context(self, name, value, attrs): + context = super(StarList, self).get_context(name, value, attrs) + context["number_of_stars"] = range(0, self.number_of_stars) + context["translations"] = {"do_not_vote": _("Do not vote")} + return context + class UVCommentForm(forms.ModelForm): """ @@ -99,11 +109,11 @@ class UVCommentForm(forms.ModelForm): "comment": MarkdownInput, "author": forms.HiddenInput, "uv": forms.HiddenInput, - "grade_global": StarList, - "grade_utility": StarList, - "grade_interest": StarList, - "grade_teaching": StarList, - "grade_work_load": StarList, + "grade_global": StarList(5), + "grade_utility": StarList(5), + "grade_interest": StarList(5), + "grade_teaching": StarList(5), + "grade_work_load": StarList(5), } def __init__(self, author_id, uv_id, *args, **kwargs): diff --git a/pedagogy/templates/pedagogy/starlist.jinja b/pedagogy/templates/pedagogy/starlist.jinja index 53dc4290..e8f7db47 100644 --- a/pedagogy/templates/pedagogy/starlist.jinja +++ b/pedagogy/templates/pedagogy/starlist.jinja @@ -1,29 +1,38 @@
- {# #} - {% for i in i|rjust:5 %} + + {% for i in number_of_stars %}