From 696e3f7a5dff516b1c12db7e0bc0f55da6912df1 Mon Sep 17 00:00:00 2001
From: alexisben <alex@noesya.coop>
Date: Fri, 20 Jan 2023 12:02:26 +0100
Subject: [PATCH] refacto papers

---
 assets/sass/_theme/sections/papers.sass  |  1 +
 assets/sass/_theme/sections/volumes.sass |  4 +-
 layouts/papers/list.html                 |  8 ++-
 layouts/partials/papers/paper.html       | 86 +++++++++++++-----------
 layouts/partials/papers/papers.html      |  5 --
 layouts/partials/persons/papers.html     |  8 ++-
 layouts/partials/volumes/papers.html     | 14 ++--
 layouts/researchers/term.html            |  8 ++-
 8 files changed, 79 insertions(+), 55 deletions(-)
 delete mode 100644 layouts/partials/papers/papers.html

diff --git a/assets/sass/_theme/sections/papers.sass b/assets/sass/_theme/sections/papers.sass
index 5e435c4b..341e9da6 100644
--- a/assets/sass/_theme/sections/papers.sass
+++ b/assets/sass/_theme/sections/papers.sass
@@ -5,6 +5,7 @@
         transition: color 0.3s ease
 
 .papers
+    @include list-reset
     article
         @include media-breakpoint-up(desktop)
             @include grid
diff --git a/assets/sass/_theme/sections/volumes.sass b/assets/sass/_theme/sections/volumes.sass
index b8ed4aac..24e00c86 100644
--- a/assets/sass/_theme/sections/volumes.sass
+++ b/assets/sass/_theme/sections/volumes.sass
@@ -96,4 +96,6 @@
                     dt
                         @include meta
                         &:not(:first-of-type)
-                            margin-top: $spacing2
\ No newline at end of file
+                            margin-top: $spacing2
+    .paper
+        display: block
\ No newline at end of file
diff --git a/layouts/papers/list.html b/layouts/papers/list.html
index 741e7745..4453146f 100644
--- a/layouts/papers/list.html
+++ b/layouts/papers/list.html
@@ -7,7 +7,13 @@
         ) -}}
   <div class="document-content">
     <div class="container">
-      {{ partial "papers/papers.html" . }}
+      <ul class="papers">
+        {{ range .Paginator.Pages }}
+          <li>
+            {{ partial "papers/paper.html" (dict "paper" . ) }}
+          </li>
+        {{ end }}
+      </ul>
       {{ partial "commons/pagination.html" . }}
     </div>
   
diff --git a/layouts/partials/papers/paper.html b/layouts/partials/papers/paper.html
index 3ebf9d58..1143acd7 100644
--- a/layouts/partials/papers/paper.html
+++ b/layouts/partials/papers/paper.html
@@ -1,42 +1,48 @@
-<article class="paper" itemscope itemtype="https://schema.org/ScholarlyArticle">
-  <div>
-    <h3>
-      <a href="{{ .Permalink }}" itemprop="url">
-        <span itemprop="name">{{ partial "PrepareHTML" .Title }}</span>
-      </a>
-    </h3>
-    {{- range $index, $authors := .Params.Researchers -}}
-      {{- $author := site.GetPage (printf "/persons/%s" .) -}}
-      {{- if ne $index 0 -}},{{ end }}
-      <span itemprop="author" itemscope itemtype="https://schema.org/Person"><a href="{{ $author.Permalink }}" itemprop="url"><span itemprop="name">{{ trim $author.Title "\n" }}</span></a></span>
-    {{- end -}}
-    <p class="paper-volume">
-      <span>Article</span>
-      {{ range .Params.Volumes }}
-        {{ $volume := site.GetPage (printf "/volumes/%s" .) }}
-        {{ if $volume }}
-          {{ i18n "commons.in" }} “<a href="{{ $volume.Permalink }}">{{ $volume.Title }}</a>”
-        {{ end }}
-      {{ end }}
-    </p>
-  </div>
-  <div role="group">
-    <button type="button" data-bs-toggle="modal">Résumé</button>
-    <a href="#" download>PDF (435 ko)</a>
-    {{/*  <button type="button" data-bs-toggle="modal" data-bs-target="#{{ $modalId }}">{{ i18n "volumes.abstract" }}</button>
-      {{ if .Params.pdf }}
-        {{- $pdf := partial "GetMedia" .Params.pdf -}}
-        {{- $pdf_size := partial "GetHumanSize" $pdf.size -}}
-        <a href="{{ $pdf.url }}" download>
-          {{- i18n "commons.pdf_with_size" (dict "Size" $pdf_size) }}
+{{ $inside_volume := .inside_volume | default false }}
+
+{{ with .paper }}
+  <article class="paper" itemscope itemtype="https://schema.org/ScholarlyArticle" {{- if $inside_volume }} itemProp="hasPart" {{- end -}}>
+    <div>
+      <h3>
+        <a href="{{ .Permalink }}" itemprop="url">
+          <span itemprop="name">{{ partial "PrepareHTML" .Title }}</span>
         </a>
-      {{ end }}
+      </h3>
+      {{- range $index, $authors := .Params.Researchers -}}
+        {{- $author := site.GetPage (printf "/persons/%s" .) -}}
+        {{- if ne $index 0 -}},{{ end }}
+        <span itemprop="author" itemscope itemtype="https://schema.org/Person"><a href="{{ $author.Permalink }}" itemprop="url"><span itemprop="name">{{ trim $author.Title "\n" }}</span></a></span>
+      {{- end -}}
+      <p class="paper-volume">
+        <span>Article</span>
+        {{ if not $inside_volume }}
+          {{ range .Params.Volumes }}
+            {{ $volume := site.GetPage (printf "/volumes/%s" .) }}
+            {{ if $volume }}
+              {{ i18n "commons.in" }} “<a href="{{ $volume.Permalink }}">{{ $volume.Title }}</a>”
+            {{ end }}
+          {{ end }}
+        {{ end }}
+      </p>
+    </div>
+    <div role="group">
+      <button type="button" data-bs-toggle="modal">Résumé</button>
+      <a href="#" download>PDF (435 ko)</a>
+      {{/*  <button type="button" data-bs-toggle="modal" data-bs-target="#{{ $modalId }}">{{ i18n "volumes.abstract" }}</button>
+        {{ if .Params.pdf }}
+          {{- $pdf := partial "GetMedia" .Params.pdf -}}
+          {{- $pdf_size := partial "GetHumanSize" $pdf.size -}}
+          <a href="{{ $pdf.url }}" download>
+            {{- i18n "commons.pdf_with_size" (dict "Size" $pdf_size) }}
+          </a>
+        {{ end }}
+      </div>
+      {{ partial "papers/modal.html"
+            (dict
+              "modalId" $modalId
+              "title" .Title
+              "abstract" .Params.abstract
+            ) }}  */}}
     </div>
-    {{ partial "papers/modal.html"
-          (dict
-            "modalId" $modalId
-            "title" .Title
-            "abstract" .Params.abstract
-          ) }}  */}}
-  </div>
-</article>
+  </article>
+{{ end }}
\ No newline at end of file
diff --git a/layouts/partials/papers/papers.html b/layouts/partials/papers/papers.html
deleted file mode 100644
index c4e8c1c9..00000000
--- a/layouts/partials/papers/papers.html
+++ /dev/null
@@ -1,5 +0,0 @@
-<div class="papers">
-  {{ range .Paginator.Pages }}
-    {{ partial "papers/paper.html" . }}
-  {{ end }}
-</div>
diff --git a/layouts/partials/persons/papers.html b/layouts/partials/persons/papers.html
index 8a0db379..904b50f6 100644
--- a/layouts/partials/persons/papers.html
+++ b/layouts/partials/persons/papers.html
@@ -3,9 +3,11 @@
   <div class="top">
     <h2><a href="{{ $researchers.Permalink }}">{{ i18n "persons.papers" }}</a></h2>
   </div>
-  <div class="papers">
+  <ul class="papers">
     {{ range first 3 .papers }}
-        {{ partial "papers/paper.html" . }}
+      <li>
+        {{ partial "papers/paper.html" (dict "paper" . ) }}
+      </li>
     {{ end }}
-  </div>
+  </ul>
 </section>
diff --git a/layouts/partials/volumes/papers.html b/layouts/partials/volumes/papers.html
index 9a3b6b9b..edb685a6 100644
--- a/layouts/partials/volumes/papers.html
+++ b/layouts/partials/volumes/papers.html
@@ -2,8 +2,14 @@
   <div class="top">
     <h2>{{ i18n "volumes.table_contents" }}</h2>
   </div>
-  <div class="papers">
-    {{ partial "papers/papers.html" (dict
-      "paper" .) }}
-  </div>
+  <ul class="papers">
+    {{ range .Paginator.Pages }}
+      <li>
+        {{ partial "papers/paper.html" (dict 
+          "paper" .
+          "inside_volume" true
+          ) }}
+      </li>
+    {{ end }}
+  </ul>
 </section>
diff --git a/layouts/researchers/term.html b/layouts/researchers/term.html
index cff40c27..2ad94562 100644
--- a/layouts/researchers/term.html
+++ b/layouts/researchers/term.html
@@ -5,7 +5,13 @@
           "context" .
         ) -}}
   <div class="document-content container">
-    {{ partial "papers/papers.html" . }}
+    <ul class="papers">
+      {{ range .Paginator.Pages }}
+        <li>
+          {{ partial "papers/paper.html" (dict "paper" . ) }}
+        </li>
+      {{ end }}
+    </ul>
     {{ partial "commons/pagination.html" . }}
   </div>
 {{ end }}
-- 
GitLab