Sha256: 3e8969278722234a9cf91b5db1a8556339685c9b440765ee47380047ce843885

Contents?: true

Size: 693 Bytes

Versions: 2

Compression:

Stored size: 693 Bytes

Contents

module ConfigurableEngine
  module ConfigurablesControllerMethods
    def show
      @keys = Configurable.keys
    end

    def update
      failures = Configurable
        .keys.map do |key|
          Configurable.find_by_name(key) ||
            Configurable.create {|c| c.name = key}
        end.reject do |configurable|
          configurable.value = params[configurable.name]
          configurable.save
        end

      if failures.empty?
        redirect_to configurable_path, :notice => "Changes successfully updated"
      else
        flash[:error] = failures.flat_map(&:errors).flat_map(&:full_messages).join(',')
        redirect_to configurable_path
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
configurable_engine-2.0.1 lib/configurable_engine/configurables_controller_methods.rb
configurable_engine-2.0.0 lib/configurable_engine/configurables_controller_methods.rb