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
@@ -28,4 +28,4 @@ module Admin::AdBannersHelper
|
||||
|
||||
|
||||
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,22 @@
|
||||
module Admin::PagePartsHelper
|
||||
|
||||
def support_link
|
||||
url_method = @module_app.get_default_widget[:url_method]
|
||||
unless url_method.nil?
|
||||
res = "Link:"
|
||||
res << select_tag( "page_part[widget_field_is_link][]", options_for_select([["NotLink",false],["Link1",url_method]]))
|
||||
res.html_safe
|
||||
end
|
||||
end
|
||||
|
||||
def widget_field_options(i)
|
||||
options = @module_app.widget_fields.collect{|widget_field| [I18n.t(widget_field[1]), widget_field[0]]}
|
||||
options_for_select(options, (@part[:widget_field][i][0] if (@part && !@part[:widget_field].blank? && !@part[:widget_field][i].blank?)) )
|
||||
end
|
||||
|
||||
def widget_fiield_type_options(i)
|
||||
options = LIST[:widget_field_type].collect{|widget_field| [widget_field.humanize, widget_field]}
|
||||
options_for_select(options, (@part[:widget_field][i][1] if (@part && !@part[:widget_field].blank? && !@part[:widget_field][i].blank?)) )
|
||||
end
|
||||
|
||||
end
|
||||
@@ -184,6 +184,7 @@ module ApplicationHelper
|
||||
stylesheets << "<link href='/assets/orbit-bar.css' rel='stylesheet' type='text/css' />\n"
|
||||
stylesheets << "<link href='/assets/social-share-button.css' rel='stylesheet' type='text/css' />\n"
|
||||
stylesheets << "<link href='#{asset_path 'banner_nav.css'}' rel='stylesheet' type='text/css' />\n"
|
||||
stylesheets << "<link href='#{asset_path 'default_widget.css'}' rel='stylesheet' type='text/css' />\n"
|
||||
stylesheets << "<link href='#{page.design.css_default.file.url}' rel='stylesheet' type='text/css' />\n" if page.design.css_default
|
||||
theme = page.design.themes.detect{ |d| d.id == page.theme_id }
|
||||
stylesheets << "<link href='#{theme.file.url}' rel='stylesheet' type='text/css' />\n" if theme
|
||||
@@ -208,7 +209,7 @@ module ApplicationHelper
|
||||
javascripts << "<script type='text/javascript' src='/assets/lib/social-share-button.js'></script>\n"
|
||||
javascripts << "<script type='text/javascript' src='/assets/event.js'></script>\n"
|
||||
page.design.javascripts.each do |js|
|
||||
# javascripts << "<script type='text/javascript' src='#{js.file.url}'></script>"
|
||||
javascripts << "<script type='text/javascript' src='#{js.file.url}'></script>"
|
||||
end
|
||||
javascripts
|
||||
end
|
||||
|
||||
@@ -0,0 +1,72 @@
|
||||
module DefaultWidgetHelper
|
||||
def get_field_header(field)
|
||||
I18n.t(@page_part.module_app.widget_fields.select{|t|t[0]==field}[0][1])
|
||||
end
|
||||
|
||||
def link_to_field(row_data,field)
|
||||
method_ary = @page_part.module_app.widget_fields_link_method
|
||||
if method_ary.has_key? field
|
||||
url = case method_ary[field]["args"]
|
||||
when nil # no args
|
||||
get_data_link(method_ary[field]["method"])
|
||||
when :self # passing self
|
||||
get_data_link(method_ary[field]['method'],row_data.id)
|
||||
else
|
||||
ary = method_ary[field]["args"].clone
|
||||
object_hash = ary.each do |key,val|
|
||||
ary[key]= type_trans_or_to_s(row_data.send(val[0]).send(val[1]))
|
||||
end
|
||||
get_data_link(method_ary[field]['method'],object_hash)
|
||||
end
|
||||
|
||||
link_to row_data.send(field),url
|
||||
else
|
||||
type_trans_or_to_s(row_data.send(field) )
|
||||
end
|
||||
end
|
||||
|
||||
# def get_args_mapping(object,row_hash)
|
||||
# first_hash = row_hash.first
|
||||
|
||||
# # row_data.send(method_ary[field]["args"])
|
||||
# end
|
||||
|
||||
def type_trans_or_to_s(object)
|
||||
case object
|
||||
when Date
|
||||
display_date(object)
|
||||
when DateTime
|
||||
display_date_time(object)
|
||||
when String
|
||||
object
|
||||
else
|
||||
object.to_s
|
||||
end
|
||||
end
|
||||
|
||||
def get_data_link(method_entry,object = nil)
|
||||
case object
|
||||
when nil
|
||||
eval method_entry
|
||||
else
|
||||
eval("#{method_entry}('#{object}')" )
|
||||
end
|
||||
end
|
||||
|
||||
def get_display(row_data,field_setting)
|
||||
label = row_data.send(field_setting[:method])
|
||||
type_trans_or_to_s(label)
|
||||
end
|
||||
|
||||
def get_row_data(row_data,field)
|
||||
field_is_link = (field[0][1]== 'false' ? false : true )
|
||||
field_setting = {:class=>field[0][1],:method=>field[0][0]}
|
||||
if field_is_link
|
||||
field_link = field[0][1].to_s + '_path'
|
||||
link = link_to(get_display(row_data,field_setting),field_link.send(row_data))
|
||||
content_tag(:span,link,:class=>field_setting[:class])
|
||||
else
|
||||
content_tag(:span,get_display(row_data,field_setting),:class=>field_setting[:class])
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in new issue
Block a user