sibu 0.7.3 → 0.8.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/MIT-LICENSE +20 -20
- data/README.md +38 -38
- data/Rakefile +36 -36
- data/app/assets/config/sibu_manifest.js +2 -2
- data/app/assets/fonts/sibu/Sibu.eot +0 -0
- data/app/assets/fonts/sibu/Sibu.svg +13 -13
- data/app/assets/fonts/sibu/Sibu.ttf +0 -0
- data/app/assets/fonts/sibu/Sibu.woff +0 -0
- data/app/assets/javascripts/cropper/cropper.js +3694 -3694
- data/app/assets/javascripts/quill/quill.js +11401 -11401
- data/app/assets/javascripts/sibu/common.js +6 -6
- data/app/assets/javascripts/sibu/sibu.js.erb +155 -177
- data/app/assets/javascripts/tabs/van11y-accessible-tab-panel-aria.js +466 -0
- data/app/assets/stylesheets/cropper/cropper.css +304 -304
- data/app/assets/stylesheets/quill/quill.snow.css +945 -945
- data/app/assets/stylesheets/sibu/defaults.scss +336 -284
- data/app/assets/stylesheets/sibu/icons.scss +40 -40
- data/app/assets/stylesheets/sibu/sibu.css +131 -136
- data/app/controllers/sibu/application_controller.rb +14 -14
- data/app/controllers/sibu/documents_controller.rb +35 -35
- data/app/controllers/sibu/images_controller.rb +78 -78
- data/app/controllers/sibu/pages_controller.rb +197 -197
- data/app/controllers/sibu/sites_controller.rb +81 -81
- data/app/helpers/sibu/application_helper.rb +11 -11
- data/app/helpers/sibu/documents_helper.rb +4 -4
- data/app/helpers/sibu/images_helper.rb +4 -4
- data/app/helpers/sibu/pages_helper.rb +194 -194
- data/app/helpers/sibu/sites_helper.rb +23 -23
- data/app/jobs/sibu/application_job.rb +4 -4
- data/app/mailers/sibu/application_mailer.rb +6 -6
- data/app/models/concerns/sibu/document_uploader.rb +8 -8
- data/app/models/concerns/sibu/image_uploader.rb +31 -31
- data/app/models/concerns/sibu/sections_concern.rb +134 -134
- data/app/models/concerns/sibu/style_uploader.rb +1 -1
- data/app/models/concerns/sibu/user_concern.rb +8 -8
- data/app/models/sibu/application_record.rb +5 -5
- data/app/models/sibu/document.rb +16 -16
- data/app/models/sibu/dynamic_style.rb +76 -76
- data/app/models/sibu/image.rb +19 -19
- data/app/models/sibu/page.rb +66 -66
- data/app/models/sibu/site.rb +97 -97
- data/app/models/sibu/site_template.rb +22 -17
- data/app/views/layouts/sibu/application.html.erb +23 -23
- data/app/views/layouts/sibu/edit_content.html.erb +262 -255
- data/app/views/layouts/sibu/site.html.erb +45 -45
- data/app/views/sibu/documents/_form.html.erb +14 -14
- data/app/views/sibu/documents/index.html.erb +37 -37
- data/app/views/sibu/documents/new.html.erb +12 -12
- data/app/views/sibu/images/_edit_form.html.erb +23 -23
- data/app/views/sibu/images/_form.html.erb +34 -34
- data/app/views/sibu/images/edit.js.erb +2 -2
- data/app/views/sibu/images/index.html.erb +13 -13
- data/app/views/sibu/images/new.html.erb +12 -12
- data/app/views/sibu/images/show.html.erb +2 -2
- data/app/views/sibu/pages/_code_edit_panel.html.erb +17 -17
- data/app/views/sibu/pages/_element_actions.html.erb +4 -4
- data/app/views/sibu/pages/_error_panel.html.erb +4 -4
- data/app/views/sibu/pages/_form.html.erb +62 -62
- data/app/views/sibu/pages/_group_edit_panel.html.erb +3 -3
- data/app/views/sibu/pages/_link_edit_panel.html.erb +50 -50
- data/app/views/sibu/pages/_map_edit_panel.html.erb +27 -27
- data/app/views/sibu/pages/_media_edit_panel.html.erb +46 -46
- data/app/views/sibu/pages/_new_section_panel.html.erb +43 -27
- data/app/views/sibu/pages/_paragraph_edit_panel.html.erb +18 -18
- data/app/views/sibu/pages/_text_edit_panel.html.erb +19 -19
- data/app/views/sibu/pages/child_element.js.erb +6 -6
- data/app/views/sibu/pages/clone_element.js.erb +6 -6
- data/app/views/sibu/pages/create_section.js.erb +6 -6
- data/app/views/sibu/pages/delete_element.js.erb +6 -6
- data/app/views/sibu/pages/delete_section.js.erb +6 -6
- data/app/views/sibu/pages/destroy.html.erb +2 -2
- data/app/views/sibu/pages/edit.html.erb +8 -8
- data/app/views/sibu/pages/edit_content.html.erb +3 -3
- data/app/views/sibu/pages/edit_element.js.erb +100 -100
- data/app/views/sibu/pages/edit_section.js.erb +7 -7
- data/app/views/sibu/pages/index.html.erb +40 -40
- data/app/views/sibu/pages/new.html.erb +8 -8
- data/app/views/sibu/pages/new_section.js.erb +19 -18
- data/app/views/sibu/pages/show.html.erb +3 -3
- data/app/views/sibu/pages/update.html.erb +2 -2
- data/app/views/sibu/pages/update_element.js.erb +5 -5
- data/app/views/sibu/pages/update_section.js.erb +5 -5
- data/app/views/sibu/sites/_form.html.erb +125 -125
- data/app/views/sibu/sites/destroy.html.erb +2 -2
- data/app/views/sibu/sites/edit.html.erb +9 -9
- data/app/views/sibu/sites/edit_styles.html.erb +8 -8
- data/app/views/sibu/sites/index.html.erb +41 -41
- data/app/views/sibu/sites/new.html.erb +18 -18
- data/app/views/sibu/sites/update.html.erb +2 -2
- data/config/initializers/constants.rb +2 -2
- data/config/initializers/shrine.rb +18 -18
- data/config/routes.rb +30 -30
- data/config/tinymce.yml +5 -5
- data/db/migrate/20180124095041_create_sibu_sites.rb +12 -12
- data/db/migrate/20180124095213_create_sibu_pages.rb +15 -15
- data/db/migrate/20180124145030_create_sibu_site_templates.rb +10 -10
- data/db/migrate/20180125231638_add_user_id_to_sites.rb +5 -5
- data/db/migrate/20180126114522_rename_url_to_path_in_pages.rb +5 -5
- data/db/migrate/20180126114628_add_domain_to_sites.rb +5 -5
- data/db/migrate/20180127211533_create_sibu_images.rb +11 -11
- data/db/migrate/20180208082317_rename_images_user_id_to_site_id.rb +5 -5
- data/db/migrate/20180208125024_rename_image_data_column.rb +5 -5
- data/db/migrate/20180210181644_add_defaults_to_site_templates.rb +6 -6
- data/db/migrate/20180214134653_add_fields_to_sites.rb +5 -5
- data/db/migrate/20180227151519_add_default_templates_to_site_templates.rb +5 -5
- data/db/migrate/20180301121902_add_style_data_to_sites.rb +5 -5
- data/db/migrate/20180301152101_add_default_styles_to_templates.rb +5 -5
- data/db/migrate/20180321144021_move_images_to_user_level.rb +7 -7
- data/db/migrate/20180321170310_add_version_to_sibu_sites.rb +7 -7
- data/db/migrate/20180405095448_create_sibu_documents.rb +10 -10
- data/db/migrate/20190110204854_add_custom_data_to_sibu_pages.rb +5 -5
- data/lib/sibu.rb +4 -4
- data/lib/sibu/engine.rb +19 -19
- data/lib/sibu/utils.rb +14 -14
- data/lib/sibu/version.rb +3 -3
- data/lib/tasks/sibu_tasks.rake +4 -4
- metadata +4 -3
@@ -1,4 +1,4 @@
|
|
1
|
-
<div class="sibu_edit_form">
|
2
|
-
<p>Une erreur s'est produite lors de l'édition de cet élément.</p>
|
3
|
-
<%= link_to 'Annuler', '#', onclick: 'cancelEdit(); return false;' %>
|
4
|
-
</div>
|
1
|
+
<div class="sibu_edit_form">
|
2
|
+
<p>Une erreur s'est produite lors de l'édition de cet élément.</p>
|
3
|
+
<%= link_to 'Annuler', '#', onclick: 'cancelEdit(); return false;' %>
|
4
|
+
</div>
|
@@ -1,63 +1,63 @@
|
|
1
|
-
<%= form_for([@site, @page]) do |f| %>
|
2
|
-
<div class="sibu_field">
|
3
|
-
<%= f.label :name, 'Nom de la page' %>
|
4
|
-
<div>
|
5
|
-
<%= f.text_field :name, placeholder: "Ex: Accueil, contact..." %>
|
6
|
-
<small>Libellé utilisé dans l'outil d'administration (non utilisé dans le site)</small>
|
7
|
-
</div>
|
8
|
-
</div>
|
9
|
-
<div class="sibu_field">
|
10
|
-
<%= f.label :path, "Chemin d'accès" %>
|
11
|
-
<div>
|
12
|
-
<%= f.text_field :path, placeholder: "Laisser vide pour le générer automatiquement" %>
|
13
|
-
<small>L'adresse (ou URL) de la page, utilisée par les navigateurs web pour y accéder</small>
|
14
|
-
</div>
|
15
|
-
</div>
|
16
|
-
<div class="sibu_field">
|
17
|
-
<%= f.label :is_home, "Page d'accueil" %>
|
18
|
-
<div>
|
19
|
-
<%= f.check_box :is_home, {}, 'true', 'false' %><span>Cocher pour faire de cette page la page d'accueil.</span>
|
20
|
-
<small>Le chemin d'accès de la page d'accueil sera automatiquement mis à jour.</small>
|
21
|
-
</div>
|
22
|
-
</div>
|
23
|
-
<div class="sibu_field">
|
24
|
-
<%= f.label :title, 'Titre' %>
|
25
|
-
<div>
|
26
|
-
<%= f.text_field :title, placeholder: "Maximum 80 caractères", maxlength: 80 %>
|
27
|
-
<small>Le titre sera affiché dans les résultats des moteurs de recherche et dans les onglets des navigateurs</small>
|
28
|
-
</div>
|
29
|
-
</div>
|
30
|
-
<div class="sibu_field">
|
31
|
-
<%= f.label :description, 'Description' %>
|
32
|
-
<div>
|
33
|
-
<%= f.text_area :description, placeholder: "Maximum 300 caractères", maxlength: 300 %>
|
34
|
-
<small>La description est affichée dans les résultats des moteurs de recherche</small>
|
35
|
-
</div>
|
36
|
-
</div>
|
37
|
-
<div class="sibu_field">
|
38
|
-
<%= f.label :keywords, 'Mots-clé' %>
|
39
|
-
<div>
|
40
|
-
<%= f.text_area :keywords, placeholder: "Mots-clé utilisés dans votre site" %>
|
41
|
-
<small>Une liste de mots-clé décrivant le contenu de votre site (optionnelle)</small>
|
42
|
-
</div>
|
43
|
-
</div>
|
44
|
-
<div class="sibu_field">
|
45
|
-
<%= f.label :header_code, "Code d'entête personnalisé" %>
|
46
|
-
<div>
|
47
|
-
<%= f.text_area :header_code, placeholder: "Code JS ou CSS (avec les balises <script> ou <style>)", rows: 6 %>
|
48
|
-
<small>Ce code javascript ou CSS sera inséré dans l'entête du site pour cette page uniquement</small>
|
49
|
-
</div>
|
50
|
-
</div>
|
51
|
-
<div class="sibu_field">
|
52
|
-
<%= f.label :footer_code, 'Code de pied de page personnalisé' %>
|
53
|
-
<div>
|
54
|
-
<%= f.text_area :footer_code, placeholder: "Code JS ou CSS (avec les balises <script> ou <style>)", rows: 6 %>
|
55
|
-
<small>Ce code javascript ou CSS sera inséré juste avant la balide fermante </body> pour cette page uniquement</small>
|
56
|
-
</div>
|
57
|
-
</div>
|
58
|
-
<%= f.hidden_field :site_id %>
|
59
|
-
<div class="sibu_actions">
|
60
|
-
<%= f.submit 'Valider' %>
|
61
|
-
<%= link_to 'Annuler', :back %>
|
62
|
-
</div>
|
1
|
+
<%= form_for([@site, @page]) do |f| %>
|
2
|
+
<div class="sibu_field">
|
3
|
+
<%= f.label :name, 'Nom de la page' %>
|
4
|
+
<div>
|
5
|
+
<%= f.text_field :name, placeholder: "Ex: Accueil, contact..." %>
|
6
|
+
<small>Libellé utilisé dans l'outil d'administration (non utilisé dans le site)</small>
|
7
|
+
</div>
|
8
|
+
</div>
|
9
|
+
<div class="sibu_field">
|
10
|
+
<%= f.label :path, "Chemin d'accès" %>
|
11
|
+
<div>
|
12
|
+
<%= f.text_field :path, placeholder: "Laisser vide pour le générer automatiquement" %>
|
13
|
+
<small>L'adresse (ou URL) de la page, utilisée par les navigateurs web pour y accéder</small>
|
14
|
+
</div>
|
15
|
+
</div>
|
16
|
+
<div class="sibu_field">
|
17
|
+
<%= f.label :is_home, "Page d'accueil" %>
|
18
|
+
<div>
|
19
|
+
<%= f.check_box :is_home, {}, 'true', 'false' %><span>Cocher pour faire de cette page la page d'accueil.</span>
|
20
|
+
<small>Le chemin d'accès de la page d'accueil sera automatiquement mis à jour.</small>
|
21
|
+
</div>
|
22
|
+
</div>
|
23
|
+
<div class="sibu_field">
|
24
|
+
<%= f.label :title, 'Titre' %>
|
25
|
+
<div>
|
26
|
+
<%= f.text_field :title, placeholder: "Maximum 80 caractères", maxlength: 80 %>
|
27
|
+
<small>Le titre sera affiché dans les résultats des moteurs de recherche et dans les onglets des navigateurs</small>
|
28
|
+
</div>
|
29
|
+
</div>
|
30
|
+
<div class="sibu_field">
|
31
|
+
<%= f.label :description, 'Description' %>
|
32
|
+
<div>
|
33
|
+
<%= f.text_area :description, placeholder: "Maximum 300 caractères", maxlength: 300 %>
|
34
|
+
<small>La description est affichée dans les résultats des moteurs de recherche</small>
|
35
|
+
</div>
|
36
|
+
</div>
|
37
|
+
<div class="sibu_field">
|
38
|
+
<%= f.label :keywords, 'Mots-clé' %>
|
39
|
+
<div>
|
40
|
+
<%= f.text_area :keywords, placeholder: "Mots-clé utilisés dans votre site" %>
|
41
|
+
<small>Une liste de mots-clé décrivant le contenu de votre site (optionnelle)</small>
|
42
|
+
</div>
|
43
|
+
</div>
|
44
|
+
<div class="sibu_field">
|
45
|
+
<%= f.label :header_code, "Code d'entête personnalisé" %>
|
46
|
+
<div>
|
47
|
+
<%= f.text_area :header_code, placeholder: "Code JS ou CSS (avec les balises <script> ou <style>)", rows: 6 %>
|
48
|
+
<small>Ce code javascript ou CSS sera inséré dans l'entête du site pour cette page uniquement</small>
|
49
|
+
</div>
|
50
|
+
</div>
|
51
|
+
<div class="sibu_field">
|
52
|
+
<%= f.label :footer_code, 'Code de pied de page personnalisé' %>
|
53
|
+
<div>
|
54
|
+
<%= f.text_area :footer_code, placeholder: "Code JS ou CSS (avec les balises <script> ou <style>)", rows: 6 %>
|
55
|
+
<small>Ce code javascript ou CSS sera inséré juste avant la balide fermante </body> pour cette page uniquement</small>
|
56
|
+
</div>
|
57
|
+
</div>
|
58
|
+
<%= f.hidden_field :site_id %>
|
59
|
+
<div class="sibu_actions">
|
60
|
+
<%= f.submit 'Valider' %>
|
61
|
+
<%= link_to 'Annuler', :back %>
|
62
|
+
</div>
|
63
63
|
<% end %>
|
@@ -1,3 +1,3 @@
|
|
1
|
-
<h2>Modifier le groupe</h2>
|
2
|
-
<div id="edit_msg"></div>
|
3
|
-
<%= render 'element_actions' %>
|
1
|
+
<h2>Modifier le groupe</h2>
|
2
|
+
<div id="edit_msg"></div>
|
3
|
+
<%= render 'element_actions' %>
|
@@ -1,50 +1,50 @@
|
|
1
|
-
<h2>Modifier le lien</h2>
|
2
|
-
<div id="edit_msg"></div>
|
3
|
-
<%= render 'element_actions' %>
|
4
|
-
<div class="sibu_edit_form">
|
5
|
-
<%= form_tag(update_element_site_page_path(@site.id, @page.id), method: :patch, remote: true) do |f| %>
|
6
|
-
<% current_type = link_type(@element["value"]) %>
|
7
|
-
<div class="sibu_field">
|
8
|
-
<%= label_tag 'element[text]', 'Libellé' %>
|
9
|
-
<%= text_field_tag 'element[text]', @element["text"] %>
|
10
|
-
</div>
|
11
|
-
<div id="link_internal" class="sibu_field link_mode">
|
12
|
-
<%= radio_button_tag :mode, 'internal', current_type == 'internal', class: 'radio' %>
|
13
|
-
<%= label_tag 'mode_internal', 'Lien vers une page du site' %>
|
14
|
-
<%= select_tag 'element[value]', available_links, prompt: 'Sélectionnez une page', disabled: current_type != 'internal' %>
|
15
|
-
<%= hidden_field_tag 'element[target]', '_self', disabled: current_type != 'internal' %>
|
16
|
-
</div>
|
17
|
-
<div id="link_external" class="sibu_field link_mode">
|
18
|
-
<%= radio_button_tag :mode, 'external', current_type == 'external', class: 'radio' %>
|
19
|
-
<%= label_tag 'mode_external', 'Lien personnalisé' %>
|
20
|
-
<%= text_field_tag 'element[value]', (@element["value"] if current_type == 'external'), placeholder: 'Ex : http://www.un-site.com', disabled: current_type != 'external' %>
|
21
|
-
<%= hidden_field_tag 'element[target]', '_blank', disabled: current_type != 'external' %>
|
22
|
-
</div>
|
23
|
-
<div id="link_email" class="sibu_field link_mode">
|
24
|
-
<%= radio_button_tag :mode, 'email', current_type == 'email', class: 'radio' %>
|
25
|
-
<%= label_tag 'mode_external', 'Lien vers un Email' %>
|
26
|
-
<%= text_field_tag 'element[value]', (@element["value"] if current_type == 'email'), placeholder: 'Ex : email@exemple.fr', disabled: current_type != 'email' %>
|
27
|
-
<%= hidden_field_tag 'element[target]', '_blank', disabled: current_type != 'email' %>
|
28
|
-
</div>
|
29
|
-
<div id="link_document" class="sibu_field link_mode">
|
30
|
-
<%= radio_button_tag :mode, 'document', current_type == 'document', class: 'radio' %>
|
31
|
-
<%= label_tag 'mode_document', 'Lien vers un document' %>
|
32
|
-
<%= select_tag 'element[value]', available_docs, prompt: 'Sélectionnez un document', disabled: current_type != 'document' %>
|
33
|
-
<%= hidden_field_tag 'element[target]', '_blank', disabled: current_type != 'document' %>
|
34
|
-
</div>
|
35
|
-
<%= hidden_field_tag 'element[id]', @element["id"] %>
|
36
|
-
<!-- Note : to be tested on multiple nested elements -->
|
37
|
-
<% (@element["elements"] || []).each do |e| %>
|
38
|
-
<% e.each_pair do |k, v| %>
|
39
|
-
<%= hidden_field_tag("element[elements][][#{k}]", v) unless v.blank? %>
|
40
|
-
<% end %>
|
41
|
-
<% end %>
|
42
|
-
<%= hidden_field_tag :element_id, @element_id %>
|
43
|
-
<%= hidden_field_tag :section_id, @section_id %>
|
44
|
-
<%= hidden_field_tag :entity, @entity_type %>
|
45
|
-
<div class="sibu_actions">
|
46
|
-
<%= submit_tag 'Valider' %>
|
47
|
-
<%= link_to 'Annuler', '#', onclick: 'cancelEdit(); return false;' %>
|
48
|
-
</div>
|
49
|
-
<% end %>
|
50
|
-
</div>
|
1
|
+
<h2>Modifier le lien</h2>
|
2
|
+
<div id="edit_msg"></div>
|
3
|
+
<%= render 'element_actions' %>
|
4
|
+
<div class="sibu_edit_form">
|
5
|
+
<%= form_tag(update_element_site_page_path(@site.id, @page.id), method: :patch, remote: true) do |f| %>
|
6
|
+
<% current_type = link_type(@element["value"]) %>
|
7
|
+
<div class="sibu_field">
|
8
|
+
<%= label_tag 'element[text]', 'Libellé' %>
|
9
|
+
<%= text_field_tag 'element[text]', @element["text"] %>
|
10
|
+
</div>
|
11
|
+
<div id="link_internal" class="sibu_field link_mode">
|
12
|
+
<%= radio_button_tag :mode, 'internal', current_type == 'internal', class: 'radio' %>
|
13
|
+
<%= label_tag 'mode_internal', 'Lien vers une page du site' %>
|
14
|
+
<%= select_tag 'element[value]', available_links, prompt: 'Sélectionnez une page', disabled: current_type != 'internal' %>
|
15
|
+
<%= hidden_field_tag 'element[target]', '_self', disabled: current_type != 'internal' %>
|
16
|
+
</div>
|
17
|
+
<div id="link_external" class="sibu_field link_mode">
|
18
|
+
<%= radio_button_tag :mode, 'external', current_type == 'external', class: 'radio' %>
|
19
|
+
<%= label_tag 'mode_external', 'Lien personnalisé' %>
|
20
|
+
<%= text_field_tag 'element[value]', (@element["value"] if current_type == 'external'), placeholder: 'Ex : http://www.un-site.com', disabled: current_type != 'external' %>
|
21
|
+
<%= hidden_field_tag 'element[target]', '_blank', disabled: current_type != 'external' %>
|
22
|
+
</div>
|
23
|
+
<div id="link_email" class="sibu_field link_mode">
|
24
|
+
<%= radio_button_tag :mode, 'email', current_type == 'email', class: 'radio' %>
|
25
|
+
<%= label_tag 'mode_external', 'Lien vers un Email' %>
|
26
|
+
<%= text_field_tag 'element[value]', (@element["value"] if current_type == 'email'), placeholder: 'Ex : email@exemple.fr', disabled: current_type != 'email' %>
|
27
|
+
<%= hidden_field_tag 'element[target]', '_blank', disabled: current_type != 'email' %>
|
28
|
+
</div>
|
29
|
+
<div id="link_document" class="sibu_field link_mode">
|
30
|
+
<%= radio_button_tag :mode, 'document', current_type == 'document', class: 'radio' %>
|
31
|
+
<%= label_tag 'mode_document', 'Lien vers un document' %>
|
32
|
+
<%= select_tag 'element[value]', available_docs, prompt: 'Sélectionnez un document', disabled: current_type != 'document' %>
|
33
|
+
<%= hidden_field_tag 'element[target]', '_blank', disabled: current_type != 'document' %>
|
34
|
+
</div>
|
35
|
+
<%= hidden_field_tag 'element[id]', @element["id"] %>
|
36
|
+
<!-- Note : to be tested on multiple nested elements -->
|
37
|
+
<% (@element["elements"] || []).each do |e| %>
|
38
|
+
<% e.each_pair do |k, v| %>
|
39
|
+
<%= hidden_field_tag("element[elements][][#{k}]", v) unless v.blank? %>
|
40
|
+
<% end %>
|
41
|
+
<% end %>
|
42
|
+
<%= hidden_field_tag :element_id, @element_id %>
|
43
|
+
<%= hidden_field_tag :section_id, @section_id %>
|
44
|
+
<%= hidden_field_tag :entity, @entity_type %>
|
45
|
+
<div class="sibu_actions">
|
46
|
+
<%= submit_tag 'Valider' %>
|
47
|
+
<%= link_to 'Annuler', '#', onclick: 'cancelEdit(); return false;' %>
|
48
|
+
</div>
|
49
|
+
<% end %>
|
50
|
+
</div>
|
@@ -1,27 +1,27 @@
|
|
1
|
-
<h2>Modifier la carte</h2>
|
2
|
-
<div id="edit_msg"></div>
|
3
|
-
<div class="sibu_edit_form">
|
4
|
-
<%= form_tag(update_element_site_page_path(@site.id, @page.id), method: :patch, remote: true) do |f| %>
|
5
|
-
<div class="sibu_field">
|
6
|
-
<%= label_tag 'element[data-lat]', 'Latitude' %>
|
7
|
-
<%= text_field_tag 'element[data-lat]', @element["data-lat"] %>
|
8
|
-
</div>
|
9
|
-
<div class="sibu_field">
|
10
|
-
<%= label_tag 'element[data-lng]', 'Longitude' %>
|
11
|
-
<%= text_field_tag 'element[data-lng]', @element["data-lng"] %>
|
12
|
-
</div>
|
13
|
-
<div class="sibu_field">
|
14
|
-
<%= label_tag 'element[data-title]', 'Libellé' %>
|
15
|
-
<%= text_field_tag 'element[data-title]', @element["data-title"] %>
|
16
|
-
</div>
|
17
|
-
<%= hidden_field_tag 'element[id]', @element["id"] %>
|
18
|
-
<%= hidden_field_tag :element_id, @element_id %>
|
19
|
-
<%= hidden_field_tag :section_id, @section_id %>
|
20
|
-
<%= hidden_field_tag :entity, @entity_type %>
|
21
|
-
<%= hidden_field_tag :refresh, true %>
|
22
|
-
<div class="sibu_actions">
|
23
|
-
<%= submit_tag 'Valider' %>
|
24
|
-
<%= link_to 'Annuler', '#', onclick: 'cancelEdit(); return false;' %>
|
25
|
-
</div>
|
26
|
-
<% end %>
|
27
|
-
</div>
|
1
|
+
<h2>Modifier la carte</h2>
|
2
|
+
<div id="edit_msg"></div>
|
3
|
+
<div class="sibu_edit_form">
|
4
|
+
<%= form_tag(update_element_site_page_path(@site.id, @page.id), method: :patch, remote: true) do |f| %>
|
5
|
+
<div class="sibu_field">
|
6
|
+
<%= label_tag 'element[data-lat]', 'Latitude' %>
|
7
|
+
<%= text_field_tag 'element[data-lat]', @element["data-lat"] %>
|
8
|
+
</div>
|
9
|
+
<div class="sibu_field">
|
10
|
+
<%= label_tag 'element[data-lng]', 'Longitude' %>
|
11
|
+
<%= text_field_tag 'element[data-lng]', @element["data-lng"] %>
|
12
|
+
</div>
|
13
|
+
<div class="sibu_field">
|
14
|
+
<%= label_tag 'element[data-title]', 'Libellé' %>
|
15
|
+
<%= text_field_tag 'element[data-title]', @element["data-title"] %>
|
16
|
+
</div>
|
17
|
+
<%= hidden_field_tag 'element[id]', @element["id"] %>
|
18
|
+
<%= hidden_field_tag :element_id, @element_id %>
|
19
|
+
<%= hidden_field_tag :section_id, @section_id %>
|
20
|
+
<%= hidden_field_tag :entity, @entity_type %>
|
21
|
+
<%= hidden_field_tag :refresh, true %>
|
22
|
+
<div class="sibu_actions">
|
23
|
+
<%= submit_tag 'Valider' %>
|
24
|
+
<%= link_to 'Annuler', '#', onclick: 'cancelEdit(); return false;' %>
|
25
|
+
</div>
|
26
|
+
<% end %>
|
27
|
+
</div>
|
@@ -1,47 +1,47 @@
|
|
1
|
-
<h2>Modifier l'image</h2>
|
2
|
-
<div id="edit_msg"></div>
|
3
|
-
<%= render 'element_actions' %>
|
4
|
-
<div class="sibu_edit_form">
|
5
|
-
<%= form_tag(update_element_site_page_path(@site.id, @page.id), method: :patch, remote: true) do |f| %>
|
6
|
-
<div class="sibu_image_selection">
|
7
|
-
<div class="sibu_select_images sibu_field">
|
8
|
-
<p>Sélectionnez ou <%= link_to 'téléchargez', new_image_path(page_id: @page.id, section_id: @section_id, entity_type: @entity_type,
|
9
|
-
element_id: @element_id, img_id: @element["id"], size: @size) %> une image</p>
|
10
|
-
<% site_images.each_with_index do |image, i| %>
|
11
|
-
<div class="sibu_image" data-img-id="<%= image.id %>">
|
12
|
-
<% if i == 0 %><span>Aucune image</span><% end %>
|
13
|
-
<%= image_tag image.file_url(:small), class: (@element["src"] == image.file_url(@size) ? 'selected' : ''),
|
14
|
-
data: {src: image.file_url(@size), alt: image.alt} %>
|
15
|
-
</div>
|
16
|
-
<% end %>
|
17
|
-
</div>
|
18
|
-
<div class="sibu_selected_image">
|
19
|
-
<% if @element["src"] == DEFAULT_IMG || @element["src"].blank? %>
|
20
|
-
<p>Veuillez sélectionner une image.</p>
|
21
|
-
<% end %>
|
22
|
-
<div class="sibu_custom_center" style="display: <%= (@element["src"] == DEFAULT_IMG || @element["src"].blank?) ? 'none' : 'block' %>">
|
23
|
-
<%= check_box_tag('custom_center', true, !@element["class"].blank
|
24
|
-
<%= label_tag 'custom_center', "Recentrer l'image" %>
|
25
|
-
</div>
|
26
|
-
<div class="sibu_center">
|
27
|
-
<%= image_tag(@element["src"]) unless @element["src"] == DEFAULT_IMG || @element["src"].blank? %>
|
28
|
-
<div id="sibu_center_pos" style="display: none;">✕</div>
|
29
|
-
</div>
|
30
|
-
<div class="sibu_field" style="display: <%= (@element["src"] == DEFAULT_IMG || @element["src"].blank?) ? 'none' : 'block' %>">
|
31
|
-
<%= label_tag 'element[alt]', 'Légende / texte alternatif' %>
|
32
|
-
<%= text_field_tag 'element[alt]', @element["alt"] %>
|
33
|
-
</div>
|
34
|
-
</div>
|
35
|
-
</div>
|
36
|
-
<%= hidden_field_tag 'element[id]', @element["id"] %>
|
37
|
-
<%= hidden_field_tag 'element[src]', @element["src"] %>
|
38
|
-
<%= hidden_field_tag 'element[class]', @element["class"] %>
|
39
|
-
<%= hidden_field_tag :element_id, @element_id %>
|
40
|
-
<%= hidden_field_tag :section_id, @section_id %>
|
41
|
-
<%= hidden_field_tag :entity, @entity_type %>
|
42
|
-
<div class="sibu_actions">
|
43
|
-
<%= submit_tag 'Valider' %>
|
44
|
-
<%= link_to 'Annuler', '#', onclick: 'cancelEdit(); return false;' %>
|
45
|
-
</div>
|
46
|
-
<% end %>
|
1
|
+
<h2>Modifier l'image</h2>
|
2
|
+
<div id="edit_msg"></div>
|
3
|
+
<%= render 'element_actions' %>
|
4
|
+
<div class="sibu_edit_form">
|
5
|
+
<%= form_tag(update_element_site_page_path(@site.id, @page.id), method: :patch, remote: true) do |f| %>
|
6
|
+
<div class="sibu_image_selection">
|
7
|
+
<div class="sibu_select_images sibu_field">
|
8
|
+
<p>Sélectionnez ou <%= link_to 'téléchargez', new_image_path(page_id: @page.id, section_id: @section_id, entity_type: @entity_type,
|
9
|
+
element_id: @element_id, img_id: @element["id"], size: @size) %> une image</p>
|
10
|
+
<% site_images.each_with_index do |image, i| %>
|
11
|
+
<div class="sibu_image" data-img-id="<%= image.id %>">
|
12
|
+
<% if i == 0 %><span>Aucune image</span><% end %>
|
13
|
+
<%= image_tag image.file_url(:small), class: (@element["src"] == image.file_url(@size) ? 'selected' : ''),
|
14
|
+
data: {src: image.file_url(@size), alt: image.alt} %>
|
15
|
+
</div>
|
16
|
+
<% end %>
|
17
|
+
</div>
|
18
|
+
<div class="sibu_selected_image">
|
19
|
+
<% if @element["src"] == DEFAULT_IMG || @element["src"].blank? %>
|
20
|
+
<p>Veuillez sélectionner une image.</p>
|
21
|
+
<% end %>
|
22
|
+
<div class="sibu_custom_center" style="display: <%= (@element["src"] == DEFAULT_IMG || @element["src"].blank?) ? 'none' : 'block' %>">
|
23
|
+
<%= check_box_tag('custom_center', true, (!@element["class"].blank? && @element["class"].include?('posx')), id: 'custom_center', class: 'checkbox') %>
|
24
|
+
<%= label_tag 'custom_center', "Recentrer l'image" %>
|
25
|
+
</div>
|
26
|
+
<div class="sibu_center">
|
27
|
+
<%= image_tag(@element["src"]) unless @element["src"] == DEFAULT_IMG || @element["src"].blank? %>
|
28
|
+
<div id="sibu_center_pos" style="display: none;">✕</div>
|
29
|
+
</div>
|
30
|
+
<div class="sibu_field" style="display: <%= (@element["src"] == DEFAULT_IMG || @element["src"].blank?) ? 'none' : 'block' %>">
|
31
|
+
<%= label_tag 'element[alt]', 'Légende / texte alternatif' %>
|
32
|
+
<%= text_field_tag 'element[alt]', @element["alt"] %>
|
33
|
+
</div>
|
34
|
+
</div>
|
35
|
+
</div>
|
36
|
+
<%= hidden_field_tag 'element[id]', @element["id"] %>
|
37
|
+
<%= hidden_field_tag 'element[src]', @element["src"] %>
|
38
|
+
<%= hidden_field_tag 'element[class]', @element["class"] %>
|
39
|
+
<%= hidden_field_tag :element_id, @element_id %>
|
40
|
+
<%= hidden_field_tag :section_id, @section_id %>
|
41
|
+
<%= hidden_field_tag :entity, @entity_type %>
|
42
|
+
<div class="sibu_actions">
|
43
|
+
<%= submit_tag 'Valider' %>
|
44
|
+
<%= link_to 'Annuler', '#', onclick: 'cancelEdit(); return false;' %>
|
45
|
+
</div>
|
46
|
+
<% end %>
|
47
47
|
</div>
|
@@ -1,27 +1,43 @@
|
|
1
|
-
<div class="sibu_panel sibu_view">
|
2
|
-
<h2>Choix du type de section</h2>
|
3
|
-
<div id="edit_msg"></div>
|
4
|
-
</div>
|
5
|
-
<div>
|
6
|
-
<div class="sibu_sections sibu_site_content">
|
7
|
-
<div id="<%= "#{@site.site_template.reference}_sections" %>">
|
8
|
-
<% sections_templates.
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
</div>
|
1
|
+
<div class="sibu_panel sibu_view">
|
2
|
+
<h2>Choix du type de section</h2>
|
3
|
+
<div id="edit_msg"></div>
|
4
|
+
</div>
|
5
|
+
<div>
|
6
|
+
<div class="sibu_sections sibu_site_content">
|
7
|
+
<div id="<%= "#{@site.site_template.reference}_sections" %>" class="sibu_sections_tabs">
|
8
|
+
<% sections_by_category = sections_templates.group_by {|st| st['category']} %>
|
9
|
+
<div class="js-tabs">
|
10
|
+
<ul class="js-tablist" data-existing-hx="h3">
|
11
|
+
<% sections_by_category.keys.each do |cat| %>
|
12
|
+
<li class="js-tablist__item">
|
13
|
+
<a href="#<%= cat %>" class="js-tablist__link" data-selected="1"><%= t "sibu.section.category.#{cat}" %></a>
|
14
|
+
</li>
|
15
|
+
<% end %>
|
16
|
+
</ul>
|
17
|
+
<% sections_by_category.each_pair do |cat, sections| %>
|
18
|
+
<div id="<%= cat %>" class="js-tabcontent">
|
19
|
+
<h3 style="display: none;"><%= t "sibu.section.category.#{cat}" %></h3>
|
20
|
+
<% sections.each do |st| %>
|
21
|
+
<div data-sb-template="<%= st["template"] %>" data-sb-category="<%= st["category"] %>">
|
22
|
+
<%= render "shared/#{@site.section_template(st)}", sec: st %>
|
23
|
+
</div>
|
24
|
+
<% end %>
|
25
|
+
</div>
|
26
|
+
<% end %>
|
27
|
+
</div>
|
28
|
+
</div>
|
29
|
+
</div>
|
30
|
+
<%= form_tag(create_section_site_page_path(@site.id, @page.id), method: :post, remote: true) do |f| %>
|
31
|
+
<%= hidden_field_tag 'section[template]', '' %>
|
32
|
+
<%= hidden_field_tag 'section[category]', '' %>
|
33
|
+
<%= hidden_field_tag :section_id, @section_id %>
|
34
|
+
<%= hidden_field_tag :after, @after%>
|
35
|
+
<%= hidden_field_tag :entity, @entity_type %>
|
36
|
+
<div class="sibu_panel sibu_view">
|
37
|
+
<div class="sibu_actions">
|
38
|
+
<%= submit_tag 'Valider' %>
|
39
|
+
<%= link_to 'Annuler', '#', onclick: 'cancelSectionsEdit(); return false;' %>
|
40
|
+
</div>
|
41
|
+
</div>
|
42
|
+
<% end %>
|
43
|
+
</div>
|