From be9825c38da87ec57cec37f89d593b48c4f4b705 Mon Sep 17 00:00:00 2001
From: pabois <pierreandre.boissinot@noesya.coop>
Date: Thu, 4 Nov 2021 16:08:56 +0100
Subject: [PATCH] wip menus

---
 app/models/communication/website/menu/item.rb |  2 +-
 .../website/menu/items/_treebranch.html.erb   |  1 +
 .../website/menu/items/show.html.erb          |  2 +-
 .../communication/website/menus/show.html.erb | 24 ++++++++++++-------
 config/locales/communication/en.yml           |  2 +-
 config/locales/communication/fr.yml           |  2 +-
 6 files changed, 20 insertions(+), 13 deletions(-)

diff --git a/app/models/communication/website/menu/item.rb b/app/models/communication/website/menu/item.rb
index c5cbb1993..d5e7beaf1 100644
--- a/app/models/communication/website/menu/item.rb
+++ b/app/models/communication/website/menu/item.rb
@@ -44,7 +44,7 @@ class Communication::Website::Menu::Item < ApplicationRecord
            foreign_key: :parent_id,
            dependent: :destroy
 
-  enum kind: { url: 0, page: 1, blank: 2 }, _prefix: :kind
+  enum kind: { blank: 0, url: 10, page: 20 }, _prefix: :kind
 
   validates :title, presence: true
 
diff --git a/app/views/admin/communication/website/menu/items/_treebranch.html.erb b/app/views/admin/communication/website/menu/items/_treebranch.html.erb
index f224ceb44..5b553962d 100644
--- a/app/views/admin/communication/website/menu/items/_treebranch.html.erb
+++ b/app/views/admin/communication/website/menu/items/_treebranch.html.erb
@@ -15,6 +15,7 @@
       <% end %>
       <%= link_to item, admin_communication_website_menu_item_path(website_id: item.website.id, menu_id: item.menu.id, id: item.id) %>
       <span class="move_btn py-2 ps-2"><i class="fas fa-sort"></i></span>
+      <%= link_to t('edit'), edit_admin_communication_website_menu_item_path(website_id: item.website.id, menu_id: item.menu.id, id: item.id), class: "#{button_classes} float-end" %>
     </div>
     <ul class="list-unstyled treeview__children js-treeview-children js-treeview-sortable-container ms-4" data-id="<%= item.id %>">
       <li class="treeview__empty">
diff --git a/app/views/admin/communication/website/menu/items/show.html.erb b/app/views/admin/communication/website/menu/items/show.html.erb
index 36ec9d431..faf1a0409 100644
--- a/app/views/admin/communication/website/menu/items/show.html.erb
+++ b/app/views/admin/communication/website/menu/items/show.html.erb
@@ -17,7 +17,7 @@
               <td width="150"><%= Communication::Website::Menu::Item.human_attribute_name('url') %></td>
               <td><%= link_to @item.url, @item.url, target: :blank unless @item.url.blank? %></td>
             </tr>
-          <% else %>
+          <% elsif @item.kind_page? %>
             <tr>
               <td width="150"><%= Communication::Website::Menu::Item.human_attribute_name('about') %></td>
               <td><%= link_to_if can?(:read, @item.about), @item.about, [:admin, @item.about] %></td>
diff --git a/app/views/admin/communication/website/menus/show.html.erb b/app/views/admin/communication/website/menus/show.html.erb
index 19afc03b1..e933c13f5 100644
--- a/app/views/admin/communication/website/menus/show.html.erb
+++ b/app/views/admin/communication/website/menus/show.html.erb
@@ -1,10 +1,23 @@
 <% content_for :title, @menu %>
 
 <div class="row">
-  <div class="col-md-6">
+  <div class="col-md-8">
     <div class="card flex-fill w-100">
       <div class="card-header">
-        <h5 class="card-title mb-0"><%= t('metadata') %></h5>
+        <h2 class="card-title mb-2 h5">
+          <%= "#{Communication::Website::Menu::Item.model_name.human(count: 2)} (#{@items.size})" %>
+        </h2>
+        <%= render 'admin/communication/website/menu/items/list', items: @root_items if @items.any? %>
+        <%= link_to t('create'),
+                    new_admin_communication_website_menu_item_path(website_id: @website, menu_id: @menu.id),
+                    class: button_classes if can?(:create, Communication::Website::Menu::Item) %>
+      </div>
+    </div>
+  </div>
+  <div class="col-md-4">
+    <div class="card flex-fill w-100">
+      <div class="card-header">
+        <h2 class="card-title mb-0 h5"><%= t('metadata') %></h2>
       </div>
       <table class="<%= table_classes %>">
         <tbody>
@@ -18,13 +31,6 @@
   </div>
 </div>
 
-<h2><%= "#{Communication::Website::Menu::Item.model_name.human(count: 2)} (#{@items.size})" %></h2>
-<%= link_to t('create'),
-            new_admin_communication_website_menu_item_path(website_id: @website, menu_id: @menu.id),
-            class: button_classes %>
-
-<%= render 'admin/communication/website/menu/items/list', items: @root_items if @items.any? %>
-
 <% content_for :action_bar_right do %>
   <%= edit_link @menu %>
 <% end %>
diff --git a/config/locales/communication/en.yml b/config/locales/communication/en.yml
index e4a1070ed..5b2fa9ba7 100644
--- a/config/locales/communication/en.yml
+++ b/config/locales/communication/en.yml
@@ -107,7 +107,7 @@ en:
   enums:
     communication/website/menu/item:
       kind:
-        blank: Blank
+        blank: Title
         page: Page
         url: URL
   simple_form:
diff --git a/config/locales/communication/fr.yml b/config/locales/communication/fr.yml
index d27bd0eb4..01ffdddc9 100644
--- a/config/locales/communication/fr.yml
+++ b/config/locales/communication/fr.yml
@@ -107,7 +107,7 @@ fr:
   enums:
     communication/website/menu/item:
       kind:
-        blank: Vide
+        blank: Titre intermédiaire
         page: Page
         url: URL
   simple_form:
-- 
GitLab