personal_plugin_generator/app/views/admin/personal_plugin_fields/_render_fields_check_table....

72 lines
3.9 KiB
Plaintext

<div id="<%= "#{root_name}_#{page_name}" %>">
<% object = f.object
%>
<h5><%=thead_field(page_name)%></h5>
<button type="button" class="select_all btn"><%=t("select_all")%></button>
<button type="button" class="de_select_all btn"><%=t("de_select_all")%></button>
<table class="table table-bordered" id="<%="#{root_name}_#{page_name}"%>">
<thead>
<tr>
<% ths = [] %>
<% ii = -1 %>
<% object.primary_modal_fields.each do |field_value| %>
<% next if (!access_field_types.include?(field_value[:field_type]) rescue false) %>
<% ths << "<th data-index=\"#{ii+=1}\">#{field_value[:translation_name][I18n.locale] rescue ""}-#{field_value[:field_name]}</th>" %>
<% end %>
<% if !defined?(access_field_types) %>
<% f.object.related_modal_name.each_with_index do |related_modal_name,i| %>
<% field_values = f.object.related_modal_fields[i].to_a %>
<% field_values.each do |field_value| %>
<% ths << "<th data-index=\"#{ii+=1}\">#{related_modal_name}-#{field_value[:translation_name][I18n.locale] rescue ""}-#{field_value[:field_name]}</th>" %>
<% end %>
<% end %>
<% author_name_translation = @personal_plugin_field.author_name_translations[locale] rescue ""
author_name_translation = I18n.t("personal_plugins.author") if author_name_translation.blank? %>
<% ths << "<th data-index=\"#{ii+=1}\">#{author_name_translation}</th>" %>
<% end %>
<% fields_order = (0...ths.count).to_a
if (object.fields_order["#{root_name}_#{page_name}"].present? rescue false)
object.fields_order["#{root_name}_#{page_name}"].to_a.each_with_index do |order,i|
fields_order[i] = order.to_i
end
end
%>
<% ths = ths.sort_by.with_index{|th,i| fields_order[i]}%>
<% ths.each do |th| %>
<%= th.html_safe %>
<% end %>
</tr>
</thead>
<tbody>
<tr>
<% tds = [] %>
<%= f.fields_for root_name do |f| %>
<%= f.fields_for page_name do |f| %>
<% object.primary_modal_fields.each do |field_value| %>
<% next if (!access_field_types.include?(field_value[:field_type]) rescue false) %>
<% tds << check_box_tag("#{f.object_name}[]", field_value[:field_name] , (object.send(root_name)[page_name].include?(field_value[:field_name]) rescue false),:id=>nil) %>
<% end %>
<% if !defined?(access_field_types) %>
<% object.related_modal_name.each_with_index do |related_modal_name,i| %>
<% field_values = object.related_modal_fields[i].to_a %>
<% field_values.each do |field_value| %>
<% tds << check_box_tag("#{f.object_name}[]", "#{related_modal_name+'.'+field_value[:field_name]}" , (object.send(root_name)[page_name].include?(related_modal_name+'.'+field_value[:field_name]) rescue false),:id=>nil) %>
<% end %>
<% end %>
<% tds << check_box_tag("#{f.object_name}[]", "member_profile" , (object.send(root_name)[page_name].include?("member_profile") rescue false),:id=>nil) %>
<% end %>
<% end %>
<% end %>
<% tds = tds.sort_by.with_index{|td,i| fields_order[i]}%>
<% tds.each do |td| %>
<td><%= td.html_safe %></td>
<% end %>
</tr>
<tr>
<% fields_order.each do |order| %>
<%= hidden_field_tag "#{f.object_name}[fields_order][#{root_name}_#{page_name}][]",order,:id=>nil %>
<% end %>
</tr>
</tbody>
</table>
</div>