diff --git a/src/Bundle/ChillMainBundle/Resources/public/module/bootstrap/index.js b/src/Bundle/ChillMainBundle/Resources/public/module/bootstrap/index.js index daff13a55..4a0a33d38 100644 --- a/src/Bundle/ChillMainBundle/Resources/public/module/bootstrap/index.js +++ b/src/Bundle/ChillMainBundle/Resources/public/module/bootstrap/index.js @@ -8,3 +8,38 @@ require('./bootstrap.scss'); import Dropdown from 'bootstrap/js/src/dropdown'; import Modal from 'bootstrap/js/dist/modal'; import Collapse from 'bootstrap/js/src/collapse'; +import Carousel from 'bootstrap/js/src/carousel'; + +// +// ACHeaderSlider is a small slider used in banner of AccompanyingCourse Section +// Initialize options, and show/hide controls in first/last slides +// +let ACHeaderSlider = document.querySelector('#ACHeaderSlider'), + controlPrev = ACHeaderSlider.querySelector('button[data-bs-slide="prev"]'), + controlNext = ACHeaderSlider.querySelector('button[data-bs-slide="next"]'), + length = ACHeaderSlider.querySelectorAll('.carousel-item').length, + last = length-1, + carousel = new Carousel(ACHeaderSlider, { + interval: false, + wrap: false, + ride: false, + keyboard: false, + touch: true + }) +; +ACHeaderSlider.addEventListener('slid.bs.carousel', (e) => { + //console.log('from slide', e.direction, e.relatedTarget, e.from, e.to ); + switch (e.to) { + case 0: + controlPrev.classList.add('visually-hidden'); + controlNext.classList.remove('visually-hidden'); + break; + case last: + controlPrev.classList.remove('visually-hidden'); + controlNext.classList.add('visually-hidden'); + break; + default: + controlPrev.classList.remove('visually-hidden'); + controlNext.classList.remove('visually-hidden'); + } +}) diff --git a/src/Bundle/ChillPersonBundle/Resources/public/chill/scss/badge.scss b/src/Bundle/ChillPersonBundle/Resources/public/chill/scss/badge.scss index 7dcddf65d..240601826 100644 --- a/src/Bundle/ChillPersonBundle/Resources/public/chill/scss/badge.scss +++ b/src/Bundle/ChillPersonBundle/Resources/public/chill/scss/badge.scss @@ -127,3 +127,32 @@ div.activity-list { } } } + +/// AccompanyingCourse: HeaderSlider Carousel +div#header-accompanying_course-details { + button.carousel-control-prev, + button.carousel-control-next { + width: 8%; + opacity: inherit; + } + span.to-social-issues, + span.to-persons-associated { + display: inline-block; + border-radius: 15px; + width: 24px; + height: 24px; + box-shadow: 0 0 3px 0 grey; + opacity: 0.8; + &:hover { + opacity: 1; + } + } + span.to-social-issues { + background-color: #4bafe8; + border-left: 8px solid #32749a; + } + span.to-persons-associated { + background-color: #16d9b4; + border-right: 8px solid #ffffff; + } +} diff --git a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/components/Banner.vue b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/components/Banner.vue index 801e83068..7cce4d900 100644 --- a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/components/Banner.vue +++ b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/components/Banner.vue @@ -29,13 +29,15 @@ -
- - -
+ + +
+ + + @@ -43,12 +45,14 @@ + + diff --git a/src/Bundle/ChillPersonBundle/Resources/views/AccompanyingCourse/banner.html.twig b/src/Bundle/ChillPersonBundle/Resources/views/AccompanyingCourse/banner.html.twig index e55b39f64..2f1e75a7f 100644 --- a/src/Bundle/ChillPersonBundle/Resources/views/AccompanyingCourse/banner.html.twig +++ b/src/Bundle/ChillPersonBundle/Resources/views/AccompanyingCourse/banner.html.twig @@ -23,11 +23,28 @@
-
+
- {# vue teleport fragment here #} - +
+ +
diff --git a/src/Bundle/ChillPersonBundle/Resources/views/AccompanyingCourse/index.html.twig b/src/Bundle/ChillPersonBundle/Resources/views/AccompanyingCourse/index.html.twig index 1c9814a10..434a87759 100644 --- a/src/Bundle/ChillPersonBundle/Resources/views/AccompanyingCourse/index.html.twig +++ b/src/Bundle/ChillPersonBundle/Resources/views/AccompanyingCourse/index.html.twig @@ -23,32 +23,6 @@ {% block content %}
-
- {% for h in participationsByHousehold %} - {% set householdClass = (h.household is not null) ? 'household-' ~ h.household.id : 'no-household alert alert-warning' %} - {% set householdTitle = (h.household is not null) ? - 'household.Household number'|trans({'household_num': h.household.id }) : 'household.Never in any household'|trans %} - - {% if h.household is not null %} - - {% endif %} - {% for p in h.members %} - - {# include vue_onthefly component #} - {% include '@ChillMain/OnTheFly/_insert_vue_onthefly.html.twig' with { - targetEntity: { name: 'person', id: p.person.id }, - action: 'show', - displayBadge: true, - buttonText: p.person|chill_entity_render_string - } %} - - {% endfor %} - - {% endfor %} -
- {% if 'DRAFT' == accompanyingCourse.step %}
{% include '@ChillPerson/AccompanyingCourse/_still_draft.html.twig' %} diff --git a/src/Bundle/ChillPersonBundle/translations/messages.fr.yml b/src/Bundle/ChillPersonBundle/translations/messages.fr.yml index 09ca5bb81..5054a3922 100644 --- a/src/Bundle/ChillPersonBundle/translations/messages.fr.yml +++ b/src/Bundle/ChillPersonBundle/translations/messages.fr.yml @@ -430,3 +430,5 @@ accompanying_course_work: Person addresses: Adresses de résidence Household addresses: Adresses de domicile Insert an address: Insérer une adresse +see social issues: Voir les problématiques sociales +see persons associated: Voir les usagers concernés