Merge branch 'sidebar_config' into ntu
Conflicts: app/controllers/admin/object_auths_new_interface_controller.rb app/controllers/orbit_backend_controller.rb app/controllers/orbit_widget_controller.rb app/models/module_app.rb app/views/admin/page_parts/_module_widget.html.erb config/locales/zh_tw.yml lib/parsers/parser_common.rb lib/parsers/parser_front_end.rb
This commit is contained in:
commit
76296ab29b
160 files changed
+8659
-1037
No files matched your search
@@ -30,6 +30,7 @@ module ParserBackEnd
|
||||
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
|
||||
|
||||
@@ -9,7 +9,7 @@ module ParserCommon
|
||||
res << "'>"
|
||||
i = nil
|
||||
i = 1 if menu.values["li_incremental_#{current}"]
|
||||
children = current == 1 ? page.visible_children.reverse : page.visible_children
|
||||
children = current == 1 ? page.visible_children : page.visible_children
|
||||
children.each do |child|
|
||||
res << menu_li(child, current_page, current, menu, i, edit)
|
||||
i += 1 if i
|
||||
@@ -207,13 +207,13 @@ module ParserCommon
|
||||
ret << part.content rescue ''
|
||||
when 'module_widget'
|
||||
url = case part.widget_path
|
||||
when 'default_widget'
|
||||
"/panel/orbit_app/widget/#{part.widget_style}?inner=true"
|
||||
else
|
||||
"/panel/#{part.module_app.key}/widget/#{part.widget_path}?inner=true"
|
||||
end
|
||||
|
||||
options = "&category_id=#{!part[:category].blank? ? part[:category].blank? : category}&tag_id=#{!part[:tag].blank? ? part[:tag] : tag}&page=#{params[:page]}&search_query=#{params[:search_query]}&part_title=#{Rack::Utils.escape(part_title).gsub("+", "%20") rescue nil}&part_id=#{part.id}"
|
||||
when 'default_widget'
|
||||
"/panel/orbit_app/widget/#{part.widget_style}?inner=true"
|
||||
else
|
||||
raise ModuleAppError,"PagePart can't find ModuleApp" if part.module_app.nil?
|
||||
"/panel/#{part.module_app.key}/widget/#{part.widget_path}?inner=true"
|
||||
end
|
||||
options = "&part_id=#{part.id}&category_id=#{!part[:category].blank? ? part[:category].blank? : category}&tag_id=#{!part[:tag].blank? ? part[:tag] : tag}&page=#{params[:page]}&search_query=#{params[:search_query]}&part_title=#{Rack::Utils.escape(part_title).gsub("+", "%20") rescue nil}"
|
||||
ret << "<div class='dymanic_load widget' path='#{url + options}'></div>"
|
||||
when 'public_r_tag'
|
||||
ret << "<r:#{part.public_r_tag} id='#{part.public_r_tag_object_id}'/>"
|
||||
@@ -234,7 +234,7 @@ module ParserCommon
|
||||
end
|
||||
|
||||
# page_counter
|
||||
def parse_counter(body = nil, page = nil, edit=nil)
|
||||
def parse_counter_edit(body = nil)
|
||||
body.css('.page_counter').each do |counter|
|
||||
res = ''
|
||||
case counter['option']
|
||||
@@ -249,7 +249,7 @@ module ParserCommon
|
||||
when 'this_year'
|
||||
res << display_visitors_this_year.to_s
|
||||
end
|
||||
fragment = Nokogiri::HTML::DocumentFragment.new(body, res)
|
||||
fragment = Nokogiri::HTML::DocumentFragment.new(body, "<div id='#{counter['id']}' class='#{counter['class']}'>#{res}</div>")
|
||||
counter.swap(fragment)
|
||||
end
|
||||
end
|
||||
|
||||
@@ -11,6 +11,7 @@ module ParserFrontEnd
|
||||
parse_images(body, page)
|
||||
parse_menu(body, page)
|
||||
parse_sub_menu(body, page, site)
|
||||
parse_counter(body)
|
||||
i18n.merge!({locale => body.to_html})
|
||||
end
|
||||
i18n
|
||||
@@ -21,10 +22,14 @@ module ParserFrontEnd
|
||||
tag = params[:tag_id].blank? ? page[:tag] : params[:tag_id]
|
||||
body = Nokogiri::HTML(page.content)
|
||||
body.css('orbit_front').each do |front|
|
||||
ret = ''
|
||||
part = PagePart.find(front['part_id']) if front['part_id']
|
||||
ret << eval("\"#{front['path']}\"") rescue ''
|
||||
fragment = Nokogiri::HTML::DocumentFragment.new(body, "<div class='dymanic_load widget' path='#{ret}'></div>")
|
||||
if front['value']
|
||||
fragment = Nokogiri::HTML::DocumentFragment.new(body, "<div id='#{front['id']}' class='#{front['class']}'>#{eval(front['value']).to_s}</div>")
|
||||
else
|
||||
ret = ''
|
||||
part = PagePart.find(front['part_id']) if front['part_id']
|
||||
ret << eval("\"#{front['path']}\"") rescue ''
|
||||
fragment = Nokogiri::HTML::DocumentFragment.new(body, "<div class='dymanic_load widget' path='#{ret}'></div>")
|
||||
end
|
||||
front.swap(fragment)
|
||||
end
|
||||
body.to_html
|
||||
@@ -111,7 +116,7 @@ module ParserFrontEnd
|
||||
else
|
||||
"/panel/\#{part.module_app.key}/widget/\#{part.widget_path}?inner=true"
|
||||
end
|
||||
|
||||
|
||||
options = "&part_id=\#{part.id}&category_id=\#{!part[:category].blank? ? part[:category].blank? : category}&tag_id=\#{!part[:tag].blank? ? part[:tag] : tag}&page=\#{params[:page]}&search_query=\#{params[:search_query]}&part_title=\#{Rack::Utils.escape(part_title).gsub(\"\+\", \"\%20\") rescue nil}"
|
||||
ret << "<orbit_front path='#{url + options}' part_id=#{part.id} class='dymanic_load widget'></orbit_front>"
|
||||
|
||||
@@ -131,6 +136,26 @@ module ParserFrontEnd
|
||||
end
|
||||
end
|
||||
|
||||
def parse_counter(body = nil)
|
||||
body.css('.page_counter').each do |counter|
|
||||
ret = ''
|
||||
case counter['option']
|
||||
when 'all'
|
||||
ret << "display_visitors"
|
||||
when 'today'
|
||||
ret << "display_visitors_today"
|
||||
when 'this_week'
|
||||
ret << "display_visitors_this_week"
|
||||
when 'this_month'
|
||||
ret << "display_visitors_this_month"
|
||||
when 'this_year'
|
||||
ret << "display_visitors_this_year"
|
||||
end
|
||||
fragment = Nokogiri::HTML::DocumentFragment.new(body, "<orbit_front id='#{counter['id']}' class='#{counter['class']}' value='#{ret}'></orbit_front>")
|
||||
counter.swap(fragment)
|
||||
end
|
||||
end
|
||||
|
||||
# ad_banners
|
||||
def generate_ad_banners(*args)
|
||||
"<div class='dymanic_load' path='#{front_show_banner_path(args[0])}'></div>"
|
||||
|
||||
Reference in new issue
Block a user