Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
Clubphp
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
Clubphp
Commits
e2e93ed2
Commit
e2e93ed2
authored
May 18, 2026
by
Mahmoud Aglan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Disable 19 old sport/activity modules replaced by unified SportsActivity
Co-Authored-By:
Claude Opus 4.6
<
noreply@anthropic.com
>
parent
2054907b
Changes
19
Show whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
19 additions
and
450 deletions
+19
-450
bootstrap.php
app/Modules/Academies/bootstrap.php
+1
-12
bootstrap.php
app/Modules/AcademyContracts/bootstrap.php
+1
-23
bootstrap.php
app/Modules/Achievements/bootstrap.php
+1
-84
bootstrap.php
app/Modules/ActivitySubscriptions/bootstrap.php
+1
-10
bootstrap.php
app/Modules/Coaches/bootstrap.php
+1
-38
bootstrap.php
app/Modules/Disciplines/bootstrap.php
+1
-40
bootstrap.php
app/Modules/FacilityDashboards/bootstrap.php
+1
-17
bootstrap.php
app/Modules/FacilityGrids/bootstrap.php
+1
-7
bootstrap.php
app/Modules/MatchCenter/bootstrap.php
+1
-23
bootstrap.php
app/Modules/News/bootstrap.php
+1
-22
bootstrap.php
app/Modules/PlayerAffairs/bootstrap.php
+1
-39
bootstrap.php
app/Modules/PlaygroundAdmin/bootstrap.php
+1
-23
bootstrap.php
app/Modules/PoolManagement/bootstrap.php
+1
-18
bootstrap.php
app/Modules/Rentals/bootstrap.php
+1
-10
bootstrap.php
app/Modules/Sessions/bootstrap.php
+1
-19
bootstrap.php
app/Modules/Sports/bootstrap.php
+1
-8
bootstrap.php
app/Modules/SportsDashboard/bootstrap.php
+1
-17
bootstrap.php
app/Modules/Training/bootstrap.php
+1
-18
bootstrap.php
app/Modules/TrainingGroups/bootstrap.php
+1
-22
No files found.
app/Modules/Academies/bootstrap.php
View file @
e2e93ed2
<?php
declare
(
strict_types
=
1
);
use
App\Core\Registries\PermissionRegistry
;
// ────────────────────────────────────────────────────────────
// Academies — Permissions only (sidebar owned by Disciplines bootstrap.php)
// ────────────────────────────────────────────────────────────
PermissionRegistry
::
register
(
'academies'
,
[
'academy.view'
=>
[
'ar'
=>
'عرض الأكاديميات'
,
'en'
=>
'View Academies'
],
'academy.manage'
=>
[
'ar'
=>
'إدارة الأكاديميات'
,
'en'
=>
'Manage Academies'
],
'academy.enroll'
=>
[
'ar'
=>
'تسجيل في الأكاديمية'
,
'en'
=>
'Enroll in Academy'
],
]);
// Module disabled — replaced by SportsActivity module
app/Modules/AcademyContracts/bootstrap.php
View file @
e2e93ed2
<?php
declare
(
strict_types
=
1
);
use
App\Core\Registries\PermissionRegistry
;
use
App\Core\Registries\MenuRegistry
;
// ────────────────────────────────────────────────────────────
// Academy Contracts — Permissions & Sidebar Menu
// ────────────────────────────────────────────────────────────
PermissionRegistry
::
register
(
'academy_contracts'
,
[
'academy_contract.view'
=>
[
'ar'
=>
'عرض عقود الأكاديميات'
,
'en'
=>
'View Academy Contracts'
],
'academy_contract.manage'
=>
[
'ar'
=>
'إدارة عقود الأكاديميات'
,
'en'
=>
'Manage Academy Contracts'
],
'academy_contract.settlement'
=>
[
'ar'
=>
'تسويات عقود الأكاديميات'
,
'en'
=>
'Academy Contract Settlements'
],
]);
MenuRegistry
::
register
(
'academy_contracts'
,
[
'label_ar'
=>
'عقود الأكاديميات'
,
'label_en'
=>
'Academy Contracts'
,
'icon'
=>
'file-signature'
,
'route'
=>
'/academy-contracts'
,
'permission'
=>
'academy_contract.view'
,
'order'
=>
398
,
'parent'
=>
'sports_activities'
,
]);
// Module disabled — replaced by SportsActivity module
app/Modules/Achievements/bootstrap.php
View file @
e2e93ed2
<?php
declare
(
strict_types
=
1
);
use
App\Core\Registries\PermissionRegistry
;
use
App\Core\Registries\MenuRegistry
;
use
App\Core\EventBus
;
use
App\Core\App
;
use
App\Core\Logger
;
PermissionRegistry
::
register
(
'achievements'
,
[
'achievement.view'
=>
[
'ar'
=>
'عرض الإنجازات'
,
'en'
=>
'View Achievements'
],
'achievement.manage'
=>
[
'ar'
=>
'إدارة الإنجازات'
,
'en'
=>
'Manage Achievements'
],
]);
MenuRegistry
::
register
(
'achievements'
,
[
'label_ar'
=>
'الإنجازات'
,
'icon'
=>
'award'
,
'route'
=>
'/achievements'
,
'permission'
=>
'achievement.view'
,
'order'
=>
420
,
'parent'
=>
'sports_activities'
,
]);
// ─────────────────────────────────────────────────────────────
// Event Listeners for Achievement Checks
// ─────────────────────────────────────────────────────────────
// Attendance recorded → check attendance achievements
EventBus
::
listen
(
'session_attendance.recorded'
,
function
(
array
$data
)
{
try
{
$playerId
=
(
int
)
(
$data
[
'player_id'
]
??
0
);
if
(
$playerId
<=
0
)
return
;
\App\Modules\Achievements\Services\AchievementEngine
::
checkAttendanceAchievements
(
$playerId
);
}
catch
(
\Throwable
$e
)
{
Logger
::
error
(
"Achievement attendance check error: "
.
$e
->
getMessage
());
}
},
10
);
// Player evaluation submitted → check performance achievements
EventBus
::
listen
(
'player.evaluation_submitted'
,
function
(
array
$data
)
{
try
{
$playerId
=
(
int
)
(
$data
[
'player_id'
]
??
0
);
if
(
$playerId
<=
0
)
return
;
\App\Modules\Achievements\Services\AchievementEngine
::
checkAndAward
(
$playerId
,
'evaluation_submitted'
,
$data
);
}
catch
(
\Throwable
$e
)
{
Logger
::
error
(
"Achievement evaluation check error: "
.
$e
->
getMessage
());
}
},
10
);
// Tournament match won → check competition achievements
EventBus
::
listen
(
'tournament.match_won'
,
function
(
array
$data
)
{
try
{
$playerId
=
(
int
)
(
$data
[
'player_id'
]
??
0
);
if
(
$playerId
<=
0
)
return
;
\App\Modules\Achievements\Services\AchievementEngine
::
checkAndAward
(
$playerId
,
'tournament_win'
,
$data
);
}
catch
(
\Throwable
$e
)
{
Logger
::
error
(
"Achievement tournament check error: "
.
$e
->
getMessage
());
}
},
10
);
// Fitness test recorded → check fitness achievements
EventBus
::
listen
(
'player.fitness_test_recorded'
,
function
(
array
$data
)
{
try
{
$playerId
=
(
int
)
(
$data
[
'player_id'
]
??
0
);
if
(
$playerId
<=
0
)
return
;
\App\Modules\Achievements\Services\AchievementEngine
::
checkAndAward
(
$playerId
,
'fitness_test'
,
$data
);
}
catch
(
\Throwable
$e
)
{
Logger
::
error
(
"Achievement fitness check error: "
.
$e
->
getMessage
());
}
},
10
);
// Injury recovered → check recovery achievements
EventBus
::
listen
(
'player.injury_recovered'
,
function
(
array
$data
)
{
try
{
$playerId
=
(
int
)
(
$data
[
'player_id'
]
??
0
);
if
(
$playerId
<=
0
)
return
;
\App\Modules\Achievements\Services\AchievementEngine
::
checkAndAward
(
$playerId
,
'injury_recovered'
,
$data
);
}
catch
(
\Throwable
$e
)
{
Logger
::
error
(
"Achievement recovery check error: "
.
$e
->
getMessage
());
}
},
10
);
// Module disabled — replaced by SportsActivity module
app/Modules/ActivitySubscriptions/bootstrap.php
View file @
e2e93ed2
<?php
declare
(
strict_types
=
1
);
use
App\Core\Registries\PermissionRegistry
;
PermissionRegistry
::
register
(
'activity_subscriptions'
,
[
'activity_sub.view'
=>
[
'ar'
=>
'عرض اشتراكات الأنشطة'
,
'en'
=>
'View Activity Subscriptions'
],
'activity_sub.collect'
=>
[
'ar'
=>
'تحصيل اشتراكات الأنشطة'
,
'en'
=>
'Collect Activity Subscriptions'
],
'activity_sub.exempt'
=>
[
'ar'
=>
'إعفاء اشتراكات الأنشطة'
,
'en'
=>
'Exempt Activity Subscriptions'
],
'activity_sub.generate'
=>
[
'ar'
=>
'توليد اشتراكات الأنشطة'
,
'en'
=>
'Generate Activity Subscriptions'
],
'activity_sub.manage_pricing'
=>
[
'ar'
=>
'إدارة تسعير الأنشطة'
,
'en'
=>
'Manage Activity Pricing'
],
]);
// Module disabled — replaced by SportsActivity module
app/Modules/Coaches/bootstrap.php
View file @
e2e93ed2
<?php
declare
(
strict_types
=
1
);
use
App\Core\Registries\PermissionRegistry
;
use
App\Core\Registries\MenuRegistry
;
PermissionRegistry
::
register
(
'coaches'
,
[
'coach.view'
=>
[
'ar'
=>
'عرض المدربين'
,
'en'
=>
'View Coaches'
],
'coach.manage'
=>
[
'ar'
=>
'إدارة المدربين'
,
'en'
=>
'Manage Coaches'
],
'coach.rate'
=>
[
'ar'
=>
'تقييم المدربين'
,
'en'
=>
'Rate Coaches'
],
'coach.manage_ratings'
=>
[
'ar'
=>
'إدارة تقييمات المدربين'
,
'en'
=>
'Manage Coach Ratings'
],
'coach.view_performance'
=>
[
'ar'
=>
'عرض أداء المدربين'
,
'en'
=>
'View Coach Performance'
],
]);
MenuRegistry
::
register
(
'coaches'
,
[
'label_ar'
=>
'المدربين'
,
'icon'
=>
'users'
,
'route'
=>
'/coaches'
,
'permission'
=>
'coach.view'
,
'order'
=>
397
,
'parent'
=>
'sports_activities'
,
]);
MenuRegistry
::
register
(
'coach_ratings'
,
[
'label_ar'
=>
'تقييمات المدربين'
,
'icon'
=>
'star'
,
'route'
=>
'/coach-ratings'
,
'permission'
=>
'coach.rate'
,
'order'
=>
398
,
'parent'
=>
'sports_activities'
,
]);
MenuRegistry
::
register
(
'coach_performance'
,
[
'label_ar'
=>
'أداء المدربين'
,
'icon'
=>
'bar-chart-3'
,
'route'
=>
'/coach-performance'
,
'permission'
=>
'coach.view_performance'
,
'order'
=>
399
,
'parent'
=>
'sports_activities'
,
]);
// Module disabled — replaced by SportsActivity module
app/Modules/Disciplines/bootstrap.php
View file @
e2e93ed2
<?php
declare
(
strict_types
=
1
);
use
App\Core\Registries\MenuRegistry
;
use
App\Core\Registries\PermissionRegistry
;
// ────────────────────────────────────────────────────────────
// Sports Activities — Parent sidebar menu with all 7 module children
// This file owns the entire sports_activities menu group.
// ────────────────────────────────────────────────────────────
MenuRegistry
::
register
(
'sports_activities'
,
[
'label_ar'
=>
'الأنشطة الرياضية'
,
'label_en'
=>
'Sports Activities'
,
'icon'
=>
'activity'
,
'route'
=>
'/sports-dashboard'
,
'permission'
=>
'discipline.view'
,
'parent'
=>
null
,
'order'
=>
395
,
'children'
=>
[
[
'label_ar'
=>
'لوحة التحكم'
,
'label_en'
=>
'Dashboard'
,
'route'
=>
'/sports-dashboard'
,
'permission'
=>
'discipline.view'
,
'order'
=>
1
],
[
'label_ar'
=>
'المراية (عرض مباشر)'
,
'label_en'
=>
'Mirror Display'
,
'route'
=>
'/mirror'
,
'permission'
=>
'facility.mirror'
,
'order'
=>
2
],
[
'label_ar'
=>
'الأنشطة والأكاديميات'
,
'label_en'
=>
'Disciplines & Academies'
,
'route'
=>
'/disciplines'
,
'permission'
=>
'discipline.view'
,
'order'
=>
3
],
[
'label_ar'
=>
'المدربين'
,
'label_en'
=>
'Coaches'
,
'route'
=>
'/coaches'
,
'permission'
=>
'coach.view'
,
'order'
=>
4
],
[
'label_ar'
=>
'المجموعات واللاعبين'
,
'label_en'
=>
'Groups & Players'
,
'route'
=>
'/training-groups'
,
'permission'
=>
'training_group.view'
,
'order'
=>
5
],
[
'label_ar'
=>
'الحصص والحضور'
,
'label_en'
=>
'Sessions & Attendance'
,
'route'
=>
'/sessions'
,
'permission'
=>
'session.view'
,
'order'
=>
6
],
[
'label_ar'
=>
'المرافق والشبكات'
,
'label_en'
=>
'Facilities & Grids'
,
'route'
=>
'/facility-grids'
,
'permission'
=>
'facility_grid.view'
,
'order'
=>
7
],
[
'label_ar'
=>
'الحجوزات'
,
'label_en'
=>
'Reservations'
,
'route'
=>
'/reservations'
,
'permission'
=>
'reservation.view'
,
'order'
=>
8
],
[
'label_ar'
=>
'التأجير المؤسسي'
,
'label_en'
=>
'Corporate Rentals'
,
'route'
=>
'/rentals'
,
'permission'
=>
'rental.view'
,
'order'
=>
9
],
[
'label_ar'
=>
'حمام السباحة'
,
'label_en'
=>
'Pool Management'
,
'route'
=>
'/pool'
,
'permission'
=>
'pool.view'
,
'order'
=>
10
],
[
'label_ar'
=>
'الاشتراكات والتسعير'
,
'label_en'
=>
'Subscriptions & Pricing'
,
'route'
=>
'/activity-subscriptions'
,
'permission'
=>
'activity_sub.view'
,
'order'
=>
11
],
[
'label_ar'
=>
'العقود والتسويات'
,
'label_en'
=>
'Contracts & Settlements'
,
'route'
=>
'/academy-contracts'
,
'permission'
=>
'academy_contract.view'
,
'order'
=>
12
],
[
'label_ar'
=>
'قائمة الانتظار'
,
'label_en'
=>
'Waitlist'
,
'route'
=>
'/waitlist'
,
'permission'
=>
'waitlist.view'
,
'order'
=>
13
],
],
]);
PermissionRegistry
::
register
(
'disciplines'
,
[
'discipline.view'
=>
[
'ar'
=>
'عرض الأنشطة الرياضية'
,
'en'
=>
'View Disciplines'
],
'discipline.manage'
=>
[
'ar'
=>
'إدارة الأنشطة الرياضية'
,
'en'
=>
'Manage Disciplines'
],
'waitlist.view'
=>
[
'ar'
=>
'عرض قائمة الانتظار'
,
'en'
=>
'View Waitlist'
],
'waitlist.manage'
=>
[
'ar'
=>
'إدارة قائمة الانتظار'
,
'en'
=>
'Manage Waitlist'
],
]);
// Module disabled — replaced by SportsActivity module
app/Modules/FacilityDashboards/bootstrap.php
View file @
e2e93ed2
<?php
declare
(
strict_types
=
1
);
use
App\Core\Registries\PermissionRegistry
;
use
App\Core\Registries\MenuRegistry
;
PermissionRegistry
::
register
(
'facility_dashboards'
,
[
'facility.dashboard'
=>
[
'ar'
=>
'لوحة المرفق'
,
'en'
=>
'Facility Dashboard'
],
'facility.mirror'
=>
[
'ar'
=>
'المراية'
,
'en'
=>
'Mirror Display'
],
]);
MenuRegistry
::
register
(
'facility_mirror'
,
[
'label_ar'
=>
'المراية (عرض مباشر)'
,
'icon'
=>
'monitor'
,
'route'
=>
'/mirror'
,
'permission'
=>
'facility.mirror'
,
'order'
=>
396
,
'parent'
=>
'sports_activities'
,
]);
// Module disabled — replaced by SportsActivity module
app/Modules/FacilityGrids/bootstrap.php
View file @
e2e93ed2
<?php
declare
(
strict_types
=
1
);
use
App\Core\Registries\PermissionRegistry
;
PermissionRegistry
::
register
(
'facility_grids'
,
[
'facility_grid.view'
=>
[
'ar'
=>
'عرض شبكات المرافق'
,
'en'
=>
'View Facility Grids'
],
'facility_grid.manage'
=>
[
'ar'
=>
'إدارة شبكات المرافق'
,
'en'
=>
'Manage Facility Grids'
],
]);
// Module disabled — replaced by SportsActivity module
app/Modules/MatchCenter/bootstrap.php
View file @
e2e93ed2
<?php
declare
(
strict_types
=
1
);
use
App\Core\Registries\MenuRegistry
;
use
App\Core\Registries\PermissionRegistry
;
// ────────────────────────────────────────────────────────────
// Match Center — Live match tracking & score entry
// ────────────────────────────────────────────────────────────
MenuRegistry
::
register
(
'match_center'
,
[
'label_ar'
=>
'مركز المباريات'
,
'label_en'
=>
'Match Center'
,
'icon'
=>
'futbol'
,
'route'
=>
'/match-center'
,
'permission'
=>
'match_center.view'
,
'parent'
=>
'sports_activities'
,
'order'
=>
720
,
]);
PermissionRegistry
::
register
(
'match_center'
,
[
'match_center.view'
=>
[
'ar'
=>
'عرض مركز المباريات'
,
'en'
=>
'View Match Center'
],
'match_center.manage'
=>
[
'ar'
=>
'إدارة المباريات'
,
'en'
=>
'Manage Matches'
],
'match_center.live_entry'
=>
[
'ar'
=>
'إدخال بيانات مباشرة'
,
'en'
=>
'Live Match Entry'
],
]);
// Module disabled — replaced by SportsActivity module
app/Modules/News/bootstrap.php
View file @
e2e93ed2
<?php
declare
(
strict_types
=
1
);
use
App\Core\Registries\MenuRegistry
;
use
App\Core\Registries\PermissionRegistry
;
// ────────────────────────────────────────────────────────────
// News — Club news articles and announcements
// ────────────────────────────────────────────────────────────
MenuRegistry
::
register
(
'news'
,
[
'label_ar'
=>
'الأخبار'
,
'label_en'
=>
'News'
,
'icon'
=>
'newspaper'
,
'route'
=>
'/news'
,
'permission'
=>
'news.view'
,
'parent'
=>
'sports_activities'
,
'order'
=>
730
,
]);
PermissionRegistry
::
register
(
'news'
,
[
'news.view'
=>
[
'ar'
=>
'عرض الأخبار'
,
'en'
=>
'View News'
],
'news.manage'
=>
[
'ar'
=>
'إدارة الأخبار'
,
'en'
=>
'Manage News'
],
]);
// Module disabled — replaced by SportsActivity module
app/Modules/PlayerAffairs/bootstrap.php
View file @
e2e93ed2
<?php
declare
(
strict_types
=
1
);
use
App\Core\Registries\PermissionRegistry
;
use
App\Core\Registries\MenuRegistry
;
PermissionRegistry
::
register
(
'player_affairs'
,
[
'player.view'
=>
[
'ar'
=>
'عرض اللاعبين'
,
'en'
=>
'View Players'
],
'player.search'
=>
[
'ar'
=>
'بحث عن لاعبين'
,
'en'
=>
'Search Players'
],
'player.register'
=>
[
'ar'
=>
'تسجيل لاعب'
,
'en'
=>
'Register Player'
],
'player.edit'
=>
[
'ar'
=>
'تعديل بيانات لاعب'
,
'en'
=>
'Edit Player'
],
'player.manage_card'
=>
[
'ar'
=>
'إدارة كارنيه اللاعب'
,
'en'
=>
'Manage Player Card'
],
'player.view_medical'
=>
[
'ar'
=>
'عرض السجل الطبي'
,
'en'
=>
'View Medical Records'
],
'player.manage_medical'
=>
[
'ar'
=>
'إدارة السجل الطبي'
,
'en'
=>
'Manage Medical Records'
],
'player.approve_medical'
=>
[
'ar'
=>
'اعتماد السجل الطبي'
,
'en'
=>
'Approve Medical Records'
],
'player.record_attendance'
=>
[
'ar'
=>
'تسجيل الحضور'
,
'en'
=>
'Record Attendance'
],
'player.evaluate'
=>
[
'ar'
=>
'تقييم اللاعبين'
,
'en'
=>
'Evaluate Players'
],
'player.manage_injuries'
=>
[
'ar'
=>
'إدارة إصابات اللاعبين'
,
'en'
=>
'Manage Player Injuries'
],
'player.manage_fitness'
=>
[
'ar'
=>
'إدارة اختبارات اللياقة'
,
'en'
=>
'Manage Fitness Tests'
],
]);
MenuRegistry
::
register
(
'player_injuries'
,
[
'label_ar'
=>
'إصابات اللاعبين'
,
'icon'
=>
'heart-pulse'
,
'route'
=>
'/injuries'
,
'permission'
=>
'player.manage_injuries'
,
'order'
=>
393
,
'parent'
=>
'sports_activities'
,
]);
MenuRegistry
::
register
(
'fitness_tests'
,
[
'label_ar'
=>
'اختبارات اللياقة'
,
'icon'
=>
'activity'
,
'route'
=>
'/fitness-tests'
,
'permission'
=>
'player.manage_fitness'
,
'order'
=>
394
,
'parent'
=>
'sports_activities'
,
]);
// ── Cross-module event listeners for the sports system ──
require_once
__DIR__
.
'/EventListeners.php'
;
// Module disabled — replaced by SportsActivity module
app/Modules/PlaygroundAdmin/bootstrap.php
View file @
e2e93ed2
<?php
declare
(
strict_types
=
1
);
use
App\Core\Registries\PermissionRegistry
;
use
App\Core\Registries\MenuRegistry
;
PermissionRegistry
::
register
(
'playground'
,
'إدارة الملاعب'
,
[
'playground.view'
=>
'عرض الملاعب'
,
'playground.manage'
=>
'إدارة الملاعب'
,
'playground.schedule'
=>
'إدارة جداول الملاعب'
,
'playground.attendance'
=>
'تسجيل حضور الملاعب'
,
'playground.dashboard'
=>
'لوحة تحكم الملاعب'
,
]);
MenuRegistry
::
register
(
'playground'
,
[
'label'
=>
'الملاعب'
,
'icon'
=>
'bi-geo-alt'
,
'route'
=>
'/playgrounds'
,
'permission'
=>
'playground.view'
,
'order'
=>
35
,
'children'
=>
[
[
'label'
=>
'قائمة الملاعب'
,
'route'
=>
'/playgrounds'
,
'permission'
=>
'playground.view'
],
[
'label'
=>
'لوحة التحكم الرياضية'
,
'route'
=>
'/sports-dashboard'
,
'permission'
=>
'playground.dashboard'
],
],
]);
// Module disabled — replaced by SportsActivity module
app/Modules/PoolManagement/bootstrap.php
View file @
e2e93ed2
<?php
declare
(
strict_types
=
1
);
use
App\Core\Registries\PermissionRegistry
;
use
App\Core\Registries\MenuRegistry
;
PermissionRegistry
::
register
(
'pool_management'
,
[
'pool.view'
=>
[
'ar'
=>
'عرض حمام السباحة'
,
'en'
=>
'View Pool'
],
'pool.manage'
=>
[
'ar'
=>
'إدارة حمام السباحة'
,
'en'
=>
'Manage Pool'
],
'pool.book'
=>
[
'ar'
=>
'حجز حمام السباحة'
,
'en'
=>
'Book Pool'
],
]);
MenuRegistry
::
register
(
'pool_management'
,
[
'label_ar'
=>
'حمام السباحة'
,
'icon'
=>
'waves'
,
'route'
=>
'/pool'
,
'permission'
=>
'pool.view'
,
'order'
=>
401
,
'parent'
=>
'sports_activities'
,
]);
// Module disabled — replaced by SportsActivity module
app/Modules/Rentals/bootstrap.php
View file @
e2e93ed2
<?php
declare
(
strict_types
=
1
);
use
App\Core\Registries\PermissionRegistry
;
PermissionRegistry
::
register
(
'rentals'
,
[
'rental.view'
=>
[
'ar'
=>
'عرض التأجير المؤسسي'
,
'en'
=>
'View Corporate Rentals'
],
'rental.manage_entity'
=>
[
'ar'
=>
'إدارة جهات التأجير'
,
'en'
=>
'Manage Rental Entities'
],
'rental.approve'
=>
[
'ar'
=>
'اعتماد عقود التأجير'
,
'en'
=>
'Approve Rental Contracts'
],
'rental.manage_contract'
=>
[
'ar'
=>
'إدارة عقود التأجير'
,
'en'
=>
'Manage Rental Contracts'
],
'rental.manage_deposit'
=>
[
'ar'
=>
'إدارة تأمينات التأجير'
,
'en'
=>
'Manage Rental Deposits'
],
]);
// Module disabled — replaced by SportsActivity module
app/Modules/Sessions/bootstrap.php
View file @
e2e93ed2
<?php
declare
(
strict_types
=
1
);
use
App\Core\Registries\PermissionRegistry
;
use
App\Core\Registries\MenuRegistry
;
PermissionRegistry
::
register
(
'sessions'
,
[
'session.view'
=>
[
'ar'
=>
'عرض الحصص التدريبية'
,
'en'
=>
'View Training Sessions'
],
'session.manage'
=>
[
'ar'
=>
'إدارة الحصص التدريبية'
,
'en'
=>
'Manage Training Sessions'
],
'session.attendance'
=>
[
'ar'
=>
'تسجيل الحضور والغياب'
,
'en'
=>
'Record Session Attendance'
],
'session.view_feedback'
=>
[
'ar'
=>
'عرض تقييمات الجلسات'
,
'en'
=>
'View Session Feedback'
],
]);
MenuRegistry
::
register
(
'sessions'
,
[
'label_ar'
=>
'الحصص التدريبية'
,
'icon'
=>
'calendar-days'
,
'route'
=>
'/sessions'
,
'permission'
=>
'session.view'
,
'order'
=>
400
,
'parent'
=>
'sports_activities'
,
]);
// Module disabled — replaced by SportsActivity module
app/Modules/Sports/bootstrap.php
View file @
e2e93ed2
<?php
declare
(
strict_types
=
1
);
use
App\Core\Registries\PermissionRegistry
;
PermissionRegistry
::
register
(
'sports'
,
[
'sports.view'
=>
[
'ar'
=>
'عرض العضوية الرياضية'
,
'en'
=>
'View Sports Membership'
],
'sports.add'
=>
[
'ar'
=>
'تسجيل عضوية رياضية'
,
'en'
=>
'Register Sports Membership'
],
'sports.convert'
=>
[
'ar'
=>
'تحويل عضو رياضي'
,
'en'
=>
'Convert Sports Member'
],
]);
\ No newline at end of file
// Module disabled — replaced by SportsActivity module
app/Modules/SportsDashboard/bootstrap.php
View file @
e2e93ed2
<?php
declare
(
strict_types
=
1
);
use
App\Core\Registries\PermissionRegistry
;
use
App\Core\Registries\MenuRegistry
;
PermissionRegistry
::
register
(
'sports_dashboard'
,
[
'sports_dashboard.view'
=>
[
'ar'
=>
'عرض لوحة المعلومات الرياضية'
,
'en'
=>
'View Sports Dashboard'
],
'sports_dashboard.export'
=>
[
'ar'
=>
'تصدير التقارير'
,
'en'
=>
'Export Reports'
],
]);
MenuRegistry
::
register
(
'sports_dashboard'
,
[
'label_ar'
=>
'لوحة المعلومات الرياضية'
,
'icon'
=>
'chart-bar'
,
'route'
=>
'/sports-dashboard'
,
'permission'
=>
'sports_dashboard.view'
,
'parent'
=>
'sports_activities'
,
'order'
=>
700
,
]);
// Module disabled — replaced by SportsActivity module
app/Modules/Training/bootstrap.php
View file @
e2e93ed2
<?php
declare
(
strict_types
=
1
);
use
App\Core\Registries\PermissionRegistry
;
use
App\Core\Registries\MenuRegistry
;
PermissionRegistry
::
register
(
'training'
,
[
'training.submit_feedback'
=>
[
'ar'
=>
'تقديم تقييم الحصة'
,
'en'
=>
'Submit Session Feedback'
],
'training.view_feedback'
=>
[
'ar'
=>
'عرض تقييمات الحصص'
,
'en'
=>
'View Session Feedback'
],
]);
MenuRegistry
::
register
(
'training_feedback'
,
[
'label_ar'
=>
'تقييمات الحصص'
,
'label_en'
=>
'Session Feedback'
,
'icon'
=>
'message-square'
,
'route'
=>
null
,
'permission'
=>
'training.view_feedback'
,
'order'
=>
401
,
'parent'
=>
'sports_activities'
,
]);
// Module disabled — replaced by SportsActivity module
app/Modules/TrainingGroups/bootstrap.php
View file @
e2e93ed2
<?php
declare
(
strict_types
=
1
);
use
App\Core\Registries\PermissionRegistry
;
use
App\Core\Registries\MenuRegistry
;
PermissionRegistry
::
register
(
'training_groups'
,
[
'training_group.view'
=>
[
'ar'
=>
'عرض المجموعات التدريبية'
,
'en'
=>
'View Training Groups'
],
'training_group.manage'
=>
[
'ar'
=>
'إدارة المجموعات التدريبية'
,
'en'
=>
'Manage Training Groups'
],
]);
MenuRegistry
::
register
(
'training_groups'
,
[
'label_ar'
=>
'المجموعات التدريبية'
,
'icon'
=>
'users'
,
'route'
=>
'/training-groups'
,
'permission'
=>
'training_group.view'
,
'order'
=>
399
,
'parent'
=>
'sports_activities'
,
'children'
=>
[
[
'label_ar'
=>
'المجموعات'
,
'label_en'
=>
'Groups'
,
'route'
=>
'/training-groups'
,
'permission'
=>
'training_group.view'
,
'order'
=>
1
],
[
'label_ar'
=>
'طلبات النقل'
,
'label_en'
=>
'Transfer Requests'
,
'route'
=>
'/transfer-requests'
,
'permission'
=>
'training_group.manage'
,
'order'
=>
2
],
[
'label_ar'
=>
'قائمة الانتظار'
,
'label_en'
=>
'Waiting List'
,
'route'
=>
'/waiting-list'
,
'permission'
=>
'training_group.view'
,
'order'
=>
3
],
],
]);
// Module disabled — replaced by SportsActivity module
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment