Commit e26e4185 authored by Serge S. Koval's avatar Serge S. Koval

Fixed #259. Do not highlight field if its children have error

parent a0a3a7f4
from flask import g, request from flask import g, request
from wtforms.validators import DataRequired, InputRequired from wtforms.validators import DataRequired, InputRequired
from ._compat import string_types
def set_current_view(view): def set_current_view(view):
g._admin_view = view g._admin_view = view
...@@ -53,3 +55,17 @@ def get_form_data(): ...@@ -53,3 +55,17 @@ def get_form_data():
return formdata return formdata
return None return None
def is_field_error(errors):
"""
Check if wtforms field has direct error.
:param errors:
Errors list.
"""
for e in errors:
if isinstance(e, string_types):
return True
return False
...@@ -76,7 +76,8 @@ ...@@ -76,7 +76,8 @@
{# ---------------------- Forms -------------------------- #} {# ---------------------- Forms -------------------------- #}
{% macro render_field(form, field, set_focus=False, kwargs={}) %} {% macro render_field(form, field, set_focus=False, kwargs={}) %}
<div class="control-group{{ ' error' if field.errors else '' }}"> {% set direct_error = h.is_field_error(field.errors) %}
<div class="control-group{{ ' error' if direct_error else '' }}">
<div class="control-label"> <div class="control-label">
{{ field.label.text }} {{ field.label.text }}
{% if h.is_required_form_field(field) %} {% if h.is_required_form_field(field) %}
...@@ -96,8 +97,8 @@ ...@@ -96,8 +97,8 @@
{% if field.description %} {% if field.description %}
<p class="help-block">{{ field.description }}</p> <p class="help-block">{{ field.description }}</p>
{% endif %} {% endif %}
{% if field.errors %} {% if direct_error %}
<ul class="input-errors"> <ul{% if direct_error %} class="input-errors"{% endif %}>
{% for e in field.errors if e is string %} {% for e in field.errors if e is string %}
<li>{{ e }}</li> <li>{{ e }}</li>
{% endfor %} {% endfor %}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment