Class: ForemanDatacenter::ConsolePortsController

Inherits:
ApplicationController show all
Includes:
Foreman::Controller::AutoCompleteSearch, ForemanDatacenter::Controller::Parameters::ConsolePort
Defined in:
app/controllers/foreman_datacenter/console_ports_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

#connectObject



69
70
71
72
73
74
75
76
# File 'app/controllers/foreman_datacenter/console_ports_controller.rb', line 69

def connect
  console_server_port = ConsoleServerPort.find(params[:console_server_port][:id])
  @console_port.connect(
    console_server_port,
    params[:console_port][:connection_status]
  )
  process_success(success_msg: "Console port was successfully connected.", success_redirect: device_url(id: @console_port.device_id))
end

#connectedObject



56
57
58
59
# File 'app/controllers/foreman_datacenter/console_ports_controller.rb', line 56

def connected
  @console_port.connected!
  head :ok
end

#createObject



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

def create
  @console_port = ConsolePort.new(console_port_params.merge(device_id: params[:device_id]))

  if @console_port.save
    process_success success_redirect: device_path(@console_port.device_id)
  else
    process_error object: @console_port
  end
end

#destroyObject



43
44
45
46
47
48
49
# File 'app/controllers/foreman_datacenter/console_ports_controller.rb', line 43

def destroy
  if @console_port.destroy
    process_success success_redirect: device_path(@console_port.device_id)
  else
    process_error object: @console_port
  end
end

#disconnectObject



78
79
80
81
# File 'app/controllers/foreman_datacenter/console_ports_controller.rb', line 78

def disconnect
  @console_port.disconnect
  process_success(success_msg: "Console port was successfully disconnected.", success_redirect: device_url(id: @console_port.device_id))
end

#editObject



22
23
# File 'app/controllers/foreman_datacenter/console_ports_controller.rb', line 22

def edit
end

#for_deviceObject



51
52
53
54
# File 'app/controllers/foreman_datacenter/console_ports_controller.rb', line 51

def for_device
  @device = Device.find(params[:device_id])
  render partial: 'for_device'
end

#indexObject



10
11
12
13
14
# File 'app/controllers/foreman_datacenter/console_ports_controller.rb', line 10

def index
  @console_ports = resource_base_search_and_page.where.not(console_server_port_id: nil).includes(:device, console_server_port: [:device])
  # @console_ports = ConsolePort.where.not(console_server_port_id: nil).
  #   includes(:device, console_server_port: [:device])
end

#newObject



16
17
18
19
20
# File 'app/controllers/foreman_datacenter/console_ports_controller.rb', line 16

def new
  @console_port = ConsolePort.new(
    device: Device.find(params[:device_id])
  )
end

#new_connectionObject



66
67
# File 'app/controllers/foreman_datacenter/console_ports_controller.rb', line 66

def new_connection
end

#plannedObject



61
62
63
64
# File 'app/controllers/foreman_datacenter/console_ports_controller.rb', line 61

def planned
  @console_port.planned!
  head :ok
end

#updateObject



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

def update
  if @console_port.update(console_port_params)
    process_success success_redirect: device_path(@console_port.device_id)
  else
    process_error object: @console_port
  end
end