|
|
@@ -4,6 +4,10 @@ from django import template
|
|
|
register = template.Library()
|
|
|
|
|
|
|
|
|
+#
|
|
|
+# Filters
|
|
|
+#
|
|
|
+
|
|
|
@register.filter()
|
|
|
def getfield(form, fieldname):
|
|
|
"""
|
|
|
@@ -12,7 +16,24 @@ def getfield(form, fieldname):
|
|
|
return form[fieldname]
|
|
|
|
|
|
|
|
|
-@register.inclusion_tag('utilities/render_field.html')
|
|
|
+@register.filter(name='widget_type')
|
|
|
+def widget_type(field):
|
|
|
+ """
|
|
|
+ Return the widget type
|
|
|
+ """
|
|
|
+ if hasattr(field, 'widget'):
|
|
|
+ return field.widget.__class__.__name__.lower()
|
|
|
+ elif hasattr(field, 'field'):
|
|
|
+ return field.field.widget.__class__.__name__.lower()
|
|
|
+ else:
|
|
|
+ return None
|
|
|
+
|
|
|
+
|
|
|
+#
|
|
|
+# Inclusion tags
|
|
|
+#
|
|
|
+
|
|
|
+@register.inclusion_tag('form_helpers/render_field.html')
|
|
|
def render_field(field, bulk_nullable=False, label=None):
|
|
|
"""
|
|
|
Render a single form field from template
|
|
|
@@ -24,7 +45,7 @@ def render_field(field, bulk_nullable=False, label=None):
|
|
|
}
|
|
|
|
|
|
|
|
|
-@register.inclusion_tag('utilities/render_custom_fields.html')
|
|
|
+@register.inclusion_tag('form_helpers/render_custom_fields.html')
|
|
|
def render_custom_fields(form):
|
|
|
"""
|
|
|
Render all custom fields in a form
|
|
|
@@ -34,7 +55,7 @@ def render_custom_fields(form):
|
|
|
}
|
|
|
|
|
|
|
|
|
-@register.inclusion_tag('utilities/render_form.html')
|
|
|
+@register.inclusion_tag('form_helpers/render_form.html')
|
|
|
def render_form(form):
|
|
|
"""
|
|
|
Render an entire form from template
|
|
|
@@ -44,20 +65,7 @@ def render_form(form):
|
|
|
}
|
|
|
|
|
|
|
|
|
-@register.filter(name='widget_type')
|
|
|
-def widget_type(field):
|
|
|
- """
|
|
|
- Return the widget type
|
|
|
- """
|
|
|
- if hasattr(field, 'widget'):
|
|
|
- return field.widget.__class__.__name__.lower()
|
|
|
- elif hasattr(field, 'field'):
|
|
|
- return field.field.widget.__class__.__name__.lower()
|
|
|
- else:
|
|
|
- return None
|
|
|
-
|
|
|
-
|
|
|
-@register.inclusion_tag('utilities/render_errors.html')
|
|
|
+@register.inclusion_tag('form_helpers/render_errors.html')
|
|
|
def render_errors(form):
|
|
|
"""
|
|
|
Render form errors, if they exist.
|