Nicolae Claudius
13 years ago
11 changed files with 121 additions and 14 deletions
@ -0,0 +1,17 @@ |
|||||||
|
<%# diferentiate create/update subform columns %> |
||||||
|
|
||||||
|
<thead> |
||||||
|
<tr> |
||||||
|
<% |
||||||
|
readonly = (@record.readonly? or not @record.authorized_for?(:crud_type => :update)) |
||||||
|
crud_type = @record.new_record? ? :create : (readonly ? :read : :update) |
||||||
|
config = active_scaffold_config_for(record.class) |
||||||
|
columns = @record.new_record? ? config.create.columns : config.update.columns |
||||||
|
columns.each :for => record.class, :crud_type => crud_type, :flatten => true do |column| |
||||||
|
hidden = column_renders_as(column) == :hidden |
||||||
|
next unless in_subform?(column, parent_record) |
||||||
|
-%> |
||||||
|
<th class="<%= "#{'required' if column.required?} #{'hidden' if hidden}" %>"><label><%= column.label unless hidden %></label></th> |
||||||
|
<% end -%> |
||||||
|
</tr> |
||||||
|
</thead> |
@ -0,0 +1,41 @@ |
|||||||
|
<%# diferentiate create/update subform columns %> |
||||||
|
|
||||||
|
<% |
||||||
|
record_column = column |
||||||
|
readonly = (@record.readonly? or not @record.authorized_for?(:crud_type => :update)) |
||||||
|
crud_type = @record.new_record? ? :create : (readonly ? :read : :update) |
||||||
|
show_actions = false |
||||||
|
config = active_scaffold_config_for(@record.class) |
||||||
|
options = active_scaffold_input_options(config.columns[@record.class.primary_key], scope) |
||||||
|
tr_id = "association-#{options[:id]}" |
||||||
|
%> |
||||||
|
<tr id="<%= tr_id %>" class="association-record <%= 'association-record-new' if @record.new_record? -%> <%= 'locked' if locked -%>"> |
||||||
|
<% columns = @record.new_record? ? config.create.columns : config.update.columns %> |
||||||
|
<% columns.each :for => @record.class, :crud_type => crud_type, :flatten => true do |column| %> |
||||||
|
<% |
||||||
|
next unless in_subform?(column, parent_record) |
||||||
|
show_actions = true |
||||||
|
column = column.clone |
||||||
|
column.form_ui ||= :select if column.association |
||||||
|
-%> |
||||||
|
<td<%= ' class="hidden"'.html_safe if column_renders_as(column) == :hidden %>> |
||||||
|
<% unless readonly and not @record.new_record? or not @record.authorized_for?(:crud_type => crud_type, :column => column.name) -%> |
||||||
|
<%= render :partial => form_partial_for_column(column), :locals => { :column => column, :scope => scope } -%> |
||||||
|
<% else -%> |
||||||
|
<p><%= get_column_value(@record, column) -%></p> |
||||||
|
<% end -%> |
||||||
|
</td> |
||||||
|
<% end -%> |
||||||
|
<% if show_actions -%> |
||||||
|
<td class="actions"> |
||||||
|
<% if record_column.plural_association? and (@record.authorized_for?(:crud_type => :delete) or not [:destroy, :delete_all].include?(record_column.association.options[:dependent])) %> |
||||||
|
<% destroy_id = "#{options[:id]}-destroy" %> |
||||||
|
<%= link_to as_(:remove), '#', :class => 'destroy', :id => destroy_id , :onclick => "ActiveScaffold.delete_subform_record(\"#{tr_id}\"); return false;", :style=> "display: none;" %> |
||||||
|
<%= javascript_tag("ActiveScaffold.show('#{destroy_id}');") if !locked %> |
||||||
|
<% end %> |
||||||
|
<% unless @record.new_record? %> |
||||||
|
<input type="hidden" name="<%= options[:name] -%>" id="<%= options[:id] -%>" value="<%= @record.id -%>" /> |
||||||
|
<% end -%> |
||||||
|
</td> |
||||||
|
<% end -%> |
||||||
|
</tr> |
Loading…
Reference in new issue