Class: Ecoportal::API::Internal::Account
Instance Attribute Summary
#doc
Instance Method Summary
collapse
#as_update, #initialize, passthrough, #print, #to_json
Instance Method Details
#as_json ⇒ Object
15
16
17
18
19
20
21
22
23
24
|
# File 'lib/ecoportal/api/internal/account.rb', line 15
def as_json
super.tap do |hash|
if preset == "custom"
hash["permissions_custom"] = permissions.as_json
else
hash.delete "permissions_custom"
end
hash["preferences"] = preferences.as_json
end
end
|
#permissions ⇒ Object
26
27
28
29
30
|
# File 'lib/ecoportal/api/internal/account.rb', line 26
def permissions
return @permissions if defined?(@permissions)
doc["permissions_custom"] ||= {}
@permissions = Internal::Permissions.new(doc["permissions_custom"])
end
|
#preferences ⇒ Object
32
33
34
35
36
|
# File 'lib/ecoportal/api/internal/account.rb', line 32
def preferences
return @preferences if defined?(@preferences)
doc["preferences"] ||= {}
@preferences = Internal::Preferences.new(doc["preferences"])
end
|
#preset ⇒ Object
11
12
13
|
# File 'lib/ecoportal/api/internal/account.rb', line 11
def preset
self.permissions_preset.nil? ? "custom" : self.permissions_preset
end
|
#preset=(value) ⇒ Object
7
8
9
|
# File 'lib/ecoportal/api/internal/account.rb', line 7
def preset=(value)
self.permissions_preset = value == "custom" ? nil : value
end
|