@if(auth()->user()->can('Dashboard-list')||auth()->user()->can('Dashboard-create')||auth()->user()->can('Dashboard-edit')||auth()->user()->can('Dashboard-setup'))
Dashboard
@endif
@can('Settings-list')
{{__('Settings')}}
@endcan
@can('Branch-list')
Branch/Warehouse
@can('Branch-create')
@endcan
@endcan
@if(auth()->user()->can('Department-list')||auth()->user()->can('Designation-list'))
Department
@endif
@can('Attendance-list')
@php
$attendance_reconciliation = \Cache::remember('attendance_reconciliation_count', 60, function () {
return \App\Models\attendance_reconcilition::where('approved_by', null)->count();
});
$leave_application = \Cache::remember('leave_application_count', 60, function () {
return \App\Models\Leave::where('approved_by', null)->count();
});
$attendanceRoutes = [
'attendance.setup',
'attendance.dashboard',
'attendance.index',
'attendance.show',
'admin.attendance.reconciliation',
'attendance.history',
'attendance.imports',
'attendance.manual.system',
];
$attendanceActive = request()->routeIs($attendanceRoutes);
@endphp
Attendance {{$attendance_reconciliation}}
@endcan
@can('Leave-list')
@php
$leaveRoutes = [
'leave_type',
'leave.application',
'leave.adjustment',
];
$leaveActive = request()->routeIs($leaveRoutes);
@endphp
Leave {{$leave_application}}
@endcan
@can('Salary-list')
@php
$salaryRoutes = [
'salary.setup',
'salary.setup.presets',
'salary.setup.store',
'salary.setup.edit',
'salary.setup.update',
'salary.setup.manage',
'salary.structure.settings',
'salary.structure.settings.update',
'salary.structure.example_preset',
'salary.structure.preview',
'advance.salary',
];
$salaryActive = request()->routeIs($salaryRoutes);
$salaryStructureMenu = (int) get_setting('salary_structure_rules') === 1;
@endphp
Salary
@endcan
@can('Payroll-list')
@php
$payrollRoutes = [
'payroll.index',
'payroll.store',
'payslip.index',
'payslip.view',
'payslip.destroy',
'payroll.export',
'bulk-payroll-delete',
'bulk-payment',
'generate_payslip',
'payroll.tax.settings',
'payroll.tax.settings.update',
'tds.report.monthly',
'tds.report.employee',
'tds.form16',
'payroll.tax.nbr_defaults',
];
$payrollActive = request()->routeIs($payrollRoutes);
$tdsMenu = (int) get_setting('payroll_tax') === 1;
@endphp
Payroll
@endcan
@php
$pfPerms = \App\Support\ModulePermissions::namesFor('ProvidentFund');
$gfPerms = \App\Support\ModulePermissions::namesFor('GratuityFund');
$swfPerms = \App\Support\ModulePermissions::namesFor('StaffWelfareFund');
$paPerms = \App\Support\ModulePermissions::namesFor('PerformanceAppraisal');
$dmPerms = \App\Support\ModulePermissions::namesFor('Disciplinary');
$apHierPerms = \App\Support\ModulePermissions::namesFor('ApprovalHierarchy');
$apCenterPerms = \App\Support\ModulePermissions::namesFor('ApprovalCenter');
$pfActive = request()->routeIs(['pf.settings','pf.accounts','pf.accounts.*','pf.ledger','pf.reports.yearly','pf.staff.statement','pf.staff.statement.pdf','pf.staff.yearly_certificate','pf.loans','pf.withdrawals']);
$gfActive = request()->routeIs(['gf.settings','gf.accounts','gf.accounts.*','gf.ledger','gf.reports.yearly','gf.staff.statement','gf.staff.statement.pdf','gf.staff.yearly_certificate','gf.withdrawals']);
$swfActive = request()->routeIs(['swf.settings','swf.accounts','swf.accounts.*','swf.ledger','swf.reports.yearly','swf.staff.statement','swf.staff.statement.pdf','swf.staff.yearly_certificate','swf.loans','swf.withdrawals']);
$paActive = str_starts_with((string) request()->route()?->getName(), 'pa.')
|| request()->routeIs(['appraisal.settings', 'appraisal.templates*', 'appraisal.records*']);
$pfMenu = ((int) get_setting('pf') === 1 || auth()->user()->user_type === 'admin') && auth()->user()->canAny($pfPerms);
$gfMenu = ((int) get_setting('gf') === 1 || auth()->user()->user_type === 'admin') && auth()->user()->canAny($gfPerms);
$swfMenu = ((int) get_setting('swf') === 1 || auth()->user()->user_type === 'admin') && auth()->user()->canAny($swfPerms);
$paMenu = (\App\Support\PerformanceAppraisalFeature::enabled() || auth()->user()->user_type === 'admin')
&& auth()->user()->canAny($paPerms);
$dmActive = str_starts_with((string) request()->route()?->getName(), 'dm.');
$dmMenu = ((int) get_setting('disciplinary_management') === 1 || auth()->user()->user_type === 'admin') && auth()->user()->canAny($dmPerms);
$showApHierarchyLink = (int) get_setting('approval_hierarchy') === 1 && auth()->user()->canAny($apHierPerms);
$showApCenterLink = auth()->user()->canAny($apCenterPerms);
$approvalMenu = ((int) get_setting('supervisor') === 1 || (int) get_setting('approval_hierarchy') === 1)
&& ($showApHierarchyLink || $showApCenterLink);
@endphp
@if($pfMenu)
{{ __('Provident Fund') }}
@endif
@if($gfMenu)
{{ __('Gratuity Fund') }}
@endif
@if($swfMenu)
{{ __('Staff Welfare Fund') }}
@endif
@if($paMenu)
{{ __('Performance appraisal') }}
@endif
@if($dmMenu)
{{ __('Disciplinary') }}
@endif
@can('Holiday-list')
Holiday
@endcan
@can('Weekend-list')
{{-- --}}
Weekend
@endcan
@can('Recruitment-list')
@php
$recruitmentActive = request()->routeIs([
'admin.recruitment.jobs',
'admin.recruitment.applications',
'admin.recruitment.applications.show',
'admin.recruitment.offer-letter',
]);
@endphp
Recruitment (ATS)
@endcan
@can('User-list')
Employee
@endcan
@php
$hrOpsPermsMenu = \App\Support\ModulePermissions::namesFor('HrOperations');
$hrOpsActiveMenu = request()->routeIs([
'admin.hr.operations',
'admin.hr.staff_branch_transfer',
'admin.hr.asset_branch_transfer',
'admin.hr.staff_promotion',
'admin.hr.salary_review',
]);
@endphp
@if(auth()->user()->canAny($hrOpsPermsMenu))
@endif
@can('Notice-list')
Notice Board
@endcan
@can('Certificate-list')
Certificate
@endcan
@if(auth()->user()->user_type === 'admin' || auth()->user()->can('Visit-list'))
Movement Application
@endif
@can('Event-list')
Event Management
@endcan
@can('Role-list')
Role Management
@endcan
@can('Accounts-list')
Accounts
@endcan
@can('Report-list')
Report
@endcan
@can('Asset-list')
Asset
@endcan
Company Policy
@if($approvalMenu)
{{ __('Approval System') }}
@endif
@can('Activity-list')
Activity Log
@endcan