refactor: ♻️ clean up accordion
This commit is contained in:
parent
c46eae65fd
commit
107880afd6
8 changed files with 92 additions and 79 deletions
|
|
@ -104,7 +104,7 @@
|
|||
data-prev-button-label="Load Previous">
|
||||
@foreach ($postContainer['documents'] as $document)
|
||||
@if ($postContainer['accordeon'])
|
||||
<x-front.sections.accordeon.document-accordeon :document='$document' />
|
||||
<x-front.sections.accordion.document-accordion :document='$document' />
|
||||
@else
|
||||
<a class="posts-list__item list-item-doc" href="{{ $document['url'] }}"
|
||||
title="{{ $document['title'] }}" download=""
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@
|
|||
@endif
|
||||
</div>
|
||||
@endif
|
||||
<x-front.sections.accordeon.accordeon :accordeon='$accordion["accordions"]' />
|
||||
<x-front.sections.accordion.accordion :accordion='$accordion["accordions"]' />
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
|
|
|
|||
|
|
@ -1,55 +0,0 @@
|
|||
@if (!empty($item))
|
||||
<div class="accordeon__item accordeon-item">
|
||||
<h3 class="accordeon-item__title">{{ $item['title'] }}</h3>
|
||||
<div class="accordeon-item__info" style="display: none;">
|
||||
<div class="accordeon-item__info-inner">
|
||||
@if ($type === 'video')
|
||||
<div class="accordeon-item__videos-list videos-list">
|
||||
@foreach ($item['videos'] as $video)
|
||||
@if (!empty($video['image']))
|
||||
<div class="picture">
|
||||
<img src="{{ $video['image'] }}" alt="{{ $video['asset_title'] }}">
|
||||
<div class="picture__title">{{ $video['title'] }}</div>
|
||||
</div>
|
||||
@else
|
||||
<div class="video">
|
||||
@if (!empty($video['video']))
|
||||
<x-front.sections.video :video='$video' class="video__wrap" />
|
||||
@endif
|
||||
<div class="video__title">{{ $video['title'] }}</div>
|
||||
</div>
|
||||
@endif
|
||||
@endforeach
|
||||
</div>
|
||||
@else
|
||||
<div class="textblock__container accordeon_container">
|
||||
<div class="textblock__image textblock__block">
|
||||
<div class="image-border-wrap">
|
||||
<x-front.borders :borders="[
|
||||
'desktop' => [
|
||||
'left' => true,
|
||||
'right' => true,
|
||||
'top' => true,
|
||||
'bottom' => true,
|
||||
],
|
||||
'mobile' => [
|
||||
'left' => true,
|
||||
'right' => true,
|
||||
'top' => true,
|
||||
'bottom' => true,
|
||||
],
|
||||
]" />
|
||||
<img src="{{ asset($item['img']) }}" alt="{{ $item['title'] }}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="textblock__info textblock__block">
|
||||
<div class="textblock__info-description description">
|
||||
{!! $item['text'] !!}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
@if (!empty($accordeon))
|
||||
|
||||
<div class="accordeon {{ isset($accordeon['class']) ? $accordeon['class'] : '' }}">
|
||||
@if ($accordeon['type'] === 'video')
|
||||
@foreach ($accordeon['items'] as $item)
|
||||
<x-front.sections.accordeon.accordeon-item :item='$item' type="{{ $accordeon['type'] }}" />
|
||||
@endforeach
|
||||
@else
|
||||
<div class="accordeon__wrapper wrapper">
|
||||
<div class="accordeon__list">
|
||||
@foreach ($accordeon['items'] as $item)
|
||||
<x-front.sections.accordeon.accordeon-item :item='$item' type="{{ $accordeon['type'] }}" />
|
||||
@endforeach
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
@endif
|
||||
|
|
@ -0,0 +1,65 @@
|
|||
@if (!empty($accordion))
|
||||
<div class="accordeon__item accordeon-item">
|
||||
<h3 class="accordeon-item__title">{{ $accordion['string_title'] }}</h3>
|
||||
<div class="accordeon-item__info" style="display: none;">
|
||||
<div class="accordeon-item__info-inner">
|
||||
@if ($type !== 'text_block')
|
||||
<div class="accordeon-item__videos-list videos-list">
|
||||
@foreach ($accordion['list_medias'] as $media)
|
||||
<div @class([
|
||||
'picture' => !empty($media['image_media']),
|
||||
'video' => empty($media['image_media']),
|
||||
])>
|
||||
@if (!empty($media['youtubeid_video']) || !empty($media['vimeoid_video']))
|
||||
@php
|
||||
$video = [
|
||||
'type_video' => isset($media['youtubeid_video']) ? 'youtube' : 'vimeo',
|
||||
'video' => isset($media['youtubeid_video']) ? $media['youtubeid_video']: $media['vimeoid_video']
|
||||
];
|
||||
@endphp
|
||||
<x-front.sections.video :video='$video' class="video__wrap" />
|
||||
@elseif (!empty($media['image_media']))
|
||||
<img src="{{ asset($media['image_media']) }}" alt="{{ $media['string_alt'] }}">
|
||||
@endif
|
||||
|
||||
<div @class([
|
||||
'picture__title' => !empty($media['image_media']),
|
||||
'video__title' => empty($media['image_media']),
|
||||
])>
|
||||
{{ $media['string_title'] }}
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
</div>
|
||||
@else
|
||||
<div class="textblock__container accordeon_container">
|
||||
<div class="textblock__image textblock__block">
|
||||
<div class="image-border-wrap">
|
||||
<x-front.borders :borders="[
|
||||
'desktop' => [
|
||||
'left' => true,
|
||||
'right' => true,
|
||||
'top' => true,
|
||||
'bottom' => true,
|
||||
],
|
||||
'mobile' => [
|
||||
'left' => true,
|
||||
'right' => true,
|
||||
'top' => true,
|
||||
'bottom' => true,
|
||||
],
|
||||
]" />
|
||||
<img src="{{ asset($accordion['image_block']) }}" alt="{{ $accordion['string_alt'] }}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="textblock__info textblock__block">
|
||||
<div class="textblock__info-description description">
|
||||
{!! $accordion['wysiwyg_content'] !!}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
@if (!empty($accordion))
|
||||
@php
|
||||
$type = 'medias';
|
||||
@endphp
|
||||
<div @class([
|
||||
'accordeon',
|
||||
$accordion['class'] ?? null,
|
||||
])>
|
||||
<div @class([
|
||||
'accordeon__wrapper wrapper' => $type !== 'medias'
|
||||
])>
|
||||
<div @class([
|
||||
'accordeon__list' => $type !== 'medias'
|
||||
])>
|
||||
@foreach ($accordion as $acc)
|
||||
<x-front.sections.accordion.accordion-item :accordion='$acc' type="{{ $type }}" />
|
||||
@endforeach
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
|
|
@ -12,15 +12,15 @@
|
|||
'subtitle' => $groupAccordion['string_subtitle'],
|
||||
],
|
||||
'accordions' => [
|
||||
'type' => 'text-block',
|
||||
'type' => 'text_block',
|
||||
'items' => [],
|
||||
],
|
||||
];
|
||||
foreach($groupAccordion['list_accordion'] as $accordion) {
|
||||
array_push($accordions[$key]['accordions']['items'], [
|
||||
'img' => $accordion['image_visual'],
|
||||
'title' => $accordion['string_title'],
|
||||
'text' => $accordion['wysiwyg_content'],
|
||||
'image_block' => $accordion['image_visual'],
|
||||
'string_alt' => $accordion['string_title'],
|
||||
'wysiwyg_content' => $accordion['wysiwyg_content'],
|
||||
]) ;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue