forked from saurabh/orbit4-5
modified statuses and also now custom call to frontend controller is working.
This commit is contained in:
parent
06df84df57
commit
201d0e61d8
|
@ -198,63 +198,66 @@ module ApplicationHelper
|
|||
html = html.gsub("{{pagination_goes_here}}","");
|
||||
end
|
||||
html.html_safe
|
||||
elsif params[:target_action] == "show"
|
||||
file = File.open(File.join(Rails.root, 'app', 'templates', "#{@key}", 'modules', params[:target_controller].singularize, "#{params[:target_action]}.html.erb"))
|
||||
doc = Nokogiri::HTML(file, nil, "UTF-8")
|
||||
file.close
|
||||
controller = "#{params[:target_controller].capitalize}_controller".classify.constantize.new
|
||||
data = controller.send("#{params[:target_action]}")
|
||||
|
||||
if data.blank? || data.empty?
|
||||
file = File.open("#{Rails.root}/public/404.html")
|
||||
else
|
||||
f = File.join(Rails.root, 'app', 'templates', "#{@key}", 'modules', params[:target_controller].singularize, "#{params[:target_action]}.html.erb")
|
||||
if File.exists?f
|
||||
file = File.open(f)
|
||||
doc = Nokogiri::HTML(file, nil, "UTF-8")
|
||||
file.close
|
||||
doc.to_html.html_safe
|
||||
else
|
||||
unless data['impressionist'].blank?
|
||||
impression = data['impressionist'].impressions.create
|
||||
impression.user_id = request.session['user_id']
|
||||
impression.controller_name = params[:target_controller]
|
||||
impression.action_name = params[:target_action]
|
||||
impression.ip_address = request.remote_ip
|
||||
impression.session_hash = request.session.id
|
||||
impression.request_hash = @impressionist_hash
|
||||
impression.referrer = request.referrer
|
||||
impression.save
|
||||
data['impressionist'].view_count = data['impressionist'].impressions.count
|
||||
data['impressionist'].save
|
||||
end
|
||||
wrap_elements = doc.css("*[data-list][data-level='0']")
|
||||
if wrap_elements.count == 0
|
||||
wrap_element_html = doc.to_s
|
||||
el = wrap_element_html
|
||||
data.each do |key,value|
|
||||
next if key.eql? 'impressionist'
|
||||
value = value.nil? ? "" : value
|
||||
el = el.gsub("{{#{key}}}",value.to_s)
|
||||
el = el.gsub("%7B%7B#{key}%7D%7D",value.to_s)
|
||||
end
|
||||
el.html_safe
|
||||
controller = "#{params[:target_controller].capitalize}_controller".classify.constantize.new
|
||||
data = controller.send("#{params[:target_action]}")
|
||||
|
||||
if data.blank? || data.empty?
|
||||
file = File.open("#{Rails.root}/public/404.html")
|
||||
doc = Nokogiri::HTML(file, nil, "UTF-8")
|
||||
file.close
|
||||
doc.to_html.html_safe
|
||||
else
|
||||
keys = data.keys
|
||||
not_array_key = nil
|
||||
data.keys.each do |key|
|
||||
not_array_key = key if data["#{key}"].kind_of?(Hash)
|
||||
unless data['impressionist'].blank?
|
||||
impression = data['impressionist'].impressions.create
|
||||
impression.user_id = request.session['user_id']
|
||||
impression.controller_name = params[:target_controller]
|
||||
impression.action_name = params[:target_action]
|
||||
impression.ip_address = request.remote_ip
|
||||
impression.session_hash = request.session.id
|
||||
impression.request_hash = @impressionist_hash
|
||||
impression.referrer = request.referrer
|
||||
impression.save
|
||||
data['impressionist'].view_count = data['impressionist'].impressions.count
|
||||
data['impressionist'].save
|
||||
end
|
||||
htmls = parsing_repeats_again(wrap_elements,data,1)
|
||||
html = doc.to_s
|
||||
htmls[0].each_with_index do |h,i|
|
||||
html = html.gsub(h,htmls[1][i])
|
||||
end
|
||||
if data["#{not_array_key}"]
|
||||
data["#{not_array_key}"].each do |key,value|
|
||||
next if key.eql? 'impressionist'
|
||||
wrap_elements = doc.css("*[data-list][data-level='0']")
|
||||
if wrap_elements.count == 0
|
||||
wrap_element_html = doc.to_s
|
||||
el = wrap_element_html
|
||||
data.each do |key,value|
|
||||
next if key.eql? 'impressionist'
|
||||
value = value.nil? ? "" : value
|
||||
html = html.gsub("{{#{key}}}",value.to_s)
|
||||
html = html.gsub("%7B%7B#{key}%7D%7D",value.to_s)
|
||||
el = el.gsub("{{#{key}}}",value.to_s)
|
||||
el = el.gsub("%7B%7B#{key}%7D%7D",value.to_s)
|
||||
end
|
||||
el.html_safe
|
||||
else
|
||||
keys = data.keys
|
||||
not_array_key = nil
|
||||
data.keys.each do |key|
|
||||
not_array_key = key if data["#{key}"].kind_of?(Hash)
|
||||
end
|
||||
htmls = parsing_repeats_again(wrap_elements,data,1)
|
||||
html = doc.to_s
|
||||
htmls[0].each_with_index do |h,i|
|
||||
html = html.gsub(h,htmls[1][i])
|
||||
end
|
||||
if data["#{not_array_key}"]
|
||||
data["#{not_array_key}"].each do |key,value|
|
||||
next if key.eql? 'impressionist'
|
||||
value = value.nil? ? "" : value
|
||||
html = html.gsub("{{#{key}}}",value.to_s)
|
||||
html = html.gsub("%7B%7B#{key}%7D%7D",value.to_s)
|
||||
end
|
||||
end
|
||||
html.html_safe
|
||||
end
|
||||
html.html_safe
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -27,6 +27,14 @@ module OrbitModel
|
|||
statuses
|
||||
end
|
||||
|
||||
def statuses_with_classname
|
||||
statuses = []
|
||||
statuses << {"name" => I18n.t(:top), "classname" => "top"} if is_top?
|
||||
statuses << {"name" => I18n.t(:hot), "classname" => "hot"} if is_hot?
|
||||
statuses << {"name" => I18n.t(:hidden), "classname" => "hidden"} if is_hidden?
|
||||
statuses
|
||||
end
|
||||
|
||||
def status_for_table
|
||||
status = ""
|
||||
status << "<span class='label label-success'>#{I18n.t(:top)}</span> " if self.is_top
|
||||
|
|
Loading…
Reference in New Issue