From a1507ba1ca124534cc98cd063c0e4dbdabf4b513 Mon Sep 17 00:00:00 2001
From: Arnaud Levy <contact@arnaudlevy.com>
Date: Fri, 13 Aug 2021 11:37:58 +0200
Subject: [PATCH] volumes

---
 .../features/education/programs_controller.rb |  2 +-
 .../journal/application_controller.rb         |  1 +
 .../research/journal/volumes_controller.rb    |  1 +
 .../admin/research/journals_controller.rb     |  1 +
 .../research/journal/volumes/edit.html.erb    |  7 ++----
 .../research/journal/volumes/index.html.erb   | 22 ++++++++++---------
 .../research/journal/volumes/show.html.erb    |  6 ++++-
 .../admin/research/journals/index.html.erb    |  6 ++++-
 .../admin/research/journals/show.html.erb     |  6 +----
 .../research/journals/volumes/new.html.erb    |  3 ---
 config/locales/research/journal.yml           |  3 +++
 11 files changed, 32 insertions(+), 26 deletions(-)
 delete mode 100644 app/views/admin/research/journals/volumes/new.html.erb

diff --git a/app/controllers/admin/features/education/programs_controller.rb b/app/controllers/admin/features/education/programs_controller.rb
index 180fa3898..d376d83b4 100644
--- a/app/controllers/admin/features/education/programs_controller.rb
+++ b/app/controllers/admin/features/education/programs_controller.rb
@@ -16,7 +16,7 @@ class Admin::Features::Education::ProgramsController < Admin::Features::Educatio
 
   def edit
     breadcrumb
-    add_breadcrumb 'Modifier'
+    add_breadcrumb t('edit')
   end
 
   def create
diff --git a/app/controllers/admin/research/journal/application_controller.rb b/app/controllers/admin/research/journal/application_controller.rb
index 7ef43a13a..52d6f60cf 100644
--- a/app/controllers/admin/research/journal/application_controller.rb
+++ b/app/controllers/admin/research/journal/application_controller.rb
@@ -10,6 +10,7 @@ class Admin::Research::Journal::ApplicationController < Admin::Research::Applica
   end
 
   def default_url_options
+    return unless params.has_key? :journal_id
     {
       journal_id: params[:journal_id]
     }
diff --git a/app/controllers/admin/research/journal/volumes_controller.rb b/app/controllers/admin/research/journal/volumes_controller.rb
index dd66f4924..0e7911460 100644
--- a/app/controllers/admin/research/journal/volumes_controller.rb
+++ b/app/controllers/admin/research/journal/volumes_controller.rb
@@ -15,6 +15,7 @@ class Admin::Research::Journal::VolumesController < Admin::Research::Journal::Ap
 
   def edit
     breadcrumb
+    add_breadcrumb t('edit')
   end
 
   def create
diff --git a/app/controllers/admin/research/journals_controller.rb b/app/controllers/admin/research/journals_controller.rb
index 84790252e..d13022c19 100644
--- a/app/controllers/admin/research/journals_controller.rb
+++ b/app/controllers/admin/research/journals_controller.rb
@@ -15,6 +15,7 @@ class Admin::Research::JournalsController < Admin::Research::Journal::Applicatio
 
   def edit
     breadcrumb
+    add_breadcrumb t('edit')
   end
 
   def create
diff --git a/app/views/admin/research/journal/volumes/edit.html.erb b/app/views/admin/research/journal/volumes/edit.html.erb
index 80ce995f0..268c8c703 100644
--- a/app/views/admin/research/journal/volumes/edit.html.erb
+++ b/app/views/admin/research/journal/volumes/edit.html.erb
@@ -1,6 +1,3 @@
-<h1>Editing Research Journal Volume</h1>
+<% content_for :title, @volume %>
 
-<%= render 'form', research_journal_volume: @research_journal_volume %>
-
-<%= link_to 'Show', @research_journal_volume %> |
-<%= link_to 'Back', research_journal_volumes_path %>
+<%= render 'form', volume: @volume %>
diff --git a/app/views/admin/research/journal/volumes/index.html.erb b/app/views/admin/research/journal/volumes/index.html.erb
index d43c44d11..8464b5e84 100644
--- a/app/views/admin/research/journal/volumes/index.html.erb
+++ b/app/views/admin/research/journal/volumes/index.html.erb
@@ -3,23 +3,25 @@
 <table class="table">
   <thead>
     <tr>
-      <th>Title</th>
-      <th>Number</th>
+      <th><%= Research::Journal::Volume.model_name.human %></th>
       <th>Published at</th>
-      <th colspan="3"></th>
+      <th></th>
     </tr>
   </thead>
   <tbody>
-    <% @volumes.each do |research_journal_volume| %>
+    <% @volumes.each do |volume| %>
       <tr>
-        <td><%= research_journal_volume.title %></td>
-        <td><%= research_journal_volume.number %></td>
-        <td><%= research_journal_volume.published_at %></td>
+        <td><%= link_to volume, [:admin, volume] %></td>
+        <td><%= volume.published_at %></td>
+        <td class="text-end">
+          <%= edit_link volume %>
+          <%= destroy_link volume %>
+        </td>
       </tr>
     <% end %>
   </tbody>
 </table>
 
-<br>
-
-<%= link_to 'New Research Journal Volume', new_research_journal_volume_path %>
+<% content_for :buttons do %>
+  <%= create_link Research::Journal::Volume %>
+<% end %>
diff --git a/app/views/admin/research/journal/volumes/show.html.erb b/app/views/admin/research/journal/volumes/show.html.erb
index ace032fb1..0358c736d 100644
--- a/app/views/admin/research/journal/volumes/show.html.erb
+++ b/app/views/admin/research/journal/volumes/show.html.erb
@@ -7,5 +7,9 @@
 
 <p>
   <strong>Published at:</strong>
-  <%= @volume.published_at %>
+  <%= @volume.published_at&.to_date %>
 </p>
+
+<% content_for :buttons do %>
+  <%= edit_link @volume %>
+<% end %>
diff --git a/app/views/admin/research/journals/index.html.erb b/app/views/admin/research/journals/index.html.erb
index 851be78e0..f6664f2d4 100644
--- a/app/views/admin/research/journals/index.html.erb
+++ b/app/views/admin/research/journals/index.html.erb
@@ -3,7 +3,9 @@
 <table class="table">
   <thead>
     <tr>
-      <th>Title</th>
+      <th><%= Research::Journal.human_attribute_name('title') %></th>
+      <th><%= Research::Journal::Volume.model_name.human(count: 2) %></th>
+      <th>Articles</th>
       <th></th>
     </tr>
   </thead>
@@ -12,6 +14,8 @@
     <% @journals.each do |journal| %>
       <tr>
         <td><%= link_to journal, [:admin, journal] %></td>
+        <td><%= link_to "#{journal.volumes.count}", admin_research_journal_volumes_path(journal_id: journal) %></td>
+        <td></td>
         <td class="text-end">
           <%= edit_link journal %>
           <%= destroy_link journal %>
diff --git a/app/views/admin/research/journals/show.html.erb b/app/views/admin/research/journals/show.html.erb
index dc06abae3..402322b85 100644
--- a/app/views/admin/research/journals/show.html.erb
+++ b/app/views/admin/research/journals/show.html.erb
@@ -1,9 +1,6 @@
 <% content_for :title, @journal %>
 
-<p>
-  <%= @journal.description %>
-</p>
-
+<p><%= @journal.description %></p>
 
 <h2 class="mt-5"><%= Research::Journal::Volume.model_name.human(count: 2) %></h2>
 
@@ -22,7 +19,6 @@
   <% end %>
 </div>
 
-
 <% content_for :buttons do %>
   <%= edit_link @journal %>
 <% end %>
diff --git a/app/views/admin/research/journals/volumes/new.html.erb b/app/views/admin/research/journals/volumes/new.html.erb
deleted file mode 100644
index e59c090de..000000000
--- a/app/views/admin/research/journals/volumes/new.html.erb
+++ /dev/null
@@ -1,3 +0,0 @@
-<% content_for :title, Research::Journal::Volume.model_name.human %>
-
-<%= render 'form', volume: @volume %>
diff --git a/config/locales/research/journal.yml b/config/locales/research/journal.yml
index 0d29ed04c..37e091786 100644
--- a/config/locales/research/journal.yml
+++ b/config/locales/research/journal.yml
@@ -7,3 +7,6 @@ fr:
       research/journal/volume:
         one: Volume
         other: Volumes
+    attributes:
+      research/journal:
+        title: Titre
-- 
GitLab