Sha256: c2045bae346f9b8bc531671baca561c69027e626c60b145e7c4b1c53dca3afee

Contents?: true

Size: 764 Bytes

Versions: 1

Compression:

Stored size: 764 Bytes

Contents

module Rad
  module Processors
    class PrepareFlash < Processor

      def call
        workspace.request.must_be.present
        workspace.params.must_be.defined
        
        previous_messages = workspace.request.session.delete 'flash'
        if previous_messages.present?
          previous_messages = JSON.load previous_messages
          rad[:flash] = Rad::Flash.new workspace.params.format, previous_messages
        end
        
        next_processor.call
        
        if rad.include? :flash
          flash = rad[:flash]
          messages = flash.messages_for_next_request
          workspace.request.must_be.present
          workspace.request.session['flash'] = messages.to_json unless messages.empty?
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rad_core-0.0.13 lib/rad/html/processors/prepare_flash.rb