Clean code and workaround mongoid embedded with carrierwave

This commit is contained in:
chris2tof committed 2011-09-08 18:12:04 +08:00
1 parent a1391493a3
commit a571d1dcff
7 files changed
+55 -66

No files matched your search

+12 -22
View File
@@ -1,34 +1,24 @@
<% item_destroy ||= false %>
<% item_snapshot ||= false %>
<% item_editable ||= false %>
<% li_class = ''%>
<% fieldname_p = fieldname.pluralize %>
<%= f.label "fieldname", t('admin.'+fieldname) %>
<%= f.label "field_name", t('admin.' + field_name) %>
<ul>
<% object.send(fieldname_p).each do |t| %>
<% li_class += 'r_destroy ' if item_destroy %>
<% li_class += 'r_snapshot ' if item_snapshot %>
<% li_class += 'r_edit ' if item_editable %>
<li class="<%= li_class %>" <%= "path='#{t.file.url}' filename='#{t.file_filename}'" if (item_snapshot || item_editable) %> >
<% object.send(field_name).each do |t| %>
<li class="<%= classes %>" <%="path='#{t.file.url}' filename='#{t.file_filename}'" %> >
<%= t.file_filename %>
<% if item_destroy %>
<%=fields_for "design["+fieldname_p+"][]",t,:index=>nil do |f| %>
<% if classes.include?('r_destroy') %>
<%= fields_for "design[" + field_name + "][]", t, :index => nil do |f| %>
<%= f.hidden_field :id %>
<%= f.hidden_field :file %>
<%= f.hidden_field :to_destroy %>
<%end%>
<% end %>
<a class="remove_mark" href="#"><%= t('Delete') %></a>
<%end%>
<% if item_editable %>
<% end %>
<% if classes.include?('r_editable') %>
<a class="edit_mark" href="#"><%= t('Edit') %></a>
<% end %>
</li>
<% end %>
</ul>
<p class="new_file">
<%= fields_for "design["+fieldname_p+"][]", object, :index => nil do |f| %>
<%= f.hidden_field :id,{:value=>''} %>
<%= f.file_field :file ,{:class=>"multi_files",:rtype=>rtype}%>
<%= fields_for "design[" + field_name + "][]", object.send(field_name).build, :index => nil do |f| %>
<%= f.file_field :file, :class => "multi_files" %>
</p>
<% end %>
<% end %>
+25 -23
View File
@@ -1,46 +1,48 @@
<%= stylesheet_link_tag "design_temp" %>
<%= javascript_include_tag "design_temp" %>
<% content_for :page_specific_css do %>
<%= stylesheet_link_tag "design_temp" %>
<% end %>
<p>
<%= f.label :title, t('admin.title') %>
<%= f.text_field :title, :class => 'text' %>
<%= f.label :title, t('admin.title') %>
<%= f.text_field :title, :class => 'text' %>
</p>
<p>
<%= f.label :author, t('admin.author') %>
<%= f.text_field :author, :class => 'text' %>
<%= f.label :author, t('admin.author') %>
<%= f.text_field :author, :class => 'text' %>
</p>
<p>
<%= f.label :intro, t('admin.intro') %>
<%= f.text_field :intro, :class => 'text' %>
<%= f.label :intro, t('admin.intro') %>
<%= f.text_field :intro, :class => 'text' %>
</p>
<p>
<%= f.label "layout", t('admin.layout') %>
<% if @design.layout.blank? %>
<%= f.label "layout", t('admin.layout') %>
<% if @design.layout.blank? %>
<%= fields_for 'design[layout]' do |f| %>
<%= f.file_field :file %>
<%= f.file_field :file %>
<%= f.hidden_field :to_save, :value => true %>
<% end %>
<% else%>
<%= File.basename (@design.layout.file.url) %>
<% end %>
<% else %>
<%= File.basename (@design.layout.file.url) %>
<% end %>
</p>
<p>
<%= f.label "default_css", t('admin.default_css') %>
<% if @design.default_css.blank? %>
<%= f.file_field :default_css %>
<% else%>
<%= File.basename (@design.default_css.url) %>
<% end %>
<%= f.label "default_css", t('admin.default_css') %>
<% if @design.default_css.blank? %>
<%= f.file_field :default_css %>
<% else %>
<%= File.basename (@design.default_css.url) %>
<% end %>
</p>
<p>
<%= render :partial => 'design_file' ,:locals => { :fieldname=>"themes",:object=>@design ,:f=>f,:rtype=>'stylesheets',:item_destroy=>true,:item_editable=>true } %>
<%= render :partial => 'design_file', :locals => { :object => @design, :field_name => "themes", :f => f, :classes => "r_destroy, r_editable" } %>
</p>
<p>
<%= render :partial => 'design_file' ,:locals => { :fieldname=>"javascript",:object=>@design ,:f=>f,:rtype=>'javascripts' ,:item_destroy=>true,:item_editable=>true} %>
<%= render :partial => 'design_file', :locals => { :object => @design, :field_name => "javascripts", :f => f, :classes => "r_destroy, r_editable" } %>
</p>
<p>
<%= render :partial => 'design_file' ,:locals => { :fieldname=>"image",:object=>@design ,:f=>f,:rtype=>'images' ,:item_destroy=>true,:item_snapshot=>true} %>
<%= render :partial => 'design_file', :locals => { :object => @design, :field_name => "images", :f => f, :classes => "r_destroy, r_snapshot" } %>
</p>