45 lines
1.3 KiB
Ruby
45 lines
1.3 KiB
Ruby
module ParserBackEnd
|
|
include ParserCommon
|
|
|
|
require 'nokogiri'
|
|
|
|
# c.define_tag 'language_bar' do
|
|
# @site.in_use_locales.map{ |locale|
|
|
# lang = I18nVariable.first(:conditions => {:key => locale})[locale]
|
|
# if I18n.locale.to_s.eql?(locale)
|
|
# lang
|
|
# else
|
|
# "<a href='?locale=#{locale}'>#{lang}</a>"
|
|
# end
|
|
# }.join(' | ')
|
|
# end
|
|
# c.define_tag 'link' do |tag|
|
|
# item = Item.first(:conditions => { :path => tag.attr['name'] })
|
|
# ret = ''
|
|
# ret << "<a href='"
|
|
# ret << eval("admin_#{item.class.to_s.downcase}_path(item.id)")
|
|
# ret << "' class='nav'>"
|
|
# ret << item.i18n_variable[I18n.locale]
|
|
# ret << "</a>"
|
|
# end
|
|
|
|
def parse_page_edit_noko(page)
|
|
body = Nokogiri::HTML(page.design.layout.body)
|
|
parse_menu_edit(body, page, true)
|
|
public_r_tags = parse_contents_edit(body, page, true)
|
|
parse_images_edit(body, page)
|
|
parse_footer_edit(body, page)
|
|
parse_sub_menu_edit(body, page)
|
|
parse_counter_edit(body)
|
|
public_r_tags.each do |tag|
|
|
send("parse_#{tag}s_edit", body, page, true)
|
|
end
|
|
body.to_html
|
|
end
|
|
|
|
def self.included(base)
|
|
base.send :helper_method, :parse_page_edit_noko if base.respond_to? :helper_method
|
|
end
|
|
|
|
end
|