Fix bugs in upload design and missing menu
This commit is contained in:
1 parent
ad740b0daf
commit
6f9363ef54
4 files changed
+14
-17
No files matched your search
@@ -2,7 +2,7 @@ module ParserCommon
|
||||
|
||||
def menu_level(page, current, menu, edit = false)
|
||||
res = ''
|
||||
if current <= menu.levels
|
||||
if menu.levels > 0 && current <= menu.levels
|
||||
if current != 0
|
||||
res << "<div class='rc_dm'>"
|
||||
item = rand(100000)
|
||||
@@ -84,7 +84,7 @@ module ParserCommon
|
||||
body.css('.page_image').each do |page_image|
|
||||
# image = page.custom_images.detect{|image| image.name.eql?(tag.attr['name']) }
|
||||
# image = page.design.custom_images.detect{|image| image.name.eql?(tag.attr['name']) } unless image
|
||||
image = page.design.images.detect{|image| image.name.eql?(page_image['name']) } unless image
|
||||
image = page.design.images.detect{|image| image.name.eql?(File.basename(page_image['src'])) } unless image
|
||||
if image
|
||||
res = "<img src=#{image.file.url} "
|
||||
page_image.attributes.each do |l|
|
||||
|
||||
@@ -8,11 +8,6 @@ module ParserLayout
|
||||
layout.layout_parts.build(:name => content['name'])
|
||||
end
|
||||
|
||||
body.css('.page_image').each do |image|
|
||||
image = layout.design.images.detect{ |i| i.file_identifier.eql?(parse_html_image(image.to_html)) }
|
||||
image.update_attributes(:name => image['name'], :html_id => image['id'], :html_class => image['class']) if image
|
||||
end
|
||||
|
||||
body.css('.page_menu').each do |menu|
|
||||
layout.build_menu(:levels => 0, :values => {}) unless layout.menu
|
||||
layout.menu.levels = i = menu['level'].to_i
|
||||
@@ -22,12 +17,14 @@ module ParserLayout
|
||||
|
||||
end
|
||||
|
||||
def parse_html_image(html)
|
||||
html.scan(/(?<=\<img)(.*?)(?=\/\>)/){
|
||||
$1.gsub(' ','').scan(/(?<=src=\")(.*?)(?=\")/){
|
||||
return File.basename($1).gsub(/[\\\"]/, '')
|
||||
}
|
||||
}
|
||||
def parse_body_for_images(design)
|
||||
body = Nokogiri::HTML(design.layout.body)
|
||||
|
||||
body.css('.page_image').each do |page_image|
|
||||
image = design.images.where( file: File.basename(page_image['src']))[0]
|
||||
image.update_attributes(:name => File.basename(page_image['src']), :html_id => page_image['id'], :html_class => page_image['class']) if image
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
|
||||
|
||||
Reference in new issue
Block a user