Class: Collection

Inherits:
Object
  • Object
show all
Defined in:
lib/magis/collection.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(current_user, params, request) ⇒ Collection

Returns a new instance of Collection.



4
5
6
7
8
9
10
11
# File 'lib/magis/collection.rb', line 4

def initialize(current_user, params, request)
  self.resource = params[:resource]
  self.request = request
  self.current_user = current_user

  self.config = Magis.load_collection(resource)
  self.type = self.config["type"]
end

Instance Attribute Details

#configObject

Returns the value of attribute config.



2
3
4
# File 'lib/magis/collection.rb', line 2

def config
  @config
end

#current_userObject

Returns the value of attribute current_user.



2
3
4
# File 'lib/magis/collection.rb', line 2

def current_user
  @current_user
end

#requestObject

Returns the value of attribute request.



2
3
4
# File 'lib/magis/collection.rb', line 2

def request
  @request
end

#resourceObject

Returns the value of attribute resource.



2
3
4
# File 'lib/magis/collection.rb', line 2

def resource
  @resource
end

#typeObject

Returns the value of attribute type.



2
3
4
# File 'lib/magis/collection.rb', line 2

def type
  @type
end

Instance Method Details

#check_verb(method) ⇒ Object



40
41
42
43
44
45
46
# File 'lib/magis/collection.rb', line 40

def check_verb(method)
  if (collection_config["public"] && method == "GET" ) || (collection_config["public"] && method == collection_config[method])
    true
  else
    false
  end
end

#is_accessable?Boolean

Returns:

  • (Boolean)


24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/magis/collection.rb', line 24

def is_accessable?
  user_access = config["user_access"]
  if user_access
    id = user_access["id"]
    type = user_access["type"]
  end
  puts "METHOD"
  puts request.request_method
  puts "METHOD END"
  if config["public"][request.request_method] || [request.request_method]
    true
  else
    false
  end
end

#is_public?Boolean

Returns:

  • (Boolean)


21
22
# File 'lib/magis/collection.rb', line 21

def is_public?
end

#sourceObject



13
14
15
16
17
18
19
# File 'lib/magis/collection.rb', line 13

def source
  if self.config["type"] == "json"
    JSON.parse( IO.read(self.config["source"]+".json") )
  else
    Magis.db[resource]
  end
end