class CabezaDeTermo::AlertMessages::Messages

Constants

ALERT_MESSAGES

Public Class Methods

new(flash:) click to toggle source

Instance methods

# File lib/alert-messages/alert-messages.rb, line 7
def initialize(flash:)
        @messages = Hash.new { |hash, key| hash[key] = [] }
        @flash = flash
        transfer_flash_messages_for_this_request
end

Public Instance Methods

[](message_type) click to toggle source
# File lib/alert-messages/alert-messages.rb, line 13
def [](message_type)
        messages[message_type]
end
flash_at(message_type) click to toggle source
# File lib/alert-messages/alert-messages.rb, line 17
def flash_at(message_type)
        ensure_flash_message_type_exists message_type
        flash_messages[message_type]
end

Protected Instance Methods

drop_flash_messages() click to toggle source
# File lib/alert-messages/alert-messages.rb, line 40
def drop_flash_messages()
        @flash[ALERT_MESSAGES] = nil
end
ensure_flash_message_type_exists(message_type) click to toggle source
# File lib/alert-messages/alert-messages.rb, line 48
def ensure_flash_message_type_exists(message_type)
        reset_flash_messages if @flash[ALERT_MESSAGES].nil?
        flash_messages[message_type] = [] unless flash_messages.key? message_type
end
flash_messages() click to toggle source

Accessing flash oh oh

# File lib/alert-messages/alert-messages.rb, line 26
def flash_messages()
        @flash[ALERT_MESSAGES]
end
messages() click to toggle source

Accessing regular messages

# File lib/alert-messages/alert-messages.rb, line 55
def messages()
        @messages
end
reset_flash_messages() click to toggle source
# File lib/alert-messages/alert-messages.rb, line 44
def reset_flash_messages()
        @flash[ALERT_MESSAGES] = Hash[]
end
transfer_flash_messages_for_this_request() click to toggle source
# File lib/alert-messages/alert-messages.rb, line 30
def transfer_flash_messages_for_this_request()
        return if flash_messages.nil?

        flash_messages.each_pair do |type, messages|
                self[type].concat messages
        end

        drop_flash_messages
end