shows valuator description in admin edit form

This commit is contained in:
Juanjo Bazán
2016-03-18 19:44:18 +01:00
parent b8dea9cd2a
commit f4010bc77d
4 changed files with 30 additions and 1 deletions

View File

@@ -0,0 +1,7 @@
module ValuatorsHelper
def valuator_label(valuator)
truncate([valuator.name, valuator.email, valuator.description].compact.join(' - '), length: 100)
end
end

View File

@@ -6,4 +6,8 @@ class Valuator < ActiveRecord::Base
has_many :spending_proposals, through: :valuation_assignments
validates :user_id, presence: true, uniqueness: true
def description_or_email
description.present? ? description : email
end
end

View File

@@ -32,7 +32,7 @@
<%= f.label :valuator_ids, t("admin.spending_proposals.edit.assigned_valuators") %>
<%= f.collection_check_boxes :valuator_ids, @valuators, :id, :email do |b| %>
<%= b.label(title: [b.object.name, b.object.description].compact.join(' : ')) { b.check_box + b.text} %>
<%= b.label(title: valuator_label(b.object)) { b.check_box + truncate(b.object.description_or_email, length: 60) } %>
<% end %>
<p class="clear">

View File

@@ -0,0 +1,18 @@
require 'rails_helper'
describe Valuator do
describe "#description_or_email" do
it "should return description if present" do
valuator = create(:valuator, description: "Urbanism manager")
expect(valuator.description_or_email).to eq("Urbanism manager")
end
it "should return email if not description present" do
valuator = create(:valuator)
expect(valuator.description_or_email).to eq(valuator.email)
end
end
end