Class: ForestLiana::ResourcesController

Inherits:
ApplicationController show all
Defined in:
app/controllers/forest_liana/resources_controller.rb

Instance Method Summary collapse

Methods inherited from ApplicationController

#authenticate_user_from_jwt, #current_user, #serialize_model, #serialize_models

Instance Method Details

#createObject



28
29
30
31
32
33
34
35
36
37
# File 'app/controllers/forest_liana/resources_controller.rb', line 28

def create
  getter = ResourceCreator.new(@resource, params)
  getter.perform

  ActivityLogger.new.perform(current_user, 'created', params[:collection],
                            getter.record.id)

  render serializer: nil,
    json: serialize_model(getter.record, include: includes)
end

#destroyObject



50
51
52
53
54
55
# File 'app/controllers/forest_liana/resources_controller.rb', line 50

def destroy
  @resource.destroy_all(id: params[:id])
  ActivityLogger.new.perform(current_user, 'deleted', params[:collection],
                            params[:id])
  render nothing: true, status: 204
end

#indexObject



10
11
12
13
14
15
16
17
18
# File 'app/controllers/forest_liana/resources_controller.rb', line 10

def index
  getter = ResourcesGetter.new(@resource, params)
  getter.perform

  render serializer: nil, json: serialize_models(getter.records,
                                                 include: includes,
                                                 count: getter.count,
                                                 params: params)
end

#showObject



20
21
22
23
24
25
26
# File 'app/controllers/forest_liana/resources_controller.rb', line 20

def show
  getter = ResourceGetter.new(@resource, params)
  getter.perform

  render serializer: nil, json:
    serialize_model(getter.record, include: includes)
end

#updateObject



39
40
41
42
43
44
45
46
47
48
# File 'app/controllers/forest_liana/resources_controller.rb', line 39

def update
  getter = ResourceUpdater.new(@resource, params)
  getter.perform

  ActivityLogger.new.perform(current_user, 'updated', params[:collection],
                            getter.record.id)

  render serializer: nil,
    json: serialize_model(getter.record, include: includes)
end