Module: Pyk::DeviseHelpers

Defined in:
lib/pyk/devise_helpers.rb

Instance Method Summary collapse

Instance Method Details

#devise_error_messages!Object

DEVISE end



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'lib/pyk/devise_helpers.rb', line 17

def devise_error_messages!
  flash_alerts = []
  error_key = 'errors.messages.not_saved'

  if !flash.empty?
    flash_alerts.push(flash[:error]) if flash[:error]
    flash_alerts.push(flash[:alert]) if flash[:alert]
    flash_alerts.push(flash[:notice]) if flash[:notice]
    error_key = 'devise.failure.invalid'
  end

  return "" if resource.errors.empty? && flash_alerts.empty?
  errors = resource.errors.empty? ? flash_alerts : resource.errors.full_messages

  messages = errors.map { |msg| (:li, msg) }.join
  sentence = I18n.t(error_key, :count    => errors.count,
                               :resource => resource.class.model_name.human.downcase)

  html = <<-HTML
  <div id="error_explanation">
    <h2>#{sentence}</h2>
    <ul>#{messages}</ul>
  </div>
  HTML

  html.html_safe
end

#devise_mappingObject



11
12
13
# File 'lib/pyk/devise_helpers.rb', line 11

def devise_mapping
  @devise_mapping ||= Devise.mappings[:user]
end

#resourceObject



7
8
9
# File 'lib/pyk/devise_helpers.rb', line 7

def resource
  @resource ||= User.new
end

#resource_nameObject



3
4
5
# File 'lib/pyk/devise_helpers.rb', line 3

def resource_name
  :user
end