diff --git a/app/assets/javascripts/application.js b/app/assets/javascripts/application.js index 7d51ec1a..5a956f60 100644 --- a/app/assets/javascripts/application.js +++ b/app/assets/javascripts/application.js @@ -4,6 +4,7 @@ // // It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the // // the compiled file. // // +// //= require design_temp // //= require jquery // //= require jquery_ujs diff --git a/app/assets/javascripts/design_temp.js b/app/assets/javascripts/design_temp.js new file mode 100644 index 00000000..a24a32ba --- /dev/null +++ b/app/assets/javascripts/design_temp.js @@ -0,0 +1,25 @@ +$(".r_snapshot").hover( + function(){ + $(this).append($("").html('

')); + } + , + function(){ + $(this).find("span:last").remove(); + } + ); + +$('input.multi_files').change(function(){ + $(this).prev("ul").append("
  • "+$(this).val()+"
  • "); + new_node =$(this).clone(); + new_node.css("display","none"); + //new_node.val("asd"); + $(this).parent().append(new_node); + $(this).val(""); +}); + +$('a.remove_mark').live("click",function(){ + $(this).prev("input").value("true"); + $(this).parent().css("text-decoration","line-through") + $(this).remove(); + return false; +}); diff --git a/app/assets/stylesheets/design_temp.css b/app/assets/stylesheets/design_temp.css new file mode 100644 index 00000000..27f87400 --- /dev/null +++ b/app/assets/stylesheets/design_temp.css @@ -0,0 +1,12 @@ +.z-preview * { + width: 100%; + height: 100%; +} +.z-preview { + background: white; + border: solid; + position: absolute; + width: 200px; + float: right; + height: 200px; +} diff --git a/app/controllers/admin/designs_controller.rb b/app/controllers/admin/designs_controller.rb index ba7af6a1..08824525 100644 --- a/app/controllers/admin/designs_controller.rb +++ b/app/controllers/admin/designs_controller.rb @@ -1,6 +1,7 @@ class Admin::DesignsController < ApplicationController layout "admin" + def index @designs = Design.all.entries end diff --git a/app/helpers/design_helper.rb b/app/helpers/design_helper.rb index 6293f668..c55eb2a0 100644 --- a/app/helpers/design_helper.rb +++ b/app/helpers/design_helper.rb @@ -1,2 +1,4 @@ module DesignHelper + + end diff --git a/app/models/design.rb b/app/models/design.rb index c6fdac73..b9e664bd 100644 --- a/app/models/design.rb +++ b/app/models/design.rb @@ -17,7 +17,7 @@ class Design embeds_many :javascripts embeds_many :images - after_save :save_embedded_objects + after_save :procs_embedded_objects def javascripts=(*attrs) self.files = (attrs << 'javascripts') @@ -41,13 +41,16 @@ class Design protected - def save_embedded_objects + def procs_embedded_objects [self.stylesheets, self.javascripts, self.images].each do |objects| objects.each do |object| if object.to_save object.to_save = false object.save end + if object.to_destroy + object.destroy + end end end end diff --git a/app/models/design_file.rb b/app/models/design_file.rb index 9871d74c..07c09e14 100644 --- a/app/models/design_file.rb +++ b/app/models/design_file.rb @@ -4,5 +4,8 @@ class DesignFile mount_uploader :file, AssetUploader field :to_save, :type => Boolean + field :to_destroy, :type => Boolean + + end diff --git a/app/views/admin/designs/._form.html.erb.swp b/app/views/admin/designs/._form.html.erb.swp index aadcc0f1..2dbb06f6 100644 Binary files a/app/views/admin/designs/._form.html.erb.swp and b/app/views/admin/designs/._form.html.erb.swp differ diff --git a/app/views/admin/designs/_form.html.erb b/app/views/admin/designs/_form.html.erb index 19c3c640..9743b9e1 100644 --- a/app/views/admin/designs/_form.html.erb +++ b/app/views/admin/designs/_form.html.erb @@ -1,3 +1,4 @@ +<%= stylesheet_link_tag "design_temp" %>

    <%= f.label :title, t('admin.title') %> <%= f.text_field :title, :class => 'text' %> @@ -24,22 +25,49 @@

    -<%= f.label "stylesheet", t('admin.stylesheet') %> -<%= fields_for "design[stylesheets][]", @design, :index => nil do |f| %> - <%= f.file_field :file %> + <%= f.label "stylesheet", t('admin.stylesheet') %> +

    + <%= fields_for "design[stylesheet][]", @design, :index => nil do |f| %> + <%= f.file_field :file ,{:class=>"multi_files",:rtype=>"stylesheets"}%> + <% end %> +

    + +

    + <%= f.label "javascript", t('admin.javascript') %> +

    + <%= fields_for "design[javascripts][]", @design, :index => nil do |f| %> + <%= f.file_field :file,{:class=>"multi_files",:rtype=>"javascripts"} %> <% end %>

    -<%= f.label "javascript", t('admin.') %> -<%= fields_for "design[javascripts][]", @design, :index => nil do |f| %> - <%= f.file_field :file %> -<% end %> -

    - -

    -<%= f.label "image", t('admin.') %> -<%= fields_for "design[images][]", @design, :index => nil do |f| %> - <%= f.file_field :file %> -<% end %> + <%= f.label "image", t('admin.image') %> +

    + <%= fields_for "design[images][]", @design, :index => nil do |f| %> + <%= f.file_field :file ,{:class=>"multi_files",:rtype=>"images"}%> + <% end %>

    diff --git a/config/routes.rb b/config/routes.rb index 23fb6053..c518814c 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -44,7 +44,12 @@ PrototypeR4::Application.routes.draw do end resources :layouts - resources :designs + resources :designs do + member do + get 'delete' + end + end + resources :links do member do get 'delete'