Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
3ac92b5
first draft
arnaudlevy Nov 23, 2024
bf2df94
options
arnaudlevy Nov 24, 2024
e45495a
Utilisation des interrupteurs plutôt que les cases à cocher
arnaudlevy Nov 24, 2024
9f48a7b
Merge branch 'clean-switches' into page-options
arnaudlevy Nov 24, 2024
f495596
options
arnaudlevy Nov 24, 2024
2a2da04
Merge branch 'main' into page-options
arnaudlevy Nov 24, 2024
4307950
Equipe -> Personnes
arnaudlevy Nov 24, 2024
704fb45
Merge branch 'main' into page-options
arnaudlevy Nov 25, 2024
0a185b4
Merge branch 'main' into page-options
arnaudlevy Nov 26, 2024
11c7c36
Merge branch 'main' into page-options
arnaudlevy Dec 4, 2024
5657773
Merge branch 'main' into page-options
arnaudlevy Dec 5, 2024
b44ec38
Merge branch 'main' into page-options
arnaudlevy Dec 5, 2024
bf1387b
Merge branch 'main' into page-options
arnaudlevy Dec 12, 2024
c2cc8b4
Merge branch 'main' into page-options
arnaudlevy Dec 12, 2024
f273730
Merge branch 'main' into page-options
arnaudlevy Dec 13, 2024
509841a
Merge branch 'main' into page-options
arnaudlevy Dec 18, 2024
7e866cd
Merge branch 'main' into page-options
arnaudlevy Dec 20, 2024
6abfee0
Small layout changes
arnaudlevy Dec 20, 2024
d2bbd4c
Merge branch 'main' into page-options
arnaudlevy Feb 10, 2025
79b6dd9
merge
arnaudlevy Feb 10, 2025
ece6fba
Merge branch 'main' into page-options
arnaudlevy Feb 10, 2025
eead175
Merge branch 'main' into page-options
arnaudlevy May 10, 2025
c8b37e2
Merge branch 'main' into page-options
arnaudlevy May 15, 2025
11ee3c4
Merge branch 'main' into page-options
arnaudlevy May 26, 2025
542b5b0
Merge branch 'main' into page-options
arnaudlevy May 30, 2025
0e3e8b5
Merge branch 'main' into page-options
arnaudlevy Jun 2, 2025
b82d783
Merge branch 'main' into page-options
arnaudlevy Sep 8, 2025
3dddfa5
options
arnaudlevy Sep 8, 2025
156781c
Merge branch 'main' into page-options
arnaudlevy Sep 8, 2025
cbc7815
Merge branch 'main' into page-options
arnaudlevy Sep 29, 2025
a73cbe6
Merge branch 'main' into page-options
arnaudlevy Sep 30, 2025
23513e6
Merge branch 'main' into page-options
arnaudlevy Nov 5, 2025
4ae0916
Merge branch 'main' into page-options
arnaudlevy Nov 12, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified app/assets/images/communication/blocks/templates/persons/grid.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
.edit_communication_block
.edit_communication_block,
.pages-edit
#layouts
.layout
label
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,7 @@ def breadcrumb
def page_params
params.require(:communication_website_page)
.permit(
:communication_website_id, :bodyclass, :full_width, :parent_id, category_ids: [],
:communication_website_id, :bodyclass, :full_width, :parent_id, :design_options, category_ids: [],
localizations_attributes: [
:id, :title, :breadcrumb_title, :meta_description, :summary, :header_text, :text, :slug, :published,
:header_cta, :header_cta_label, :header_cta_url,
Expand Down
4 changes: 2 additions & 2 deletions app/models/communication/block/template/page.rb
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,10 @@ class Communication::Block::Template::Page < Communication::Block::Template::Bas
has_component :category_id, :page_category

has_component :option_image, :boolean, default: true
has_component :option_main_summary, :boolean, default: true # Deprecated
has_component :option_categories, :boolean, default: false
has_component :option_main_summary, :boolean, default: true
has_component :option_summary, :boolean, default: true

def page
page_id_component.page
end
Expand Down
1 change: 1 addition & 0 deletions app/models/communication/website/page.rb
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ class Communication::Website::Page < ApplicationRecord
include Sanitizable
include Searchable
include WithAutomaticMenus
include WithDesignOptions
include WithMenuItemTarget
include WithOpenApi
include WithSpecialPage
Expand Down
4 changes: 4 additions & 0 deletions app/models/communication/website/page/accessibility.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
class Communication::Website::Page::Accessibility < Communication::Website::Page

def design_options_block_template_kind
nil
end

def is_listed_among_children?
false
end
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
class Communication::Website::Page::AdministrationLocation < Communication::Website::Page

def design_options_block_template_kind
:locations
end

def is_hugo_index?
true
end
Expand Down
4 changes: 4 additions & 0 deletions app/models/communication/website/page/administrator.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
class Communication::Website::Page::Administrator < Communication::Website::Page

def design_options_block_template_kind
:persons
end

def is_hugo_index?
true
end
Expand Down
4 changes: 4 additions & 0 deletions app/models/communication/website/page/author.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
class Communication::Website::Page::Author < Communication::Website::Page

def design_options_block_template_kind
:persons
end

def is_hugo_index?
true
end
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
class Communication::Website::Page::CommunicationAgenda < Communication::Website::Page

def design_options_block_template_kind
:agenda
end

def is_hugo_index?
true
end
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
class Communication::Website::Page::CommunicationAgendaArchive < Communication::Website::Page

def design_options_block_template_kind
:agenda
end

def is_hugo_index?
true
end
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
class Communication::Website::Page::CommunicationPortfolio < Communication::Website::Page

def design_options_block_template_kind
:projects
end

def is_hugo_index?
true
end
Expand Down
8 changes: 8 additions & 0 deletions app/models/communication/website/page/communication_post.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
class Communication::Website::Page::CommunicationPost < Communication::Website::Page

def design_options_block_template_kind
:posts
end

def is_hugo_index?
true
end
Expand All @@ -12,6 +16,10 @@ def full_width_by_default?
true
end

def design_options_block_template_kind
:posts
end

def should_create_special_page?
website.feature_posts
end
Expand Down
4 changes: 4 additions & 0 deletions app/models/communication/website/page/education_program.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
class Communication::Website::Page::EducationProgram < Communication::Website::Page

def design_options_block_template_kind
:programs
end

def is_hugo_index?
true
end
Expand Down
4 changes: 4 additions & 0 deletions app/models/communication/website/page/legal_term.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
class Communication::Website::Page::LegalTerm < Communication::Website::Page

def design_options_block_template_kind
nil
end

def is_listed_among_children?
false
end
Expand Down
4 changes: 4 additions & 0 deletions app/models/communication/website/page/organization.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
class Communication::Website::Page::Organization < Communication::Website::Page

def design_options_block_template_kind
:organizations
end

def is_hugo_index?
true
end
Expand Down
4 changes: 4 additions & 0 deletions app/models/communication/website/page/person.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
class Communication::Website::Page::Person < Communication::Website::Page

def design_options_block_template_kind
:persons
end

def is_hugo_index?
true
end
Expand Down
4 changes: 4 additions & 0 deletions app/models/communication/website/page/privacy_policy.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
class Communication::Website::Page::PrivacyPolicy < Communication::Website::Page

def design_options_block_template_kind
nil
end

def is_listed_among_children?
false
end
Expand Down
4 changes: 4 additions & 0 deletions app/models/communication/website/page/sitemap.rb
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
class Communication::Website::Page::Sitemap < Communication::Website::Page

def design_options_block_template_kind
nil
end

def editable_width?
false
end
Expand Down
36 changes: 36 additions & 0 deletions app/models/communication/website/page/with_design_options.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
module Communication::Website::Page::WithDesignOptions
extend ActiveSupport::Concern

OPTION_PREFIX = 'option_'

def design_options?
design_options_block_template_kind.present?
end

def design_options=(value)
self[:design_options] = JSON.parse(value)
end

def design_options
self[:design_options] || design_options_block.data
end

def design_options_hash
design_options.map { |key, value|
next unless key.start_with? OPTION_PREFIX
[key.remove(OPTION_PREFIX), value]
}.compact
end

def design_options_layout
design_options.dig('layout')
end

def design_options_block_template_kind
:pages
end

def design_options_block
@design_options_block ||= Communication::Block.new(template_kind: design_options_block_template_kind)
end
end
20 changes: 9 additions & 11 deletions app/views/admin/application/images/shared/_form.html.erb
Original file line number Diff line number Diff line change
@@ -1,11 +1,9 @@
<%= osuny_panel t('shared_image.title') do %>
<%= f.input :shared_image,
as: :single_deletable_file,
label: false,
hint: file_hint(
filesize: number_to_human_size(500.kilobytes),
formats: '.jpg, .png'
),
input_html: { accept: '.jpg, .png' },
preview: true %>
<% end %>
<%= f.input :shared_image,
as: :single_deletable_file,
label: t('shared_image.title'),
hint: file_hint(
filesize: number_to_human_size(500.kilobytes),
formats: '.jpg, .png'
),
input_html: { accept: '.jpg, .png' },
preview: true %>
19 changes: 9 additions & 10 deletions app/views/admin/application/meta_description/_form.html.erb
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
<%= osuny_panel t('admin.seo') do %>
<%= f.input :meta_description,
label: t('admin.meta_description.label'),
hint: t('admin.meta_description.hint'),
input_html: {
data: { translatable: true },
rows: 3,
value: about.meta_description&.gsub('&amp;', '&')
} %>
<% end %>
<%= f.input :meta_description,
as: :text,
label: t('admin.meta_description.label'),
hint: t('admin.meta_description.hint'),
input_html: {
data: { translatable: true },
rows: 3,
value: about.meta_description&.gsub('&amp;', '&')
} %>
Original file line number Diff line number Diff line change
Expand Up @@ -54,17 +54,5 @@
<%= osuny_separator %>
<%= osuny_small_panel t('admin.communication.blocks.components.layouts.label') do %>
<%= block_component_edit block, :layout %>
<%= osuny_label t('admin.communication.blocks.display_options.title') %>
<div class="row">
<div class="col-sm-6">
<%= block_component_edit block, :option_image, label: Communication::Website::Agenda::Event::Localization.human_attribute_name(:featured_image) %>
<%= block_component_edit block, :option_subtitle, label: Communication::Website::Agenda::Event::Localization.human_attribute_name(:subtitle) %>
<%= block_component_edit block, :option_summary, label: t('admin.summary.label') %>
</div>
<div class="col-sm-6">
<%= block_component_edit block, :option_dates, label: Communication::Website::Agenda::Event.human_attribute_name(:dates) %>
<%= block_component_edit block, :option_categories, label: Communication::Website::Agenda::Event.human_attribute_name(:categories) %>
<%= block_component_edit block, :option_status, label: Communication::Website::Agenda::Event.human_attribute_name(:status) %>
</div>
</div>
<%= render 'admin/communication/blocks/templates/agenda/options', block: block %>
<% end %>
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<%= osuny_label t('admin.communication.blocks.display_options.title') %>
<div class="row">
<div class="col-sm-6">
<%= block_component_edit block, :option_image, label: Communication::Website::Agenda::Event::Localization.human_attribute_name(:featured_image) %>
<%= block_component_edit block, :option_subtitle, label: Communication::Website::Agenda::Event::Localization.human_attribute_name(:subtitle) %>
<%= block_component_edit block, :option_summary, label: t('admin.summary.label') %>
</div>
<div class="col-sm-6">
<%= block_component_edit block, :option_dates, label: Communication::Website::Agenda::Event::Localization.human_attribute_name(:dates) %>
<%= block_component_edit block, :option_categories, label: Communication::Website::Agenda::Event.human_attribute_name(:categories) %>
<%= block_component_edit block, :option_status, label: Communication::Website::Agenda::Event.human_attribute_name(:status) %>
</div>
</div>
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
<%= block_component_edit block, :description, summernote_config: 'mini' %>

<%= block_component_edit block, :alphabetical %>
<div class="table-responsive mb-5">
<div class="fake-table">
Expand Down Expand Up @@ -49,11 +51,4 @@
</a>
</div>

<div class="row">
<div class="col-lg-6">
<%= block_component_edit block, :description, summernote_config: 'mini' %>
</div>
<div class="col-lg-6">
<%= block_component_edit block, :caption %>
</div>
</div>
<%= block_component_edit block, :caption %>
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,5 @@
<%= osuny_separator %>
<%= osuny_small_panel t('admin.communication.blocks.components.layouts.label') do %>
<%= block_component_edit block, :layout %>
<%= osuny_label t('admin.communication.blocks.display_options.title') %>
<%= block_component_edit block, :option_image, label: Administration::Location::Localization.human_attribute_name(:featured_image) %>
<%= block_component_edit block, :option_summary, label: t('admin.summary.label') %>
<%= render 'admin/communication/blocks/templates/locations/options', block: block %>
<% end %>
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<%= osuny_label t('admin.communication.blocks.display_options.title') %>
<%= block_component_edit block, :option_image, label: Administration::Location::Localization.human_attribute_name(:featured_image) %>
<%= block_component_edit block, :option_summary, label: t('admin.summary.label') %>
Original file line number Diff line number Diff line change
Expand Up @@ -57,21 +57,12 @@
<%= osuny_separator %>
<%= osuny_small_panel t('admin.communication.blocks.components.layouts.label') do %>
<%= block_component_edit block, :layout %>
<%= osuny_label t('admin.communication.blocks.display_options.title') %>
<div class="row">
<div class="col-sm-6">
<%= block_component_edit block, :option_logo %>
<%= block_component_edit block, :option_link %>
</div>
<div class="col-sm-6">
<%= block_component_edit block, :option_summary, label: t('admin.summary.label') %>
<%= block_component_edit block, :option_address %>
<div v-if="data.layout === 'map'">
<%= block_component_edit block, :option_filters %>
</div>
<div v-if="data.mode === 'selection'">
<%= block_component_edit block, :alphabetical %>
</div>
</div>
<%= render 'admin/communication/blocks/templates/organizations/options', block: block %>
<%= block_component_edit block, :option_link %>
<div v-if="data.mode === 'selection'">
<%= block_component_edit block, :alphabetical %>
</div>
<div v-if="data.layout === 'map'">
<%= block_component_edit block, :option_filters %>
</div>
<% end %>
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<%= osuny_label t('admin.communication.blocks.display_options.title') %>
<%= block_component_edit block, :option_logo, label: University::Organization.human_attribute_name(:logo) %>
<%= block_component_edit block, :option_summary, label: t('admin.summary.label') %>
<%= block_component_edit block, :option_address %>
Original file line number Diff line number Diff line change
Expand Up @@ -41,9 +41,6 @@
<%= osuny_separator %>
<%= osuny_small_panel t('admin.communication.blocks.components.layouts.label') do %>
<%= block_component_edit block, :layout %>
<%= osuny_label t('admin.communication.blocks.display_options.title') %>
<%= render 'admin/communication/blocks/templates/pages/options', block: block %>
<%= block_component_edit block, :option_main_summary %>
<%= block_component_edit block, :option_image %>
<%= block_component_edit block, :option_summary %>
<%= block_component_edit block, :option_categories %>
<% end %>
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<%= osuny_label t('admin.communication.blocks.display_options.title') %>
<%= block_component_edit block, :option_image, label: Communication::Website::Page::Localization.human_attribute_name(:featured_image) %>
<%= block_component_edit block, :option_summary, label: t('admin.summary.label') %>
<%= block_component_edit block, :option_categories %>
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
layout: <%= block.template.layout %>
<%= block_options_static block %>
<%
if block.template.page
page = block.template.page
Expand Down
Loading
Loading