module SimpleMessages::ActionView
Public Instance Methods
js_simple_messages()
click to toggle source
# File lib/simple_messages/action_view.rb, line 47 def js_simple_messages "SimpleMessages.flash('#{j simple_messages}');".html_safe end
js_simple_messages_alert(messages = [])
click to toggle source
# File lib/simple_messages/action_view.rb, line 51 def js_simple_messages_alert(messages = []) "SimpleMessages.alert(#{messages.to_json});".html_safe end
simple_messages(options = {})
click to toggle source
# File lib/simple_messages/action_view.rb, line 5 def simple_messages(options = {}) options.reverse_merge! flash_messages: true, validation_messages: true html = ''.html_safe html << simple_messages_flash(options) if options.delete(:flash_messages) html << simple_messages_validation(options) if options.delete(:validation_messages) html end
simple_messages_flash(options = {})
click to toggle source
# File lib/simple_messages/action_view.rb, line 17 def simple_messages_flash(options = {}) html = flash.collect do |kind, content| builder = Builder.new options.reverse_merge(kind: kind, body: content) builder.to_html end flash.clear if flash.any? html.join.html_safe end
simple_messages_objects()
click to toggle source
# File lib/simple_messages/action_view.rb, line 29 def simple_messages_objects simple_messages_models.collect do |model_name| object = instance_variable_get("@#{model_name}") object if simple_messages_object_has_errors? object end.compact end
simple_messages_validation(options = {})
click to toggle source
# File lib/simple_messages/action_view.rb, line 37 def simple_messages_validation(options = {}) simple_messages_objects.collect do |object| title = I18n.t('errors.template.header', count: object.errors.full_messages.count, model: object.class.model_name.human) builder = Builder.new options.reverse_merge(kind: :error, body: object.errors.full_messages, header: title) builder.to_html end.join.html_safe end
Private Instance Methods
simple_messages_object_has_errors?(object)
click to toggle source
# File lib/simple_messages/action_view.rb, line 56 def simple_messages_object_has_errors?(object) object.present? and ( (object.errors.respond_to? :any? and object.errors.any?) or (object.errors.respond_to? :empty? and !object.errors.empty?) ) end