Class: Mailroute::Admin
- Inherits:
-
Base
show all
- Defined in:
- lib/mailroute/models/admin.rb
Class Method Summary
collapse
Instance Method Summary
collapse
Methods inherited from Base
bulk_create, delete, has_admins, has_many, has_one, headers, #initialize, instantiate_collection, instantiate_collection_without_meta, list, #load, meta, #to_json, total_count
included
Class Method Details
.collection_path(prefix_options = {}, query_options = nil) ⇒ Object
5
6
7
8
9
10
11
|
# File 'lib/mailroute/models/admin.rb', line 5
def self.collection_path(prefix_options = {}, query_options = nil)
scope = prefix_options.delete(:scope) || (query_options && query_options.delete(:scope))
raise 'Scope is missing' unless scope
check_prefix_options(prefix_options)
prefix_options, query_options = split_options(prefix_options) if query_options.nil?
"#{prefix(prefix_options)}admins/#{scope[:name]}/#{scope[:id]}/#{query_string(query_options)}"
end
|
.element_path(id, prefix_options = {}, query_options = nil) ⇒ Object
13
14
15
16
17
18
19
|
# File 'lib/mailroute/models/admin.rb', line 13
def self.element_path(id, prefix_options = {}, query_options = nil)
scope = prefix_options.delete(:scope) || (query_options && query_options.delete(:scope))
raise 'Scope is missing' unless scope
check_prefix_options(prefix_options)
prefix_options, query_options = split_options(prefix_options) if query_options.nil?
"#{prefix(prefix_options)}admins/#{scope[:name]}/#{scope[:id]}/admin/#{URI.parser.escape id.to_s}/#{query_string(query_options)}"
end
|
.get(id, scope) ⇒ Object
56
57
58
|
# File 'lib/mailroute/models/admin.rb', line 56
def self.get(id, scope)
find(id, :params => { :scope => { :name => scope.keys.first, :id => scope.values.first } })
end
|
Instance Method Details
35
36
37
38
39
40
41
|
# File 'lib/mailroute/models/admin.rb', line 35
def customer
if resource_uri =~ /admins\/customer\/(\d+)\/admin/
@customer ||= Mailroute::Customer.get($1.to_i)
else
nil
end
end
|
#element_path ⇒ Object
21
22
23
|
# File 'lib/mailroute/models/admin.rb', line 21
def element_path
super(scope)
end
|
#regenerate_api_key ⇒ Object
25
26
27
28
|
# File 'lib/mailroute/models/admin.rb', line 25
def regenerate_api_key
response = connection.post(element_path + 'regenerate_api_key/', nil, self.class.)
self.class.format.decode(response.body)['api_key']
end
|
51
52
53
54
|
# File 'lib/mailroute/models/admin.rb', line 51
def reload
@customer = @reseller = nil
super
end
|
43
44
45
46
47
48
49
|
# File 'lib/mailroute/models/admin.rb', line 43
def reseller
if resource_uri =~ /admins\/reseller\/(\d+)\/admin/
@reseller ||= Mailroute::Reseller.get($1.to_i)
else
nil
end
end
|
30
31
32
33
|
# File 'lib/mailroute/models/admin.rb', line 30
def scope
raise 'invalid state' unless resource_uri =~ /admins\/([^\/]+)\/(\d+)\/admin/
{ :scope => { :id => $2.to_i, :name => $1 } }
end
|