diff --git a/app/controllers/admin/property_hires_controller.rb b/app/controllers/admin/property_hires_controller.rb
index 341f6db..c011fc3 100644
--- a/app/controllers/admin/property_hires_controller.rb
+++ b/app/controllers/admin/property_hires_controller.rb
@@ -254,7 +254,24 @@ class Admin::PropertyHiresController < OrbitAdminController
params.require(:property_location).permit!
end
def phire_params
- params.require(:p_hire).permit!
+ p_hire_params = params.require(:p_hire).permit!
+ property = (@phire ? @phire.property : Property.find(params[:p_hire][:property_id]) rescue nil)
+ if(property.enable_notes_selector rescue false)
+ note_texts = ""
+ property.notes_selector.each do |index,sub_hash|
+ name = sub_hash["name"][I18n.locale.to_s]
+ name = sub_hash["name"].values.select{|v| v.present?}.first.to_s if name.blank?
+ values = sub_hash["value"][I18n.locale.to_s]
+ values = sub_hash["value"].values.select{|v| v.present?}.first.to_s if values.blank?
+ value_text = p_hire_params["notes_selector"][index.to_s].to_a.map{|i| values[i.to_i]}.join(",") rescue ""
+ value_text = I18n.t("property_hire.none") if value_text.blank?
+ note_texts += (name + ":"+value_text)
+ note_texts += "
".html_safe
+ end
+ p_hire_params["note_for_hire"] = note_texts
+ p_hire_params.delete("notes_selector")
+ end
+ return p_hire_params
end
def property_params
prop = params.require(:property).permit!
diff --git a/app/views/admin/property_hires/edit_hire.html.erb b/app/views/admin/property_hires/edit_hire.html.erb
index 19e58ef..7f251ff 100644
--- a/app/views/admin/property_hires/edit_hire.html.erb
+++ b/app/views/admin/property_hires/edit_hire.html.erb
@@ -711,7 +711,7 @@ ul.list-unstyled li {
<% custom_field_inputs = {} %>
<% custom_field_type = {"note_for_hire"=>"text_area"} %>
<% if(property.enable_notes_selector rescue false) %>
- <% custom_field_inputs["note_for_hire"] = render(:partial=>"note_for_hire",:locals=>{:f=>f,:property=>property}) %>
+ <% custom_field_inputs["note_for_hire"] = render(:partial=>"property_hires/notes_selector",:locals=>{:f=>f,:property=>property,:label_col=>label_col,:input_col=>input_col,:hire=>hire}) %>
<% end %>
<% fields_name = property.get_all_fields %>
<% has_p_hire_fields = property.p_hire_fields_enabled.count != 0
diff --git a/app/views/property_hires/_notes_selector.html.erb b/app/views/property_hires/_notes_selector.html.erb
index 762e17b..3b2da11 100644
--- a/app/views/property_hires/_notes_selector.html.erb
+++ b/app/views/property_hires/_notes_selector.html.erb
@@ -1,3 +1,12 @@
+<%
+ hire = (defined?(hire) ? hire : nil)
+ if hire
+ notes_selector_value = hire.note_for_hire.split('
').map{|s| s.split(':', 2)}.to_h
+ use_default = false
+ else
+ use_default = true
+ end
+%>
<% property.notes_selector.each do |index,sub_hash| %>
<% name = sub_hash["name"][I18n.locale.to_s] %>
<% name = sub_hash["name"].values.select{|v| v.present?}.first.to_s if name.blank? %>
@@ -7,9 +16,29 @@