@php
/*
|--------------------------------------------------------------------------
| Field Name Helper
|--------------------------------------------------------------------------
*/
$n = fn (string $field) =>
'sections['
. $type
. '][content]['
. $field
. ']';
/*
|--------------------------------------------------------------------------
| Resolve Existing Media References
|--------------------------------------------------------------------------
*/
$resolveRefs = function (mixed $values) {
return collect(
is_array($values)
? $values
: []
)
->map(function ($value) {
if (is_array($value)) {
return data_get(
$value,
'path'
)
?: data_get(
$value,
'url'
)
?: data_get(
$value,
'image'
)
?: data_get(
$value,
'image_path'
);
}
return $value;
})
->filter()
->unique()
->values();
};
@endphp
{{-- ======================================================================
HERO SECTION
====================================================================== --}}
@if($type === 'hero')
@php
$heroImages = $resolveRefs(
$fieldValue(
'hero',
'gallery_images',
[]
)
);
/*
|--------------------------------------------------------------------------
| Backward compatibility with old hero image fields
|--------------------------------------------------------------------------
*/
if ($heroImages->isEmpty()) {
$heroImages = collect([
$fieldValue(
'hero',
'main_image_url'
),
$fieldValue(
'hero',
'side_image_1_url'
),
$fieldValue(
'hero',
'side_image_2_url'
),
])
->filter()
->unique()
->values();
}
$customerAvatars = $resolveRefs(
$fieldValue(
'hero',
'customer_avatars',
[]
)
);
@endphp
Brand Name
Rating
Title Line 1
Title Line 2
Title Line 3
Promise Title
Promise Text
Refund Text
Customer Heading
Customer Count
{{-- ================================================================
HERO GALLERY
================================================================= --}}
{{-- ================================================================
CUSTOMER AVATARS
================================================================= --}}
{{-- ======================================================================
BENEFITS SECTION
====================================================================== --}}
@elseif($type === 'benefits')
Heading
Subheading
Badge
@for($i = 0; $i < 6; $i++)
Benefit {{ $i + 1 }}
@endfor
{{-- ======================================================================
PROMO SECTION
====================================================================== --}}
@elseif($type === 'promo')
@php
$promoReference =
$fieldValue(
'promo',
'image'
)
?: $fieldValue(
'promo',
'image_url'
);
@endphp
Eyebrow
Button Text
Promo Title
Promo Text
{{-- ======================================================================
USAGE SECTION
====================================================================== --}}
@elseif($type === 'usage')
Title
Highlight
Usage Text
@for($i = 0; $i < 3; $i++)
Feature {{ $i + 1 }}
@endfor
{{-- ======================================================================
REVIEWS SECTION
====================================================================== --}}
@elseif($type === 'reviews')
@php
$reviewScreenshots = $resolveRefs(
$fieldValue(
'reviews',
'screenshots',
[]
)
);
/*
|--------------------------------------------------------------------------
| Old reviews format compatibility
|--------------------------------------------------------------------------
*/
if ($reviewScreenshots->isEmpty()) {
$oldItems = collect(
(array) $fieldValue(
'reviews',
'items',
[]
)
);
$reviewScreenshots = $oldItems
->map(function ($item) {
return data_get(
$item,
'image'
)
?: data_get(
$item,
'image_url'
);
})
->filter()
->unique()
->values();
}
@endphp
Section Heading
Section Subheading
Screenshot Only
এখানে customer name, review text, rating বা location
আলাদাভাবে দিতে হবে না।
শুধু Facebook, WhatsApp, Messenger অথবা customer feedback
screenshot upload করুন।
{{-- ======================================================================
ORDER SECTION
====================================================================== --}}
@elseif($type === 'order')
@php
/*
|--------------------------------------------------------------------------
| Landing-page-specific Free Shipping
|--------------------------------------------------------------------------
|
| Stored inside:
|
| landing_page_sections.content.free_shipping
|
| No new database column is required.
|
*/
$freeShippingValue = $fieldValue(
'order',
'free_shipping',
false
);
$freeShippingEnabled = filter_var(
$freeShippingValue,
FILTER_VALIDATE_BOOLEAN
);
/*
|--------------------------------------------------------------------------
| Configured admin delivery areas
|--------------------------------------------------------------------------
*/
$builderDeliveryAreas = collect(
$deliveryAreas ?? []
)
->map(function ($area, $key) {
if (is_array($area)) {
return [
'key' =>
(string) (
data_get(
$area,
'key'
)
?? $key
),
'label' =>
(string) (
data_get(
$area,
'label'
)
?? data_get(
$area,
'name'
)
?? $key
),
];
}
return [
'key' =>
(string) $key,
'label' =>
(string) $area,
];
})
->values();
@endphp
{{-- ================================================================
FREE SHIPPING SETTING
================================================================= --}}
{{-- ================================================================
ADMIN DELIVERY AREA PREVIEW
================================================================= --}}
Delivery Areas
এগুলো Admin Delivery Settings থেকে automatically আসছে।
@if($freeShippingEnabled)
FREE SHIPPING ENABLED
@endif
@if($builderDeliveryAreas->isNotEmpty())
@foreach($builderDeliveryAreas as $area)
{{ $area['label'] }}
{{ $freeShippingEnabled
? 'Free'
: 'Admin Rate'
}}
@endforeach
@else
কোনো active delivery area পাওয়া যায়নি।
Delivery Settings থেকে অন্তত একটি area তৈরি করুন।
@endif
{{-- ================================================================
ORDER CONTENT
================================================================= --}}
Order Title
Subtitle
Refund Text
Name Label
Phone Label
Email Label
Address Label
Order Note Label
Delivery Heading
Payment Title
Order Button
Success Title
Payment Text
Success Text
{{-- ======================================================================
FOOTER SECTION
====================================================================== --}}
@elseif($type === 'footer')
Footer Heading
WhatsApp Number
Country code সহ number দিন।
Example: 8801732474420
Phone Number
Copyright
@endif