Fix Nokogiri when '.first' returns nothing
This commit is contained in:
parent
747b0d4620
commit
3beed406a7
|
@ -112,10 +112,14 @@ module ParserCommon
|
|||
# page_menu
|
||||
def parse_menu(body, page, edit=nil)
|
||||
page_menu = body.css('.page_menu').first
|
||||
home = get_homepage
|
||||
menu = page.design.layout.menu
|
||||
fragment = Nokogiri::HTML::DocumentFragment.new(body, menu_level(home, page, 1, menu, edit))
|
||||
page_menu.swap(fragment)
|
||||
if page_menu
|
||||
home = get_homepage
|
||||
menu = page.design.layout.menu
|
||||
fragment = Nokogiri::HTML::DocumentFragment.new(body, menu_level(home, page, 1, menu, edit))
|
||||
page_menu.swap(fragment)
|
||||
else
|
||||
''
|
||||
end
|
||||
end
|
||||
|
||||
# sub_menus
|
||||
|
@ -173,10 +177,14 @@ module ParserCommon
|
|||
# sitemap
|
||||
def parse_sitemaps(body = nil, page = nil, edit=nil)
|
||||
sitemap = body.css('sitemap').first
|
||||
url = admin_site_sitemap_frontend_path(@site)
|
||||
options = "?inner=true"
|
||||
fragment = Nokogiri::HTML::DocumentFragment.new(body, "<div class='dymanic_load' path='#{url + options}'></div>")
|
||||
sitemap.swap(fragment)
|
||||
if sitemap
|
||||
url = admin_site_sitemap_frontend_path(@site)
|
||||
options = "?inner=true"
|
||||
fragment = Nokogiri::HTML::DocumentFragment.new(body, "<div class='dymanic_load' path='#{url + options}'></div>")
|
||||
sitemap.swap(fragment)
|
||||
else
|
||||
''
|
||||
end
|
||||
end
|
||||
|
||||
# page_contents
|
||||
|
|
Loading…
Reference in New Issue