fix(announcement): hide menu from sidebar
-feat query for mark when announcements unread -change var for calendar in overview
This commit is contained in:
parent
aad2e3bbde
commit
64c53b0314
@ -120,7 +120,7 @@ public function index(Request $request)
|
|||||||
$user = User::with(['announcements'])->find(Auth::id());
|
$user = User::with(['announcements'])->find(Auth::id());
|
||||||
|
|
||||||
// Data pengumuman
|
// Data pengumuman
|
||||||
$data['announcements'] = $user->announcements()
|
$data['overview_announcements'] = $user->announcements()
|
||||||
->where(function ($query) {
|
->where(function ($query) {
|
||||||
$query->where('announcements_users.category', '=', 'general');
|
$query->where('announcements_users.category', '=', 'general');
|
||||||
})
|
})
|
||||||
|
|||||||
@ -23,7 +23,13 @@ public function handle(Request $request, Closure $next): Response
|
|||||||
$query->orderBy('id', 'desc');
|
$query->orderBy('id', 'desc');
|
||||||
}])->find(Auth::user()->id);
|
}])->find(Auth::user()->id);
|
||||||
|
|
||||||
View::share('announcements', $user->announcements);
|
$announcements = $user->announcements;
|
||||||
|
$hasUnread = $announcements->some(fn ($a) => $a->pivot->status == 0);
|
||||||
|
|
||||||
|
View::share([
|
||||||
|
'announcements' => $announcements,
|
||||||
|
'hasUnread' => $hasUnread,
|
||||||
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
return $next($request);
|
return $next($request);
|
||||||
|
|||||||
@ -118,7 +118,7 @@
|
|||||||
$('.popover').popover('hide');
|
$('.popover').popover('hide');
|
||||||
},
|
},
|
||||||
events: [
|
events: [
|
||||||
@foreach($announcements as $announcement)
|
@foreach($overview_announcements as $announcement)
|
||||||
{
|
{
|
||||||
id: 'default-event-id-' + Math.floor(Math.random() * 9999999),
|
id: 'default-event-id-' + Math.floor(Math.random() * 9999999),
|
||||||
title: "Pengumuman",
|
title: "Pengumuman",
|
||||||
|
|||||||
@ -74,8 +74,6 @@
|
|||||||
|
|
||||||
@include('partials.app.sweetalert')
|
@include('partials.app.sweetalert')
|
||||||
|
|
||||||
{{-- {{dd(request()->all())}} --}}
|
|
||||||
|
|
||||||
@if (isset($page))
|
@if (isset($page))
|
||||||
@if ($page === 'create_issue_management')
|
@if ($page === 'create_issue_management')
|
||||||
<script src="{{asset('assets/dashboard/js/issue-managements/create.js')}}"></script>
|
<script src="{{asset('assets/dashboard/js/issue-managements/create.js')}}"></script>
|
||||||
@ -96,7 +94,7 @@
|
|||||||
@if(is_role(['1']))
|
@if(is_role(['1']))
|
||||||
@include('partials.app.calendars.admin')
|
@include('partials.app.calendars.admin')
|
||||||
@elseif (is_role(['3']))
|
@elseif (is_role(['3']))
|
||||||
@include('partials.app.calendars.media')
|
@include('partials.app.calendars.media',['overview_announcements' => $overview_announcements])
|
||||||
@endif
|
@endif
|
||||||
@endif
|
@endif
|
||||||
|
|
||||||
|
|||||||
@ -1,74 +1,87 @@
|
|||||||
<!-- wrap @s -->
|
<!-- wrap @s -->
|
||||||
<div class="nk-wrap ">
|
<div class="nk-wrap ">
|
||||||
<!-- main header @s -->
|
<!-- main header @s -->
|
||||||
<div class="nk-header nk-header-fixed is-light">
|
<div class="nk-header nk-header-fixed is-light">
|
||||||
<div class="container-fluid">
|
<div class="container-fluid">
|
||||||
<div class="nk-header-wrap">
|
<div class="nk-header-wrap">
|
||||||
<div class="nk-menu-trigger d-xl-none ms-n1">
|
<div class="nk-menu-trigger d-xl-none ms-n1">
|
||||||
<a href="#" class="nk-nav-toggle nk-quick-nav-icon" data-target="sidebarMenu"><em class="icon ni ni-menu"></em></a>
|
<a href="#" class="nk-nav-toggle nk-quick-nav-icon" data-target="sidebarMenu"><em
|
||||||
</div>
|
class="icon ni ni-menu"></em></a>
|
||||||
<div class="nk-header-brand d-xl-none">
|
</div>
|
||||||
<a href="javascript: void(0);" class="logo-link">
|
<div class="nk-header-brand d-xl-none">
|
||||||
<img class="logo-light logo-img" src="{{$app->app_logo == 'simedkom-logo-full.png' ? asset('assets/defaults/simedkom-logo-full.png') : asset('storage/uploads/settings/'. $app->app_logo)}}" srcset="{{$app->app_logo == 'simedkom-logo-full.png' ? asset('assets/defaults/simedkom-logo-full.png') : asset('storage/uploads/settings/'. $app->app_logo)}} 2x" alt="logo">
|
<a href="javascript: void(0);" class="logo-link">
|
||||||
<img class="logo-dark logo-img" src="{{$app->app_logo == 'simedkom-logo-full.png' ? asset('assets/defaults/simedkom-logo-full.png') : asset('storage/uploads/settings/'. $app->app_logo)}}" srcset="{{$app->app_logo == 'simedkom-logo-full.png' ? asset('assets/defaults/simedkom-logo-full.png') : asset('storage/uploads/settings/'. $app->app_logo)}} 2x" alt="logo-dark">
|
<img class="logo-light logo-img"
|
||||||
</a>
|
src="{{ $app->app_logo == 'simedkom-logo-full.png' ? asset('assets/defaults/simedkom-logo-full.png') : asset('storage/uploads/settings/' . $app->app_logo) }}"
|
||||||
</div><!-- .nk-header-brand -->
|
srcset="{{ $app->app_logo == 'simedkom-logo-full.png' ? asset('assets/defaults/simedkom-logo-full.png') : asset('storage/uploads/settings/' . $app->app_logo) }} 2x"
|
||||||
<div class="nk-header-tools">
|
alt="logo">
|
||||||
<ul class="nk-quick-nav">
|
<img class="logo-dark logo-img"
|
||||||
@if (is_role(['3']))
|
src="{{ $app->app_logo == 'simedkom-logo-full.png' ? asset('assets/defaults/simedkom-logo-full.png') : asset('storage/uploads/settings/' . $app->app_logo) }}"
|
||||||
{{-- {{dd($announcements)}} --}}
|
srcset="{{ $app->app_logo == 'simedkom-logo-full.png' ? asset('assets/defaults/simedkom-logo-full.png') : asset('storage/uploads/settings/' . $app->app_logo) }} 2x"
|
||||||
{{-- @foreach ($announcements as $item)
|
alt="logo-dark">
|
||||||
|
</a>
|
||||||
|
</div><!-- .nk-header-brand -->
|
||||||
|
<div class="nk-header-tools">
|
||||||
|
<ul class="nk-quick-nav">
|
||||||
|
@if (is_role(['3']))
|
||||||
|
{{-- {{dd($announcements)}} --}}
|
||||||
|
{{-- @foreach ($announcements as $item)
|
||||||
{{$item->pivot}}
|
{{$item->pivot}}
|
||||||
@endforeach --}}
|
@endforeach --}}
|
||||||
<li class="dropdown chats-dropdown hide-mb-xs">
|
<li class="dropdown chats-dropdown hide-mb-xs">
|
||||||
<a href="#" class="dropdown-toggle nk-quick-nav-icon" data-bs-toggle="dropdown">
|
<a href="#" class="dropdown-toggle nk-quick-nav-icon" data-bs-toggle="dropdown">
|
||||||
<div class="icon-status icon-status-na"><em class="icon ni ni-bell"></em>
|
<div class="icon-status {{ $hasUnread ? 'icon-status-info' : 'icon-status-na' }}"><em class="icon ni ni-bell"></em>
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
<div class="dropdown-menu dropdown-menu-xl dropdown-menu-end">
|
<div class="dropdown-menu dropdown-menu-xl dropdown-menu-end">
|
||||||
<div class="dropdown-head">
|
<div class="dropdown-head">
|
||||||
<span class="sub-title nk-dropdown-title">Pengumuman</span>
|
<span class="sub-title nk-dropdown-title">Pengumuman</span>
|
||||||
{{-- <a href="#">Setting</a> --}}
|
{{-- <a href="#">Setting</a> --}}
|
||||||
</div>
|
</div>
|
||||||
<div class="dropdown-body">
|
<div class="dropdown-body">
|
||||||
<ul class="chat-list">
|
<ul class="chat-list">
|
||||||
@foreach ($announcements as $item)
|
@foreach ($announcements as $item)
|
||||||
{{-- {{dd($item->pivot)}} --}}
|
{{-- {{dd($item->pivot)}} --}}
|
||||||
<li class="chat-item">
|
<li class="chat-item">
|
||||||
<a class="chat-link" href="{{route('dashboard.announcements.read', ['id' => encrypt_id($item->id)])}}" title="{{$item->headline}}">
|
<a class="chat-link"
|
||||||
<div class="chat-media user-avatar bg-transparent">
|
href="{{ route('dashboard.announcements.read', ['id' => encrypt_id($item->id)]) }}">
|
||||||
<img src="{{asset('assets/dashboard/images/marketing.png')}}" alt="">
|
<div class="chat-media user-avatar bg-transparent">
|
||||||
|
<img src="{{ asset('assets/dashboard/images/marketing.png') }}"
|
||||||
|
alt="">
|
||||||
|
</div>
|
||||||
|
<div class="chat-info">
|
||||||
|
<div class="chat-from">
|
||||||
|
<div class="name">Administrator</div>
|
||||||
|
<span
|
||||||
|
class="time">{{ idn_date($item->created_at, 'd M Y') }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="chat-info">
|
<div class="chat-context">
|
||||||
<div class="chat-from">
|
<div class="text">{!! $item->headline !!}
|
||||||
<div class="name">Administrator</div>
|
|
||||||
<span class="time">{{idn_date($item->created_at, 'd M Y')}}</span>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="chat-context">
|
@if ($item->pivot->status == '0')
|
||||||
<div class="text">{{$item->headline}}</div>
|
|
||||||
@if ($item->pivot->status == '0')
|
|
||||||
<div class="status delivered">
|
<div class="status delivered">
|
||||||
<em class="icon ni ni-check-circle"></em>
|
<em class="icon ni ni-check-circle"></em>
|
||||||
</div>
|
</div>
|
||||||
@else
|
@else
|
||||||
<div class="status delivered">
|
<div class="status delivered">
|
||||||
<em class="icon ni ni-check-circle-fill text-primary"></em>
|
<em
|
||||||
|
class="icon ni ni-check-circle-fill text-primary"></em>
|
||||||
</div>
|
</div>
|
||||||
@endif
|
@endif
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</div>
|
||||||
</li><!-- .chat-item -->
|
</a>
|
||||||
@endforeach
|
</li><!-- .chat-item -->
|
||||||
</ul><!-- .chat-list -->
|
@endforeach
|
||||||
</div><!-- .nk-dropdown-body -->
|
</ul><!-- .chat-list -->
|
||||||
<div class="dropdown-foot center">
|
</div><!-- .nk-dropdown-body -->
|
||||||
<a href="{{route('dashboard.announcements.index')}}">Lihat Semua</a>
|
<div class="dropdown-foot center">
|
||||||
</div>
|
<a href="{{ route('dashboard.announcements.index') }}">Lihat
|
||||||
</div>
|
Semua</a>
|
||||||
</li>
|
</div>
|
||||||
@endif
|
</div>
|
||||||
{{-- <li class="dropdown notification-dropdown">
|
</li>
|
||||||
|
@endif
|
||||||
|
{{-- <li class="dropdown notification-dropdown">
|
||||||
<a href="#" class="dropdown-toggle nk-quick-nav-icon" data-bs-toggle="dropdown">
|
<a href="#" class="dropdown-toggle nk-quick-nav-icon" data-bs-toggle="dropdown">
|
||||||
<div class="icon-status icon-status-info"><em class="icon ni ni-bell"></em></div>
|
<div class="icon-status icon-status-info"><em class="icon ni ni-bell"></em></div>
|
||||||
</a>
|
</a>
|
||||||
@ -109,47 +122,56 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</li> --}}
|
</li> --}}
|
||||||
<li class="dropdown user-dropdown">
|
<li class="dropdown user-dropdown">
|
||||||
<a href="#" class="dropdown-toggle me-n1" data-bs-toggle="dropdown">
|
<a href="#" class="dropdown-toggle me-n1" data-bs-toggle="dropdown">
|
||||||
<div class="user-toggle">
|
<div class="user-toggle">
|
||||||
<div class="user-avatar sm">
|
<div class="user-avatar sm">
|
||||||
<em class="icon ni ni-user-alt"></em>
|
<em class="icon ni ni-user-alt"></em>
|
||||||
</div>
|
</div>
|
||||||
<div class="user-info d-none d-xl-block">
|
<div class="user-info d-none d-xl-block">
|
||||||
<div class="user-status text-info">{{get_role_name()}}</div>
|
<div class="user-status text-info">{{ get_role_name() }}</div>
|
||||||
<div class="user-name dropdown-indicator">{{Auth::user()->name}}</div>
|
<div class="user-name dropdown-indicator">{{ Auth::user()->name }}
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
<div class="dropdown-menu dropdown-menu-md dropdown-menu-end">
|
|
||||||
<div class="dropdown-inner user-card-wrap bg-lighter d-none d-md-block">
|
|
||||||
<div class="user-card">
|
|
||||||
<div class="user-avatar">
|
|
||||||
<em class="icon ni ni-user-alt"></em>
|
|
||||||
</div>
|
|
||||||
<div class="user-info">
|
|
||||||
<span class="lead-text">{{Auth::user()->name}}</span>
|
|
||||||
<span class="sub-text">{{Auth::user()->email}}</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="dropdown-inner">
|
|
||||||
<ul class="link-list">
|
|
||||||
<li><a href="{{route('dashboard.users.profile', ['type' => 'account'])}}"><em class="icon ni ni-user-alt"></em><span>Profile</span></a></li>
|
|
||||||
<li><a href="{{route('dashboard.users.setting')}}"><em class="icon ni ni-setting-alt"></em><span>Pengaturan Akun</span></a></li>
|
|
||||||
<li><a class="dark-switch" href="#"><em class="icon ni ni-moon"></em><span>Mode Gelap</span></a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="dropdown-inner">
|
|
||||||
<ul class="link-list">
|
|
||||||
<li><a href="{{route('auth.logout')}}"><em class="icon ni ni-signout"></em><span>Keluar</span></a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</div>
|
||||||
</ul>
|
</div>
|
||||||
|
</a>
|
||||||
|
<div class="dropdown-menu dropdown-menu-md dropdown-menu-end">
|
||||||
|
<div class="dropdown-inner user-card-wrap bg-lighter d-none d-md-block">
|
||||||
|
<div class="user-card">
|
||||||
|
<div class="user-avatar">
|
||||||
|
<em class="icon ni ni-user-alt"></em>
|
||||||
|
</div>
|
||||||
|
<div class="user-info">
|
||||||
|
<span class="lead-text">{{ Auth::user()->name }}</span>
|
||||||
|
<span class="sub-text">{{ Auth::user()->email }}</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="dropdown-inner">
|
||||||
|
<ul class="link-list">
|
||||||
|
<li><a href="{{ route('dashboard.users.profile', ['type' => 'account']) }}"><em
|
||||||
|
class="icon ni ni-user-alt"></em><span>Profile</span></a>
|
||||||
|
</li>
|
||||||
|
<li><a href="{{ route('dashboard.users.setting') }}"><em
|
||||||
|
class="icon ni ni-setting-alt"></em><span>Pengaturan
|
||||||
|
Akun</span></a></li>
|
||||||
|
<li><a class="dark-switch" href="#"><em
|
||||||
|
class="icon ni ni-moon"></em><span>Mode Gelap</span></a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
<div class="dropdown-inner">
|
||||||
|
<ul class="link-list">
|
||||||
|
<li><a href="{{ route('auth.logout') }}"><em
|
||||||
|
class="icon ni ni-signout"></em><span>Keluar</span></a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div><!-- .nk-header-wrap -->
|
</li>
|
||||||
</div><!-- .container-fliud -->
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<!-- main header @e -->
|
</div><!-- .nk-header-wrap -->
|
||||||
|
</div><!-- .container-fliud -->
|
||||||
|
</div>
|
||||||
|
<!-- main header @e -->
|
||||||
|
|||||||
@ -38,7 +38,7 @@
|
|||||||
<span class="nk-menu-badge bg-success text-white" style="color: white !important;">{{get_cooperation_notif()}}</span>
|
<span class="nk-menu-badge bg-success text-white" style="color: white !important;">{{get_cooperation_notif()}}</span>
|
||||||
</a>
|
</a>
|
||||||
</li><!-- .nk-menu-item -->
|
</li><!-- .nk-menu-item -->
|
||||||
<li class="nk-menu-heading">
|
{{-- <li class="nk-menu-heading">
|
||||||
<h6 class="overline-title text-primary-alt">Informasi</h6>
|
<h6 class="overline-title text-primary-alt">Informasi</h6>
|
||||||
</li><!-- .nk-menu-item -->
|
</li><!-- .nk-menu-item -->
|
||||||
<li class="nk-menu-item">
|
<li class="nk-menu-item">
|
||||||
@ -47,7 +47,7 @@
|
|||||||
<span class="nk-menu-text">Pengumuman</span>
|
<span class="nk-menu-text">Pengumuman</span>
|
||||||
<span class="nk-menu-badge bg-success text-white" style="color: white !important;">{{get_unread_announcements()}}</span>
|
<span class="nk-menu-badge bg-success text-white" style="color: white !important;">{{get_unread_announcements()}}</span>
|
||||||
</a>
|
</a>
|
||||||
</li><!-- .nk-menu-item -->
|
</li><!-- .nk-menu-item --> --}}
|
||||||
@endif
|
@endif
|
||||||
@if (is_role(['1']))
|
@if (is_role(['1']))
|
||||||
<li class="nk-menu-heading">
|
<li class="nk-menu-heading">
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user