Sha256: 4baef7f20c8155e0b6a7efd91596a6d0e30542d94915762e4395784c92d4d80a
Contents?: true
Size: 1.15 KB
Versions: 3
Compression:
Stored size: 1.15 KB
Contents
module ForemanOpenscap module HostsCommonControllerExtensions extend ActiveSupport::Concern def openscap_proxy_changed model = if params[param_id_key].blank? controller_name.classify.constantize.new(params[param_model_key]) else resource_base.find(params[param_id_key]) end proxy_id = params[param_model_key][:openscap_proxy_id] instance_variable_set("@#{param_model_key}", model) if proxy_id.blank? render :partial => "form" else begin instance_variable_get("@#{param_model_key}").update_scap_client_params(proxy_id) render :partial => "form" rescue => e instance_variable_get("@#{param_model_key}").errors.add(:openscap_proxy_id, e.message) render :partial => "form", :status => 422 end end end def action_permission case params[:action] when 'openscap_proxy_changed' :edit else super end end private def param_id_key "#{param_model_key}_id" end def param_model_key controller_name.singularize end end end
Version data entries
3 entries across 3 versions & 1 rubygems