Merge pull request #1287 from alphagov/error-on-row

Error on row
This commit is contained in:
Chris Hill-Scott
2017-05-24 10:13:46 +01:00
committed by GitHub
4 changed files with 21 additions and 6 deletions

View File

@@ -74,6 +74,12 @@
}
&-invisible-error {
border-left: 5px solid transparent;
padding-left: 7px;
display: block;
}
&-status {
&-default {
@@ -123,6 +129,7 @@
}
&-index {
@include bold-16;
width: 15px;
}
@@ -132,6 +139,10 @@
}
.table-font-xsmall td.table-field-index { // overrides GOV.UK Elements
@include bold-16;
}
.table-field-headings,
.table-field-headings-visible {

View File

@@ -73,9 +73,9 @@
</th>
{%- endmacro %}
{% macro index_field(text) -%}
{% macro index_field(text=None) -%}
<td class="table-field-index">
<span>{{ text }}</span>
{{ text if text != None else caller() }}
</td>
{%- endmacro %}

View File

@@ -190,14 +190,18 @@
caption=original_file_name,
caption_visible=False,
field_headings=[
'<span class="visually-hidden">Row in file</span><span aria-hidden="true">1</span>'|safe
'<span class="visually-hidden">Row in file</span><span aria-hidden="true" class="{}">1</span>'.format("table-field-invisible-error" if errors else "")|safe
] + recipients.column_headers
) %}
{{ index_field(item.index + 2) }}
{% call index_field() %}
<span class="{% if item.index in recipients.rows_with_errors %}table-field-error{% endif %}">
{{ item.index + 2 }}
</span>
{% endcall %}
{% for column in recipients.column_headers %}
{% if item['columns'][column].error and not recipients.missing_column_headers %}
{% call field() %}
<span class="table-field-error">
<span>
<span class="table-field-error-label">{{ item['columns'][column].error }}</span>
{{ item['columns'][column].data if item['columns'][column].data != None }}
</span>

View File

@@ -255,7 +255,7 @@ def test_upload_valid_csv_shows_file_contents(
assert response.status_code == 200
page = BeautifulSoup(response.data.decode('utf-8'), 'html.parser')
for index, cell in enumerate([
'<td class="table-field-index"> <span>2</span> </td>',
'<td class="table-field-index"> <span class=""> 2 </span> </td>',
'<td class="table-field-center-aligned "> <div class=""> 07700900986 </div> </td>',
'<td class="table-field-center-aligned "> <div class=""> Jo </div> </td>',
(