fix for passing args. code in complete,fronted controller need to take care params,too. backend parser need to catch up.

This commit is contained in:
Matt K. Fu committed 2013-06-06 17:38:17 +08:00
1 parent f2706ff2c1
commit 7729161123
9 files changed
+71 -15

No files matched your search

+9 -7
View File
@@ -18,11 +18,12 @@ module ParserFrontEnd
i18n
end
def parse_page_content(page,args=nil)
args["category_id"] = args["category_id"].gsub(/\"|\[|\]/,'').split(",").each(&:strip!) if args["category_id"].is_a? String
args["tag_id"] = args["tag_id"].gsub(/\"|\[|\]/,'').split(",").each(&:strip!) if args["tag_id"].is_a? String
def parse_page_content(page,args={})
args["category_id"] = args["category_id"].gsub(/\"|\[|\]/,'').split(",").each(&:strip!) if !args["category_id"].blank? and args["category_id"].is_a?(String)
args["tag_id"] = args["tag_id"].gsub(/\"|\[|\]/,'').split(",").each(&:strip!) if !args["tag_id"].blank? and args["tag_id"].is_a? String
# tag = params[:tag_id].blank? ? page[:tag] : params[:tag_id]
# category = params[:category_id].blank? ? page[:category] : params[:category_id]
body = Nokogiri::HTML(page.content)
body.css('orbit_front').each do |front|
if front['value']
@@ -129,8 +130,8 @@ module ParserFrontEnd
url = "/panel/#{page.module_app.key}/front_end/#{page.app_frontend_url}\#{(\"/\" + params[:id]) if params[:id] && !params[:id].eql?(page.id.to_s)}\#{(\"/\" + params[:controller_action]) if params[:controller_action] && params[:id]}?inner=true"
end
categories_str=category.collect{|t| "category_id[]=#{t}"}.join('&')
tags_str=tag.collect{|t| "tag_id[]=#{t}"}.join('&')
categories_str=category.collect{|t| "base_category_id[]=#{t}"}.join('&')
tags_str=tag.collect{|t| "base_tag_id[]=#{t}"}.join('&')
categories_str = "&#{categories_str}" unless categories_str.blank?
tags_str = "&#{tags_str}" unless tags_str.blank?
@@ -152,12 +153,13 @@ module ParserFrontEnd
"/panel/\#{part.module_app.key}/widget/\#{part.widget_path}?inner=true"
end
categories_str=part[:category].collect{|t| "category_id[]=#{t}"}.join('&')
tags_str=part[:tag].collect{|t| "tag_id[]=#{t}"}.join('&')
categories_str=part[:category].collect{|t| "base_category_id[]=#{t}"}.join('&')
tags_str=part[:tag].collect{|t| "base_tag_id[]=#{t}"}.join('&')
categories_str = "&#{categories_str}" unless categories_str.blank?
tags_str = "&#{tags_str}" unless tags_str.blank?
options = "&part_id=\#{part.id}#{categories_str}#{tags_str}&page=\#{params[:page]}&search_query=\#{params[:search_query]}&clicked_field_name=\#{params[:clicked_field_name]}&part_title=\#{Rack::Utils.escape(part_title).gsub(\"\+\", \"\%20\") rescue nil}&item_type=page_part&tag_id=\#{params[:tag_id]}&category_id=\#{params[:category_id]}"
ret << "<orbit_front path='#{url + options}' part_id=#{part.id} class='dymanic_load widget'></orbit_front>"
when 'public_r_tag'