From 06b7a3a657814103929b7a53c6eb76b3ffd57f46 Mon Sep 17 00:00:00 2001 From: Fady Mondy Date: Thu, 25 Apr 2024 13:42:01 +0200 Subject: [PATCH] add config do disable selected settings & fix dark mode style --- config/tomato-settings.php | 17 +++- resources/views/components/card.blade.php | 6 +- resources/views/index.blade.php | 8 +- resources/views/settings/email.blade.php | 7 +- .../views/settings/google-firebase.blade.php | 9 ++- .../views/settings/google-recap.blade.php | 7 +- resources/views/settings/google.blade.php | 10 ++- resources/views/settings/location.blade.php | 9 ++- resources/views/settings/payments.blade.php | 7 +- resources/views/settings/seo.blade.php | 9 ++- .../views/settings/services-addthis.blade.php | 5 +- .../settings/services-facebook.blade.php | 5 +- .../settings/services-shipping.blade.php | 5 +- .../views/settings/services-sms.blade.php | 5 +- resources/views/settings/services.blade.php | 9 ++- resources/views/settings/site.blade.php | 7 +- resources/views/settings/themes.blade.php | 2 +- src/Services/Contracts/SettingHold.php | 2 +- src/TomatoSettingsServiceProvider.php | 80 +++++++++++++------ 19 files changed, 145 insertions(+), 64 deletions(-) diff --git a/config/tomato-settings.php b/config/tomato-settings.php index 2a21931..1216a79 100644 --- a/config/tomato-settings.php +++ b/config/tomato-settings.php @@ -1,5 +1,20 @@ true + "helpers" => true, + + "settings" => [ + "seo" => true, + "interface" => true, + "location" => true, + "email" => true, + "google" => true, + "firebase" => true, + "reCap" => true, + "payment" => true, + "facebook" => true, + "addThis" => true, + "sms" => true, + "shipping" => true, + ] ]; diff --git a/resources/views/components/card.blade.php b/resources/views/components/card.blade.php index e146a82..0486099 100644 --- a/resources/views/components/card.blade.php +++ b/resources/views/components/card.blade.php @@ -1,12 +1,12 @@ -
+
@if((isset($title) && $title)|| (isset($description) && $description))
-

+

{{ $title?? null }}

-

+

{{ $description?? null }}

diff --git a/resources/views/index.blade.php b/resources/views/index.blade.php index ae98242..8e757dc 100644 --- a/resources/views/index.blade.php +++ b/resources/views/index.blade.php @@ -6,9 +6,9 @@ @foreach($settings as $settingGroup=>$setting)

{{ $settingGroup }}

-
+
@foreach($setting as $item) - + @if($item->badge)
@@ -22,11 +22,11 @@
@else
- + color) style="color: {{ $item->color }} !important;" @endif>
@endif

{{$item->label}}

-

{{$item->description}}

+

{{$item->description}}

@endforeach
diff --git a/resources/views/settings/email.blade.php b/resources/views/settings/email.blade.php index 4c6711e..b284e93 100644 --- a/resources/views/settings/email.blade.php +++ b/resources/views/settings/email.blade.php @@ -1,7 +1,10 @@ - + {{trans('tomato-settings::global.email.title')}} + + bx bx-envelope +
@@ -73,7 +76,7 @@
- +
diff --git a/resources/views/settings/google-firebase.blade.php b/resources/views/settings/google-firebase.blade.php index 32c4ad5..c4f48d8 100644 --- a/resources/views/settings/google-firebase.blade.php +++ b/resources/views/settings/google-firebase.blade.php @@ -1,7 +1,10 @@ - + {{__('Firebase Services')}} - + + + bx bxl-firebase +
@@ -32,7 +35,7 @@ @endif
- +
diff --git a/resources/views/settings/google-recap.blade.php b/resources/views/settings/google-recap.blade.php index 965d048..5260acc 100644 --- a/resources/views/settings/google-recap.blade.php +++ b/resources/views/settings/google-recap.blade.php @@ -1,7 +1,10 @@ - + {{__('Google reCAPTCHA')}} + + bx bxl-google +
@@ -24,7 +27,7 @@ @endif
- +
diff --git a/resources/views/settings/google.blade.php b/resources/views/settings/google.blade.php index 77e0ebf..4904bac 100644 --- a/resources/views/settings/google.blade.php +++ b/resources/views/settings/google.blade.php @@ -1,7 +1,11 @@ - + {{trans('tomato-settings::global.google.title')}} - + + + bx bxl-google + +
@@ -16,7 +20,7 @@ @endif
- +
diff --git a/resources/views/settings/location.blade.php b/resources/views/settings/location.blade.php index f877618..f37fe73 100644 --- a/resources/views/settings/location.blade.php +++ b/resources/views/settings/location.blade.php @@ -1,7 +1,10 @@ - + {{__('Location Settings')}} + + bx bx-map +
@@ -32,7 +35,7 @@ @endif
- +
@@ -73,7 +76,7 @@ @endif
- +
diff --git a/resources/views/settings/payments.blade.php b/resources/views/settings/payments.blade.php index cefe352..ccb1846 100644 --- a/resources/views/settings/payments.blade.php +++ b/resources/views/settings/payments.blade.php @@ -1,7 +1,10 @@ - + {{trans('tomato-settings::global.payments.title')}} + + bx bx-credit-card +
@@ -31,7 +34,7 @@ @endif
- +
diff --git a/resources/views/settings/seo.blade.php b/resources/views/settings/seo.blade.php index 7e7ea65..8101d3d 100644 --- a/resources/views/settings/seo.blade.php +++ b/resources/views/settings/seo.blade.php @@ -1,7 +1,10 @@ - + {{__('SEO Settings')}} + + bx bx-search +
@@ -24,7 +27,7 @@ @endif
- +
@@ -65,7 +68,7 @@ @endif
- +
diff --git a/resources/views/settings/services-addthis.blade.php b/resources/views/settings/services-addthis.blade.php index c05d761..43aa94b 100644 --- a/resources/views/settings/services-addthis.blade.php +++ b/resources/views/settings/services-addthis.blade.php @@ -2,6 +2,9 @@ {{__('Link AddThis Service')}} + + bx bx-share +
@@ -16,7 +19,7 @@ @endif
- +
diff --git a/resources/views/settings/services-facebook.blade.php b/resources/views/settings/services-facebook.blade.php index 0f1da59..0489363 100644 --- a/resources/views/settings/services-facebook.blade.php +++ b/resources/views/settings/services-facebook.blade.php @@ -2,6 +2,9 @@ {{__('Facebook Services')}} + + bx bxl-meta +
@@ -32,7 +35,7 @@ @endif
- +
diff --git a/resources/views/settings/services-shipping.blade.php b/resources/views/settings/services-shipping.blade.php index 2762967..0524ec5 100644 --- a/resources/views/settings/services-shipping.blade.php +++ b/resources/views/settings/services-shipping.blade.php @@ -2,6 +2,9 @@ {{__('Shipping Services')}} + + bx bxs-truck +
@@ -29,7 +32,7 @@ @endif
- +
diff --git a/resources/views/settings/services-sms.blade.php b/resources/views/settings/services-sms.blade.php index 1a9a44f..dd77a52 100644 --- a/resources/views/settings/services-sms.blade.php +++ b/resources/views/settings/services-sms.blade.php @@ -2,6 +2,9 @@ {{__('SMS Services')}} + + bx bxs-megaphone +
@@ -29,7 +32,7 @@
- +
diff --git a/resources/views/settings/services.blade.php b/resources/views/settings/services.blade.php index 2232ab8..0fa3774 100644 --- a/resources/views/settings/services.blade.php +++ b/resources/views/settings/services.blade.php @@ -3,6 +3,7 @@ {{trans('tomato-settings::global.services.title')}} +
@@ -45,7 +46,7 @@
- +
@@ -90,7 +91,7 @@ @endif
- +
@@ -123,7 +124,7 @@ @endif
- +
@@ -140,7 +141,7 @@ @endif
- +
diff --git a/resources/views/settings/site.blade.php b/resources/views/settings/site.blade.php index ee793b2..47dfbb2 100644 --- a/resources/views/settings/site.blade.php +++ b/resources/views/settings/site.blade.php @@ -2,6 +2,9 @@ {{trans('tomato-settings::global.site.title')}} + + bx bx-globe +
@@ -22,7 +25,7 @@ @endif
- +
@@ -42,7 +45,7 @@ @endif
- +
diff --git a/resources/views/settings/themes.blade.php b/resources/views/settings/themes.blade.php index b2a1031..8de8e33 100644 --- a/resources/views/settings/themes.blade.php +++ b/resources/views/settings/themes.blade.php @@ -10,7 +10,7 @@
- +
diff --git a/src/Services/Contracts/SettingHold.php b/src/Services/Contracts/SettingHold.php index af31646..3b55f38 100644 --- a/src/Services/Contracts/SettingHold.php +++ b/src/Services/Contracts/SettingHold.php @@ -52,7 +52,7 @@ class SettingHold * @var ?string * @example #fefefe */ - public ?string $color = "#000"; + public ?string $color = null; /** * @var string|null diff --git a/src/TomatoSettingsServiceProvider.php b/src/TomatoSettingsServiceProvider.php index 70ee328..494c5ee 100644 --- a/src/TomatoSettingsServiceProvider.php +++ b/src/TomatoSettingsServiceProvider.php @@ -88,83 +88,111 @@ public function boot(): void return new SettingHolderHandler(); }); - TomatoSettings::register([ - SettingHold::make() + + $settings = []; + + if(config('tomato-settings.settings.seo')){ + $settings[] = SettingHold::make() ->label(__('SEO Settings')) ->icon('bx bx-search') ->route('admin.settings.seo.index') ->description(__('Name, Logo, Site Profile')) - ->group(__('General')), - SettingHold::make() + ->group(__('General')); + } + if(config('tomato-settings.settings.interface')){ + $settings[] = SettingHold::make() ->label(__('Interface Settings')) ->icon('bx bx-globe') ->route('admin.settings.site.index') ->description(__('Site Menu, Site Social Media links, etc.')) - ->group(__('General')), - SettingHold::make() + ->group(__('General')); + } + if (config('tomato-settings.settings.location')) { + $settings[] = SettingHold::make() ->label(__('Location Settings')) ->icon('bx bx-map') ->route('admin.settings.local.index') ->description(__('Contacts, Country, Language, Currency, etc.')) - ->group(__('General')), - SettingHold::make() + ->group(__('General')); + } + if (config('tomato-settings.settings.email')) { + $settings[] = SettingHold::make() ->label(__('Email SMTP Services')) ->icon('bx bx-envelope') ->route('admin.settings.email.index') ->description(__('SMTP, Sender, etc.')) - ->group(__('Services')), - SettingHold::make() + ->group(__('Services')); + } + if (config('tomato-settings.settings.google')) { + $settings[] = SettingHold::make() ->label(__('Google Services')) ->icon('bx bxl-google') ->color('#e43e2a') ->route('admin.settings.google.index') ->description(__('Google API Key, Google Cloud Key, etc.')) - ->group(__('Services')), - SettingHold::make() + ->group(__('Services')); + } + if (config('tomato-settings.settings.firebase')) { + $settings[] = SettingHold::make() ->label(__('Google Firebase')) ->color('#feca2c') ->icon('bx bxl-firebase') ->route('admin.settings.google-firebase.index') ->description(__('Google Firebase JSON, Google Cloud Messaging.')) - ->group(__('Services')), - SettingHold::make() + ->group(__('Services')); + } + if (config('tomato-settings.settings.reCap')) { + $settings[] = SettingHold::make() ->label(__('Google reCAPTCHA')) ->icon('https://upload.wikimedia.org/wikipedia/commons/thumb/a/ad/RecaptchaLogo.svg/2048px-RecaptchaLogo.svg.png') ->route('admin.settings.google-recap.index') ->description(__('Google reCAPTCHA Key, etc.')) - ->group(__('Services')), - SettingHold::make() + ->group(__('Services')); + } + if (config('tomato-settings.settings.payment')) { + $settings[] = SettingHold::make() ->label(__('Payment Gateway')) ->icon('bx bx-credit-card') ->route('admin.settings.payments.index') ->description(__('Active Payment Gate, Select Default one, etc.')) - ->group(__('Services')), - SettingHold::make() + ->group(__('Services')); + } + if (config('tomato-settings.settings.facebook')) { + $settings[] = SettingHold::make() ->label(__('Facebook Services')) ->color('#0169e4') ->icon('bx bxl-meta') ->route('admin.settings.services-facebook.index') ->description(__('Meta Pixcel, Facebook Chat Box, Facebook App, etc.')) - ->group(__('Services')), - SettingHold::make() + ->group(__('Services')); + } + if (config('tomato-settings.settings.addThis')) { + $settings[] = SettingHold::make() ->label(__('AddThis Services')) ->icon('https://upload.wikimedia.org/wikipedia/commons/1/1d/AddThis_logo.png') ->route('admin.settings.services-addthis.index') ->description(__('Link addThis with API, etc.')) - ->group(__('Services')), - SettingHold::make() + ->group(__('Services')); + } + if (config('tomato-settings.settings.sms')) { + $settings[] = SettingHold::make() ->label(__('SMS Gates Services')) ->icon('bx bxs-megaphone') ->route('admin.settings.services-sms.index') ->description(__('Link any SMS gate with API,MessageBird, Twilo etc.')) - ->group(__('Services')), - SettingHold::make() + ->group(__('Services')); + } + if (config('tomato-settings.settings.shipping')) { + $settings[] = SettingHold::make() ->label(__('Shipping Gates Services')) ->icon('bx bxs-truck') ->route('admin.settings.services-shipping.index') ->description(__('Link shipping gateway with API,DHL, Posta etc.')) - ->group(__('Services')) - ]); + ->group(__('Services')); + } + + + TomatoSettings::register($settings); } /**