edms2023/resources/views/includes/header.blade.php

178 lines
7.5 KiB
PHP

<nav class="site-navbar navbar navbar-default navbar-fixed-top navbar-mega" role="navigation">
<div class="navbar-header">
<button type="button" class="navbar-toggler hamburger hamburger-close navbar-toggler-left hided" data-toggle="menubar">
<span class="sr-only">Toggle navigation</span>
<span class="hamburger-bar"></span>
</button>
<button type="button" class="navbar-toggler collapsed" data-target="#site-navbar-collapse" data-toggle="collapse">
<i class="icon wb-more-horizontal" aria-hidden="true"></i>
</button>
<div class="navbar-brand navbar-brand-center site-gridmenu-toggle" data-toggle="gridmenu">
@php
$setting = App\Setting::first();
@endphp
@if($setting->website_logo && trim($setting->website_logo)!='' && file_exists(public_path('uploads/setting_folder/'.$setting->website_logo)))
<img class="navbar-brand-logo" src='{{asset(env("UPLOADS_FOLDER") . "/" . env("SETTING_FOLDER") . "/" . $setting->website_logo)}}' title="{{ dataTranslation($setting->organization_name) }}">
@else
<img class="navbar-brand-logo" src="{{ asset('assets/images/logo.png') }}" title="{{ dataTranslation($setting->organization_name) }}">
@endif
<span class="navbar-brand-text hidden-xs-down"></span>
</div>
<button type="button" class="navbar-toggler collapsed" data-target="#site-navbar-search"
data-toggle="collapse">
<span class="sr-only">Toggle Search</span>
<i class="icon wb-search" aria-hidden="true"></i>
</button>
</div>
<div class="navbar-container container-fluid">
<div class="collapse navbar-collapse navbar-collapse-toolbar" id="site-navbar-collapse">
<!-- NAVBAR LEFT -->
<ul class="nav navbar-toolbar">
<li class="nav-item hidden-float" id="toggleMenubar">
<a class="nav-link" data-toggle="menubar" href="#" role="button">
<i class="icon hamburger hamburger-close">
<span class="sr-only">Toggle menubar</span>
<span class="hamburger-bar"></span>
</i>
</a>
</li>
</ul>
<!-- NAVBAR LEFT -->
<!-- NAVBAR RIGHT -->
@php
if(Session::has('locale')){
$locale = Session::get('locale', Config::get('app.locale'));
}
else{
$locale = 'en';
}
$notification_number ='';
if(Session::has('unread_notification_number')){
$notification_number = Session::get('unread_notification_number');
}
@endphp
<ul class="nav navbar-toolbar navbar-right navbar-toolbar-right">
<li class="nav-item dropdown">
<a class="nav-link" data-toggle="dropdown" href="javascript:void(0)" data-animation="scale-up" aria-expanded="false" role="button">
<span class="flag-icon flag-icon-{{ $locale =='en' ? 'gb' : $locale }}"></span>
</a>
<div class="dropdown-menu" role="menu" id="lang-change">
@foreach (\App\Language::all() as $key => $language)
<a class="dropdown-item" href="#" role="menuitem" data-flag="{{ $language->short_name }}">
<span class="flag-icon flag-icon-{{ $language->short_name =='en' ? 'gb' : $language->short_name }}"></span> {{ $language->name }}</a>
@endforeach
</div>
<form id="locale-form" method="POST" style="display: none;">
@csrf
<input type="hidden" name="short_name" id='short_name'>
</form>
</li>
<li class="nav-item dropdown" id="header-notifications">
</li>
<script>
function headerNotifications(){
$.ajax({
url: "{{ route('header-notifications') }}",
data: '',
type: "GET",
success: function (htmlData) {
$('#header-notifications').html(htmlData);
var time_val = "{{ $setting->notification_refreshing_time }}";
var refresh_time = time_val*1000;
setTimeout(function(){
var not_num = eval(document.getElementById("notificationCount").innerHTML);
var session_val = "{{ $notification_number }}";
if(eval(not_num) > 0 && eval(not_num) > eval(session_val)) {
$("#soundBtn").click();
}
headerNotifications();
}, refresh_time);
}
});
}
function playSound() {
const audio = new Audio("{{ asset('notification_tune.mp3') }}");
audio.load();
audio.play();
}
headerNotifications();
</script>
<li class="nav-item dropdown">
@php
$profile = App\User::join('role_user', 'users.id', '=', 'role_user.user_id')
->join('roles', 'role_user.role_id', '=', 'roles.id')
->where('users.id', '=', Auth::user()->id)
->select('users.*', 'roles.name as role_name', 'users.id as id')
->first();
$profile_department = App\Department::where('id',$profile->department_id)->first();
if(isset($profile_department))
$profile_name = $profile->first_name.' '.$profile->last_name.' - ('.dataTranslation($profile->role_name).', '.dataTranslation($profile_department->name).' Dep.)';
else
$profile_name = $profile->first_name.' '.$profile->last_name.' - ('.dataTranslation($profile->role_name).') ';
@endphp
<a class="nav-link navbar-avatar" data-toggle="dropdown" href="#" aria-expanded="false" data-animation="scale-up" role="button">
<span class="avatar avatar-online">
@if($profile->profile_picture && trim($profile->profile_picture)!='' && file_exists(public_path('uploads/user_folder/'.$profile->profile_picture)))
<img src='{{asset(env("UPLOADS_FOLDER") . "/" . env("USER_FOLDER") . "/" . $profile->profile_picture)}}' alt="{{ __('Profile Picture') }}" height="30" width="30">
@else
<img src="{{ asset('global/portraits/5.jpg') }}" alt="..." height="30" width="30">
@endif
<i></i>
</span>&nbsp;&nbsp;<span class="h5 my-0">{{ $profile_name }}</span>
</a>
<div class="dropdown-menu" role="menu">
<a class="dropdown-item" href="{{ route('profile') }}" role="menuitem"><i class="icon wb-user" aria-hidden="true"></i> {{ __('Profile') }}</a>
<a class="dropdown-item" href="{{ route('logout') }}" onclick="event.preventDefault();document.getElementById('logout-form').submit();"><i class="fa fa-key"></i>{{ __('Logout') }}</a>
<form id="logout-form" action="{{ route('logout') }}" method="POST" style="display: none;">
@csrf
</form>
</div>
</li>
</ul>
<button onclick="playSound();" id="soundBtn" style="display: none;">Play</button>
<audio id="myAudio" controls autoplay style="visibility: hidden;" >
<source src="{{ asset('250-milliseconds-of-silence.mp3') }}" type="audio/mpeg">
</audio>
<iframe src="{{ asset('250-milliseconds-of-silence.mp3') }}" allow="autoplay" id="audio" style="display:none"></iframe>
<!-- NAVBAR RIGHT -->
</div>
</div>
</nav>
<style>
td {color: #000 !important;}
label.required:after {
color: #d00;
content: "*";
margin-left: 6px;
}
label {
font-weight: bold;
}
</style>
<script>
$(document).ready(function() {
if ($('#lang-change').length > 0) {
$('#lang-change .dropdown-item').each(function() {
$(this).on('click', function(e){
e.preventDefault();
var locale = $(this).data('flag');
$("#short_name").val(locale);
var formData = new FormData($('#locale-form')[0]);
$.ajax({
url: "{{ route('locale') }}",
data: formData,
processData: false,
contentType: false,
type: "POST",
success: function (data) {
location.reload();
}
});
});
});
}
$('[data-toggle="tooltip"]').tooltip();
});
</script>