Skip to content
Snippets Groups Projects
Commit 9e4919fd authored by alexisben's avatar alexisben
Browse files

Add definition block

parent fa66cd46
No related branches found
No related tags found
No related merge requests found
app/assets/images/communication/blocks/templates/definitions.jpg

124 KiB

...@@ -38,6 +38,7 @@ class Communication::Block < ApplicationRecord ...@@ -38,6 +38,7 @@ class Communication::Block < ApplicationRecord
testimonials: 400, testimonials: 400,
posts: 500, posts: 500,
timeline: 700, timeline: 700,
definitions: 800,
} }
before_save :update_template_images before_save :update_template_images
......
class Communication::Block::Template::Definition < Communication::Block::Template
def definitions
@definitions ||= elements.map { |element| definition(element) }
.compact
end
protected
def definition(element)
element.to_dot
end
end
<a class="<%= button_classes('mb-4') %>"
v-on:click="data.elements.push({title: '', text: ''})">
<%= t '.add_definition' %>
</a>
<draggable :list="data.elements" handle=".dragHandle" class="row">
<div v-for="(definition, 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="'definition-' + index + '-title'"><%= t '.title_label' %></label>
<input class="form-control mb-2"
v-model="definition.title"
placeholder="<%= t '.title_placeholder' %>"
type="text"
:id="'definition-' + index + '-title'" />
<label class="form-label"
:for="'definition-' + index + '-text'"><%= t '.text_label' %></label>
<textarea class="form-control mb-2"
rows="3"
v-model="definition.text"
placeholder="<%= t '.text_placeholder' %>"
:id="'definition-' + index + '-text'"></textarea>
</div>
<div>
<a class="btn btn-sm btn-danger ms-3"
v-on:click="data.elements.splice(data.elements.indexOf(definition), 1)"
title="<%= t '.remove_definition' %>">
<i class="fas fa-times"></i>
</a>
</div>
</div>
</div>
</div>
</div>
</draggable>
<dl>
<% @block.template.definitions.each do |definition| %>
<dt><%= definition.title %></dt>
<dd><%= definition.text %></dd>
<% end %>
</dl>
<% block.template.definitions.each do |definition| %>
- title: >-
<%= prepare_text_for_static definition.title %>
text: >-
<%= prepare_text_for_static definition.text %>
<% end %>
...@@ -171,6 +171,14 @@ en: ...@@ -171,6 +171,14 @@ en:
title_placeholder: Enter title here title_placeholder: Enter title here
text_label: Text text_label: Text
text_placeholder: Enter text here text_placeholder: Enter text here
definitions:
edit:
add_definition: Add definition
remove_definition: Delete definition
title_label: Title
title_placeholder: Enter title here
text_label: Text
text_placeholder: Enter text here
website: website:
pages: pages:
delete_special_page_notice: Can't delete this page delete_special_page_notice: Can't delete this page
......
...@@ -171,6 +171,14 @@ fr: ...@@ -171,6 +171,14 @@ fr:
title_placeholder: Entrer le titre de l'événement title_placeholder: Entrer le titre de l'événement
text_label: Texte text_label: Texte
text_placeholder: Entrer le texte de l'événement text_placeholder: Entrer le texte de l'événement
definitions:
edit:
add_definition: Ajouter une définition
remove_definition: Supprimer la définition
title_label: Titre
title_placeholder: Entrer le titre de la définition
text_label: Texte
text_placeholder: Entrer la description de la définition
website: website:
pages: pages:
delete_special_page_notice: Impossible de supprimer cette page delete_special_page_notice: Impossible de supprimer cette page
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment