44 lines
1.2 KiB
Ruby
44 lines
1.2 KiB
Ruby
class DefaultWidgetController< OrbitWidgetController
|
|
|
|
def front_end_available(var)
|
|
@page_part = PagePart.find params[:part_id]
|
|
@page_part.module_app.enable_frontend?
|
|
end
|
|
|
|
def default_widget
|
|
@tag_class = nil
|
|
|
|
@default_widget = @page_part.module_app.get_default_widget
|
|
@widget_image_field = @default_widget[:image]
|
|
data_limit = @page_part.widget_data_count.is_a?(Fixnum) ? @page_part.widget_data_count : (@page_part.widget_data_count.to_i rescue 3)
|
|
@data = eval(@default_widget[:query]).limit(data_limit).includes(@widget_image_field)
|
|
@fields = @page_part.widget_field
|
|
|
|
case params[:type]
|
|
when "typeA"
|
|
@tag_class = 'defulat_widget_typeA'
|
|
render "typeA"
|
|
when /typeB_/
|
|
@tag_class = "defulat_widget_#{params[:type]}"
|
|
render "typeB"
|
|
when "typeC"
|
|
@tag_class = 'defulat_widget_typeC'
|
|
render "typeC"
|
|
end
|
|
|
|
|
|
|
|
# {"inner"=>"true",
|
|
# "category_id"=>"false",
|
|
# "tag_id"=>"",
|
|
# "page"=>"",
|
|
# "search_query"=>"",
|
|
# "part_title"=>"",
|
|
# "part_id"=>"50ac426f83e75219d20000a7",
|
|
# "controller"=>"default_widget",
|
|
# "action"=>"default_widget",
|
|
# "type"=>"typeA"}
|
|
end
|
|
|
|
end
|