Class: ForemanDatacenter::DeviceTypesController

Inherits:
ApplicationController show all
Includes:
Foreman::Controller::AutoCompleteSearch, Controller::Parameters::DeviceType
Defined in:
app/controllers/foreman_datacenter/device_types_controller.rb

Instance Method Summary collapse

Methods inherited from ApplicationController

#action_permission, #controller_permission, #find_resource, #not_found, #resource_class, #resource_class_for, #resource_finder, #resource_name, #resource_scope, #scope_for

Instance Method Details

#createObject



24
25
26
27
28
29
30
31
32
# File 'app/controllers/foreman_datacenter/device_types_controller.rb', line 24

def create
  @device_type = ForemanDatacenter::DeviceType.new(device_type_params)

  if @device_type.save
    process_success object: @device_type
  else
    process_error object: @device_type
  end
end

#destroyObject



42
43
44
45
46
47
48
49
50
51
52
53
54
# File 'app/controllers/foreman_datacenter/device_types_controller.rb', line 42

def destroy
  unless params['object_only']
    @device_type.devices.each { |d| d.destroy }
  else
    @device_type.devices.delete_all(:nullify)
  end

  if @device_type.destroy
    process_success success_redirect: device_types_path
  else
    process_error object: @device_type
  end
end

#editObject



21
22
# File 'app/controllers/foreman_datacenter/device_types_controller.rb', line 21

def edit
end

#indexObject



8
9
10
# File 'app/controllers/foreman_datacenter/device_types_controller.rb', line 8

def index
  @device_types = resource_base_search_and_page.includes(:manufacturer)
end

#newObject



15
16
17
18
19
# File 'app/controllers/foreman_datacenter/device_types_controller.rb', line 15

def new
  @device_type = ForemanDatacenter::DeviceType.new(u_height: 1, is_full_depth: true,
                                                   is_console_server: false, is_pdu: false,
                                                   is_network_device: true)
end

#showObject



12
13
# File 'app/controllers/foreman_datacenter/device_types_controller.rb', line 12

def show
end

#updateObject



34
35
36
37
38
39
40
# File 'app/controllers/foreman_datacenter/device_types_controller.rb', line 34

def update
  if @device_type.update(device_type_params)
    process_success object: @device_type
  else
    process_error object: @device_type
  end
end