foreman_datacenter 0.1.55 → 1.16.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/stylesheets/foreman_datacenter/datacenter.css +3 -0
- data/app/assets/stylesheets/foreman_datacenter/device_roles.css +32 -0
- data/app/controllers/concerns/foreman_datacenter/controller/racks.rb +10 -0
- data/app/controllers/foreman_datacenter/application_controller.rb +2 -0
- data/app/controllers/foreman_datacenter/sites_controller.rb +6 -1
- data/app/models/foreman_datacenter/device.rb +1 -0
- data/app/models/foreman_datacenter/site.rb +1 -0
- data/app/views/foreman_datacenter/devices/show.html.erb +4 -1
- data/app/views/foreman_datacenter/racks/_device_position.html.erb +21 -3
- data/app/views/foreman_datacenter/racks/_dp.html.erb +46 -0
- data/app/views/foreman_datacenter/racks/_unpositioned_devices.html.erb +1 -1
- data/app/views/foreman_datacenter/racks/show.html.erb +0 -2
- data/app/views/foreman_datacenter/sites/racks.html.erb +19 -0
- data/app/views/foreman_datacenter/sites/show.html.erb +4 -1
- data/config/routes.rb +118 -9
- data/lib/foreman_datacenter/engine.rb +16 -16
- data/lib/foreman_datacenter/version.rb +1 -1
- metadata +6 -5
- data/app/assets/javascripts/foreman_datacenter/modal_bck.js +0 -21
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8fdc07f8a8428f2ff07f5c47407f9b94cc0c115ebb54720b556120eefa76c5c8
|
4
|
+
data.tar.gz: 55ab04f6aceb03e4c444071bf76b52ac25c20e8de74d5f649339e0f990e5ec57
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a44c5f3961fed390a7363020d05b57d311bdf11f845b9cd41f9311a67c80d24d2eaf9133cef64806879f828ce1cc7af2700497e5e17c16aa9f019fc9676a95e4
|
7
|
+
data.tar.gz: e1e7400b28587f9c1c582a3f15ec1b9236afde81d378d8c958082bdf7e1e04f36c3a64d3632bf223148355d87b3f6a9db84e45620001d5f7baeb95a1b272016f
|
@@ -28,3 +28,35 @@ span.mediumgray {
|
|
28
28
|
span.darkgray {
|
29
29
|
background-color: #171515;
|
30
30
|
}
|
31
|
+
|
32
|
+
|
33
|
+
.teal {
|
34
|
+
background-color: #06a79f;
|
35
|
+
}
|
36
|
+
.green {
|
37
|
+
background-color: #89A54E;
|
38
|
+
}
|
39
|
+
.blue {
|
40
|
+
background-color: #3D96AE;
|
41
|
+
}
|
42
|
+
.purple {
|
43
|
+
background-color: #D882d8;
|
44
|
+
}
|
45
|
+
.yellow {
|
46
|
+
background-color: #ecec61;
|
47
|
+
}
|
48
|
+
.orange {
|
49
|
+
background-color: #f37676;
|
50
|
+
}
|
51
|
+
.red {
|
52
|
+
background-color: #AA4643;
|
53
|
+
}
|
54
|
+
.lightgray {
|
55
|
+
background-color: gray;
|
56
|
+
}
|
57
|
+
.mediumgray {
|
58
|
+
background-color: #403e3e;
|
59
|
+
}
|
60
|
+
.darkgray {
|
61
|
+
background-color: #171515;
|
62
|
+
}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
module ForemanDatacenter::Controller::Racks
|
2
|
+
extend ActiveSupport::Concern
|
3
|
+
|
4
|
+
def move
|
5
|
+
@rack_groups = resource_base_search_and_page
|
6
|
+
@racks = @rack_group.racks
|
7
|
+
process_error object: @rack_group, error_msg: 'Current Rack Group haven\'t any Racks.' if @racks.empty?
|
8
|
+
end
|
9
|
+
|
10
|
+
end
|
@@ -3,7 +3,7 @@ module ForemanDatacenter
|
|
3
3
|
include Foreman::Controller::AutoCompleteSearch
|
4
4
|
include ForemanDatacenter::Controller::Parameters::Site
|
5
5
|
|
6
|
-
before_action :find_resource, only: [:show, :edit, :update, :destroy, :move]
|
6
|
+
before_action :find_resource, only: [:show, :edit, :update, :destroy, :move, :racks]
|
7
7
|
|
8
8
|
def index
|
9
9
|
@sites = resource_base_search_and_page
|
@@ -50,6 +50,11 @@ module ForemanDatacenter
|
|
50
50
|
end
|
51
51
|
end
|
52
52
|
|
53
|
+
def racks
|
54
|
+
@racks = @site.racks.includes(:devices)
|
55
|
+
process_error redirect: site_path(@site), error_msg: 'Current site haven\'t any Racks.' if @racks.empty?
|
56
|
+
end
|
57
|
+
|
53
58
|
def move
|
54
59
|
@sites = resource_base_search_and_page
|
55
60
|
@rack_groups = @site.rack_groups
|
@@ -51,6 +51,7 @@ module ForemanDatacenter
|
|
51
51
|
scoped_search in: :device_role, on: :name, complete_value: true, rename: :role
|
52
52
|
scoped_search in: :device_type, on: :model, complete_value: true, rename: :type
|
53
53
|
scoped_search in: :platform, on: :name, complete_value: true, rename: :platform
|
54
|
+
scoped_search in: :comments, on: :content, complete_value: true, rename: :comments
|
54
55
|
|
55
56
|
delegate :site_id, to: :rack, allow_nil: true
|
56
57
|
delegate :manufacturer_id, :is_console_server, :is_pdu, :is_network_device,
|
@@ -20,6 +20,7 @@ module ForemanDatacenter
|
|
20
20
|
scoped_search on: :shipping_address, complete_value: true, default_order: true
|
21
21
|
scoped_search on: :created_at, complete_value: true, default_order: true
|
22
22
|
scoped_search on: :updated_at, complete_value: true, default_order: true
|
23
|
+
scoped_search on: :comments, complete_value: true, default_order: true
|
23
24
|
|
24
25
|
def racks_count
|
25
26
|
@racks_count ||= racks.count
|
@@ -256,7 +256,10 @@
|
|
256
256
|
<% if @device.management_device %>
|
257
257
|
<tr>
|
258
258
|
<td><%= _("Console URL") %></td>
|
259
|
-
<td
|
259
|
+
<td>
|
260
|
+
<%= link_to @device.console_url, "http://#{@device.console_url}", target: "_blank" %>
|
261
|
+
</td>
|
262
|
+
|
260
263
|
</tr>
|
261
264
|
<tr>
|
262
265
|
<td><%= _("Login") %></td>
|
@@ -1,15 +1,15 @@
|
|
1
1
|
<div class="panel panel-default">
|
2
|
-
<div class="panel-heading"><strong><%= _("
|
2
|
+
<div class="panel-heading text-center"><h4 class="nonmargintop nonmarginbottom"><strong><%= link_to _("#{rack.name}"), rack_path(rack) %></strong></h4></div>
|
3
3
|
<table class="<%= table_css_classes 'table-hover panel-body nonmarginbottom' %>">
|
4
4
|
<tbody>
|
5
|
-
<%
|
5
|
+
<% rack.positioned_devices.each do |positions, devices| %>
|
6
6
|
<tr>
|
7
7
|
<td class="col-md-1"><%= raw(positions.map{|p| "#{p}U"}.join("<br />")) %></td>
|
8
8
|
<td class="col-md-4">
|
9
9
|
<% unless devices.empty? %>
|
10
10
|
<% devices.each do |d| %>
|
11
11
|
<div class="<%= "text-" + ((d.side == "full" or d.side.nil?) ? "center" : "right") + " pull-" + ((d.side == "full" or d.side.nil?) ? "center" : d.side) %>">
|
12
|
-
|
12
|
+
<div class="<%= "label " + d.device_role.color.downcase.gsub(" ","") %>" style="border-radius:40px;border:0px;"> </div>
|
13
13
|
<%= link_to d.name, device_path(d) %>
|
14
14
|
<% if d.side.nil? %>
|
15
15
|
*
|
@@ -23,6 +23,24 @@
|
|
23
23
|
</td>
|
24
24
|
</tr>
|
25
25
|
<% end %>
|
26
|
+
<% unless rack.unpositioned_devices.empty? %>
|
27
|
+
<tr>
|
28
|
+
<td class="col-md-1">Unpositioned Devices</td>
|
29
|
+
<td class="col-md-4" style="text-align:center">
|
30
|
+
<% rack.unpositioned_devices.each do |d| %>
|
31
|
+
<div class="<%= "label " + d.device_role.color.downcase.gsub(" ","") %>" style="border-radius:40px;border:0px;"> </div>
|
32
|
+
<%= link_to d.name, device_path(d) %>
|
33
|
+
<% if d.side.nil? %>
|
34
|
+
*
|
35
|
+
<% end %>
|
36
|
+
<% if d.size.nil? %>
|
37
|
+
**
|
38
|
+
<% end %>
|
39
|
+
</br>
|
40
|
+
<% end %>
|
41
|
+
</td>
|
42
|
+
</tr>
|
43
|
+
<% end %>
|
26
44
|
</tbody>
|
27
45
|
</table>
|
28
46
|
</div>
|
@@ -0,0 +1,46 @@
|
|
1
|
+
<div class="panel panel-default">
|
2
|
+
<div class="panel-heading text-center"><h4 class="nonmargintop nonmarginbottom"><strong><%= _("#{rack.name}") %></strong></h4></div>
|
3
|
+
<table class="<%= table_css_classes 'table-hover panel-body nonmarginbottom' %>">
|
4
|
+
<tbody>
|
5
|
+
<% rack.positioned_devices.each do |positions, devices| %>
|
6
|
+
<tr>
|
7
|
+
<td class="col-md-1"><%= raw(positions.map{|p| "#{p}U"}.join("<br />")) %></td>
|
8
|
+
<td class="col-md-4">
|
9
|
+
<% unless devices.empty? %>
|
10
|
+
<% devices.each do |d| %>
|
11
|
+
<div class="<%= "text-" + ((d.side == "full" or d.side.nil?) ? "center" : "right") + " pull-" + ((d.side == "full" or d.side.nil?) ? "center" : d.side) %>">
|
12
|
+
<span class="<%= "label " + d.device_role.color.downcase.gsub(" ","") %>"> </span>
|
13
|
+
<%= link_to d.name, device_path(d) %>
|
14
|
+
<% if d.side.nil? %>
|
15
|
+
*
|
16
|
+
<% end %>
|
17
|
+
<% if d.size.nil? %>
|
18
|
+
**
|
19
|
+
<% end %>
|
20
|
+
</div>
|
21
|
+
<% end %>
|
22
|
+
<% end %>
|
23
|
+
</td>
|
24
|
+
</tr>
|
25
|
+
<% end %>
|
26
|
+
<% unless rack.unpositioned_devices.empty? %>
|
27
|
+
<tr>
|
28
|
+
<td class="col-md-1">Unpositioned Devices</td>
|
29
|
+
<td class="col-md-4">
|
30
|
+
<% rack.unpositioned_devices.each do |d| %>
|
31
|
+
<div class="<%= "label " + d.device_role.color.downcase.gsub(" ","") %>" style="border-radius:40px;border:0px;"> </div>
|
32
|
+
<%= link_to d.name, device_path(d) %>
|
33
|
+
<% if d.side.nil? %>
|
34
|
+
*
|
35
|
+
<% end %>
|
36
|
+
<% if d.size.nil? %>
|
37
|
+
**
|
38
|
+
<% end %>
|
39
|
+
</br>
|
40
|
+
<% end %>
|
41
|
+
</td>
|
42
|
+
</tr>
|
43
|
+
<% end %>
|
44
|
+
</tbody>
|
45
|
+
</table>
|
46
|
+
</div>
|
@@ -2,7 +2,7 @@
|
|
2
2
|
<div class="panel-heading"><strong><%= _("Unpositioned Devices") %></strong></div>
|
3
3
|
<table class="table table-hover panel-body nonmarginbottom">
|
4
4
|
<tbody>
|
5
|
-
<%
|
5
|
+
<% rack.unpositioned_devices.each do |d| %>
|
6
6
|
<tr>
|
7
7
|
<td class="col-md-4">
|
8
8
|
<div class="<%= "text-" + ((d.side == "full" or d.side.nil?) ? "center" : "right") + " pull-" + ((d.side == "full" or d.side.nil?) ? "center" : d.side) %>">
|
@@ -92,8 +92,6 @@
|
|
92
92
|
<div class="col-md-6">
|
93
93
|
<!-- Devices -->
|
94
94
|
<%= render "device_position", rack: @rack %>
|
95
|
-
<!-- Unpositioned Devices -->
|
96
|
-
<%= render "unpositioned_devices", rack: @rack if @rack.unpositioned_devices.count != 0 %>
|
97
95
|
<div><h6 class="text-right"><%= _("* side is not defined") %></h6></div>
|
98
96
|
<div><h6 class="text-right"><%= _("** size is not defined") %></h6></div>
|
99
97
|
</div>
|
@@ -0,0 +1,19 @@
|
|
1
|
+
<% stylesheet 'foreman_datacenter/datacenter' %>
|
2
|
+
<% stylesheet 'foreman_datacenter/device_roles' %>
|
3
|
+
|
4
|
+
<% title h(@site.name) %>
|
5
|
+
|
6
|
+
<%= breadcrumbs(items: [{caption: _('Site %s') % @site.name, url: site_path(@site)}, {caption: _('Racks Overview')}]) %>
|
7
|
+
|
8
|
+
<% @racks.in_groups_of(3).each do |g| %>
|
9
|
+
<div class="row">
|
10
|
+
<% g.compact.each do |rack| %>
|
11
|
+
<div class="col-md-4">
|
12
|
+
<!-- Devices -->
|
13
|
+
<%= render "foreman_datacenter/racks/device_position", rack: rack %>
|
14
|
+
</div>
|
15
|
+
<% end %>
|
16
|
+
</div>
|
17
|
+
<% end %>
|
18
|
+
<div><h6 class="text-right"><%= _("* side is not defined") %></h6></div>
|
19
|
+
<div><h6 class="text-right"><%= _("** size is not defined") %></h6></div>
|
@@ -96,7 +96,10 @@
|
|
96
96
|
</tr>
|
97
97
|
<tr>
|
98
98
|
<td><%= _("Racks") %></td>
|
99
|
-
<td
|
99
|
+
<td>
|
100
|
+
<%= link_to @site.racks_count, racks_path(search: "site=#{@site.name}") %>
|
101
|
+
<%= link_to 'Overview', racks_site_path(@site), class: "btn btn-primary btn-xs pull-right" unless @site.racks.empty? %>
|
102
|
+
</td>
|
100
103
|
</tr>
|
101
104
|
<tr>
|
102
105
|
<td><%= _("Devices") %></td>
|
data/config/routes.rb
CHANGED
@@ -5,7 +5,67 @@ Foreman::Application.routes.draw do
|
|
5
5
|
# new v2 routes that point to v2
|
6
6
|
scope "(:apiv)", :module => :v2, :defaults => {:apiv => 'v2'}, :apiv => /v2/, :constraints => ApiConstraints.new(:version => 2, :default => true) do
|
7
7
|
scope 'foreman_datacenter', module: :foreman_datacenter do
|
8
|
-
resources :
|
8
|
+
resources :console_port_templates, :except => [:new, :edit]
|
9
|
+
resources :console_server_port_templates, :except => [:new, :edit]
|
10
|
+
resources :interface_templates, :except => [:new, :edit]
|
11
|
+
resources :device_bay_templates, :except => [:new, :edit]
|
12
|
+
resources :power_outlet_templates, :except => [:new, :edit]
|
13
|
+
resources :power_port_templates, :except => [:new, :edit]
|
14
|
+
resources :device_types, :except => [:new, :edit]
|
15
|
+
resources :devices do
|
16
|
+
member do
|
17
|
+
delete :destroy_interfaces
|
18
|
+
get :sync_interfaces_with_host
|
19
|
+
end
|
20
|
+
end
|
21
|
+
resources :console_ports, :except => [:new, :edit] do
|
22
|
+
member do
|
23
|
+
patch :connect, :disconnect, :connected, :planned
|
24
|
+
end
|
25
|
+
end
|
26
|
+
resources :console_server_ports, :except => [:new, :edit] do
|
27
|
+
member do
|
28
|
+
patch :connect, :disconnect
|
29
|
+
end
|
30
|
+
end
|
31
|
+
resources :device_bays, :except => [:new, :edit] do
|
32
|
+
member do
|
33
|
+
patch :populate
|
34
|
+
delete :depopulate
|
35
|
+
end
|
36
|
+
end
|
37
|
+
resources :device_interfaces, :except => [:new, :edit] do
|
38
|
+
resources :device_interface_connections, only: [:create]
|
39
|
+
end
|
40
|
+
|
41
|
+
resources :device_interface_connections, :except => [:new, :edit] do
|
42
|
+
member do
|
43
|
+
patch :planned, :connected
|
44
|
+
end
|
45
|
+
end
|
46
|
+
resources :device_interface_connections, only: [:index], path: 'connections' do
|
47
|
+
get :interfaces, on: :collection
|
48
|
+
end
|
49
|
+
|
50
|
+
resources :device_modules, :except => [:new, :edit]
|
51
|
+
resources :management_devices, :except => [:new, :edit]
|
52
|
+
|
53
|
+
resources :power_outlets, :except => [:new, :edit] do
|
54
|
+
member do
|
55
|
+
patch :connect, :disconnect
|
56
|
+
end
|
57
|
+
end
|
58
|
+
resources :sites, except: [:new, :edit]
|
59
|
+
resources :racks, :except => [:new, :edit]
|
60
|
+
resources :rack_groups, :except => [:new, :edit]
|
61
|
+
resources :manufacturers, :except => [:new, :edit]
|
62
|
+
resources :platforms, :except => [:new, :edit]
|
63
|
+
resources :device_roles, :except => [:new, :edit]
|
64
|
+
resources :power_ports, :except => [:new, :edit] do
|
65
|
+
member do
|
66
|
+
patch :connect, :disconnect, :connected, :planned
|
67
|
+
end
|
68
|
+
end
|
9
69
|
end
|
10
70
|
end
|
11
71
|
end
|
@@ -18,16 +78,57 @@ Foreman::Application.routes.draw do
|
|
18
78
|
# get '/datacenter/(:controller)/help', :action => 'welcome', :as => "help"
|
19
79
|
|
20
80
|
scope 'datacenter', module: :foreman_datacenter do
|
21
|
-
|
22
|
-
|
81
|
+
|
82
|
+
post :site_update_associated_objects, to: "sites#update_associated_objects"
|
83
|
+
post :rack_group_update_associated_objects, to: "rack_groups#update_associated_objects"
|
84
|
+
post :rack_update_associated_objects, to: "racks#update_associated_objects"
|
85
|
+
resources :comments, only: [:edit, :update, :destroy, :new]
|
86
|
+
resources :sites do
|
87
|
+
member do
|
88
|
+
get :move
|
89
|
+
get :racks
|
90
|
+
end
|
91
|
+
collection do
|
92
|
+
get 'auto_complete_search'
|
93
|
+
end
|
94
|
+
end
|
23
95
|
resources :racks do
|
96
|
+
member do
|
97
|
+
get :move
|
98
|
+
end
|
99
|
+
collection do
|
100
|
+
get 'auto_complete_search'
|
101
|
+
end
|
24
102
|
get :rack_groups, on: :collection
|
25
103
|
end
|
26
|
-
resources :rack_groups
|
27
|
-
|
28
|
-
|
29
|
-
|
104
|
+
resources :rack_groups do
|
105
|
+
member do
|
106
|
+
get :move
|
107
|
+
end
|
108
|
+
collection do
|
109
|
+
get 'auto_complete_search'
|
110
|
+
end
|
111
|
+
resources :comments, only: [:create]
|
112
|
+
end
|
113
|
+
resources :platforms do
|
114
|
+
collection do
|
115
|
+
get 'auto_complete_search'
|
116
|
+
end
|
117
|
+
end
|
118
|
+
resources :device_roles do
|
119
|
+
collection do
|
120
|
+
get 'auto_complete_search'
|
121
|
+
end
|
122
|
+
end
|
123
|
+
resources :manufacturers do
|
124
|
+
collection do
|
125
|
+
get 'auto_complete_search'
|
126
|
+
end
|
127
|
+
end
|
30
128
|
resources :device_types do
|
129
|
+
collection do
|
130
|
+
get 'auto_complete_search'
|
131
|
+
end
|
31
132
|
resources :interface_templates, only: [:new, :create, :destroy],
|
32
133
|
path: 'interfaces' do
|
33
134
|
get :new_management, on: :collection
|
@@ -44,6 +145,7 @@ Foreman::Application.routes.draw do
|
|
44
145
|
path: 'device_bays'
|
45
146
|
end
|
46
147
|
resources :devices do
|
148
|
+
resources :comments, only: [:create]
|
47
149
|
collection do
|
48
150
|
get :device_types, :racks, :for_rack, :device_type_size, :site_racks
|
49
151
|
get :auto_complete_search
|
@@ -97,16 +199,23 @@ Foreman::Application.routes.draw do
|
|
97
199
|
resources :device_modules, except: [:show, :index], shallow: true
|
98
200
|
resources :management_devices, only: [:new, :create, :edit, :update, :destroy],
|
99
201
|
shallow: true
|
100
|
-
|
101
|
-
resources :comments, only: [:create, :destroy]
|
102
202
|
end
|
103
203
|
resources :device_interface_connections, only: [:index], path: 'connections' do
|
204
|
+
collection do
|
205
|
+
get 'auto_complete_search'
|
206
|
+
end
|
104
207
|
get :interfaces, on: :collection
|
105
208
|
end
|
106
209
|
resources :console_ports, only: [:index] do
|
210
|
+
collection do
|
211
|
+
get 'auto_complete_search'
|
212
|
+
end
|
107
213
|
get :for_device, on: :collection
|
108
214
|
end
|
109
215
|
resources :power_ports, only: [:index] do
|
216
|
+
collection do
|
217
|
+
get 'auto_complete_search'
|
218
|
+
end
|
110
219
|
get :for_device, on: :collection
|
111
220
|
end
|
112
221
|
resources :console_server_ports, only: [] do
|
@@ -315,7 +315,7 @@ module ForemanDatacenter
|
|
315
315
|
:resource_type => "ForemanDatacenter::Rack"
|
316
316
|
# Sites
|
317
317
|
permission :view_sites, {
|
318
|
-
:'foreman_datacenter/sites' => [:show, :index]},
|
318
|
+
:'foreman_datacenter/sites' => [:show, :index, :racks]},
|
319
319
|
:resource_type => "ForemanDatacenter::Site"
|
320
320
|
permission :create_sites, {
|
321
321
|
:'foreman_datacenter/sites' => [:new, :create]},
|
@@ -423,21 +423,21 @@ module ForemanDatacenter
|
|
423
423
|
role "Datacenter Manager", MANAGER
|
424
424
|
add_all_permissions_to_default_roles
|
425
425
|
|
426
|
-
sub_menu :top_menu, :datacenter, :after=> :infrastructure_menu, :icon => 'pficon pficon-enterprise' do
|
427
|
-
menu :top_menu, :sites, :url_hash => { controller: :'foreman_datacenter/sites', action: :index }
|
428
|
-
divider :top_menu, :parent => :datacenter, :after => :sites, :caption => 'Racks'
|
429
|
-
menu :top_menu, :racks, :url_hash => { controller: :'foreman_datacenter/racks', action: :index }
|
430
|
-
menu :top_menu, :rack_groups, :url_hash => { controller: :'foreman_datacenter/rack_groups', action: :index }
|
431
|
-
divider :top_menu, :parent => :datacenter, :after => :rack_groups, :caption => 'Devices'
|
432
|
-
menu :top_menu, :devices, :url_hash => { controller: :'foreman_datacenter/devices', action: :index }
|
433
|
-
menu :top_menu, :device_types, :url_hash => { controller: :'foreman_datacenter/device_types', action: :index }
|
434
|
-
menu :top_menu, :device_roles, :url_hash => { controller: :'foreman_datacenter/device_roles', action: :index }
|
435
|
-
menu :top_menu, :manufacturers, :url_hash => { controller: :'foreman_datacenter/manufacturers', action: :index }
|
436
|
-
menu :top_menu, :platforms, :url_hash => { controller: :'foreman_datacenter/platforms', action: :index }
|
437
|
-
divider :top_menu, :parent => :datacenter, :after => :interfaces, :caption => 'Connections'
|
438
|
-
menu :top_menu, :console_connections, :url_hash => { controller: :'foreman_datacenter/console_ports', action: :index }
|
439
|
-
menu :top_menu, :power_connections, :url_hash => { controller: :'foreman_datacenter/power_ports', action: :index }
|
440
|
-
menu :top_menu, :interface_connections, :url_hash => { controller: :'foreman_datacenter/device_interface_connections', action: :index }
|
426
|
+
sub_menu :top_menu, :datacenter, :after=> :infrastructure_menu, :icon => 'pficon pficon-enterprise', :caption => N_('Datacenter') do
|
427
|
+
menu :top_menu, :sites, :url_hash => { controller: :'foreman_datacenter/sites', action: :index }, :caption => N_('Sites')
|
428
|
+
divider :top_menu, :parent => :datacenter, :after => :sites, :caption => N_('Racks')
|
429
|
+
menu :top_menu, :racks, :url_hash => { controller: :'foreman_datacenter/racks', action: :index }, :caption => N_('Racks')
|
430
|
+
menu :top_menu, :rack_groups, :url_hash => { controller: :'foreman_datacenter/rack_groups', action: :index }, :caption => N_('Rack Groups')
|
431
|
+
divider :top_menu, :parent => :datacenter, :after => :rack_groups, :caption => N_('Devices')
|
432
|
+
menu :top_menu, :devices, :url_hash => { controller: :'foreman_datacenter/devices', action: :index }, :caption => N_('Devices')
|
433
|
+
menu :top_menu, :device_types, :url_hash => { controller: :'foreman_datacenter/device_types', action: :index }, :caption => N_('Device Types')
|
434
|
+
menu :top_menu, :device_roles, :url_hash => { controller: :'foreman_datacenter/device_roles', action: :index }, :caption => N_('Device Roles')
|
435
|
+
menu :top_menu, :manufacturers, :url_hash => { controller: :'foreman_datacenter/manufacturers', action: :index }, :caption => N_('Manufacturers')
|
436
|
+
menu :top_menu, :platforms, :url_hash => { controller: :'foreman_datacenter/platforms', action: :index }, :caption => N_('Platforms')
|
437
|
+
divider :top_menu, :parent => :datacenter, :after => :interfaces, :caption => N_('Connections')
|
438
|
+
menu :top_menu, :console_connections, :url_hash => { controller: :'foreman_datacenter/console_ports', action: :index }, :caption => N_('Console Connections')
|
439
|
+
menu :top_menu, :power_connections, :url_hash => { controller: :'foreman_datacenter/power_ports', action: :index }, :caption => N_('Power Connections')
|
440
|
+
menu :top_menu, :interface_connections, :url_hash => { controller: :'foreman_datacenter/device_interface_connections', action: :index }, :caption => N_('Interface Connections')
|
441
441
|
end
|
442
442
|
end
|
443
443
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: foreman_datacenter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 1.16.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Pavel Ivanov
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2019-05-13 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: prawn
|
@@ -83,7 +83,6 @@ files:
|
|
83
83
|
- app/assets/javascripts/foreman_datacenter/devices.js
|
84
84
|
- app/assets/javascripts/foreman_datacenter/management_devices.js
|
85
85
|
- app/assets/javascripts/foreman_datacenter/modal.js
|
86
|
-
- app/assets/javascripts/foreman_datacenter/modal_bck.js
|
87
86
|
- app/assets/javascripts/foreman_datacenter/racks.js
|
88
87
|
- app/assets/javascripts/foreman_datacenter/shared.js
|
89
88
|
- app/assets/stylesheets/foreman_datacenter/comments.css
|
@@ -142,6 +141,7 @@ files:
|
|
142
141
|
- app/controllers/concerns/foreman_datacenter/controller/parameters/rack.rb
|
143
142
|
- app/controllers/concerns/foreman_datacenter/controller/parameters/rack_group.rb
|
144
143
|
- app/controllers/concerns/foreman_datacenter/controller/parameters/site.rb
|
144
|
+
- app/controllers/concerns/foreman_datacenter/controller/racks.rb
|
145
145
|
- app/controllers/concerns/foreman_datacenter/hosts_controller_extensions.rb
|
146
146
|
- app/controllers/foreman_datacenter/application_controller.rb
|
147
147
|
- app/controllers/foreman_datacenter/comments_controller.rb
|
@@ -463,6 +463,7 @@ files:
|
|
463
463
|
- app/views/foreman_datacenter/rack_groups/welcome.html.erb
|
464
464
|
- app/views/foreman_datacenter/racks/_device_position.html.erb
|
465
465
|
- app/views/foreman_datacenter/racks/_device_position.html.erb.back
|
466
|
+
- app/views/foreman_datacenter/racks/_dp.html.erb
|
466
467
|
- app/views/foreman_datacenter/racks/_form.html.erb
|
467
468
|
- app/views/foreman_datacenter/racks/_rack_groups.html.erb
|
468
469
|
- app/views/foreman_datacenter/racks/_unpositioned_devices.html.erb
|
@@ -480,6 +481,7 @@ files:
|
|
480
481
|
- app/views/foreman_datacenter/sites/index.html.erb
|
481
482
|
- app/views/foreman_datacenter/sites/move.html.erb
|
482
483
|
- app/views/foreman_datacenter/sites/new.html.erb
|
484
|
+
- app/views/foreman_datacenter/sites/racks.html.erb
|
483
485
|
- app/views/foreman_datacenter/sites/show.html.erb
|
484
486
|
- app/views/foreman_datacenter/sites/welcome.html.erb
|
485
487
|
- app/views/hosts/import_to_device.html.erb
|
@@ -592,8 +594,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
592
594
|
- !ruby/object:Gem::Version
|
593
595
|
version: '0'
|
594
596
|
requirements: []
|
595
|
-
|
596
|
-
rubygems_version: 2.7.6
|
597
|
+
rubygems_version: 3.0.2
|
597
598
|
signing_key:
|
598
599
|
specification_version: 4
|
599
600
|
summary: A plugin that lets you document your servers in a datacenter
|
@@ -1,21 +0,0 @@
|
|
1
|
-
$(function () {
|
2
|
-
var modal = $('#myModal');
|
3
|
-
var btn = $('#init-modal');
|
4
|
-
var span = $('.close');
|
5
|
-
btn.click(function() {
|
6
|
-
modal.css("display","block");
|
7
|
-
});
|
8
|
-
span.click(function() {
|
9
|
-
modal.css("display","none");
|
10
|
-
});
|
11
|
-
$(window).click(function(event) {
|
12
|
-
if (event.target.id == "myModal") {
|
13
|
-
modal.css("display","none");
|
14
|
-
}
|
15
|
-
});
|
16
|
-
$(document).keyup(function(e) {
|
17
|
-
if (e.keyCode === 27) {
|
18
|
-
modal.css("display","none");
|
19
|
-
}
|
20
|
-
});
|
21
|
-
});
|