Skip to content
This repository has been archived by the owner on May 25, 2022. It is now read-only.

View Single Enquiry and Create Enquiry #660

Open
wants to merge 10 commits into
base: master
Choose a base branch
from
Prev Previous commit
Next Next commit
[#1877] [Ben] Modified view single enquiry to use tabs
benchoi committed Apr 30, 2014

Verified

This commit was signed with the committer’s verified signature.
urdarinda Jatin Rungta
commit f242ea14447b1e5cb8c91fde218f72dddbfbb02b
39 changes: 24 additions & 15 deletions app/controllers/enquiries_controller.rb
Original file line number Diff line number Diff line change
@@ -100,27 +100,36 @@ def paginated_collection instances, total_rows

def setup_fields!
@form_sections = get_form_sections
field_hash_list = @form_sections.collect{ |section| section["fields"] }.flatten
@fields = field_hash_list.collect do |field|

field["display_name"].each do |lang, str|
field["display_name_#{lang}"] = str
@fields = @form_sections.collect{ |section| section["fields"] }.flatten
end

def get_form_sections
JSON.parse(File.read(Rails.root.join("config", "enquiry_form_sections.json").to_s)).collect do |form_section|
form_section["fields"].each do |field|
field["display_name"].each do |lang, str|
field["display_name_#{lang}"] = str
end
field.delete("display_name")

if field.has_key? "option_strings_text"
field["option_strings_text"].each do |lang, arr|
field["option_strings_text_#{lang}"] = arr.join("\n")
end
field.delete("option_strings_text")
end

Field.new(field)
end
field.delete("display_name")

if field.has_key? "option_strings_text"
field["option_strings_text"].each do |lang, arr|
field["option_strings_text_#{lang}"] = arr.join("\n")
["name", "help_text", "description"].each do |property|
form_section[property].each do |lang, str|
form_section["#{property}_#{lang}"] = str
end
field.delete("option_strings_text")
form_section.delete(property)
end

Field.new(field)
FormSection.new(form_section)
end
end

def get_form_sections
JSON.parse(File.read(Rails.root.join("config", "enquiry_form_sections.json").to_s))
end

end
15 changes: 15 additions & 0 deletions app/views/enquiries/_form_section_info.html.erb
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
<h2><%= t(form_section.unique_id,:default => form_section.name) %></h2>
<div class="clearfix"></div>

<div class="form_info">
<% if form_section.description.present? %>
<div class="form-section-description">
<%= form_section.description %>
</div>
<% end %>
<% if form_section.help_text.present? %>
<div class="form-section-help-text">
<%= form_section.help_text %>
</div>
<% end %>
</div>
13 changes: 13 additions & 0 deletions app/views/enquiries/_show_form_section.html.erb
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<% @form_sections.each do |section| %>

<fieldset id='tab_<%= section.section_name.underscore %>' class='<%= section.section_name %> tab '>
<div class="clearfix"></div>

<%= render :partial => "form_section_info", :locals => {:form_section => section} %>

<% (section.fields.select{|field| field.visible?}).each do |field| %>
<%= render :partial => "field_display_#{field.display_type}", :locals=>{:field => field, :enquiry=>@enquiry} %>
<% end %>

</fieldset>
<% end %>
13 changes: 13 additions & 0 deletions app/views/enquiries/_tabs.html.erb
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<ul class="tab-handles">
<% is_first_tab = true %>
<% tabs.each do |form_section| %>
<% if is_first_tab %>
<li class="current">
<% else %>
<li>
<% end %>
<a href="#tab_<%= form_section.section_name %>"><%= t(form_section.unique_id, :default => form_section.name) %></a>
</li>
<% is_first_tab = false %>
<% end %>
</ul>
10 changes: 7 additions & 3 deletions app/views/enquiries/show.html.erb
Original file line number Diff line number Diff line change
@@ -10,10 +10,14 @@
<% end %>

<div class="page-content-new">

<div class="side-tab">
<%= render :partial => "tabs", :object => @form_sections %>
</div>

<div class="side-tab-content">
<div class="clearfix"></div>
<% (@fields.select{|field| field.visible?}).each do |field| %>
<%= render :partial => "field_display_#{field.display_type}", :locals=>{:field => field, :enquiry=>@enquiry} %>
<% end %>
<%= render :partial => "show_form_section" %>
</div>

</div>
1,832 changes: 953 additions & 879 deletions config/enquiry_form_sections.json

Large diffs are not rendered by default.