Class: PadmaUser

Inherits:
LogicalModel
  • Object
show all
Includes:
Gravtastic
Defined in:
app/models/padma_user.rb

Constant Summary collapse

TIMEOUT =

milisecons

5500
PER_PAGE =
9999
IGNORED_USERNAMES =
%W(system gympass)

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#cached_current_accountObject

Returns the value of attribute cached_current_account.



64
65
66
# File 'app/models/padma_user.rb', line 64

def 
  @cached_current_account
end

Class Method Details

.find(id, params = {}) ⇒ Object



36
37
38
39
40
41
42
# File 'app/models/padma_user.rb', line 36

def self.find(id, params = {})
  if id.in?(IGNORED_USERNAMES)
    nil
  else
    super(id, params)
  end
end

.find_with_rails_cache(username, options = {}) ⇒ Object



44
45
46
47
48
49
50
51
52
53
# File 'app/models/padma_user.rb', line 44

def self.find_with_rails_cache(username,options = {})
  pu = Rails.cache.read([username,"padma_user"])
  if pu.nil? || options[:refresh]
    pu = find(username)
    if pu
      Rails.cache.write([username,"padma_user"], pu, :expires_in => (options[:expires_in] || 5.minutes))  
    end
  end
  pu
end

Instance Method Details

#current_accountPadmaAccount

Returns:



56
57
58
59
60
61
62
63
# File 'app/models/padma_user.rb', line 56

def 
  unless 
    if self.
      self.= PadmaAccount.find_with_rails_cache(self.)
    end
  end
  
end

#enabled_accountsArray <PadmaAccount>

Returns me enabled accounts as Padma::Account objects

Returns:



76
77
78
79
# File 'app/models/padma_user.rb', line 76

def enabled_accounts
  return [] if self.accounts.nil?
  self.accounts.reject{|a|!a['enabled']}.map{|a|PadmaAccount.new(a)}
end

#json_rootObject

Attributes will be sent to server under this key. json_root => { … attributes }



87
88
89
# File 'app/models/padma_user.rb', line 87

def json_root
  :user
end

#padma_accountsArray <PadmaAccount>

Returns my accounts as Padma::Account objects

Returns:



69
70
71
72
# File 'app/models/padma_user.rb', line 69

def padma_accounts
  return nil if self.accounts.nil?
  self.accounts.map{|a|PadmaAccount.new(a)}
end

#verbose_help?Boolean

Returns:

  • (Boolean)


81
82
83
# File 'app/models/padma_user.rb', line 81

def verbose_help?
  !!self.verbose_help
end