Add new and create actions

This commit is contained in:
Senén Rodero Rodríguez
2019-05-08 18:55:31 +02:00
committed by Javi Martín
parent f071ca6cb5
commit fd7cc624db
11 changed files with 131 additions and 0 deletions

View File

@@ -24,6 +24,7 @@
// 22. Images // 22. Images
// 23. Maps // 23. Maps
// 24. Homepage // 24. Homepage
// 25. LocalCensusRecords
// //
// 01. Global styles // 01. Global styles
@@ -2929,3 +2930,18 @@ table {
} }
} }
} }
// 25. Local Census Records
// ------------------------
.local-census-record-new,
.local-census-record-edit {
.date-of-birth {
select {
float: left;
width: 30%;
margin-right: $line-height / 4;
}
}
}

View File

@@ -5,4 +5,21 @@ class Admin::LocalCensusRecordsController < Admin::BaseController
@local_census_records = @local_census_records.search(params[:search]) @local_census_records = @local_census_records.search(params[:search])
@local_census_records = @local_census_records.page(params[:page]) @local_census_records = @local_census_records.page(params[:page])
end end
def create
@local_census_record = LocalCensusRecord.new(local_census_record_params)
if @local_census_record.save
redirect_to admin_local_census_records_path,
notice: t("admin.local_census_records.create.notice")
else
render :new
end
end
private
def local_census_record_params
attributes = [:document_type, :document_number, :date_of_birth, :postal_code]
params.require(:local_census_record).permit(*attributes)
end
end end

View File

@@ -0,0 +1,37 @@
<%= form_for [:admin, @local_census_record] do |f| %>
<%= render "shared/errors", resource: @local_census_record %>
<div class="row">
<div class="small-12">
<%= f.text_field :document_type %>
</div>
</div>
<div class="row">
<div class="small-12">
<%= f.text_field :document_number %>
</div>
</div>
<div class="row">
<div class="date-of-birth small-12">
<%= f.label :date_of_birth, t("admin.local_census_records.form.date_of_birth") %>
<div class="clear">
<%= f.date_select :date_of_birth,
prompt: true,
start_year: 1900, end_year: minimum_required_age.years.ago.year,
label: false %>
</div>
</div>
</div>
<div class="row">
<div class="small-12">
<%= f.text_field :postal_code %>
</div>
</div>
<div class="small-12 medium-4 large-2 margin-top">
<%= f.submit(class: "button success expanded", value: t("shared.save")) %>
</div>
<% end %>

View File

@@ -0,0 +1,10 @@
<div class="local-census-record-new">
<div class="small-12 column">
<%= back_link_to admin_local_census_records_path %>
<h1><%= t("admin.local_census_records.new.creating") %></h1>
<%= render "form" %>
</div>
</div>

View File

@@ -125,6 +125,9 @@ en:
link: link:
one: Link one: Link
other: Links other: Links
local_census_record:
one: Local census record
other: Local census records
attributes: attributes:
budget: budget:
name: "Name" name: "Name"
@@ -371,6 +374,11 @@ en:
valuator_group_id: Valuator group valuator_group_id: Valuator group
can_comment: Can create comments can_comment: Can create comments
can_edit_dossier: Can edit dossiers can_edit_dossier: Can edit dossiers
local_census_record:
document_type: Document type
document_number: Document number
date_of_birth: Date of birth
postal_code: Postal code
errors: errors:
models: models:
user: user:

View File

@@ -1676,6 +1676,8 @@ en:
search: search:
placeholder: Search by document number placeholder: Search by document number
search: Search search: Search
form:
date_of_birth: Date of birth
new: new:
creating: Creating new local census record creating: Creating new local census record
create: create:

View File

@@ -197,6 +197,7 @@ en:
document: Document document: Document
topic: Topic topic: Topic
image: Image image: Image
local_census_record: Local Census Record
geozones: geozones:
none: All city none: All city
layouts: layouts:

View File

@@ -125,6 +125,9 @@ es:
link: link:
one: Enlace one: Enlace
other: Enlaces other: Enlaces
local_census_record:
one: Registro del censo local
other: Registros del censo local
attributes: attributes:
administrator: administrator:
description: Descripción description: Descripción
@@ -373,6 +376,11 @@ es:
valuator_group_id: Grupo de evaluación valuator_group_id: Grupo de evaluación
can_comment: Puede comentar can_comment: Puede comentar
can_edit_dossier: Puede editar informes can_edit_dossier: Puede editar informes
local_census_record:
document_type: Tipo de documento
document_number: Número de documento
date_of_birth: Fecha de nacimiento
postal_code: Código postal
errors: errors:
models: models:
user: user:

View File

@@ -1674,6 +1674,8 @@ es:
search: search:
placeholder: Búsqueda por número de documento placeholder: Búsqueda por número de documento
search: Buscar search: Buscar
form:
date_of_birth: Fecha de nacimiento
new: new:
creating: Creando nuevo registro de censo local creating: Creando nuevo registro de censo local
create: create:

View File

@@ -197,6 +197,7 @@ es:
document: el documento document: el documento
topic: Tema topic: Tema
image: Imagen image: Imagen
local_census_record: el registro del censo local
geozones: geozones:
none: Toda la ciudad none: Toda la ciudad
layouts: layouts:

View File

@@ -72,4 +72,33 @@ feature "Admin local census records" do
end end
end end
end end
context "Create" do
scenario "Should show validation errors" do
visit new_admin_local_census_record_path
click_on "Save"
expect(page).to have_content "4 errors prevented this Local Census Record from being saved."
expect(page).to have_content "can't be blank", count: 4
end
scenario "Should show successful notice after create valid record" do
visit new_admin_local_census_record_path
fill_in :local_census_record_document_type, with: "DNI"
fill_in :local_census_record_document_number, with: "#DOCUMENT"
select "1982" , from: :local_census_record_date_of_birth_1i
select "July" , from: :local_census_record_date_of_birth_2i
select "7" , from: :local_census_record_date_of_birth_3i
fill_in :local_census_record_postal_code, with: "07003"
click_on "Save"
expect(page).to have_content "New local census record created successfully!"
expect(page).to have_content "DNI"
expect(page).to have_content "#DOCUMENT"
expect(page).to have_content "1982-07-07"
expect(page).to have_content "07003"
end
end
end end