Skip to content
Snippets Groups Projects
Commit d911271a authored by Todd Dembrey's avatar Todd Dembrey
Browse files

GH-957: tidy up how we render the icons into the forms

parent 5c6c2cb7
No related branches found
No related tags found
No related merge requests found
...@@ -83,7 +83,8 @@ class UpdateReviewersForm(forms.ModelForm): ...@@ -83,7 +83,8 @@ class UpdateReviewersForm(forms.ModelForm):
self.fields[field_name] = forms.ModelChoiceField( self.fields[field_name] = forms.ModelChoiceField(
queryset=staff_reviewers, queryset=staff_reviewers,
widget=Select2IconWidget(attrs={ widget=Select2IconWidget(attrs={
'data-placeholder': 'Select a reviewer', 'role': role}), 'data-placeholder': 'Select a reviewer', 'icon': role.icon
}),
required=False, required=False,
label=f'{role.name} Reviewer', label=f'{role.name} Reviewer',
) )
......
...@@ -2,23 +2,7 @@ ...@@ -2,23 +2,7 @@
<form class="form {{extra_classes}}" method="post" id="{{ form.name }}"> <form class="form {{extra_classes}}" method="post" id="{{ form.name }}">
{% csrf_token %} {% csrf_token %}
<div class="form__item"> <div class="form__item">
{{ form.non_field_errors }} {{ form }}
{% for field in form %}
{{ field.errors }}
{# TODO: Add styles around icon later #}
{% if field.field.widget.attrs.role and field.field.widget.attrs.role.icon %}
{% image field.field.widget.attrs.role.icon max-20x20 %}
{% endif %}
{{ field.label_tag }} {{ field }}
{% if field.help_text %}
{{ field.help_text|safe }}
{% endif %}
{% endfor %}
</div> </div>
<input class="button button--primary button--top-space" id="{{ form.name }}-submit" name="{{ form_prefix }}{{ form.name }}" type="submit" form="{{ form.name }}" value="{{ value }}"> <input class="button button--primary button--top-space" id="{{ form.name }}-submit" name="{{ form_prefix }}{{ form.name }}" type="submit" form="{{ form.name }}" value="{{ value }}">
......
{% load wagtailimages_tags %}
{% if widget.attrs.icon %}<div>{% image widget.attrs.icon max-20x20 %}</div>{% endif %}
{% include 'django/forms/widgets/select.html' %}
...@@ -23,8 +23,10 @@ class Select2MultiCheckboxesWidget(Select2MultipleWidget): ...@@ -23,8 +23,10 @@ class Select2MultiCheckboxesWidget(Select2MultipleWidget):
class Select2IconWidget(Select2Widget): class Select2IconWidget(Select2Widget):
template_name = 'funds/widgets/icon_select2.html'
def __init__(self, *args, **kwargs): def __init__(self, *args, **kwargs):
attrs = kwargs.get('attrs', {}) attrs = kwargs.get('attrs', {})
attrs.setdefault('role', '') attrs.setdefault('icon', '')
kwargs['attrs'] = attrs kwargs['attrs'] = attrs
super().__init__(*args, **kwargs) super().__init__(*args, **kwargs)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment