Class: Umbreo::Models::Module

Inherits:
Object
  • Object
show all
Defined in:
lib/umbreo/models/module.rb

Instance Method Summary collapse

Constructor Details

#initialize(credentials = {}) ⇒ Module

Returns a new instance of Module.



5
6
7
8
9
10
11
# File 'lib/umbreo/models/module.rb', line 5

def initialize(credentials = {})
	if credentials.present?
		@email    = credentials[:email]
		@api_key  = credentials[:api_key]
		@endpoint = credentials[:end_point] || SERVER_END_POINT
	end
end

Instance Method Details

#all(filter = {}) ⇒ Object



28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'lib/umbreo/models/module.rb', line 28

def all(filter = {})
	@errors << "Search keyword is required." if filter[:keyword].blank? && filter[:search]
	
	if valid?
		retrieve_data(filter)

   	if @data['umbreo_modules'].present?
   		page = " | Page: #{filter[:page]} of #{@data['total_page']} pages"
        Helpers::Table.show_table(@data['umbreo_modules'], "List Module#{ page if @data['total_page'] > 1 }", ['ID', 'Name', 'Description'])
   	else
   		Helpers::AlertMessage.show_error_message(@data["message"])
   	end
	else
		Helpers::AlertMessage.show_error_message(error)
	end
end

#errorObject

Get first error



55
56
57
# File 'lib/umbreo/models/module.rb', line 55

def error
	@errors.first
end

#retrieve_data(filter = {}) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/umbreo/models/module.rb', line 13

def retrieve_data(filter = {})
	Helpers::ErrorException.rescue do
		data = Typhoeus.get(
			          "#{@endpoint}/api/v1/modules",
			          body: {
			            authenticate_token: @api_key,
			            email:              @email,
			            filter:             filter
			          }
			        )
			        
   	@data = JSON.parse data.response_body
	end
end

#valid?Boolean

Check no error from validation

Returns:

  • (Boolean)


48
49
50
# File 'lib/umbreo/models/module.rb', line 48

def valid?
	@errors.blank?
end