Update help text and add dynamic example text
- Display help text and example text according to
remote census configuration:
Examples with expecte results:
* With remote census without :date_of_birth and :postal_code:
-> "To verify a user, your application needs: Document number"
-> "Required fields for each user must be separated by commas and
each user must be separated by semicolons."
-> "Example: 12345678Z; 87654321Y"
* With remote census with :date_of_birth required:
-> "To verify a user, your application needs: Document number,
Day of birth (dd/mm/yyyy)"
-> "Required fields for each user must be separated by commas and
each user must be separated by semicolons."
-> "Example: 12345678Z, 01/01/1980; 87654321Y, 01/02/1990"
* With remote census with :date_of_birth and :postal_code required:
-> "To verify a user, your application needs: Document number,
Day of birth (dd/mm/yyyy) and Postal Code"
-> "Required fields for each user must be separated by commas and
each user must be separated by semicolons."
-> "Example: 12345678Z, 01/01/1980, 28001; 87654321Y, 01/02/1990, 28002"
This commit is contained in:
@@ -5,4 +5,48 @@ module SignatureSheetsHelper
|
||||
[t("activerecord.models.budget/investment", count: 1), Budget::Investment]]
|
||||
end
|
||||
|
||||
end
|
||||
def required_fields_to_verify_text_help
|
||||
if Setting["feature.remote_census"].present?
|
||||
date_of_birth_and_postal_code_text_help
|
||||
else
|
||||
t("admin.signature_sheets.new.document_numbers_note")
|
||||
end
|
||||
end
|
||||
|
||||
def date_of_birth_and_postal_code_text_help
|
||||
text_help = t("admin.signature_sheets.new.text_help.required_fields_note")
|
||||
|
||||
if Setting.force_presence_date_of_birth?
|
||||
text_help += t("admin.signature_sheets.new.text_help.date_of_birth_note")
|
||||
end
|
||||
|
||||
if Setting.force_presence_postal_code?
|
||||
text_help += t("admin.signature_sheets.new.text_help.postal_code_note")
|
||||
end
|
||||
|
||||
text_help += "<br/>"
|
||||
text_help += t("admin.signature_sheets.new.text_help.required_fields_structure_note")
|
||||
|
||||
return text_help.html_safe
|
||||
end
|
||||
|
||||
def example_text_help
|
||||
text_example = t("admin.signature_sheets.new.text_help.example_text")
|
||||
example_1 = "12345678Z"
|
||||
example_2 = "87654321Y"
|
||||
|
||||
if Setting.force_presence_date_of_birth?
|
||||
example_1 += ", 01/01/1980"
|
||||
example_2 += ", 01/02/1990"
|
||||
end
|
||||
|
||||
if Setting.force_presence_postal_code?
|
||||
example_1 += ", 28001"
|
||||
example_2 += ", 28002"
|
||||
end
|
||||
|
||||
text_example += "#{example_1}; #{example_2}"
|
||||
return text_example
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
@@ -15,7 +15,8 @@
|
||||
</div>
|
||||
|
||||
<%= f.label :required_fields_to_verify %>
|
||||
<p class="help-text" id="required-fields-to-verify-help-text"><%= t("admin.signature_sheets.new.document_numbers_note") %></p>
|
||||
<p class="help-text" id="required-fields-to-verify-help-text"><%= required_fields_to_verify_text_help %></p>
|
||||
<p class="help-text"> <%= example_text_help %></p>
|
||||
<%= f.text_area :required_fields_to_verify, rows: "6", label: false, aria: {describedby: "required-fields-to-verify-help-text"} %>
|
||||
|
||||
<%= f.submit(class: "button", value: t("admin.signature_sheets.new.submit")) %>
|
||||
|
||||
@@ -1402,6 +1402,12 @@ en:
|
||||
title: New signature sheets
|
||||
document_numbers_note: "Write the numbers separated by semicolons (;)"
|
||||
submit: Create signature sheet
|
||||
text_help:
|
||||
required_fields_note: "To verify a user, your application needs: Document number"
|
||||
date_of_birth_note: ", Day of birth (dd/mm/yyyy)"
|
||||
postal_code_note: " and Postal Code"
|
||||
required_fields_structure_note: "Required fields for each user must be separated by commas and each user must be separated by semicolons."
|
||||
example_text: "Example: "
|
||||
show:
|
||||
created_at: Created
|
||||
author: Author
|
||||
|
||||
@@ -1400,6 +1400,12 @@ es:
|
||||
title: Nueva hoja de firmas
|
||||
document_numbers_note: "Introduce los números separados por punto y coma (;)"
|
||||
submit: Crear hoja de firmas
|
||||
text_help:
|
||||
required_fields_note: "Para verificar un usuario, su aplicación necesita: Número de documento"
|
||||
date_of_birth_note: ", Día de nacimiento (dd/mm/yyyy)"
|
||||
postal_code_note: " y Código Postal"
|
||||
required_fields_structure_note: "Los campos requeridos para cada usuario deben ir separados por comas y cada usuario debe ir separado por punto y coma."
|
||||
example_text: "Ejemplo: "
|
||||
show:
|
||||
created_at: Creado
|
||||
author: Autor
|
||||
|
||||
82
spec/helpers/signature_sheets_helper_spec.rb
Normal file
82
spec/helpers/signature_sheets_helper_spec.rb
Normal file
@@ -0,0 +1,82 @@
|
||||
require "rails_helper"
|
||||
|
||||
describe SignatureSheetsHelper do
|
||||
|
||||
describe "#required_fields_to_verify_text_help by default" do
|
||||
|
||||
it "returns text help by default" do
|
||||
text = "Write the numbers separated by semicolons (;)"
|
||||
expect(required_fields_to_verify_text_help).to eq(text)
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
describe "#required_fields_to_verify_text_help with remote_census active" do
|
||||
|
||||
before do
|
||||
Setting["feature.remote_census"] = true
|
||||
end
|
||||
|
||||
after do
|
||||
Setting["feature.remote_census"] = nil
|
||||
end
|
||||
|
||||
it "returns text help when date_of_birth and postal_code are not required" do
|
||||
text_help_1 = "To verify a user, your application needs: Document number"
|
||||
text_help_2 = "Required fields for each user must be separated by commas and each user must be separated by semicolons."
|
||||
text_example = "Example: 12345678Z; 87654321Y"
|
||||
|
||||
expect(required_fields_to_verify_text_help).to include(text_help_1)
|
||||
expect(required_fields_to_verify_text_help).to include(text_help_2)
|
||||
expect(example_text_help).to include(text_example)
|
||||
end
|
||||
|
||||
it "returns text help when date_of_birth is required" do
|
||||
Setting["remote_census.request.date_of_birth"] = "some.value"
|
||||
|
||||
text_help_1 = "To verify a user, your application needs: Document number, Day of birth (dd/mm/yyyy)"
|
||||
text_help_2 = "Required fields for each user must be separated by commas and each user must be separated by semicolons."
|
||||
text_example = "Example: 12345678Z, 01/01/1980; 87654321Y, 01/02/1990"
|
||||
|
||||
expect(required_fields_to_verify_text_help).to include(text_help_1)
|
||||
expect(required_fields_to_verify_text_help).to include(text_help_2)
|
||||
expect(example_text_help).to include(text_example)
|
||||
|
||||
Setting["remote_census.request.date_of_birth"] = nil
|
||||
end
|
||||
|
||||
it "returns text help when postal_code is required" do
|
||||
Setting["remote_census.request.postal_code"] = "some.value"
|
||||
|
||||
text_help_1 = "To verify a user, your application needs: Document number and Postal Code"
|
||||
text_help_2 = "Required fields for each user must be separated by commas and each user must be separated by semicolons."
|
||||
text_example = "Example: 12345678Z, 28001; 87654321Y, 28002"
|
||||
|
||||
expect(required_fields_to_verify_text_help).to include(text_help_1)
|
||||
expect(required_fields_to_verify_text_help).to include(text_help_2)
|
||||
expect(example_text_help).to include(text_example)
|
||||
|
||||
Setting["remote_census.request.postal_code"] = nil
|
||||
end
|
||||
|
||||
it "returns text help when date_of_birth and postal_code are required" do
|
||||
Setting["remote_census.request.date_of_birth"] = "some.value"
|
||||
Setting["remote_census.request.postal_code"] = "some.value"
|
||||
|
||||
text_help_1 = "To verify a user, your application needs: Document number, Day of birth (dd/mm/yyyy) and Postal Code"
|
||||
text_help_2 = "Required fields for each user must be separated by commas and each user must be separated by semicolons."
|
||||
text_example = "Example: 12345678Z, 01/01/1980, 28001; 87654321Y, 01/02/1990, 28002"
|
||||
|
||||
expect(required_fields_to_verify_text_help).to include(text_help_1)
|
||||
expect(required_fields_to_verify_text_help).to include(text_help_2)
|
||||
expect(example_text_help).to include(text_example)
|
||||
|
||||
Setting["remote_census.request.postal_code"] = nil
|
||||
Setting["remote_census.request.postal_code"] = nil
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
|
||||
|
||||
end
|
||||
Reference in New Issue
Block a user