From 8b213ee803dff2e0c7f6e64bcc533a316050ed72 Mon Sep 17 00:00:00 2001 From: F4ilji Date: Mon, 1 Sep 2025 13:48:24 +0500 Subject: [PATCH] Update PHP version requirement to ^8.2 in composer files, refactor User model access control logic, clean up MainSectionResource, enhance EditMainSection to include related pages, modify AppServiceProvider to clear subsection cache, change fallback locale to 'en', and improve DesktopNavBar and BasicFooter components for better accessibility and content accuracy. --- app/Containers/User/Models/User.php | 3 +- .../Resources/MainSectionResource.php | 7 -- .../Pages/EditMainSection.php | 2 +- app/Providers/AppServiceProvider.php | 3 + composer.json | 2 +- composer.lock | 4 +- config/app.php | 2 +- resources/js/Navbars/DesktopNavBar.vue | 74 +++++++++---------- resources/js/footers/BasicFooter.vue | 3 +- 9 files changed, 47 insertions(+), 53 deletions(-) diff --git a/app/Containers/User/Models/User.php b/app/Containers/User/Models/User.php index c146541..3d0dca7 100644 --- a/app/Containers/User/Models/User.php +++ b/app/Containers/User/Models/User.php @@ -100,8 +100,7 @@ class User extends Authenticatable implements FilamentUser, SeoTitleInterface, S public function canAccessPanel(Panel|\Filament\Panel $panel): bool { return match ($panel->getId()) { - "admin" => $this->hasRole(Utils::getSuperAdminName()), - "dashboard" => $this->hasRole(config('filament-shield.dashboard_user.name', 'dashboard_user')) + "admin", "dashboard" => $this->hasRole(config('filament-shield.dashboard_user.name', 'dashboard_user')) || $this->hasRole(Utils::getSuperAdminName()) || $this->hasRole(config('filament-shield.invited_user.name', 'invited_user')), default => false, diff --git a/app/Filament/Resources/MainSectionResource.php b/app/Filament/Resources/MainSectionResource.php index 05282f3..09b13b5 100644 --- a/app/Filament/Resources/MainSectionResource.php +++ b/app/Filament/Resources/MainSectionResource.php @@ -23,15 +23,8 @@ class MainSectionResource extends Resource public static ?string $pluralLabel = 'Главные разделы'; - - - - - protected static ?string $navigationGroup = 'Структура приложения'; - - public static function form(Form $form): Form { return $form diff --git a/app/Filament/Resources/MainSectionResource/Pages/EditMainSection.php b/app/Filament/Resources/MainSectionResource/Pages/EditMainSection.php index d4ec230..1249ad4 100644 --- a/app/Filament/Resources/MainSectionResource/Pages/EditMainSection.php +++ b/app/Filament/Resources/MainSectionResource/Pages/EditMainSection.php @@ -32,7 +32,7 @@ class EditMainSection extends EditRecord $this->subSection_ids = SubSection::query()->where('main_section_id', '=', $this->record->id)->pluck('id')->toArray(); SubSection::query()->where('main_section_id', '=', $this->record->id)->update(['main_section_id' => NULL]); SubSection::whereIn('id', $this->subSection_ids)->update(['main_section_id' => $this->record->id]); - $subSections = SubSection::query()->where('main_section_id', '=', $this->record->id)->get(); + $subSections = SubSection::query()->where('main_section_id', '=', $this->record->id)->with('pages')->get(); foreach ($subSections as $subSection) { foreach ($subSection->pages as $page) { diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php index da78d87..57c24d9 100644 --- a/app/Providers/AppServiceProvider.php +++ b/app/Providers/AppServiceProvider.php @@ -23,6 +23,7 @@ use App\Containers\User\Observers\UserDetailObserver; use App\Containers\Widget\Models\ContactWidget; use App\Containers\Widget\Models\PageReferenceList; use App\Containers\Widget\Models\Slide; +use App\Filament\Resources\MainSectionResource\RelationManagers\SubSectionsRelationManager; use App\Observers\AcademicJournalObserver; use App\Observers\AdditionalEducationObserver; use App\Observers\AdmissionCampaignObserver; @@ -41,6 +42,7 @@ use App\Observers\SlideObserver; use App\Observers\SubSectionObserver; use App\Observers\UserObserver; use App\Services\App\Cache\SliderCacheService; +use App\Services\App\Cache\SubSectionCacheService; use App\Ship\Contracts\SeoServiceInterface; use App\Ship\Services\SeoPageService; use Carbon\Carbon; @@ -76,6 +78,7 @@ class AppServiceProvider extends ServiceProvider FilamentView::registerRenderHook(TablesRenderHook::TOOLBAR_REORDER_TRIGGER_AFTER, function () { (new SliderCacheService())->clearAllCacheByModel(); + (new SubSectionCacheService())->clearAllCacheByModel(); }); } diff --git a/composer.json b/composer.json index ae5c494..1daeca4 100644 --- a/composer.json +++ b/composer.json @@ -5,7 +5,7 @@ "keywords": ["laravel", "framework"], "license": "MIT", "require": { - "php": "^8.1", + "php": "^8.2", "ext-curl": "*", "ext-zip": "*", "alxdorosenco/porto-for-laravel": "^10.0", diff --git a/composer.lock b/composer.lock index d254b0b..f4b6fc3 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "46d10b4875c40f8c0425ba3eab11c904", + "content-hash": "43b10611f8194dcbafa73ce6ec065b66", "packages": [ { "name": "alxdorosenco/porto-for-laravel", @@ -13506,7 +13506,7 @@ "prefer-stable": true, "prefer-lowest": false, "platform": { - "php": "^8.1", + "php": "^8.2", "ext-curl": "*", "ext-zip": "*" }, diff --git a/config/app.php b/config/app.php index 85af36a..ae81439 100644 --- a/config/app.php +++ b/config/app.php @@ -96,7 +96,7 @@ return [ | */ - 'fallback_locale' => 'ru', + 'fallback_locale' => 'en', /* |-------------------------------------------------------------------------- diff --git a/resources/js/Navbars/DesktopNavBar.vue b/resources/js/Navbars/DesktopNavBar.vue index 5f9e08a..a810aab 100644 --- a/resources/js/Navbars/DesktopNavBar.vue +++ b/resources/js/Navbars/DesktopNavBar.vue @@ -3,13 +3,14 @@ class="hs-collapse hidden overflow-hidden transition-all duration-300 basis-full grow lg:block">
-
+
+
+ + + Режим для слабовидящих + - - - Режим для слабовидящих - + + + Расписание + + - - - Расписание - - - - - - - -
-
+ + + diff --git a/resources/js/footers/BasicFooter.vue b/resources/js/footers/BasicFooter.vue index e92c57f..7bc6388 100644 --- a/resources/js/footers/BasicFooter.vue +++ b/resources/js/footers/BasicFooter.vue @@ -16,7 +16,7 @@ export default {
-

© Нижнетагильский государственный социально-педагогический институт (Филиал УРГПУ)

+

© Нижнетагильский государственный социально-педагогический институт (филиал) УрГПУ

Красногвардейская улица, 57, Нижний Тагил, Свердловская область, 622031

@@ -24,7 +24,6 @@ export default {