From c6ade855d2cded0f6dae5d5a9bebc043f3594aed Mon Sep 17 00:00:00 2001 From: A1Gard Date: Thu, 1 Aug 2024 02:47:36 +0330 Subject: [PATCH] added go to top theme part added background color to compare --- resources/sass/client-custom/_general.scss | 6 +++- .../CompareProducts/CompareProducts.php | 11 +++++++ .../CompareProducts/CompareProducts.scss | 2 +- .../floats/SimpleGoTop/SimpleGoTop.blade.php | 3 ++ .../floats/SimpleGoTop/SimpleGoTop.js | 8 +++++ .../floats/SimpleGoTop/SimpleGoTop.json | 10 ++++++ .../floats/SimpleGoTop/SimpleGoTop.php | 31 ++++++++++++++++++ .../floats/SimpleGoTop/SimpleGoTop.scss | 24 ++++++++++++++ .../floats/SimpleGoTop/screenshot.png | Bin 0 -> 11828 bytes .../views/website/inc/website-head.blade.php | 5 ++- 10 files changed, 97 insertions(+), 3 deletions(-) create mode 100644 resources/views/segments/floats/SimpleGoTop/SimpleGoTop.blade.php create mode 100644 resources/views/segments/floats/SimpleGoTop/SimpleGoTop.js create mode 100644 resources/views/segments/floats/SimpleGoTop/SimpleGoTop.json create mode 100644 resources/views/segments/floats/SimpleGoTop/SimpleGoTop.php create mode 100644 resources/views/segments/floats/SimpleGoTop/SimpleGoTop.scss create mode 100644 resources/views/segments/floats/SimpleGoTop/screenshot.png diff --git a/resources/sass/client-custom/_general.scss b/resources/sass/client-custom/_general.scss index 0a43387..e52ae6e 100644 --- a/resources/sass/client-custom/_general.scss +++ b/resources/sass/client-custom/_general.scss @@ -19,7 +19,11 @@ } *{ - font-family: 'Vazirmatn' , Sans-Serif; + font-family: 'Vazirmatn' , sans-serif; +} + +html { + scroll-behavior: smooth; } body{ diff --git a/resources/views/segments/compare/CompareProducts/CompareProducts.php b/resources/views/segments/compare/CompareProducts/CompareProducts.php index a00caa7..e10912b 100644 --- a/resources/views/segments/compare/CompareProducts/CompareProducts.php +++ b/resources/views/segments/compare/CompareProducts/CompareProducts.php @@ -3,15 +3,26 @@ namespace Resources\Views\Segments; use App\Models\Part; +use App\Models\Setting; class CompareProducts { public static function onAdd(Part $part = null) { + $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' => 'compare-bg']); + $setting->size = 12; + $setting->title = $part->area->name . ' ' . $part->part .' main color'; + $setting->save(); } public static function onRemove(Part $part = null) { + Setting::where('key',$part->area->name . '_' . $part->part.'_color')->first()?->delete(); } public static function onMount(Part $part = null) diff --git a/resources/views/segments/compare/CompareProducts/CompareProducts.scss b/resources/views/segments/compare/CompareProducts/CompareProducts.scss index 915a585..c7fe41e 100644 --- a/resources/views/segments/compare/CompareProducts/CompareProducts.scss +++ b/resources/views/segments/compare/CompareProducts/CompareProducts.scss @@ -7,7 +7,7 @@ } .compare{ - background: #ffffff; + background: var(--compare-bg); border-radius: var(--xshop-border-radius); h2{ font-weight: 300; diff --git a/resources/views/segments/floats/SimpleGoTop/SimpleGoTop.blade.php b/resources/views/segments/floats/SimpleGoTop/SimpleGoTop.blade.php new file mode 100644 index 0000000..a7b36fc --- /dev/null +++ b/resources/views/segments/floats/SimpleGoTop/SimpleGoTop.blade.php @@ -0,0 +1,3 @@ + + + diff --git a/resources/views/segments/floats/SimpleGoTop/SimpleGoTop.js b/resources/views/segments/floats/SimpleGoTop/SimpleGoTop.js new file mode 100644 index 0000000..2519ac9 --- /dev/null +++ b/resources/views/segments/floats/SimpleGoTop/SimpleGoTop.js @@ -0,0 +1,8 @@ +const scrollBreakpoint = window.innerHeight * 0.2; +window.addEventListener('scroll',function () { + if (window.scrollY > scrollBreakpoint){ + document.querySelector('#SimpleGoTop').classList.add('show') + }else{ + document.querySelector('#SimpleGoTop').classList.remove('show') + } +}); diff --git a/resources/views/segments/floats/SimpleGoTop/SimpleGoTop.json b/resources/views/segments/floats/SimpleGoTop/SimpleGoTop.json new file mode 100644 index 0000000..cd21ce1 --- /dev/null +++ b/resources/views/segments/floats/SimpleGoTop/SimpleGoTop.json @@ -0,0 +1,10 @@ +{ + "name": "SimpleGoTop", + "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": [] +} \ No newline at end of file diff --git a/resources/views/segments/floats/SimpleGoTop/SimpleGoTop.php b/resources/views/segments/floats/SimpleGoTop/SimpleGoTop.php new file mode 100644 index 0000000..53bbdba --- /dev/null +++ b/resources/views/segments/floats/SimpleGoTop/SimpleGoTop.php @@ -0,0 +1,31 @@ +section = 'theme'; + $setting->key = $part->area->name . '_' . $part->part.'_icon'; + $setting->value = 'ri-arrow-up-line'; + $setting->size = 12; + $setting->type = 'ICON'; +// $setting->data = json_encode(['xmin' => 2, 'xmax' => 6]); + $setting->title = $part->area->name . ' ' . $part->part. ' icon '; + $setting->save(); + } + public static function onRemove(Part $part = null) + { + Setting::where('key',$part->area->name . '_' . $part->part.'_icon')->first()?->delete(); + + } + public static function onMount(Part $part = null) + { + return $part; + } +} diff --git a/resources/views/segments/floats/SimpleGoTop/SimpleGoTop.scss b/resources/views/segments/floats/SimpleGoTop/SimpleGoTop.scss new file mode 100644 index 0000000..68df728 --- /dev/null +++ b/resources/views/segments/floats/SimpleGoTop/SimpleGoTop.scss @@ -0,0 +1,24 @@ +#SimpleGoTop { + position: fixed; + bottom: 1rem; + inset-inline-start: -100px; + z-index: 999; + background: var(--xshop-primary); + width: 50px; + border-radius: var(--xshop-border-radius); + text-align: center; + opacity: .5; + transition: 400ms; + i{ + color: var(--xshop-diff); + font-size: 35px; + } + + &:hover{ + opacity: 1; + } + + &.show{ + inset-inline-start: 1rem; + } +} diff --git a/resources/views/segments/floats/SimpleGoTop/screenshot.png b/resources/views/segments/floats/SimpleGoTop/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..e5ade13d50f0c92ca97c4afc49b382602276a621 GIT binary patch literal 11828 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
- +@foreach(getParts('floats') as $part) + @php($p = $part->getBladeWithData()) + @include($p['blade'],['data' => $p['data']]) +@endforeach