automate get files with anyname
This commit is contained in:
parent
16001fb2c9
commit
8895b9fe20
|
@ -27,17 +27,48 @@ class Admin::DesignsController < ApplicationController
|
||||||
Zip::ZipFile.open(file) { |zip_file|
|
Zip::ZipFile.open(file) { |zip_file|
|
||||||
design = Design.new.from_json(zip_file.read("#{zip_name}/info.json"))
|
design = Design.new.from_json(zip_file.read("#{zip_name}/info.json"))
|
||||||
Dir.mktmpdir('f_path') { |dir|
|
Dir.mktmpdir('f_path') { |dir|
|
||||||
title = 'layout.html' #design.layout_filename Should be layout file name,set to be fetch
|
#layout_entry =""
|
||||||
temp_file = File.new(dir + '/' + title, 'w+') #dir/zip_name
|
#struct_css_entry =""
|
||||||
temp_file.write zip_file.read(zip_name + '/' + title)
|
|
||||||
debugger
|
|
||||||
design.build_layout
|
design.build_layout
|
||||||
design.layout.file = temp_file
|
themes_entries = []
|
||||||
|
javascripts_entries = []
|
||||||
|
images_entries = []
|
||||||
|
debugger
|
||||||
|
temp_file4layout = File.new(dir + '/' + zip_name+'-1', 'w+')
|
||||||
|
temp_file4layout.binmode
|
||||||
|
#dir/zip_name
|
||||||
|
temp_file4structure = File.new(dir + '/' + zip_name+'-2', 'w+')
|
||||||
|
temp_file4structure.binmode
|
||||||
|
#dir/zip_name
|
||||||
|
|
||||||
|
zip_file.entries.each do |entry|
|
||||||
|
case (path = entry.to_s)
|
||||||
|
when /\A(#{zip_name})\/[^\/]*(\.css)\z/ #for structure css
|
||||||
|
# struct_css_entry = entry
|
||||||
|
temp_file4structure.write (zip_file.read entry )
|
||||||
|
design.structure_css = temp_file4structure
|
||||||
|
when /\A(#{zip_name})\/[^\/]*(\.html)\z/ #for layout html
|
||||||
|
# layout_entry = entry
|
||||||
|
temp_file4layout.write (zip_file.read entry )
|
||||||
|
design.layout.file = temp_file4structure
|
||||||
|
design.layout.to_save=true
|
||||||
|
when /\A(#{zip_name})\/(themes)\/.*(\.css)\z/ #for themes css
|
||||||
|
themes_entries << entry
|
||||||
|
when /\A(#{zip_name})\/(javascripts)\/.*(\.js)\z/ #for js
|
||||||
|
javascripts_entries << entry
|
||||||
|
when /\A(#{zip_name})\/(images)\/.*((\.jpg)|(\.png)|(\.gif))\z/ #for img
|
||||||
|
images_entries << entry
|
||||||
|
end
|
||||||
|
end
|
||||||
|
debugger
|
||||||
|
|
||||||
['themes', 'javascripts', 'images'].each do |type|
|
['themes', 'javascripts', 'images'].each do |type|
|
||||||
eval("design.#{type}").each do |object|
|
#incompleted
|
||||||
title = object.file_filename
|
eval("#{type}.entries").each do |entry|
|
||||||
temp_file = File.new(dir + '/' + title, 'w+')
|
title = File.basename entry
|
||||||
temp_file.write zip_file.read(zip_name + '/' + type + '/' + title)
|
debugger
|
||||||
|
temp_file = File.new(dir + '/' + title+'-3', 'w+')
|
||||||
|
temp_file.write zip_file.read entry
|
||||||
object.file = temp_file
|
object.file = temp_file
|
||||||
object.to_save = true
|
object.to_save = true
|
||||||
end
|
end
|
||||||
|
|
Reference in New Issue