Skip to content

Commit

Permalink
Update layout/navigation
Browse files Browse the repository at this point in the history
  • Loading branch information
B-Rass committed Apr 10, 2024
1 parent a3d8bc2 commit ec20efe
Show file tree
Hide file tree
Showing 9 changed files with 145 additions and 125 deletions.
13 changes: 8 additions & 5 deletions app/views/layouts/_header.html.erb
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
<header>
<nav class="navbar navbar-expand-lg bg-body-tertiary sticky-top">
<header class="sticky-top">
<nav class="navbar navbar-expand-lg bg-body-tertiary" role="menu">
<div class="container">
<a class="navbar-brand" href="#">
<%= link_to root_path, class: "navbar-brand" do %>
<%= image_tag "datacenter-02.png", style: "height: 40px;" %>
</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<% end %>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent"
aria-controls="navbarSupportedContent"
aria-expanded="false"
aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarSupportedContent">
Expand Down
8 changes: 4 additions & 4 deletions app/views/layouts/application.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,18 @@
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title><%= content_for?(:title) ? yield(:title) : "Gestion de salle #{Rails.env.development? ? '(dev)' : 'DCIM'}" %></title>
<title><%= content_for?(:title) ? yield(:title) : "Gestion de salle #{Rails.env.development? ? "(dev)" : "DCIM"}" %></title>
<meta name="description" content="<%= content_for?(:description) ? yield(:description) : "My DCIM" %>">

<%= csrf_meta_tags %>
<%= stylesheet_link_tag 'application', media: 'all' %>
<%= stylesheet_link_tag "application", media: "all" %>
<%= javascript_importmap_tags "application" %>
</head>
<body>
<%= render 'layouts/header' %>
<%= render "layouts/header" %>
<main role="main">
<%= render 'layouts/messages' %>
<%= render "layouts/messages" %>
<%= yield %>
</main>
</body>
Expand Down
61 changes: 39 additions & 22 deletions app/views/layouts/navigation/_devices_dropdown.html.erb
Original file line number Diff line number Diff line change
@@ -1,24 +1,31 @@
<li class="nav-item dropdown">
<a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false">Matériels</a>
<li class="nav-item dropdown" role="menuitem">
<a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" role="button" data-bs-toggle="dropdown"
aria-expanded="false">
<%= t(".equipments") %>
</a>
<ul class="dropdown-menu">
<li><%= link_to 'Rechercher un matériel', servers_grids_path %></li>
<li role="separator" class="divider"></li>
<li class="dropdown-header">Filtrer par :</li>
<li class="dropdown-submenu">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">
Gestionnaire
<li><%= link_to t(".search_equipment"), servers_grids_path, class: "dropdown-item" %></li>
<li><hr class="dropdown-divider"></li>
<li><h6 class="dropdown-header"><%= t(".filter_by") %></h6></li>
<li class="nav-item dropdown-submenu" role="menuitem">
<a href="#" class="dropdown-toggle dropdown-item" data-toggle="dropdown" role="button" aria-haspopup="true"
aria-expanded="false">
<%= Gestion.model_name.human %>
</a>
<ul class="dropdown-menu">
<% Gestion.order(Gestion.arel_table[:name].lower).each do |c| %>
<li <%= "class=active" if params[:gestion_id]==c.id.to_s %> >
<%= link_to c.name, overview_rooms_path(gestion_id: c.id, :view => params[:view], bg: (params[:bg]||'modele') ) %>
</li>
<li>
<%= link_to c.name,
overview_rooms_path(gestion_id: c.id, view: params[:view], bg: (params[:bg] || "modele") ),
class: class_names("dropdown-item", active: params[:gestion_id] == c.id.to_s) %>
</li>
<% end %>
</ul>
</li>
<li class="dropdown-submenu">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">
Cluster
<li class="nav-item dropdown-submenu" role="menuitem">
<a href="#" class="dropdown-toggle dropdown-item" data-toggle="dropdown" role="button" aria-haspopup="true"
aria-expanded="false">
<%= Cluster.model_name.human %>
</a>
<ul class="dropdown-menu">
<li>
Expand All @@ -27,8 +34,12 @@
<ul class="list-unstyled col-md-4">
<% clusters.each do |c| %>
<% if c.present? %>
<li <%= "class=active" if params[:cluster_id]==c.id.to_s %> >
<%= link_to c.to_s, overview_rooms_path(cluster_id: c.id, :view => params[:view], bg: (params[:bg]||'modele') ) %>
<li>
<%= link_to c.to_s,
overview_rooms_path(cluster_id: c.id,
view: params[:view],
bg: (params[:bg] || "modele") ),
class: class_names("dropdown-item", active: params[:cluster_id] == c.id.to_s) %>
</li>
<% end %>
<% end %>
Expand All @@ -38,17 +49,23 @@
</li>
</ul>
</li>
<li class="dropdown-submenu">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">
Modèles de machine
<li class="nav-item dropdown-submenu" role="menuitem">
<a href="#" class="dropdown-toggle dropdown-item" data-toggle="dropdown" role="button" aria-haspopup="true"
aria-expanded="false">
<%= Modele.model_name.human %>
</a>
<ul class="dropdown-menu">
<li>
<div>
<ul style="width:860px;max-height: 600px;overflow: auto;display: flex;flex-direction: column;flex-wrap: wrap;" class="list-unstyled modeles">
<ul style="width:860px;max-height: 600px;overflow: auto;display: flex;flex-direction: column;flex-wrap: wrap;"
class="list-unstyled modeles">
<% Modele.all_sorted_with_servers.each do |modele| %>
<li class="<%= "active" if params[:modele_id] == modele.id.to_s %>" style="max-width: 265px;">
<%= link_to modele.name_with_brand, overview_rooms_path(modele_id: modele.id, :view => params[:view], bg: (params[:bg] || 'modele')) %>
<li>
<%= link_to modele.name_with_brand,
overview_rooms_path(modele_id: modele.id,
view: params[:view],
bg: (params[:bg] || "modele")),
class: class_names("dropdown-item", active: params[:modele_id] == modele.id.to_s) %>
</li>
<% end %>
</ul>
Expand Down
63 changes: 30 additions & 33 deletions app/views/layouts/navigation/_inventories_dropdown.html.erb
Original file line number Diff line number Diff line change
@@ -1,41 +1,38 @@
<li class="nav-item dropdown">
<a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false">
<li class="nav-item dropdown" role="menuitem">
<a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" role="button" data-bs-toggle="dropdown"
aria-expanded="false">
<%= t("inventories") %>
</a>
<ul class="dropdown-menu">
<li class="dropdown-header">Localisation</li>
<li><a href="<%= sites_path %>"><%= Site.model_name.human.pluralize %></a></li>
<li><a href="<%= rooms_path %>"><%= Room.model_name.human.pluralize %></a></li>
<li><a href="<%= islets_path %>"><%= Islet.model_name.human.pluralize %></a></li>
<li><a href="<%= bays_path %>"><%= Bay.model_name.human.pluralize %></a></li>
<li><a href="<%= frames_path %>"><%= Frame.model_name.human %></a></li>
<li><h6 class="dropdown-header"><%= t("pages.params_menu.location.title") %></h6></li>
<li><a href="<%= sites_path %>" class="dropdown-item" role="menuitem"><%= Site.model_name.human.pluralize %></a></li>
<li><a href="<%= rooms_path %>" class="dropdown-item" role="menuitem"><%= Room.model_name.human.pluralize %></a></li>
<li><a href="<%= islets_path %>" class="dropdown-item" role="menuitem"><%= Islet.model_name.human.pluralize %></a></li>
<li><a href="<%= bays_path %>" class="dropdown-item" role="menuitem"><%= Bay.model_name.human.pluralize %></a></li>
<li><a href="<%= frames_path %>" class="dropdown-item" role="menuitem"><%= Frame.model_name.human %></a></li>

<li role="separator" class="divider"></li>
<li class="dropdown-header">Matériel</li>
<li><a href="<%= servers_path %>">Matériels</a></li>
<li><hr class="dropdown-divider"></li>
<li><h6 class="dropdown-header"><%= t("pages.params_menu.equipment.title") %></h6></li>
<li><a href="<%= servers_path %>" class="dropdown-item" role="menuitem">Matériels</a></li>

<li role="separator" class="divider"></li>
<li class="dropdown-header"><%= t("pages.params_menu.features.title")%></li>
<li><a href="<%= modeles_path %>"><%= Modele.model_name.human.pluralize %></a></li>
<li><a href="<%= categories_path %>"><%= Category.model_name.human.pluralize %></a></li>
<li><a href="<%= architectures_path %>"><%= Architecture.model_name.human.pluralize %></a></li>
<li><a href="<%= manufacturers_path %>"><%= Manufacturer.model_name.human.pluralize %></a></li>
<li><a href="<%= stacks_path %>"><%= Stack.model_name.human.pluralize %></a></li>
<li><a href="<%= card_types_path %>"><%= CardType.model_name.human(count: 2) %></a></li>
<li><a href="<%= port_types_path %>"><%= PortType.model_name.human(count: 2) %></a></li>
<li><hr class="dropdown-divider"></li>
<li><h6 class="dropdown-header"><%= t("pages.params_menu.features.title")%></h6></li>
<li><a href="<%= modeles_path %>" class="dropdown-item" role="menuitem"><%= Modele.model_name.human.pluralize %></a></li>
<li><a href="<%= categories_path %>" class="dropdown-item" role="menuitem"><%= Category.model_name.human.pluralize %></a></li>
<li>
<a href="<%= architectures_path %>" class="dropdown-item" role="menuitem"><%= Architecture.model_name.human.pluralize %></a>
</li>
<li>
<a href="<%= manufacturers_path %>" class="dropdown-item" role="menuitem"><%= Manufacturer.model_name.human.pluralize %></a>
</li>
<li><a href="<%= stacks_path %>" class="dropdown-item" role="menuitem"><%= Stack.model_name.human.pluralize %></a></li>
<li><a href="<%= card_types_path %>" class="dropdown-item" role="menuitem"><%= CardType.model_name.human(count: 2) %></a></li>
<li><a href="<%= port_types_path %>" class="dropdown-item" role="menuitem"><%= PortType.model_name.human(count: 2) %></a></li>

<li role="separator" class="divider"></li>
<li class="dropdown-header"><%= t("pages.params_menu.exploitation.title")%></li>
<li><a href="<%= domaines_path %>"><%= Domaine.model_name.human.pluralize %></a></li>
<li><a href="<%= gestions_path %>"><%= Gestion.model_name.human.pluralize %></a></li>
<li><a href="<%= clusters_path %>"><%= Cluster.model_name.human.pluralize %></a></li>

<!--
<li><a href="<%= colors_path %>">Couleurs</a></li>
<li><a href="<%= maintainers_path %>">Mainteneurs</a></li>
<li><a href="<%= contract_types_path %>">Contrats de maintenance</a></li>
<li><a href="<%= disk_types_path %>">Types de disque</a></li>
<li><a href="<%= memory_types_path %>">Types de RAM</a></li>
-->
<li><hr class="dropdown-divider"></li>
<li><h6 class="dropdown-header"><%= t("pages.params_menu.exploitation.title")%></h6></li>
<li><a href="<%= domaines_path %>" class="dropdown-item" role="menuitem"><%= Domaine.model_name.human.pluralize %></a></li>
<li><a href="<%= gestions_path %>" class="dropdown-item" role="menuitem"><%= Gestion.model_name.human.pluralize %></a></li>
<li><a href="<%= clusters_path %>" class="dropdown-item" role="menuitem"><%= Cluster.model_name.human.pluralize %></a></li>
</ul>
</li>
51 changes: 26 additions & 25 deletions app/views/layouts/navigation/_nav_links_administration.html.erb
Original file line number Diff line number Diff line change
@@ -1,30 +1,31 @@
<% if user_signed_in? %>
<li class="nav-item"><%= link_to t('changelog_entries.title'), changelog_entries_path, class: "nav-link" %></li>
<% if current_user.try(:admin?) %>
<li class="nav-item dropdown">
<a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false">
Administration
</a>
<ul class="dropdown-menu">
<li><%= link_to User.model_name.human.pluralize, users_path, class: "dropdown-item" %></li>
<li><%= link_to 'Activité', activities_path, class: "dropdown-item" %></li>
<!-- <li><%= link_to 'Import de données', data_import_path %></li> -->
<li><hr class="dropdown-divider"></li>
<li><%= link_to 'Informations', about_path, class: "dropdown-item" %></li>
</ul>
</li>
<% end %>
<li class="nav-item dropdown">
<a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false">
<%= t('users.my_account.title') %>
<li class="nav-item" role="menuitem">
<%= link_to t("changelog_entries.title"), changelog_entries_path, class: "nav-link" %>
</li>
<% if current_user.try(:admin?) %>
<li class="nav-item dropdown" role="menuitem">
<a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" role="button" data-bs-toggle="dropdown"
aria-expanded="false">
<%= t(".administration") %>
</a>
<ul class="dropdown-menu">
<li><%= link_to t('users.my_account.edit'), edit_user_registration_path, class: "dropdown-item" %></li>
<li><%= link_to t('users.logout'), destroy_user_session_path, :method => 'delete', class: "dropdown-item" %></li>
<li role="menuitem"><%= link_to User.model_name.human.pluralize, users_path, class: "dropdown-item" %></li>
<li role="menuitem"><%= link_to t(".activity"), activities_path, class: "dropdown-item" %></li>
<li role="menuitem"><hr class="dropdown-divider"></li>
<li role="menuitem"><%= link_to t(".informations"), about_path, class: "dropdown-item" %></li>
</ul>
</li>
<li></li>
<% else %>
<li><%= link_to 'Connexion', new_user_session_path, class: "nav-item" %></li>
<li><%= link_to 'Inscription', new_user_registration_path, class: "nav-item" %></li>
<% end %>
<li class="nav-item dropdown" role="menuitem">
<a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" role="button" data-bs-toggle="dropdown"
aria-expanded="false">
<%= t("users.my_account.title") %>
</a>
<ul class="dropdown-menu dropdown-menu-end">
<li role="menuitem">
<%= link_to t("users.my_account.edit"), edit_user_registration_path, class: "dropdown-item" %>
</li>
<li role="menuitem">
<%= link_to t("users.logout"), destroy_user_session_path, method: :delete, class: "dropdown-item link-danger" %>
</li>
</ul>
</li>
9 changes: 5 additions & 4 deletions app/views/layouts/navigation/_projects_dropdown.html.erb
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
<li class="nav-item dropdown">
<a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false">
Projets
<li class="nav-item dropdown" role="menuitem">
<a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" role="button" data-bs-toggle="dropdown"
aria-expanded="false">
<%= t(".projects") %>
</a>
<ul class="dropdown-menu">
<li><%= link_to "Déplacements prévus", moves_path, class: "dropdown-item" %></li>
<li role="menuitem"><%= link_to t(".moves"), moves_path, class: "dropdown-item" %></li>
</ul>
</li>
41 changes: 10 additions & 31 deletions app/views/layouts/navigation/_visualization_dropdown.html.erb
Original file line number Diff line number Diff line change
@@ -1,41 +1,20 @@
<li class="nav-item dropdown">
<a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false">
<li class="nav-item dropdown" role="menuitem">
<a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown" role="button" data-bs-toggle="dropdown"
aria-expanded="false">
<%= t("visualization") %>
</a>
<ul class="dropdown-menu">
<li><%= link_to 'Afficher toutes les salles', overview_rooms_path, class: "dropdown-item" %></li>
<li><%= link_to t("rooms.capacity_view.title"), capacity_rooms_path, class: "dropdown-item" %></li>
<li><%= link_to 'Vue infrastructure', infrastructure_rooms_path, class: "dropdown-item" %></li>
<% sites = Site.joins(:rooms).includes(:rooms => [:bays => [:bay_type]]).order(:position).distinct %>
<li role="menuitem"><%= link_to t("rooms.overview_view.title"), overview_rooms_path, class: "dropdown-item" %></li>
<li role="menuitem"><%= link_to t("rooms.capacity_view.title"), capacity_rooms_path, class: "dropdown-item" %></li>
<li role="menuitem"><%= link_to t("rooms.infrastructure_view.title"), infrastructure_rooms_path, class: "dropdown-item" %></li>
<% sites = Site.joins(:rooms).order(:position).distinct %>
<% sites.each do |site| %>
<li><hr class="dropdown-divider"></li>
<li class="dropdown-header"><%= site %></li>
<li><h6 class="dropdown-header"><%= site %></h6></li>
<% rooms = site.rooms.sorted.distinct %>
<% rooms.each do |room| %>
<% islets = room.islets.sorted.not_empty.has_name.distinct %>
<li class="<%= islets.present? ? 'dropdown-submenu' : '' %>">
<%= link_to room.name, room_path(room, :view => params[:view], bg: params[:bg]) %>
<% if islets.size > 1 %>
<ul class="dropdown-menu">
<% islets.each do |islet| %>
<li class="dropdown-submenu">
<%= link_to "#{room.name}-ilot#{islet.name}", room_path(room, islet: islet.name, :view => params[:view], bg: params[:bg]) %>
<div class="dropdown-menu" style="width: <%= calculated_menu_width(islet) %>px;">
<% if islet.bays.present? %>
<%= render 'bays/overview', bays: islet.bays.sorted, islet: islet.name %>
<% end %>
</div>
</li>
<% end %>
</ul>
<% else %>
<% islet = islets.first if islets.present? && islets.first.bays.present? %>
<% if islet %>
<ul class="dropdown-menu" style="width: <%= calculated_menu_width(islet) %>px;">
<%= render 'bays/overview', bays: islet.bays.sorted, islet: islet.name %>
</ul>
<% end %>
<% end %>
<li class="nav-item" role="menuitem">
<%= link_to room.name, room_path(room, view: params[:view], bg: params[:bg]), class: "dropdown-item" %>
</li>
<% end %>
<% end %>
Expand Down
2 changes: 1 addition & 1 deletion app/views/pages/_params_menu.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
</div>

<div class="list-group">
<a href="#" class="list-group-item disabled">Matériel</a>
<a href="#" class="list-group-item disabled"><%= t(".equipment.title") %></a>
<a href="<%= servers_path %>" class="list-group-item <%= controller.controller_name == "servers" ? "active" : "" %>">Matériels</a>
</div>

Expand Down
Loading

0 comments on commit ec20efe

Please sign in to comment.