Sha256: 8124b8fee9a2e9c07c2f4e04947b7787a9daf78a75b3d2a8450594175655681e
Contents?: true
Size: 1.75 KB
Versions: 1
Compression:
Stored size: 1.75 KB
Contents
class ClarkKent::ReportFiltersController < ClarkKent::ApplicationController before_filter :prepare_report_filter before_filter :prepare_report, :prepare_role, :prepare_filters def new @report_filter = ClarkKent::ReportFilter.new(filterable_id: @filterable.id, filterable_type: @filterable.class.name) render partial: 'form', locals: {report_filter: @report_filter} end def create report_filter_class = @filterable.get_filter_class(params[:report_filter]) @report_filter = report_filter_class.new(params[:report_filter]) @report_filter.save render partial: 'show_wrapper', locals: {report_filter: @report_filter} end def show render partial: 'show', locals: {report_filter: @report_filter} end def edit render partial: 'form', locals: {report_filter: @report_filter} end def update @report_filter.update_attributes(params[@report_filter.class.name.underscore]) @ajax_flash = {notice: "Your changes were saved."} render partial: 'show', locals: {report_filter: @report_filter} end def destroy @report_filter.destroy render nothing: true end protected def prepare_report_filter @report_filter = ClarkKent::ReportFilter.find(params[:id]) if params[:id] end def prepare_report @filterable_id = params[:filterable_id] @filterable_type = params[:filterable_type] @filterable_id ||= params[:report_filter][:filterable_id] if params[:report_filter] @filterable_type ||= params[:report_filter][:filterable_type] if params[:report_filter] @filterable_class = @filterable_type.constantize if @filterable_type @filterable = @filterable_class.find(@filterable_id) if @filterable_id and @filterable_class @filterable ||= @report_filter.filterable if @report_filter end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
clark_kent-0.0.1 | app/controllers/clark_kent/report_filters_controller.rb |