Files
citrus-cms/resources/views/admin/inc/header.blade.php
T

318 lines
12 KiB
PHP

<header id="page-header" class="{{setting("header_color")}}">
<!-- Header Content -->
<div class="content-header">
<!-- Left Section -->
<div class="content-header-section">
<!-- Page Title & Breadcrumbs -->
<div class="d-flex flex-column justify-content-center">
<div class="font-size-md font-w700 text-dark mb-0" style="line-height: 1.2;">@yield('title')</div>
</div>
</div>
<!-- END Left Section -->
<!-- Right Section -->
<div class="content-header-section">
<!-- Feedback Button -->
<button type="button" class="btn btn-rounded btn-dual-secondary" id="openFeedback" title="Feedback">
<i class="fas fa-comment-dots"></i>
</button>
@if($u->level == "Admin")
<!-- Admin Tools Dropdown -->
<div class="btn-group" role="group">
<button type="button" class="btn btn-rounded btn-dual-secondary" id="page-header-admin-dropdown"
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<i class="fa fa-wrench"></i>
</button>
<div class="dropdown-menu dropdown-menu-right min-width-200"
aria-labelledby="page-header-admin-dropdown">
<h5 class="h6 text-center py-10 mb-5 border-b text-uppercase">Admin Tools</h5>
<a class="dropdown-item" href="javascript:void(0)" onclick="
Swal.fire('', 'Cronjob is Started', 'success');
$.get('{{url("cron")}}', function(d){
Swal.fire('', 'Cronjob is OK', 'success')
});">
<i class="fa fa-cog mr-5"></i> {{e2("Run CronJOB")}}
</a>
<a class="dropdown-item" href="javascript:void(0)" onclick="$.get('{{url("clear-cache")}}',function(d) {
Swal.fire('', 'Cache is Cleared!', 'success')
});">
<i class="fa fa-sync mr-5"></i> {{__('Clear cache')}}
</a>
</div>
</div>
@endif
<!-- Language Dropdown -->
<div class="btn-group" role="group">
<button type="button" class="btn btn-rounded btn-dual-secondary" id="page-header-language-dropdown"
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<i class="fa fa-globe"></i>
<span class="d-none d-sm-inline-block ml-5">{{e2(App::getLocale())}}</span>
</button>
<div class="dropdown-menu dropdown-menu-right min-width-200"
aria-labelledby="page-header-language-dropdown">
<h5 class="h6 text-center py-10 mb-5 border-b text-uppercase">{{ e2("Change Language") }}</h5>
<div class="dropdown-divider"></div>
<?php $dil = languages();
foreach ($dil as $d) { ?>
<a class="dropdown-item" href="javascript:void(0)"
onclick="$.get('?ajax=set-locale&l={{$d}}',function(){location.reload()})">
<i class="fa fa-language mr-5"></i> {{e2($d)}}
</a>
<?php } ?>
</div>
</div>
<!-- Notifications -->
<div class="btn-group" role="group">
<button type="button" class="btn btn-rounded btn-dual-secondary" id="notification-dropdown"
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" onclick="loadNotifications()">
<i class="fa fa-bell"></i>
<span class="badge badge-primary badge-pill" id="notification-count" style="display:none;">0</span>
</button>
<div class="dropdown-menu dropdown-menu-right" style="width: 380px; padding: 0;"
aria-labelledby="notification-dropdown">
<div class="block block-rounded block-bordered mb-0" style="border: none; border-radius: 0.375rem;">
<div class="block-header block-header-default">
<h3 class="block-title">
<i class="fa fa-bell mr-5"></i> {{ e2("Notifications") }}
<span class="badge badge-primary ml-5"
id="notification-unread-indicator">{{ e2("Loading") }}</span>
</h3>
<div class="block-options">
<button type="button" class="btn-block-option" onclick="markAllAsRead(); return false;"
title="{{e2('Mark All Read')}}">
<i class="si si-check"></i>
</button>
</div>
</div>
<div class="block-content p-0">
<div id="notification-scroll-area" style="max-height: 400px; overflow-y: auto;">
<ul id="notification-list" class="list-unstyled mb-0">
<li class="text-center py-20 text-muted">
<i class="fa fa-spinner fa-spin fa-2x mb-10"></i>
<div>{{ e2("Loading...") }}</div>
</li>
</ul>
</div>
</div>
<div class="block-content block-content-full block-content-sm bg-body-light text-center">
<a class="btn btn-sm btn-alt-primary" href="{{url('/admin/types/my-notifications')}}">
<i class="fa fa-list mr-5"></i> {{e2("View All")}}
</a>
</div>
</div>
</div>
</div>
<!-- User Dropdown -->
<div class="btn-group" role="group">
<button type="button" class="btn btn-rounded btn-dual-secondary" id="page-header-user-dropdown"
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<i class="fa fa-user d-sm-none"></i>
<span class="d-none d-sm-inline-block ml-5">{{ Auth::user()->name }}
{{ Auth::user()->surname }}</span>
<i class="fa fa-angle-down ml-5"></i>
</button>
<div class="dropdown-menu dropdown-menu-right min-width-200"
aria-labelledby="page-header-user-dropdown">
<h5 class="h6 text-center py-10 mb-5 border-b text-uppercase">User</h5>
<a class="dropdown-item" href="javascript:void(0)" data-toggle="layout"
data-action="side_overlay_toggle">
<i class="si si-wrench mr-5"></i> {{e2("Account Settings")}}
</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="{{url('logout')}}">
<i class="si si-logout mr-5"></i> {{__('Sign Out')}}
</a>
</div>
</div>
</div>
<!-- END Right Section -->
</div>
<!-- END Header Content -->
<!-- Header Search -->
<div id="page-header-search" class="overlay-header">
<div class="content-header content-header-fullrow">
<form action="{{url('admin/search')}}" method="get">
<div class="input-group">
<div class="input-group-prepend">
<button type="button" class="btn btn-secondary" data-toggle="layout"
data-action="header_search_off">
<i class="fas fa-times"></i>
</button>
</div>
<input type="text" class="form-control" placeholder="Search..." name="q">
<div class="input-group-append">
<button type="submit" class="btn btn-secondary">
<i class="fas fa-search"></i>
</button>
</div>
</div>
</form>
</div>
</div>
<!-- END Header Search -->
<!-- Header Loader -->
<div id="page-header-loader" class="overlay-header bg-primary">
<div class="content-header content-header-fullrow text-center">
<div class="content-header-item">
<i class="fa fa-sun-o fa-spin text-white"></i>
</div>
</div>
</div>
<!-- END Header Loader -->
<style>
/* Print Styles */
.yesprint {
display: none;
}
@media print {
.sidebar,
.noprint {
display: none;
}
body {
background: white;
}
.yesprint {
display: block;
}
}
/* Notification Item Styles */
.notification-item {
display: flex;
align-items: flex-start;
padding: 12px 15px;
border-bottom: 1px solid #e9ecef;
transition: all 0.2s ease;
cursor: pointer;
position: relative;
}
.notification-item:last-child {
border-bottom: none;
}
.notification-item:hover {
background-color: #f8f9fa;
}
.notification-item.unread {
background-color: #f0f8ff;
border-left: 3px solid #42a5f5;
}
.notification-item.unread:hover {
background-color: #e3f2fd;
}
.notification-item .icon {
width: 40px;
height: 40px;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
color: #fff;
margin-right: 12px;
flex-shrink: 0;
font-size: 16px;
}
.notification-item.unread .icon {
background: linear-gradient(135deg, #42a5f5 0%, #2196f3 100%);
}
.notification-item .content {
flex: 1;
min-width: 0;
}
.notification-item .content .title {
font-size: 14px;
font-weight: 600;
color: #2c3e50;
margin-bottom: 4px;
line-height: 1.4;
}
.notification-item .content .message {
font-size: 13px;
color: #6c757d;
line-height: 1.5;
margin-bottom: 6px;
word-wrap: break-word;
}
.notification-item .content .meta {
font-size: 11px;
color: #adb5bd;
display: flex;
align-items: center;
}
.notification-item .content .meta i {
margin-right: 4px;
font-size: 10px;
}
.notification-placeholder {
text-align: center;
padding: 40px 20px;
color: #6c757d;
}
.notification-placeholder i {
font-size: 48px;
margin-bottom: 15px;
opacity: 0.5;
}
.notification-placeholder .font-weight-bold {
font-size: 16px;
color: #495057;
margin-bottom: 8px;
}
.notification-placeholder .small {
font-size: 13px;
}
/* Scrollbar Styling */
#notification-scroll-area::-webkit-scrollbar {
width: 6px;
}
#notification-scroll-area::-webkit-scrollbar-track {
background: #f1f1f1;
}
#notification-scroll-area::-webkit-scrollbar-thumb {
background: #c1c1c1;
border-radius: 3px;
}
#notification-scroll-area::-webkit-scrollbar-thumb:hover {
background: #a8a8a8;
}
</style>
</header>