From 6039a965768277db4b59c9186dd5af34d2fbcb73 Mon Sep 17 00:00:00 2001
From: Arnaud Levy <contact@arnaudlevy.com>
Date: Mon, 26 Dec 2022 15:53:07 +0100
Subject: [PATCH] partial

---
 app/views/admin/application/static/_layout.html.erb | 13 +++++++++++++
 .../communication/websites/pages/static.html.erb    |  6 +-----
 .../communication/websites/posts/static.html.erb    |  6 +-----
 app/views/admin/education/diplomas/static.html.erb  |  6 +-----
 app/views/admin/education/programs/static.html.erb  |  6 +-----
 .../people/administrators/static.html.erb           |  6 +-----
 .../admin/university/people/authors/static.html.erb |  6 +-----
 .../university/people/researchers/static.html.erb   |  6 +-----
 app/views/admin/university/people/static.html.erb   |  6 +-----
 .../university/people/teachers/static.html.erb      |  6 +-----
 10 files changed, 22 insertions(+), 45 deletions(-)
 create mode 100644 app/views/admin/application/static/_layout.html.erb

diff --git a/app/views/admin/application/static/_layout.html.erb b/app/views/admin/application/static/_layout.html.erb
new file mode 100644
index 000000000..ef995a8c5
--- /dev/null
+++ b/app/views/admin/application/static/_layout.html.erb
@@ -0,0 +1,13 @@
+<%
+full_width = local_assigns.has_key?(:full_width)        ? local_assigns[:full_width] 
+                                                        : @about.full_width
+toc_offcanvas = local_assigns.has_key?(:toc_offcanvas)  ? local_assigns[:toc_offcanvas] 
+                                                        : !@about.full_width
+toc_present = local_assigns.has_key?(:toc_present)      ? local_assigns[:toc_present]
+                                                        : @about.show_toc?
+%>
+layout:
+  full_width: <%= full_width %>
+  toc:
+    present: <%= toc_present %>
+    offcanvas: <%= toc_offcanvas %>
diff --git a/app/views/admin/communication/websites/pages/static.html.erb b/app/views/admin/communication/websites/pages/static.html.erb
index b2c2c29fe..c8a35e39e 100644
--- a/app/views/admin/communication/websites/pages/static.html.erb
+++ b/app/views/admin/communication/websites/pages/static.html.erb
@@ -3,6 +3,7 @@ title: >
   <%= @about.title %>
 breadcrumb_title: "<%= @about.breadcrumb_title.blank? ? @about.title : @about.breadcrumb_title  %>"
 <%= render 'admin/application/static/permalink' %>
+<%= render 'admin/application/static/layout' %>
 <% if @about.kind_persons? %>
 has:
   administrators: <%= @website.has_administrators? %>
@@ -11,11 +12,6 @@ has:
   teachers: <%= @website.has_teachers? %>
 <% end %>
 position: <%= @about.position %>
-layout:
-  full_width: <%= @about.full_width %>
-  toc:
-    offcanvas: <%= !@about.full_width %>
-    present: <%= @about.show_toc? %>
 bodyclass: <%= @about.best_bodyclass %>
 <%= render 'admin/communication/unsplash/static' %>
 <% if @about.children.published.any? %>
diff --git a/app/views/admin/communication/websites/posts/static.html.erb b/app/views/admin/communication/websites/posts/static.html.erb
index 6d656aefb..dc3b5b46a 100644
--- a/app/views/admin/communication/websites/posts/static.html.erb
+++ b/app/views/admin/communication/websites/posts/static.html.erb
@@ -1,12 +1,8 @@
 ---
 title: "<%= @about.title %>"
 date: "<%= @about.published_at.iso8601 %>"
-layout:
-  full_width: false
-  toc:
-    present: <%= @about.show_toc? %>
-    offcanvas: false
 <%= render 'admin/application/static/permalink' %>
+<%= render 'admin/application/static/layout', full_width: false, toc_offcanvas: false %>
 <% if @about.pinned %>
 weight: 1
 <% end %>
diff --git a/app/views/admin/education/diplomas/static.html.erb b/app/views/admin/education/diplomas/static.html.erb
index 99527ec82..41377cb4e 100644
--- a/app/views/admin/education/diplomas/static.html.erb
+++ b/app/views/admin/education/diplomas/static.html.erb
@@ -2,16 +2,12 @@
 title: >
   <%= prepare_text_for_static @about.name %>
 <%= render 'admin/application/static/permalink' %>
+<%= render 'admin/application/static/layout', full_width: true, toc_offcanvas: true %>
 short_name: >
   <%= prepare_text_for_static @about.short_name %>
 <%= render 'admin/application/chapo/static' %>
 level: <%= @about.level_i18n %>
 ects: <%= @about.ects %>
-layout:
-  full_width: true
-  toc:
-    present: <%= @about.show_toc? %>
-    offcanvas: true
 duration: >
   <%= prepare_text_for_static @about.duration %>
 <%= render 'admin/communication/blocks/static', about: @about %>
diff --git a/app/views/admin/education/programs/static.html.erb b/app/views/admin/education/programs/static.html.erb
index 2850a1601..d678dfd77 100644
--- a/app/views/admin/education/programs/static.html.erb
+++ b/app/views/admin/education/programs/static.html.erb
@@ -10,11 +10,7 @@ administrator_involvements = @about.involvements_through_roles
 title: >
   <%= @about.name %>
 url: <%= @about.path_in_website(@website) %>
-layout:
-  full_width: false
-  toc:
-    present: <%= @about.show_toc? %>
-    offcanvas: true
+<%= render 'admin/application/static/layout', full_width: false, toc_offcanvas: true %>
 <% if @about.downloadable_summary.attached? %>
 downloadable_summary: <%= @about.downloadable_summary.blob_id %>
 <% end %>
diff --git a/app/views/admin/university/people/administrators/static.html.erb b/app/views/admin/university/people/administrators/static.html.erb
index a2599f50b..7e0b6949d 100644
--- a/app/views/admin/university/people/administrators/static.html.erb
+++ b/app/views/admin/university/people/administrators/static.html.erb
@@ -2,6 +2,7 @@
 title: >
   Responsabilités de <%= @about.to_s %>
 <%= render 'admin/application/static/permalink' %>
+<%= render 'admin/application/static/layout', full_width: true, toc_offcanvas: true %>
 person: >
   <%= @about.to_s %>
 first_name: >
@@ -10,9 +11,4 @@ last_name: >
   <%= @about.last_name %>
 description: >
   <%= prepare_text_for_static @about.description %>
-layout:
-  full_width: true
-  toc:
-    present: <%= @about.show_toc? %>
-    offcanvas: true
 ---
diff --git a/app/views/admin/university/people/authors/static.html.erb b/app/views/admin/university/people/authors/static.html.erb
index 176213561..f8a22b4a1 100644
--- a/app/views/admin/university/people/authors/static.html.erb
+++ b/app/views/admin/university/people/authors/static.html.erb
@@ -2,6 +2,7 @@
 title: >
   Actualités de <%= @about.to_s %>
 <%= render 'admin/application/static/permalink' %>
+<%= render 'admin/application/static/layout', full_width: true, toc_offcanvas: true %>
 person: >
   <%= @about.to_s %>
 first_name: >
@@ -10,9 +11,4 @@ last_name: >
   <%= @about.last_name %>
 description: >
   <%= prepare_text_for_static @about.description %>
-layout:
-  full_width: true
-  toc:
-    present: <%= @about.show_toc? %>
-    offcanvas: true
 ---
diff --git a/app/views/admin/university/people/researchers/static.html.erb b/app/views/admin/university/people/researchers/static.html.erb
index d4333567b..43775e7fb 100644
--- a/app/views/admin/university/people/researchers/static.html.erb
+++ b/app/views/admin/university/people/researchers/static.html.erb
@@ -2,6 +2,7 @@
 title: >
   Publications de <%= @about.to_s %>
 <%= render 'admin/application/static/permalink' %>
+<%= render 'admin/application/static/layout', full_width: true, toc_offcanvas: true %>
 person: >
   <%= @about.to_s %>
 first_name: >
@@ -10,9 +11,4 @@ last_name: >
   <%= @about.last_name %>
 description: >
   <%= prepare_text_for_static @about.description %>
-layout:
-  full_width: true
-  toc:
-    present: <%= @about.show_toc? %>
-    offcanvas: true
 ---
diff --git a/app/views/admin/university/people/static.html.erb b/app/views/admin/university/people/static.html.erb
index b48c3d79d..2d2c0672d 100644
--- a/app/views/admin/university/people/static.html.erb
+++ b/app/views/admin/university/people/static.html.erb
@@ -2,6 +2,7 @@
 title: >
   <%= @about.to_s %>
 <%= render 'admin/application/static/permalink' %>
+<%= render 'admin/application/static/layout', full_width: true, toc_offcanvas: true %>
 first_name: >
   <%= @about.first_name %>
 last_name: >
@@ -22,11 +23,6 @@ image: "<%= @about.best_picture.blob.id %>"
 description: >
   <%= prepare_text_for_static @about.description %>
 <%= render 'admin/application/chapo/static' %>
-layout:
-  full_width: true
-  toc:
-    present: <%= @about.show_toc? %>
-    offcanvas: true
 roles:
 <% if @about.author.for_website?(@website) %>
   - author
diff --git a/app/views/admin/university/people/teachers/static.html.erb b/app/views/admin/university/people/teachers/static.html.erb
index 45a4e5e94..b6fa59cbd 100644
--- a/app/views/admin/university/people/teachers/static.html.erb
+++ b/app/views/admin/university/people/teachers/static.html.erb
@@ -2,6 +2,7 @@
 title: >
   Enseignements de <%= @about.to_s %>
 <%= render 'admin/application/static/permalink' %>
+<%= render 'admin/application/static/layout', full_width: true, toc_offcanvas: true %>
 person: >
   <%= @about.to_s %>
 first_name: >
@@ -10,9 +11,4 @@ last_name: >
   <%= @about.last_name %>
 description: >
   <%= prepare_text_for_static @about.description %>
-layout:
-  full_width: true
-  toc:
-    present: <%= @about.show_toc? %>
-    offcanvas: true
 ---
-- 
GitLab