added image content theme part

master
A1Gard 5 days ago
parent 5e23901d9b
commit 301a8eb2c1

@ -4,6 +4,7 @@
{{$post->title}} - {{config('app.name')}}
@endsection
@section('content')
<main>
@if(findArea($area,$post)->use_default)
@foreach(getParts('defaultHeader') as $part)
@php($p = $part->getBladeWithData())
@ -20,4 +21,5 @@
@include($p['blade'],['data' => $p['data']])
@endforeach
@endif
</main>
@endsection

@ -0,0 +1,14 @@
<section class="ImageContent live-setting" data-live="{{$data->area_name.'_'.$data->part}}" style="background-image: url('{{asset('upload/images/'.$data->area_name.'.'.$data->part.'.jpg')}}')" >
<div class="{{gfx()['container']}} justify-content-center d-flex align-items-end">
<div class="text-center">
<h1>
{{getSetting($data->area_name.'_'.$data->part.'_title')}}
</h1>
{!! getSetting($data->area_name.'_'.$data->part.'_subtitle') !!}
<a href="{{getSetting($data->area_name.'_'.$data->part.'_link')}}" class="btn btn-primary">
{{getSetting($data->area_name.'_'.$data->part.'_btn')}}
</a>
</div>
</div>
</section>

@ -0,0 +1,10 @@
{
"name": "ImageContent",
"version": "1.0",
"author": "xStack",
"email": "xshop@xstack.ir",
"license": "GPL-3.0-or-later",
"url": "https:\/\/xstack.ir",
"author_url": "https:\/\/4xmen.ir",
"packages": []
}

@ -0,0 +1,85 @@
<?php
namespace Resources\Views\Segments;
use App\Models\Part;
use App\Models\Setting;
use Illuminate\Support\Facades\File;
class ImageContent
{
public static function onAdd(Part $part = null)
{
$setting = new Setting();
$setting->section = 'theme';
$setting->key = $part->area_name . '_' . $part->part.'_jpg';
$setting->value = null;
$setting->type = 'FILE';
$setting->size = 6;
$setting->title = $part->area_name . ' ' . $part->part.' Image';
$setting->save();
File::copy(__DIR__.'/../../default-assets/bg.jpg',public_path('upload/images/').$part->area_name . '.' . $part->part.'.jpg');
$setting = new Setting();
$setting->section = 'theme';
$setting->key = $part->area_name . '_' . $part->part.'_title';
$setting->value = 'Title of the parallax';
$setting->type = 'TEXT';
$setting->size = 6;
$setting->title = $part->area_name . ' ' . $part->part .' title';
$setting->save();
$setting = new Setting();
$setting->section = 'theme';
$setting->key = $part->area_name . '_' . $part->part.'_subtitle';
$setting->value = '<p> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Corporis dolor enim reprehenderit.</p>';
$setting->type = 'EDITOR';
$setting->size = 12;
$setting->title = $part->area_name . ' ' . $part->part .' subtitle';
$setting->save();
$setting = new Setting();
$setting->section = 'theme';
$setting->key = $part->area_name . '_' . $part->part.'_btn';
$setting->value = 'Products';
$setting->type = 'TEXT';
$setting->size = 4;
$setting->title = $part->area_name . ' ' . $part->part .' button text';
$setting->save();
$setting = new Setting();
$setting->section = 'theme';
$setting->key = $part->area_name . '_' . $part->part.'_link';
$setting->value = '/';
$setting->type = 'TEXT';
$setting->size = 4;
$setting->title = $part->area_name . ' ' . $part->part .' button link';
$setting->save();
$setting = new Setting();
$setting->section = 'theme';
$setting->key = $part->area_name . '_' . $part->part.'_color';
$setting->value = '#ffffff';
$setting->type = 'COLOR';
$setting->data = json_encode(['name' => 'image-content-color']);
$setting->size = 4;
$setting->title = $part->area_name . ' ' . $part->part .' color';
$setting->save();
}
public static function onRemove(Part $part = null)
{
Setting::where('key',$part->area_name . '_' . $part->part.'_jpg')->first()?->delete();
Setting::where('key',$part->area_name . '_' . $part->part.'_title')->first()?->delete();
Setting::where('key',$part->area_name . '_' . $part->part.'_subtitle')->first()?->delete();
Setting::where('key',$part->area_name . '_' . $part->part.'_btn')->first()?->delete();
Setting::where('key',$part->area_name . '_' . $part->part.'_link')->first()?->delete();
Setting::where('key',$part->area_name . '_' . $part->part.'_color')->first()?->delete();
File::delete(public_path('upload/images/').$part->area_name . '.' . $part->part.'.jpg');
}
public static function onMount(Part $part = null)
{
return $part;
}
}

@ -0,0 +1,11 @@
.ImageContent {
// scss
background-size: cover;
background-position: center;
.container,.container-fluid{
height: 60vh;
padding: 10vh;
color: var(--image-content-color);
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Loading…
Cancel
Save