From 69566b2ad13265f2e07e3881fdcbdb3917a6457d Mon Sep 17 00:00:00 2001
From: alexisben <alexiben7@gmail.com>
Date: Sun, 15 May 2022 19:10:40 +0200
Subject: [PATCH] Files block WIP

---
 .../blocks/templates/files/_edit.html.erb     | 47 +++++++++++++++++++
 config/locales/communication/fr.yml           |  7 +++
 2 files changed, 54 insertions(+)

diff --git a/app/views/admin/communication/blocks/templates/files/_edit.html.erb b/app/views/admin/communication/blocks/templates/files/_edit.html.erb
index e69de29bb..b4355cff9 100644
--- a/app/views/admin/communication/blocks/templates/files/_edit.html.erb
+++ b/app/views/admin/communication/blocks/templates/files/_edit.html.erb
@@ -0,0 +1,47 @@
+<a  class="<%= button_classes('mb-4') %>"
+    v-on:click="data.elements.push({title: '', file: {}})">
+    <%= t '.add_file' %>
+</a>
+
+<draggable :list="data.elements" handle=".dragHandle" class="row">
+  <div v-for="(element, index) in data.elements" class="col-md-4">
+    <div class="card">
+      <div class="card-body">
+        <div class="d-flex">
+          <div>
+            <a class="btn ps-0 pt-0 dragHandle">
+              <i class="fa fa-bars handle"></i>
+            </a>
+          </div>
+          <div class="flex-fill">
+            <label    class="form-label"
+                      :for="'element-' + index + '-title'"><%= t '.title_label' %></label>
+            <input class="form-control mb-3"
+                      v-model="element.title"
+                      placeholder="<%= t '.title_placeholder' %>"
+                      type="text"
+                      :id="'element-' + index + '-title'" />
+
+            <div v-if="!element.file.id">
+              <label  class="form-label"
+                      :for="'element-' + index + '-file'">
+                  <%= t '.file_label' %>
+              </label>
+              <input  class="form-control mb-4"
+                      type="file"
+                      @change="onFileImageChange( $event, element, 'file' )"
+                      :id="'element-' + index + '-file'">
+            </div>
+            <div v-if="element.file">
+              <a  class="btn btn-sm btn-danger mt-2"
+                  v-on:click="element.file=null">
+                  <i class="fas fa-times"></i>
+                  <%= t '.remove_file' %>
+              </a>
+            </div>
+          </div>
+        </div>
+      </div>
+    </div>
+  </div>
+</draggable>
diff --git a/config/locales/communication/fr.yml b/config/locales/communication/fr.yml
index 954e23baf..848836300 100644
--- a/config/locales/communication/fr.yml
+++ b/config/locales/communication/fr.yml
@@ -176,6 +176,13 @@ fr:
               code_placeholder: Entrez ici le code
               transcription_label: Transcription textuelle du contenu
               transcription_placeholder: Entrez ici la transcription
+          files:
+            edit:
+              add_file: Ajouter un fichier
+              remove_file: Supprimer le fichier
+              file_label: Fichier
+              title_label: Titre
+              title_placeholder: Entrer le titre de la définition
           gallery:
             edit:
               add_image: Ajouter une image
-- 
GitLab