class Coupdoeil::HovercardsController

def create

def create
  hovercard = @hovercard_klass.new(@hovercard_params, view_context)
  render plain: hovercard.process(@action_name), layout: false
end

def set_action_and_resource_name

def set_action_and_resource_name
  @action_name, @resource_name = params[:action_name].split("@")
end

def set_hovercard_class

def set_hovercard_class
  @hovercard_klass = Coupdoeil::Hovercard.registry.lookup_or_register(@resource_name)
end

def set_hovercard_class

def set_hovercard_class
  @hovercard_klass = Coupdoeil::Hovercard.registry.lookup(@resource_name)
end

def set_hovercard_params

def set_hovercard_params
  @hovercard_params =
    if params[:params].blank?
      @hovercard_params = {}.freeze
    else
      raw_params = JSON.parse(params[:params])
      card_params = Coupdoeil::Params.deserialize(raw_params).sole
      card_params.with_indifferent_access
    end
end