updated streamline-setup v2

This commit is contained in:
2025-01-15 08:53:49 -08:00
committed by alec.turner
parent a2ce9248f0
commit 4b569f81b0
20228 changed files with 2932048 additions and 63204 deletions
@@ -67,20 +67,6 @@
$current_item++;
@endphp
@endforeach
{{-- @php--}}
{{-- $episode_chunk = round(count($patient_episodes_details) / 2);--}}
{{-- $episodes = array_chunk($patient_episodes_details, $episode_chunk, true);--}}
{{-- @endphp--}}
{{-- @foreach($episodes as $episode)--}}
{{-- {{ dd($episode) }}--}}
{{-- --}}{{--<div class="row">--}}
{{-- @foreach($episode as $ee)--}}
{{-- <div class="col-md-4">{{ $ee['id'] }}</div>--}}
{{-- @endforeach--}}
{{-- </div>--}}
{{-- @endforeach--}}
@else
<h4><span style="color: red">Patient has no episodes</span></h4>
@endif
@@ -1,12 +1,20 @@
@extends('layouts.main')
@push('styles')
<link href="{{ asset('elite/bower_components/select2/select2.min.css') }}" rel="stylesheet" />
<style>
.no-padding {
padding: 0px;
}
input[type="checkbox"]{
width: 1.5em;
height: 1.5em;
margin-right: 0.65rem;
}
.form-check-label{
padding-left: 2.25rem!important;
vertical-align: -webkit-baseline-middle;
}
</style>
@endpush
@@ -32,31 +40,37 @@
{{ Form::open(['route' => 'streamline_modules.store_activated']) }}
<div class="row">
<div class="col-xs-12 col-sm-12 col-md-12">
{{-- <h3 class="box-title">{{ __('general_settings.activate_streamline_modules') }}</h3> --}}
<div class="col">
<div class="table-responsive">
<table class="table color-table success-table table-sm">
<thead>
<tr>
<th>{{ __('general_settings.check_streamline_modules_to_activate') }} <span class="float-right">{{ __('roles.check_all') }} <input type="checkbox" id="check-all"></span></th>
<th colspan="3">{{ __('general_settings.check_streamline_modules_to_activate') }} <span class="float-right"> <input type="checkbox" id="check-all" class="form-check-input"> <label class="form-check-label" for="check-all">{{ __('roles.check_all') }}</label></span></th>
</tr>
</thead>
<tbody>
@foreach($permission_categories as $category)
<tr>
<tbody id="streamline_modules_to_activate">
@foreach($permission_categories as $key => $category)
@if ($key % 2 == 0)
<tr>
@endif
<td>
{{ Form::checkbox('permission_category[]', $category->id, $category->is_module_active == 1 ? true : false, ['class' => "permission_category"]) }}
{{ $category->name }}
{{ Form::checkbox('permission_category[]', $category->id, $category->is_module_active == 1 ? true : false, ['class' => "permission_category form-check-input", 'id'=>'permission_category_'.$category->id,]) }}
<label class="form-check-label" for="permission_category_{{ $category->id }}">{{ $category->name }}</label>
</td>
</tr>
@if (($key + 1) % 2 == 0)
</tr>
@endif
@endforeach
@if(count($permission_categories) % 2!= 0)
</tr>
@endif
</tbody>
</table>
</div>
</div>
</div>
{{ Form::submit(__('general_settings.activate_streamline_modules'), ["class" => "btn btn-success"])}}
{{ Form::submit(__('general_settings.activate_streamline_modules'), ["class" => "btn btn-success", 'id' => 'activate_streamline'])}}
{{ Form::close() }}
</div>
@@ -65,24 +79,7 @@
@endsection
@push('scripts')
<script src="{{ asset('elite/js/validator.js') }}"></script>
<script src="{{ asset('elite/bower_components/select2/select2.min.js') }}"></script>
<script>
/* $(document).ready(function(){
$('#service_id').select2({});
}); */
function show(id) {
if (document.getElementById(id).style.display == 'none') {
document.getElementById(id).style.display = '';
}
}
function hide(id) {
document.getElementById(id).style.display = 'none';
}
$("[id^=check-all]").on('click', function () {
var id = /\d+(?=\D*$)/.exec($(this).attr('id'));
@@ -92,5 +89,12 @@
$('.permission_category').prop("checked", true);
}
});
$('#activate_streamline').click(function (e){
if (!$('#streamline_modules_to_activate input:checked').length > 0) {
alert("Please check at least one checkbox");
return false;
}
});
</script>
@endpush
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,99 @@
<!DOCTYPE html>
<html lang="{{ app()->getLocale() }}">
@php use Streamline\Enums\Details;use Streamline\Enums\Roles; @endphp
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="">
<meta name="author" content="">
<link rel="icon" type="assetimage/png" sizes="16x16" href="{{ asset('uploads/streamline/color/streamline_icon-02.png') }}">
<title>{{ config('app.name') }}</title>
<!-- Bootstrap Core CSS -->
<link href="{{ asset('elite/bootstrap/dist/css/bootstrap.min.css') }}" rel="stylesheet">
<link href="{{ asset('elite/bower_components/bootstrap-extension/css/bootstrap-extension.css') }}" rel="stylesheet">
<!-- animation CSS -->
<link href="{{ asset('elite/css/animate.css') }}" rel="stylesheet">
<!-- Custom CSS -->
<link href="{{ asset('elite/css/style.css') }}" rel="stylesheet">
<!-- color CSS -->
<link href="{{ asset('elite/css/colors/megna.css') }}" id="theme" rel="stylesheet">
<!-- Streamline - custom -->
<link href="{{ asset('css/streamline-custom.css') }}" id="theme" rel="stylesheet">
</head>
<body>
<!-- Preloader -->
<div class="preloader">
<div class="cssload-speeding-wheel"></div>
</div>
<div class="row">
<div class="col-md-2"></div>
<div class="col-md-8" style="display: flex; align-items:center; justify-content:center; height:90vh;">
<div class="align-items-center">
<div class="col-sm-12 text-center mb-5" >
<h2 style="color: red;text-transform:uppercase;">
@if(auth()->user() &&Auth::user()->hasRole('Admin'))
{{ __('general_settings.renew_subscription') }}
@else
{{ __('general_settings.contact_hospital_admin') }}
@endif
</h2>
</div>
<div class="col-sm-12 text-center" >
<img src="{{ asset('uploads/logo/logo_2.png') }}" alt="Home" /><br/>
<h3 class="mt-5" style="color: green;">{{ __('general_settings.faciliate') }} </h3>
<h3 style="color: green;"> {{ __('general_settings.lose_money') }} </h3>
@if( auth()->user() && Auth::user()->hasRole('Admin') )
<h4 class="text-center mt-5 " style="color: green;">{{ __('general_settings.for_support') }}</h4>
<h4 class="text-center " style="color: green;">
Tel: {{ Details::Tele->value }} | Whatsapp : {{ Details::Whats_number->value }} | <a href="{{ Details::url->value }}">Support</a>
</h4>
@endif
</div>
</div>
</div>
<div class="col-md-2"></div>
</div>
<div id="wrapper">
<!-- Page Content -->
<div style="background: white;">
<div class="row container">
</div>
<!-- /.container-fluid -->
<footer class="footer text-center"> {{ date('Y')}} &copy; Stre@mline {{ __('layout.powered_by') }} Kisiizi Hospital {{ __('layout.and') }} Streamline Health Ltd - {{ __('layout.version_number') }} - </footer>
</div>
<!-- /#page-wrapper -->
</div>
</div>
{{-- <section id="wrapper" class="login-register" style="background:url(../../uploads/login/login-register1.jpg) center center/cover no-repeat!important;">
</section> --}}
<!-- jQuery -->
<script src="{{ asset('elite/bower_components/jquery/dist/jquery.min.js') }}"></script>
<!-- Bootstrap Core JavaScript -->
<script src="{{ asset('elite/bootstrap/dist/js/tether.min.js') }}"></script>
<script src="{{ asset('elite/bootstrap/dist/js/bootstrap.min.js') }}"></script>
<script src="{{ asset('elite/bower_components/bootstrap-extension/js/bootstrap-extension.min.js') }}"></script>
<!-- Menu Plugin JavaScript -->
<script src="{{ asset('elite/bower_components/sidebar-nav/dist/sidebar-nav.min.js') }}"></script>
<!--slimscroll JavaScript -->
<script src="{{ asset('elite/js/jquery.slimscroll.js') }}"></script>
<!--Wave Effects -->
<script src="{{ asset('elite/js/waves.js') }}"></script>
<!-- Custom Theme JavaScript -->
<script src="{{ asset('elite/js/custom.min.js') }}"></script>
<!--Style Switcher -->
<script src="{{ asset('elite/bower_components/styleswitcher/jQuery.style.switcher.js') }}"></script>
</body>
</html>
@@ -0,0 +1,67 @@
@extends('layouts.main')
@push('styles')
<link href="{{ asset('elite/bower_components/bootstrap-datepicker/bootstrap-datepicker.min.css') }}" rel="stylesheet" type="text/css" />
<link href="{{ asset('elite/bower_components/select2/select2.min.css') }}" rel="stylesheet" />
@endpush
@section('content')
<div class="row bg-title">
<div class="col-lg- col-md-4 col-sm-4 col-xs-12">
<h4 class="page-title">{{ __('general_settings.subscription_tracking') }}</h4>
</div>
<div class="col-lg-8 col-sm-8 col-md-8 col-xs-12">
<ol class="breadcrumb">
<li><a href="{{ route('home') }}">{{ __('general_settings.dashboard') }}</a></li>
<li class="active">{{ __('general_settings.edit_general_settings') }}</li>
</ol>
</div>
</div>
@include('flash::message')
<div class="white-box">
{{ Form::open(['route' => ['general_settings.save_integrated_payment']]) }}
<h3 class="text-center">{{ __('layout.integrated_payment_solutions') }}</h3>
<h4>{{ __('general_settings.description') }}</h4>
<div class="card card-inverse card-secondary text-center text-white">
<div class="card-block">
<h4 class="text-white">{{ __('general_settings.save_integrated_payment_description') }}</h4>
</div>
</div>
<hr>
@foreach($integrated_payments as $integrated_payment)
<h4>{{ $integrated_payment->name }}</h4>
<div class="card card-outline-secondary text-dark">
<div class="card-block">
<input type="hidden" name="integrated_payment[]" value="{{ $integrated_payment->value }}" />
<select name="payment_method[]" class="form-control">
<option value="0" @if(!isset($integrated_methods[$integrated_payment->value])) selected @endif>Not Selected</option>
@if(isset($integrated_methods[$integrated_payment->value]))
<option value="{{ $integrated_methods[$integrated_payment->value] }}" selected>{{ get_name($integrated_methods[$integrated_payment->value], 'id', 'name', 'patient_payment_methods') }}</option>
@endif
{!! $payment_methods !!}
</select>
</div>
</div>
<hr>
@endforeach
{{ Form::button(__('general_settings.save_settings'), ['type' => 'submit', 'class' => 'btn btn-success waves-effect waves-light m-r-10']) }}
{{ Form::button(__('general_settings.cancel'), ['type' => 'reset', 'class' => 'btn btn-default waves-effect waves-light']) }}
{{ Form::close() }}
</div>
@endsection
@push('scripts')
<script src="{{ asset('elite/bower_components/bootstrap-datepicker/bootstrap-datepicker.min.js') }}"></script>
<script src="{{ asset('elite/js/validator.js') }}"></script>
<script src="{{ asset('elite/bower_components/select2/select2.min.js') }}"></script>
@endpush
@@ -28,7 +28,7 @@
@include('flash::message')
<div class="white-box">
@if (session()->has('streamline_setup'))
<h3><font color="blue">{{ __('general_settings.streamline_setup') }}</font></h3>
<h3><font color="blue">{{ __('general_settings.streamline_setup_3') }}</font></h3>
@endif
{{ Form::open(['route' => 'general_settings.save_number_of_active_users_limit_settings']) }}
@@ -49,18 +49,18 @@
<div class="card card-outline-secondary text-dark">
<div class="card-block">
{{ Form::radio('number_of_active_users_limit_option', 'unlimited', ($general_settings->number_of_active_users_limit == 'unlimited' ? true : false)) }}&nbsp;{{ __('general_settings.unlimited_users_label') }}&nbsp;&nbsp;
{{ Form::radio('number_of_active_users_limit_option', 'unlimited', ($general_settings['number_of_active_users_limit'] == 'unlimited' ? true : false)) }}&nbsp;{{ __('general_settings.unlimited_users_label') }}&nbsp;&nbsp;
<br>
{{ Form::radio('number_of_active_users_limit_option', 'limited', ($general_settings->number_of_active_users_limit < 'unlimited' ? true : false)) }}&nbsp;{{ __('general_settings.limited_users_label') }}
{{ Form::radio('number_of_active_users_limit_option', 'limited', ($general_settings['number_of_active_users_limit'] != 'unlimited' ? true : false)) }}&nbsp;{{ __('general_settings.limited_users_label') }}
</div>
</div>
</div>
<div id="limited_users_div" class="card card-outline-secondary text-dark mt-4" style="display: none;">
<p class="pt-2 px-4 mb-0">{{ __('general_settings.number_of_active_users_limit_label') }}</p>
<div class="card-block">
{{ Form::text('number_of_active_users_limit', $general_settings->number_of_active_users_limit, ['class' => 'form-control', 'placeholder' => '1', 'required' => 'true', 'disabled' => 'true', 'id' => 'limited_users_input']) }}
{{-- {{ Form::number('number_of_active_users_limit', $general_settings['number_of_active_users_limit'], ['class' => 'form-control', 'placeholder' => '1', 'required' => 'true', 'disabled' => 'true', 'id' => 'limited_users_input']) }} --}}
{{ Form::number('number_of_active_users_limit', $general_settings['number_of_active_users_limit'], ['class'=>'form-control compulsory','required', 'id'=>'limited_users_input', 'placeholder' => '1']) }}
</div>
</div>
<div id="unlimited_users_div" class="" style="display: none;">
@@ -73,7 +73,7 @@
<br/>
@if (session()->has('streamline_setup'))
{{ Form::button(__('general_settings.finish'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }}
{{ Form::button(__('general_settings.save_settings'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }}
@else
{{ Form::button(__('general_settings.save_settings'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }}
{{ Form::button(__('general_settings.cancel'),['type'=>'reset','class'=>'btn btn-default waves-effect waves-light']) }}
@@ -101,8 +101,7 @@
let selectedValue = $('input[name="number_of_active_users_limit_option"]:checked').val();
if(selectedValue === "limited") {
document.getElementById('limited_users_div').style.display = '';
document.getElementById('limited_users_input').disabled = false;
document.getElementById('limited_users_input').value = '';
document.getElementById('limited_users_input').disabled = false;
document.getElementById('unlimited_users_div').style.display = 'none';
document.getElementById('unlimited_users_input').disabled = true;
@@ -111,6 +110,7 @@
document.getElementById('unlimited_users_input').disabled = false;
document.getElementById('limited_users_div').style.display = 'none';
document.getElementById('limited_users_input').disabled = true;
document.getElementById('limited_users_input').value = '';
}
}
@@ -0,0 +1,31 @@
<!-- Modal -->
<div id="myModal" class="modal fade" role="dialog">
<div class="modal-dialog">
<!-- Modal content-->
<div class="modal-content">
<div class="modal-header">
<h4 style="color: red;"> {{ __('home.renew_subscription') }} <button type="button" class="close" data-dismiss="modal">&times;</button></h4>
</div>
<div class="modal-body">
<div class="row">
<div class="col-md-12 text-center" style="color: red;">
{{ show_subscription_reminder_message()}}
</div>
</div>
</div>
</div>
</div>
</div>
@push('scripts')
<script>
$(document).ready(function() {
var status = {!! json_encode(show_popup()) !!}
if (status){
$('#myModal').modal('show');
$(".modal-dialog").css({'margin': '300px auto',});
}
});
</script>
@endpush
@@ -0,0 +1,271 @@
@extends('layouts.main')
@push('styles')
<link href="{{ asset('elite/bower_components/bootstrap-datepicker/bootstrap-datepicker.min.css') }}" rel="stylesheet" type="text/css" />
<link href="{{ asset('elite/bower_components/select2/select2.min.css') }}" rel="stylesheet" />
<style>
.no-padding {
padding: 0px;
}
</style>
@endpush
@section('content')
<div class="row bg-title">
<div class="col-lg- col-md-4 col-sm-4 col-xs-12">
<h4 class="page-title">{{ __('general_settings.subscription_tracking') }}</h4>
</div>
<div class="col-lg-8 col-sm-8 col-md-8 col-xs-12">
<ol class="breadcrumb">
<li><a href="{{ route('home') }}">{{ __('general_settings.dashboard') }}</a></li>
<li class="active">{{ __('general_settings.edit_general_settings') }}</li>
</ol>
</div>
</div>
<div class="row">
<div class="col-sm-12">
@include('flash::message')
<div class="white-box">
@if (session()->has('streamline_setup'))
<h3><font color="blue">{{ __('general_settings.streamline_setup_2') }}</font></h3>
@endif
{{ Form::open(['route' => isset($subscriptions) ? ['subscriptions.update_subscription_tracking', $subscriptions->id ]: 'subscriptions.save_subscription_tracking']) }}
<div class="row">
<div class="col-md-12">
<div>
<h3 class="text-center">{{ __('general_settings.subscription_tracking') }}</h3>
<h4>{{ __('general_settings.description') }}</h4>
<div class="card card-inverse card-secondary text-center text-white">
<div class="card-block">
<h4 class="text-white">{{ __('general_settings.subscription_tracking_description') }}</h4>
</div>
</div>
<h4>{{ __('general_settings.options') }}</h4>
<div class="card card-outline-secondary text-dark">
<div class="card-block">
{{ Form::radio('enable_subscription_tracking', 0,($general_settings->enable_subscription_tracking == 0 ? true : false),['id'=>'disable_subscription_tracking_radio']) }}&nbsp; {{ Form::label('disable_subscription_tracking_radio',__('general_settings.disable')) }}&nbsp;&nbsp;
<br>
{{ Form::radio('enable_subscription_tracking', 1, ($general_settings->enable_subscription_tracking == 1 ? true : false),['id'=>'enable_subscription_tracking_radio']) }}&nbsp;{{ Form::label('enable_subscription_tracking_radio',__('general_settings.enable'))}}
</div>
</div>
<div id="enable_subscription_tracking_div" class="text-dark mb-3 row" style="display: none;">
<div class="col-sm-3 mt-3">
<div class="form-group" id="searchby">
{{ Form::label('start_date', __('general_settings.current_sub_start')) }}
{{ Form::text('start_date',isset($subscriptions) ? $subscriptions->start_date : '', ['class' => 'form-control compulsory', 'required', 'readonly', 'id' => 'datepicker-autoclose']) }}
<div class="help-block with-errors" style="color: red;" id="start_date_errors"></div>
</div>
</div>
<div class="col-sm-3 mt-3">
<div class="form-group" id="">
{{ Form::label('duration', __('general_settings.set_interval_sub')) }}
{{ Form::number('duration',isset($subscriptions) ? $subscriptions->duration : '', ['class' => 'form-control compulsory','min'=>'1','max'=>'5', 'id' => 'duration']) }}
<div class="help-block with-errors" style="color: red;" id="duration_errors"></div>
</div>
</div>
<div class="col-sm-3 mt-3">
<div class="form-group" id="searchby">
{{ Form::label('end_date', __('general_settings.sub_expiry_date')) }}
<div class="help-block with-errors " style="color: red;"id="show_end_date">{{ isset($subscriptions) ? streamline_date($subscriptions->end_date) : '' }}</div>
{{ Form::hidden('end_date', isset($subscriptions) ? $subscriptions->end_date : '', ['class' => 'form-control', 'id' => 'end_date']) }}
</div>
{{ Form::hidden('suspension_period', $suspension_period, ['class' => 'form-control', 'placeholder' => '1', 'required' => 'true', 'disabled' => 'true', 'id' => 'suspension_period']) }}
{{ Form::hidden('warning_period', $warning_period, ['class' => 'form-control', 'placeholder' => '1', 'required' => 'true', 'disabled' => 'true', 'id' => 'warning_period']) }}
</div>
<div class="col-sm-2 mt-3">
<div class="form-group" id="">
{{ Form::label('suspension_date', __('general_settings.sub_suspension_date')) }}
{{ Form::text('suspension_date', isset($subscriptions) ? $subscriptions->suspension_date : '', ['class' => 'form-control','readonly', 'id' => 'show_suspension_date']) }}
</div>
</div>
<p>{{ Form::label('warning_date', __('general_settings.warning_date')) }} :&nbsp; <div class="help-block with-errors " style="color: red;"id="show_warning_date"> </div></p>
</div>
<div id="disable_subscription_tracking_div" class="" style="display: none;">
{{ Form::hidden('number_of_active_users_limit', 'unlimited', ['class' => 'form-control', 'placeholder' => '1', 'required' => 'true', 'disabled' => 'true', 'id' => 'unlimited_users_input']) }}
</div>
</div>
</div>
</div>
<br/>
<br/>
@if (session()->has('streamline_setup'))
{{ Form::button(__('general_settings.save_settings'),['type'=>'submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }}
@else
{{ Form::button( isset($subscriptions) ?__('general_settings.update_settings') : __('general_settings.save_settings'),['type'=>'submit','id'=> isset($subscriptions) ? 'update_submit' : 'sub_submit','class'=>'btn btn-success waves-effect waves-light m-r-10']) }}
@endif
{{ Form::close() }}
</div>
</div>
</div>
</div>
@endsection
@push('scripts')
<script src="{{ asset('elite/bower_components/bootstrap-datepicker/bootstrap-datepicker.min.js') }}"></script>
<script src="{{ asset('elite/js/validator.js') }}"></script>
<script src="{{ asset('elite/bower_components/select2/select2.min.js') }}"></script>
<script>
$('#datepicker-autoclose,#datepicker-autoclose-1,#show_suspension_date').datepicker({
autoclose: true,
todayHighlight: true,
format: 'dd/mm/yyyy'
});
//function to validate the duration inserted is between 1 and 5 years
const validate_duration = (number) => {
// Check if the input is a number and an integer between 1 and 5
return Number.isInteger(number) && number >= 1 && number <= 5;
};
// function to calculate expiry date from start date and duration in years
const calculate_expiry_date = (start_date, duration) => {
// Check if start_date is a valid Date object and duration is a positive integer
if (typeof duration !== 'number' || duration <= 0) {
throw new TypeError('Invalid input: duration must be a positive integer.');
}
// Parse the start date string into a Date object
const [startDay, startMonth, startYear] = start_date.split('/');
const startDate = new Date(`${startMonth}/${startDay}/${startYear}`);
// Add the specified number of years to the start year
const expiryYear = parseInt(startYear, 10) + duration;
// Create a new Date object with the updated year and the same day and month
const expiryDate = new Date(startDate);
expiryDate.setFullYear(expiryYear);
// Format the expiry date as dd/mm/yyyy
const formattedExpiryDate = `${expiryDate.getDate()}/${expiryDate.getMonth() + 1}/${expiryDate.getFullYear()}`;
return formattedExpiryDate;
}
const calculate_suspension_date = (exp_date)=>{
var suspension_period = parseInt($('#suspension_period').val());
// Parse the expiry date string into a Date object
const [expiryDay, expiryMonth, expiryYear] = exp_date.split('/');
const expiryDate = new Date(`${expiryMonth}/${expiryDay}/${expiryYear}`);
// Add suspension_period months to the expiry date
const suspensionDate = new Date(expiryDate);
suspensionDate.setMonth(suspensionDate.getMonth() + suspension_period);
// Format the suspension date as dd/mm/yyyy
const formattedSuspensionDate = `${suspensionDate.getDate()}/${suspensionDate.getMonth() + 1}/${suspensionDate.getFullYear()}`;
return formattedSuspensionDate;
}
const calculate_warning_date = (exp_date)=>{
var warning_period = parseInt($('#warning_period').val());
// Parse the expiry date string into a Date object
const [expiryDay, expiryMonth, expiryYear] = exp_date.split('/');
const expiryDate = new Date(`${expiryMonth}/${expiryDay}/${expiryYear}`);
// substract warning period days from expiry date
const warningDate = new Date(expiryDate)
warningDate.setDate(warningDate.getDate() - warning_period);
// Format the suspension date as dd/mm/yyyy
const formattedWarningDate = `${warningDate.getDate()}/${warningDate.getMonth() + 1}/${warningDate.getFullYear()}`;
return formattedWarningDate;
}
const show_or_hide_limited_users_input = () => {
let selectedValue = $('input[name="enable_subscription_tracking"]:checked').val();
if(selectedValue === "1") {
document.getElementById('enable_subscription_tracking_div').style.display = '';
//disable submit button
$('#sub_submit').prop('disabled', true);
document.getElementById('disable_subscription_tracking_div').style.display = 'none';
} else {
document.getElementById('disable_subscription_tracking_div').style.display = '';
$('#sub_submit').prop('disabled', false);
document.getElementById('enable_subscription_tracking_div').style.display = 'none';
}
}
//set exipry date
const format_date = (inputDate)=>{
// format date to day, Month name , Year
// Split the input date string into day, month, and year components
var parts = inputDate.split('/');
var day = parseInt(parts[0]);
var month = parseInt(parts[1]);
var year = parseInt(parts[2]);
// Create a new Date object from the components
var formattedDate = new Date(year, month - 1, day);
// Get the day, month, and year in their respective formats
var formattedDay = formattedDate.toLocaleString('en', { weekday: 'short' });
var formattedMonth = formattedDate.toLocaleString('en', { month: 'long' });
var formattedYear = year;
// Construct the final formatted string
var formattedString = formattedDay+' ' + day+ ', ' + formattedMonth + ' ' + formattedYear;
return formattedString;
}
const set_expiry_date = (start_date,duration)=>{
if (duration == ''){ $('#sub_submit').prop('disabled', true); return $('#duration_errors').html('Please Set Interval ');}
if (!validate_duration(parseInt(duration))) { $('#sub_submit').prop('disabled', true); return $('#duration_errors').html('invalid interval ');}
$('#duration_errors').html('');
var expiry_date =calculate_expiry_date(start_date,parseInt(duration));
var suspension_date = calculate_suspension_date(expiry_date);
var warning_date =calculate_warning_date(expiry_date);
var warning_date_string = format_date(warning_date);
var expiry_date_string = format_date(expiry_date);
$('#end_date').val(expiry_date);
$('#show_end_date').html(expiry_date_string);
$('#show_warning_date').html(warning_date_string);
$("#show_suspension_date").datepicker("setDate", suspension_date);
$('#sub_submit').prop('disabled', false);
}
$(document).ready(function() {
show_or_hide_limited_users_input();
var duration_default = $('#duration').val();
var start_date_default = $('#datepicker-autoclose').val();
set_expiry_date(start_date_default,duration_default);
$('input[name="enable_subscription_tracking"]').on('change', function() {
show_or_hide_limited_users_input();
});
//event listener for the current date
$('#datepicker-autoclose').on('change', function(){
var start_date = $(this).val();
var duration = $('#duration').val();
set_expiry_date(start_date,duration);
});
// event listener for the duration
$('#duration').on('change',function(){
var start_date = $('#datepicker-autoclose').val();
if (start_date == '') { $('#sub_submit').prop('disabled', true); return $('#start_date_errors').html('Please Set Current Start Date ');}
var duration = $('#duration').val();
$('#start_date_errors').html('');
set_expiry_date(start_date,duration);
})
});
</script>
@endpush
@@ -0,0 +1,102 @@
@extends('layouts.main')
@push('styles')
<link href="{{ asset('/elite/bower_components/datatables/jquery.dataTables.min.css') }}" rel="stylesheet" type="text/css" />
<link href="{{ asset('elite/tables/css/buttons.dataTables.min.css') }}" rel="stylesheet" type="text/css" />
@endpush
@section('content')
<div class="row bg-title">
<div class="col-lg-3 col-md-4 col-sm-4 col-xs-12">
<h4 class="page-title">{{ __('general_settings.subscription_tracking') }}</h4>
</div>
<div class="col-lg-9 col-sm-8 col-md-8 col-xs-12">
<ol class="breadcrumb">
<li><a href="{{ route('home') }}">{{ __('general_settings.dashboard') }}</a></li>
<li class="active">{{ __('general_settings.edit_general_settings') }}</li>
</ol>
</div>
</div>
@include('flash::message')
<div class="panel panel-default">
<div class="">
<div class="row mt-5">
<div class="col-md-12 p-5">
<a href="{{route('subscriptions.create_subscription_tracking') }}" class="btn btn-success pull-right">{{ __('general_settings.create_new_subscription') }}</a>
</div>
</div>
</div>
<div class="panel-body">
{{-- <p class="text-muted m-b-30">{{ __('drugs.export_data_to_csv_and_excel') }}</p> --}}
<div class="table-responsive">
<table class="table color-bordered-table success-bordered-table table-striped table-hover">
<thead>
<tr>
<th>{{ __('general_settings.start_date') }}</th>
<th>{{ __('general_settings.sub_expiry_date') }}</th>
<th>{{ __('general_settings.set_interval_sub') }}</th>
<th>{{ __('general_settings.sub_suspension_date') }}</th>
<th></th>
</tr>
</thead>
<tfoot>
<tr>
<th>{{ __('general_settings.start_date') }}</th>
<th>{{ __('general_settings.sub_expiry_date') }}</th>
<th>{{ __('general_settings.set_interval_sub') }}</th>
<th>{{ __('general_settings.sub_suspension_date') }}</th>
<th></th>
</tr>
</tfoot>
<tbody>
@forelse($subscriptions as $val)
<tr>
<td>{{ streamline_date($val->start_date) }}</td>
<td>{{ streamline_date($val->end_date) }}</td>
<td>{{ $val->duration }}</td>
<td>{{ streamline_date($val->suspension_date) }}</td>
<td>
@if($val->is_active == '1')
<a href="{{route('subscriptions.edit_subscription_tracking',$val->id )}}" class="btn btn-rounded btn-warning"><i class="fa fa-pencil"></i> {{ __('general_settings.update') }}</a>
@endif
{{-- {{ Form::model($drug->id ,['method' => 'POST', 'route' => ['drugs.activate', $drug->id]]) }}
<button type="submit" class="btn btn-warning" onclick="return confirm('<?php echo __('drugs.are_you_sure')?>')"><i class="fa fa-check"></i> {{ __('drugs.activate') }}</button>
{{ Form::close() }} --}}
</td>
</tr>
@empty
@endforelse
</tbody>
</table>
</div>
</div>
</div>
@endsection
@push('scripts')
<script src="{{ asset('elite/bower_components/datatables/jquery.dataTables.min.js') }}"></script>
<script src="{{ asset('elite/tables/js/dataTables.buttons.min.js') }}"></script>
<script src="{{ asset('elite/tables/js/buttons.flash.min.js') }}"></script>
<script src="{{ asset('elite/tables/js/jszip.min.js') }}"></script>
<script src="{{ asset('elite/tables/js/pdfmake.min.js') }}"></script>
<script src="{{ asset('elite/tables/js/vfs_fonts.js') }}"></script>
<script src="{{ asset('elite/tables/js/buttons.html5.min.js') }}"></script>
<script src="{{ asset('elite/tables/js/buttons.print.min.js') }}"></script>
<script>
$('.table').DataTable({
dom: 'Bfrtip',
buttons: [
'excel', 'pdf', 'print'
]
});
</script>
@endpush
@@ -0,0 +1,11 @@
@php use Streamline\Enums\Roles; @endphp
{{-- alert notification --}}
@if (Auth::user()->hasRole('Admin'))
@if(warning_duration())
<div class="{{ show_subscription_reminder_message('class')}} " style="margin-left: -25.5px; margin-bottom:0%; margin-right: -25.5px;">
<i class="fa fa-exclamation-triangle" aria-hidden="true"></i>
<span style="font-weight:600;line-height: 22px;">{{ show_subscription_reminder_message()}}</span>
</div>
@endif
@endif
@@ -107,4 +107,6 @@
</div>
</div>
@include('general_settings.popup')
@endsection
@@ -148,6 +148,30 @@
<div class="help-block with-errors"></div>
</div>
@php
use Carbon\Carbon;
$currentYear = Carbon::now()->year;
$current_year_last_two_digits = substr($currentYear,-2);
@endphp
<div class="form-group">
<label for=""> {{ __('hospital_information.patient_number_year_prefix') }}</label>
( ABC - {{$current_year_last_two_digits }} - 001 )
<a href="javascript::void(0)" data-toggle="tooltip" rel="tooltip" data-placement="top" title="Enabling this feature will add the last two digits of the year to the Patient number abbreviation" data-original-title=""> <i class="fa fa-info-circle"></i></a>
<br>
<div class="card card-outline-secondary text-dark">
<div class="card-block">
<input checked="checked" name="patient_number_year_prefix" id="year_prefix_disabled" type="radio" value="0">
<label for="year_prefix_disabled"> {{ __('hospital_information.disabled') }}</label>
<br>
<input name="patient_number_year_prefix" type="radio" id="year_prefix_enabled" value="1">
<label for="year_prefix_enabled"> {{ __('hospital_information.enabled') }} </label>
</div>
</div><br>
</div>
<div class="form-group">
{{ Form::label('logo', __('hospital_information.system_logo')) }}
{{ Form::file('logo', null) }}
@@ -151,6 +151,40 @@
<div class="help-block with-errors"></div>
</div>
@php
use Carbon\Carbon;
$currentYear = Carbon::now()->year;
$current_year_last_two_digits = substr($currentYear,-2);
@endphp
<div class="form-group">
<label for=""> {{ __('hospital_information.patient_number_year_prefix') }}</label>
( {{ $hospital_information->patient_number_abbr . '-' .$current_year_last_two_digits .'-' . '001' }} )
<a href="javascript::void(0)" data-toggle="tooltip" rel="tooltip" data-placement="top" title="Enabling this feature will add the last two digits of the year to the Patient number abbreviation" data-original-title=""> <i class="fa fa-info-circle"></i></a>
<br>
<div class="card card-outline-secondary text-dark">
<div class="card-block">
<input name="patient_number_year_prefix" id="year_prefix_disabled" type="radio" value="0"
@if (($hospital_information->patient_number_year_prefix == 0) && isset($hospital_information->patient_number_year_prefix))
checked
@endif
>
<label for="year_prefix_disabled"> {{ __('hospital_information.disabled') }}</label>
<br>
<input name="patient_number_year_prefix" type="radio" id="year_prefix_enabled" value="1"
@if (($hospital_information->patient_number_year_prefix == 1) && ($hospital_information->patient_number_year_prefix != null))
checked
@endif>
<label for="year_prefix_enabled"> {{ __('hospital_information.enabled') }} </label>
</div>
</div><br>
</div>
<div class="form-group">
{{ Form::label('logo', __('hospital_information.system_logo')) }}
{{ Form::file('logo', null) }}
@@ -1,48 +0,0 @@
@php
$hospital_information = App::make('hospital_information');
@endphp
<div class="row">
<div class="col-sm-3">
<div class="white-box" style="height: 100px; padding-top: 5px; background: #d8d8d8;">
<a href="{{ $hospital_information->website }}" title="{{ $hospital_information->name }}">
<img style="margin: auto; height: 83px;" src="{{ asset($hospital_information->logo) }}" alt="Hospital Logo">
</a>
</div>
</div>
<div class="col-sm-3">
<div class="white-box" style="height: 100px; padding-top: 5px; background: #d8d8d8;">
<h4><a href="{{ url('http://www.streamlinehealth.org') }}" style="color: green;"><strong>{{ $hospital_information->app_name }}</strong></a></h4>
<br>
</div>
</div>
<div class="col-sm-3"></div>
<div class="col-sm-3">
<div class="white-box" style="height: 100px; padding-top: 5px; background: #d8d8d8;">
<h5 style="color: green">{{ ucwords(Auth::user()->first_name) . ' ' . ucwords(Auth::user()->last_name) }}</h5>
<div class="row">
<div class="col-sm-6">
@if (session()->has('patient_id'))
<a style="background: yellow" class="btn btn-sm" href="/patient_episodes/">{{ __('layout.patient_home') }}</a>
@endif
</div>
<div class="col-sm-6">
@if (session()->has('patient_id'))
<a style="background: #b6895e; color: white; text-shadow: none;" class="btn btn-sm" href="/patient_finance/home">{{ __('layout.finance_home') }}</a>
@endif
</div>
</div>
</div>
</div>
</div>
@push('scripts')
<script type="text/javascript">
</script>
@endpush
@@ -3,13 +3,13 @@
@endphp
@if(is_null($hospital_info->pdf_print_header))
<img style="max-width: 300px; max-height: 140px;" src="{{ public_path($hospital_info->logo) }}" class="mx-auto d-block mx-3" alt="Responsive image">
<img style="max-width: 300px; max-height: 140px;" src="{{ asset($hospital_info->logo) }}" class="@if(isset($isDom) && $isDom) center @else mx-auto d-block mx-3 @endif" alt="Responsive image">
<br>
<p class="h6 text-center mt-0 font-weight-bold">
{{ $hospital_info->name . ' | ' . $hospital_info->phone_number . ' | ' . $hospital_info->email . ' | ' . $hospital_info->address . ' ' . $hospital_info->country }}
</p>
@else
<img style="max-height: 150px;" src="{{ public_path($hospital_info->pdf_print_header) }}" class="mx-auto d-block mx-3" alt="Responsive image">
<img style="max-height: 150px;" src="{{ asset($hospital_info->pdf_print_header) }}" class="@if(isset($isDom) && $isDom) center @else mx-auto d-block mx-3 @endif" alt="Responsive image">
@endif
<hr>
@@ -11,7 +11,8 @@
<!-- CSRF Token -->
<meta name="csrf-token" content="{{ csrf_token() }}">
<link rel="icon" type="image/png" sizes="16x16" href="{{ asset('uploads/streamline/color/streamline_icon-02.png') }}">
<link rel="icon" type="image/png" sizes="16x16"
href="{{ asset('uploads/streamline/color/streamline_icon-02.png') }}">
<title>{{ config('app.name', 'Streamline') }}</title>
<!-- Bootstrap Core CSS -->
<link href="{{ asset('elite/bootstrap/dist/css/bootstrap.min.css') }}" rel="stylesheet">
@@ -28,7 +29,7 @@
<link href="{{ asset('css/streamline-custom.css') }}" id="theme" rel="stylesheet">
<style type="text/css">
body{
body {
font-size: 13px;
line-height: 1.2;
}
@@ -46,28 +47,7 @@
}
</style>
<!--Start of Tawk.to Script-->
{{-- <script type="text/javascript">--}}
{{-- var Tawk_API = Tawk_API || {}, Tawk_LoadStart = new Date(); --}}
{{-- (function(){--}}
{{-- var s1 = document.createElement("script"), s0 = document.getElementsByTagName("script")[0]; --}}
{{-- s1.async = true; --}}
{{-- s1.src = '{{ asset('enbedtalk / default.js') }}'; --}}
{{-- s1.charset = 'UTF-8'; --}}
{{-- s1.setAttribute('crossorigin', '*'); --}}
{{-- s0.parentNode.insertBefore(s1, s0); --}}
{{-- })(); --}}
{{--</script>--}}
<!--End of Tawk.to Script-->
@stack('styles')
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
<script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->
</head>
<body>
@@ -78,13 +58,16 @@
<div id="wrapper">
<!-- Top navigation -->
@include('layouts.top')
<!-- .Top navigation -->
@if (session()->has('streamline_setup') == FALSE)
@include('layouts.nav')
@include('layouts.nav')
@endif
<!-- Page Content -->
<div id="page-wrapper">
<div class="container-fluid" style="background: #708090;">
@include('general_settings.subscription_noti')
{{-- <div class="container-fluid">--}}
<!--row -->
@yield('content')
@@ -165,4 +148,5 @@
@stack('scripts')
<script src="{{ asset('elite/bower_components/styleswitcher/jQuery.style.switcher.js') }}"></script>
</body>
</html>
@@ -1,5 +1,3 @@
@php use Streamline\Enums\Roles; @endphp
<!-- Left navbar-header -->
<div class="navbar-default sidebar" role="navigation">
<div class="sidebar-nav navbar-collapse slimscrollsidebar">
<ul class="nav" id="side-menu">
@@ -27,6 +25,12 @@
<li><a href="{{ route('patients.index') }}"><i class="fa fa-chevron-right"></i>
{{ __('layout.view_patients') }}</a></li>
@endif
@if (Auth::user()->can('view-patient-cards'))
<li><a href="{{ route('patients.patient_cards') }}"><i class="fa fa-chevron-right"></i>
{{ __('layout.view_patient_cards') }}</a></li>
@endif
@if (Auth::user()->can('patient-list'))
<li><a href="{{ route('patients.follow_up') }}"><i class="fa fa-chevron-right"></i>
{{ __('layout.patient_appointments') }}</a></li>
@@ -96,13 +100,9 @@
@if (Module::has('Investigations') &&
Module::isEnabled('Investigations') &&
(Auth::user()->can('investigations-incoming') ||
Auth::user()->can('investigations-authenticate') ||
Auth::user()->can('investigation-results-list') ||
Auth::user()->can('investigation-results-alter') ||
Auth::user()->can('investigations-historical-list') ||
Auth::user()->can('find a donor') ||
Auth::user()->can('lab-management')))
(Auth::user()->can('investigations-incoming') || Auth::user()->can('investigations-authenticate') || Auth::user()->can('labs-stock-sheet') ||
Auth::user()->can('investigation-results-list') || Auth::user()->can('investigation-results-alter') || Auth::user()->can('cancel-investigation-order') ||
Auth::user()->can('investigations-historical-list') || Auth::user()->can('find a donor') || Auth::user()->can('lab-management')))
<li><a href="javascript:void(0);" class="waves-effect"><i class="icon-docs p-r-10"></i>
<span class="hide-menu "> Labs <span class="fa arrow"></span></span>
</a>
@@ -143,10 +143,7 @@
<li><a href="{{ route('labs.index') }}"><i class="fa fa-angle-right"></i>
{{ __('layout.labs_management') }}</a></li>
@endif
@if (Auth::user()->can('lab-management'))
<li><a href="{{ route('labs.labs_stock_sheet') }}"><i class="fa fa-angle-right"></i>
{{ __('layout.labs_stock_sheet') }}</a></li>
@endif
@if (Module::has('Stores') && Module::isEnabled('Stores') && Auth::user()->can('requisition-for-lab-sundries'))
<li><a href="{{ route('stores.lab_sundries') }}"><i class="fa fa-angle-right"></i>
{{ __('layout.requisition_of_sundries') }}</a></li>
@@ -228,6 +225,17 @@
<li><a href="{{ route('radiology.index') }}"><i class="fa fa-angle-right"></i>
{{ __('layout.radiologies_management') }}</a></li>
@endif
@if (Module::has('Stores') && Module::isEnabled('Stores') && Auth::user()->can('requisition-for-radiology-sundries'))
<li><a href="{{ route('stores.radiology_sundries') }}"><i class="fa fa-angle-right"></i>
{{ __('layout.requisition_of_sundries') }}</a></li>
@endif
@if (Module::has('Stores') && Module::isEnabled('Stores') && Auth::user()->can('view-radiology-sundries-stock-sheet'))
<li><a href="{{ route('stores.radiology_sundries_stock_sheet') }}"><i
class="fa fa-angle-right"></i>
{{ __('layout.imaging_sundries_stock_sheet') }}</a>
</li>
@endif
@if (Auth::user()->can('dentals-management'))
<li><a href="{{ route('dentals.index') }}"><i class="fa fa-angle-right"></i>
{{ __('layout.dentals_management') }}</a></li>
@@ -251,14 +259,12 @@
<ul class="nav nav-second-level">
@if (is_incoming_prescriptions_feature_enabled())
@if (Auth::user()->can('confirm-prescriptions'))
<li><a
href="{{ route('pharmacy.confirm_prescriptions') }}">{{ __('layout.confirm_prescriptions') }}</a>
<li><a href="{{ route('pharmacy.confirm_prescriptions') }}">{{ __('layout.confirm_prescriptions') }}</a>
</li>
@endif
@endif
@if (Auth::user()->can('view-progressive-prescriptions'))
<li><a
href="{{ route('pharmacy.confirm_progressive_prescriptions') }}">{{ __('layout.progressive_treatments') }}</a>
<li><a href="{{ route('pharmacy.confirm_progressive_prescriptions') }}">{{ __('layout.progressive_treatments') }}</a>
</li>
@endif
@if (Auth::user()->can('pharmacy-incoming-prescriptions'))
@@ -267,102 +273,28 @@
@endif
@if (Auth::user()->can('pharmacy-ward-dispensing-per-chart'))
<li><a
href="{{ route('pharmacy.ward_dispensing_per_chart') }}">{{ __('layout.ward_dispensing_per_chart') }}</a>
<li><a href="{{ route('pharmacy.ward_dispensing_per_chart') }}">{{ __('layout.ward_dispensing_per_chart') }}</a>
</li>
@endif
@if (Auth::user()->can('view-incoming-ward-dispensing-per-chart'))
<li><a
href="{{ url('incoming_ward_charts') }}">{{ __('layout.incoming_ward_charts') }}</a>
<li><a href="{{ url('incoming_ward_charts') }}">{{ __('layout.incoming_ward_charts') }}</a>
</li>
@endif
@if (Module::has('WardManagement') && Module::isEnabled('WardManagement'))
@if (Auth::user()->can('create-ward-item-request'))
<li><a
href="{{ route('ward_item_request.ward_item_requests') }}">{{ __('layout.ward_item_request') }}</a>
</li>
@endif
@if (Auth::user()->can('view-incoming-ward-item-requests'))
<li><a
href="{{ route('ward_item_request.incoming_ward_requests') }}">{{ __('layout.incoming_ward_item_request') }}</a>
</li>
@endif
@endif
@if (Auth::user()->can('pharmacy-stock-sheet'))
<li><a
href="{{ route('pharmacy.stock_sheet') }}">{{ __('layout.pharmacy_stock_sheet') }}</a>
</li>
@endif
@if (Auth::user()->can('pharmacy-stock-sheet'))
<li><a
href="{{ route('pharmacy.sundries_stock_sheet') }}">{{ __('layout.sundries_stock_sheet') }}</a>
</li>
@endif
@if (Auth::user()->can('pharmacy-stock-reconciliation'))
<li><a
href="{{ route('pharmacy.drugs_stock_reconciliation') }}">{{ __('layout.drugs_stock_reconciliation') }}</a>
</li>
@endif
@if (Auth::user()->can('pharmacy-stock-reconciliation-report'))
<li><a
href="{{ route('pharmacy.drugs_stock_reconciliation_report') }}">{{ __('layout.drugs_stock_reconciliation_report') }}</a>
</li>
@endif
@if (Auth::user()->can('pharmacy-sundries-stock-reconciliation'))
<li><a
href="{{ route('pharmacy.sundries_stock_reconciliation') }}">{{ __('layout.sundries_stock_reconciliation') }}</a>
</li>
@endif
@if (Auth::user()->can('pharmacy-sundries-stock-reconciliation-report'))
<li><a
href="{{ route('pharmacy.sundries_stock_reconciliation_report') }}">{{ __('layout.sundries_stock_reconciliation_report') }}</a>
</li>
@endif
@if (Auth::user()->can('pharmacy-drug-requisition'))
<li><a
href="{{ route('pharmacy.requisition_for_drugs') }}">{{ __('layout.requisition_for_items') }}</a>
</li>
@endif
@if (Auth::user()->can('pharmacy-saved-requisitions'))
<li><a
href="{{ route('pharmacy.select_temporary_requisition') }}">{{ __('layout.saved_requisitions') }}</a>
</li>
@endif
@if (Auth::user()->can('pharmacy-previous-requisitions'))
<li><a
href="{{ route('pharmacy.previous_requisitions') }}">{{ __('layout.previous_requisitions') }}</a>
</li>
@endif
@if (Auth::user()->can('view-pharmacy-dispensation-report'))
<li><a
href="{{ route('pharmacy.pharmacy_dispensation_report_drugs') }}">{{ __('layout.dispensation_report') }}</a>
</li>
@endif
@if (Auth::user()->can('cancel-prescription'))
<li><a
href="{{ route('pharmacy.view_prescriptions_to_cancel') }}">{{ __('layout.cancel_prescriptions') }}</a>
</li>
@endif
@if (Auth::user()->can('restore-cancelled-prescription'))
<li><a
href="{{ route('pharmacy.view_cancelled_prescriptions') }}">{{ __('layout.view_cancelled_prescriptions') }}</a>
</li>
@endif
@if (Auth::user()->can('restore-cancelled-prescription'))
<li><a
href="{{ route('pharmacy.view_cancelled_progressive_prescriptions') }}">{{ __('layout.view_cancelled_progressive_treatments') }}</a>
</li>
@endif
@if( Auth::user()->can('pharmacy-stock-sheet'))
@if(Auth::user()->can('pharmacy-stock-sheet'))
<li>
<a href="{{ route('pharmacy.stock_sheet') }}">{{ __('layout.pharmacy_stock_sheet') }}</a>
</li>
@endif
@if( Auth::user()->can('pharmacy-stock-sheet'))
@if(Auth::user()->can('pharmacy-stock-sheet'))
<li>
<a href="{{ route('pharmacy.sundries_stock_sheet') }}">{{ __('layout.sundries_stock_sheet') }}</a>
</li>
@endif
@if(Auth::user()->can('pharmacy-optical-stock-sheet'))
<li>
<a href="{{ route('pharmacy.pharmacy_optical_stock_sheet') }}">{{ __('layout.optical_stock_sheet') }}</a>
</li>
@endif
@if( Auth::user()->can('pharmacy-stock-reconciliation'))
<li>
<a href="{{ route('pharmacy.drugs_stock_reconciliation') }}">{{ __('layout.drugs_stock_reconciliation') }}</a>
@@ -387,6 +319,9 @@
<li>
<a href="{{ route('pharmacy.optical_stock_reconciliation') }}">{{ __('layout.optical_stock_reconciliation') }}</a>
</li>
<li>
<a href="{{ route('pharmacy.opticals_stock_reconciliation_report') }}">{{ __('layout.optical_stock_reconciliation_report') }}</a>
</li>
@endif
@if( Auth::user()->can('pharmacy-drug-requisition'))
<li>
@@ -528,10 +463,7 @@
<li><a href="{{ route('labs.index') }}"><i class="fa fa-angle-right"></i>
{{ __('layout.labs_management') }}</a></li>
@endif
@if (Auth::user()->can('lab-management'))
<li><a href="{{ route('labs.labs_stock_sheet') }}"><i class="fa fa-angle-right"></i>
{{ __('layout.labs_stock_sheet') }}</a></li>
@endif
@if (Module::has('Stores') && Module::isEnabled('Stores') && Auth::user()->can('requisition-for-lab-sundries'))
<li><a href="{{ route('stores.lab_sundries') }}"><i class="fa fa-angle-right"></i>
{{ __('layout.requisition_of_sundries') }}</a></li>
@@ -664,8 +596,7 @@
class="fa arrow"></span></span></a>
<ul class="nav nav-second-level">
@if (Auth::user()->can('view-patient-payment-methods'))
<li><a
href="/patient_payment_methods/index">{{ __('layout.patient_payment_methods') }}</a>
<li><a href="/patient_payment_methods">{{ __('layout.patient_payment_methods') }}</a>
</li>
@endif
@@ -1080,8 +1011,7 @@
Auth::user()->can('role-list') ||
Auth::user()->can('users-create') ||
Auth::user()->can('users-list') ||
Auth::user()->can('staff-payments-configuration') ||
Auth::user()->hasRole(Roles::SUPER_ADMIN))
Auth::user()->can('staff-payments-configuration'))
<li><a href="javascript:void(0);" class="waves-effect"><i class="icon-wrench"></i>
<span class="hide-menu "> &nbsp;&nbsp; {{ __('layout.settings') }} <span
class="fa arrow"></span></span>
@@ -1115,19 +1045,29 @@
<li><a href="{{ route('roles.index') }}"><i class="fa fa-chevron-right"></i>
{{ __('layout.manage_roles') }}</a></li>
@endif
@if (Auth::user()->hasRole(Roles::SUPER_ADMIN->value))
<li><a href="{{ route('general_settings.active_users_limit_settings') }}"><i
class="fa fa-chevron-right"></i>
{{ __('layout.limit_number_of_active_users') }}</a></li>
@endif
@if (Auth::user()->hasRole(Roles::SUPER_ADMIN->value))
<li><a href="{{ route('streamline_modules.activate') }}"><i
class="fa fa-chevron-right"></i>
{{ __('layout.activate_streamline_modules') }}</a></li>
@endif
</ul>
</li>
@endif
@if (Auth::user()->hasRole('Super Admin'))
<li>
<a href="javascript:void(0);" class="waves-effect"><i class="icon-lock"></i>
<span class="hide-menu "> &nbsp;&nbsp; {{ __('layout.super_settings') }} <span
class="fa arrow"></span></span>
</a>
<ul class="nav nav-second-level">
<li><a href="{{ route('general_settings.active_users_limit_settings') }}"><i class="fa fa-chevron-right"></i>
{{ __('layout.limit_number_of_active_users') }}</a></li>
<li><a href="{{ route('streamline_modules.activate') }}"><i class="fa fa-chevron-right"></i>
{{ __('layout.activate_streamline_modules') }}</a></li>
<li> <a href="{{ route('subscriptions.track_subscriptions') }}"><i class="fa fa-chevron-right"></i>
{{ __('layout.subscription_tracking') }}</a></li>
<li> <a href="{{ route('general_settings.integrated_payment') }}"><i class="fa fa-chevron-right"></i>
{{ __('layout.integrated_payment_solutions') }}</a></li>
</ul>
</li>
@endif
<li><a href="{{ route('logout') }}"
onclick="event.preventDefault(); document.getElementById('logout-form').submit();"
@@ -65,7 +65,7 @@
<table class="table color-table success-table">
<thead>
<tr>
<th>#</th>
{{-- <th>#</th> --}}
<th>{{ __('users.names') }}</th>
<th>{{ __('users.username') }}</th>
<th>{{ __('users.phone_number') }}</th>
@@ -84,7 +84,7 @@
$last_seen = Carbon\Carbon::parse($user->last_seen);
@endphp
<tr>
<td>{{ ++$i }}</td>
{{-- <td>{{ ++$i }}</td> --}}
<td>{{ $user->first_name }} {{ $user->last_name }}</td>
<td>{{ $user->username }}</td>
<td>{{ $user->phone }}</td>
@@ -112,9 +112,21 @@
<a class="btn btn-info btn-sm" href="{{ route('users.edit',$user->id) }}">{{ __('users.edit') }}</a>
</td>
<td>
@if($type == 1 )
@if ($user->inactive_counter < 3)
{!! Form::open(['method' => 'DELETE','route' => ['users.destroy', $user->id],'style'=>'display:inline']) !!}
{!! Form::submit(__('users.delete'), ['class' => 'btn btn-danger btn-sm']) !!}
{!! Form::close() !!}
@else
<span style="color:red;" >{{ __('users.no_longer_deletes') }}</span><br/>
<a href="javascript:void(0)" data-toggle="tooltip" rel="tooltip" data-placement="top" title="{{ __('users.delete_active_user') }}"> <i class="fa fa-info-circle"></i></a>
@endif
@else
{!! Form::open(['method' => 'DELETE','route' => ['users.destroy', $user->id],'style'=>'display:inline']) !!}
{!! Form::submit(__('users.delete'), ['class' => 'btn btn-danger btn-sm']) !!}
{!! Form::close() !!}
@endif
</td>
</tr>
@endforeach
@@ -1,213 +1,188 @@
@extends('layouts.main')
@push('styles')
<link href="{{ asset('elite/bower_components/bootstrap-datepicker/bootstrap-datepicker.min.css') }}" rel="stylesheet"
type="text/css" />
<style type="text/css">
.object-fit_fill {
object-fit: fill
<link href="{{ asset('elite/bower_components/bootstrap-datepicker/bootstrap-datepicker.min.css') }}" rel="stylesheet" type="text/css" />
<style type="text/css">
.object-fit_fill { object-fit: fill }
.object-fit_contain { object-fit: contain }
.object-fit_cover { object-fit: cover }
.object-fit_none { object-fit: none }
.object-fit_scale-down { object-fit: scale-down }
/* .html {
color: #eee;
padding: 30px;
font-family: 'Source Code Pro', Monaco;
background-color: #333;
}*/
/* p { font-weight: 200; font-size: 13px; margin-bottom: 10px; margin-top: 0;}*/
.img-custom {
height: 240px;
background-color: #444;}
.img-custom[class] {
width: 100%;
}
.original-image {
/*margin-bottom: 50px;*/
}
.image {
/*float: left;*/
width: 100%; /* Was 40% */
margin: 0 30px 20px 0;
&:nth-child(2n) {
clear: left;
}
.object-fit_contain {
object-fit: contain
&:nth-child(2n+1){
margin-right: 0;
}
.object-fit_cover {
object-fit: cover
}
.object-fit_none {
object-fit: none
}
.object-fit_scale-down {
object-fit: scale-down
}
/* .html {
color: #eee;
padding: 30px;
font-family: 'Source Code Pro', Monaco;
background-color: #333;
}*/
/* p { font-weight: 200; font-size: 13px; margin-bottom: 10px; margin-top: 0;}*/
.img-custom {
height: 240px;
background-color: #444;
}
.img-custom[class] {
width: 100%;
}
.original-image {
/*margin-bottom: 50px;*/
}
.image {
/*float: left;*/
width: 100%;
/* Was 40% */
margin: 0 30px 20px 0;
&:nth-child(2n) {
clear: left;
}
&:nth-child(2n+1) {
margin-right: 0;
}
}
</style>
}
</style>
@endpush
@section('content')
<div class="row bg-title">
<div class="col-lg-3 col-md-4 col-sm-4 col-xs-12">
<h4 class="page-title">{{ __('users.user_details') }}</h4>
</div>
<div class="col-lg-9 col-sm-8 col-md-8 col-xs-12">
<ol class="breadcrumb">
<li><a href="{{ route('home') }}">{{ __('users.dashboard') }}</a></li>
<li><a href="{{ route('users.index') }}">{{ __('users.users') }}</a></li>
<li class="active">{{ __('users.user_details') }}</li>
</ol>
</div>
<!-- /.col-lg-12 -->
<div class="row bg-title">
<div class="col-lg-3 col-md-4 col-sm-4 col-xs-12">
<h4 class="page-title">{{ __('users.user_details') }}</h4>
</div>
<div class="col-lg-9 col-sm-8 col-md-8 col-xs-12">
<ol class="breadcrumb">
<li><a href="{{ route('home') }}">{{ __('users.dashboard') }}</a></li>
<li><a href="{{ route('users.index') }}">{{ __('users.users') }}</a></li>
<li class="active">{{ __('users.user_details') }}</li>
</ol>
</div>
<!-- /.col-lg-12 -->
</div>
<!-- .row -->
<div class="row" style="margin-top: -20px;">
<div class="col-sm-12">
<!--Flash messages at the top -->
<div>@include('flash::message')</div>
<!-- .row -->
<div class="row" style="margin-top: -20px;">
<div class="col-sm-12">
<!--Flash messages at the top -->
<div>@include('flash::message')</div>
<div class="white-box">
<div class="row">
<div class="col-md-4 col-xs-12">
<div class="white-box">
<div class="user-bg image"> <img class="object-fit_scale-down img-custom" alt="user"
src="{{ asset('uploads/users/' . ($user->photo ?? 'placeholder.png')) }}"> </div>
<div class="user-btm-box" style="margin-top: -45px;">
<!-- .row -->
<div class="row text-center m-t-10">
<div class="col-md-6 b-r"><strong>{{ __('users.names') }}</strong>
<p>{{ $user->first_name }} {{ $user->last_name }}</p>
</div>
<div class="col-md-6"><strong>{{ __('users.position') }}</strong>
<p>{{ $positions[$user->position_id] ?? '' }}</p>
</div>
<div class="white-box">
<div class="row">
<div class="col-md-4 col-xs-12">
<div class="white-box">
<div class="user-bg image"> <img class="object-fit_scale-down img-custom" alt="user" src="{{ asset('uploads/users/'.$user->photo) }}"> </div>
<div class="user-btm-box" style="margin-top: -45px;">
<!-- .row -->
<div class="row text-center m-t-10">
<div class="col-md-6 b-r"><strong>{{ __('users.names') }}</strong>
<p>{{ $user->first_name }} {{ $user->last_name }}</p>
</div>
<!-- /.row -->
<hr>
<!-- .row -->
<div class="row text-center m-t-10">
<div class="col-md-6 b-r"><strong>{{ __('users.email_address') }}</strong>
<p>{{ $user->email == null ? 'NA' : $user->email }}</p>
</div>
<div class="col-md-6"><strong>{{ __('users.phone_number') }}</strong>
<p>{{ $user->phone }}</p>
</div>
<div class="col-md-6"><strong>{{ __('users.position') }}</strong>
<p>{{ $positions[$user->position_id] ?? "" }}</p>
</div>
<!-- /.row -->
<hr>
<!-- .row -->
<div class="row text-center m-t-10">
<div class="col-md-12"><strong>{{ __('users.roles_on_streamline') }}</strong>
<p>
@if (!empty($user->getRoleNames()))
@foreach ($user->getRoleNames() as $v)
<span
class="label label-success label-rounded badge">{{ $v }}</span>
@endforeach
@endif
</p>
</div>
</div>
<hr>
</div>
</div>
</div>
<div class="col-md-8 col-xs-12">
<div class="white-box">
<div class="row">
<div class="col-md-3 col-xs-6 b-r"> <strong>{{ __('users.username') }}</strong>
<br>
<p class="text-muted">{{ $user->username }}</p>
<!-- /.row -->
<hr>
<!-- .row -->
<div class="row text-center m-t-10">
<div class="col-md-6 b-r"><strong>{{ __('users.email_address') }}</strong>
<p>{{ $user->email == NULL ? 'NA' : $user->email }}</p>
</div>
<div class="col-md-3 col-xs-6 b-r"> <strong>{{ __('users.blood_group') }}</strong>
<br>
<p class="text-muted">
{{ $blood_groups[$user->blood_group_id] ?? '' }}
<div class="col-md-6"><strong>{{ __('users.phone_number') }}</strong>
<p>{{ $user->phone }}</p>
</div>
</div>
<!-- /.row -->
<hr>
<!-- .row -->
<div class="row text-center m-t-10">
<div class="col-md-12"><strong>{{ __('users.roles_on_streamline') }}</strong>
<p> @if(!empty($user->getRoleNames()))
@foreach($user->getRoleNames() as $v)
<span class="label label-success label-rounded badge">{{ $v }}</span>
@endforeach
@endif
</p>
</div>
<div class="col-md-3 col-xs-6 b-r"> <strong>{{ __('users.willing_to_donate') }}</strong>
<br>
<p class="text-muted">
{{ $user->willing_to_donate == 1 ? __('users.yes') : __('users.no') }}</p>
</div>
<div class="col-md-3 col-xs-6"> <strong>{{ __('users.last_donation') }}</strong>
<br>
<p class="text-muted">
{{ $user->last_donation_date == null ? 'NA' : $user->last_donation_date }}</p>
</div>
</div>
<hr>
<div class="row">
<div class="col-md-3 col-xs-6 b-r"> <strong>{{ __('users.council_registration') }}</strong>
<br>
<p class="text-muted">
{{ $user->council_id == 0 ? 'NA' : $councils[$user->council_id] }}</p>
</div>
<div class="col-md-3 col-xs-6 b-r"> <strong>{{ __('users.registration_number') }}</strong>
<br>
<p class="text-muted">
{{ $user->registration_number == null ? 'NA' : $user->registration_number }}</p>
</div>
<div class="col-md-3 col-xs-6 b-r"> <strong>{{ __('users.expiry_date') }}</strong>
<br>
<p class="text-muted">{{ $user->expiry_date == null ? 'NA' : $user->expiry_date }}</p>
</div>
</div>
<hr>
<div class="row">
<div class="col-md-3 col-xs-6 b-r"> <strong>{{ __('users.security_question') }}</strong>
<br>
<p class="text-muted">
{{ $user->security_question_id == null ? 'NA' : $security_questions[$user->security_question_id] }}
</p>
</div>
<div class="col-md-3 col-xs-6 b-r"> <strong>{{ __('users.security_answer') }}</strong>
<br>
<p class="text-muted">******</p>
</div>
<div class="col-md-3 col-xs-6 b-r"> <strong>{{ __('users.secret_pin') }}</strong>
<br>
<p class="text-muted">******</p>
</div>
</div>
<hr>
<p class="text-muted text-right">{{ __('users.registered_on') }}
<code>{{ $user->created_at }}</code>
</p>
</div>
</div>
</div>
<div class="col-md-8 col-xs-12">
<div class="white-box">
<div class="row">
<div class="col-md-3 col-xs-6 b-r"> <strong>{{ __('users.username') }}</strong>
<br>
<p class="text-muted">{{ $user->username }}</p>
</div>
<div class="col-md-3 col-xs-6 b-r"> <strong>{{ __('users.blood_group') }}</strong>
<br>
<p class="text-muted">{{ $blood_groups[$user->blood_group_id] ?? "" }}</p>
</div>
<div class="col-md-3 col-xs-6 b-r"> <strong>{{ __('users.willing_to_donate') }}</strong>
<br>
<p class="text-muted">{{ $user->willing_to_donate == 1 ? __('users.yes') : __('users.no') }}</p>
</div>
<div class="col-md-3 col-xs-6"> <strong>{{ __('users.last_donation') }}</strong>
<br>
<p class="text-muted">{{ $user->last_donation_date == NULL ? 'NA' : $user->last_donation_date }}</p>
</div>
</div>
<hr>
<div class="row">
<div class="col-md-3 col-xs-6 b-r"> <strong>{{ __('users.council_registration') }}</strong>
<br>
<p class="text-muted">{{ $user->council_id == 0 ? 'NA' : $councils[$user->council_id] }}</p>
</div>
<div class="col-md-3 col-xs-6 b-r"> <strong>{{ __('users.registration_number') }}</strong>
<br>
<p class="text-muted">{{ $user->registration_number == NULL ? 'NA' : $user->registration_number }}</p>
</div>
<div class="col-md-3 col-xs-6 b-r"> <strong>{{ __('users.expiry_date') }}</strong>
<br>
<p class="text-muted">{{ $user->expiry_date == NULL ? 'NA' : $user->expiry_date }}</p>
</div>
</div>
<hr>
<div class="row">
<div class="col-md-3 col-xs-6 b-r"> <strong>{{ __('users.security_question') }}</strong>
<br>
<p class="text-muted">{{ $user->security_question_id == NULL ? 'NA' : $security_questions[$user->security_question_id] }}</p>
</div>
<div class="col-md-3 col-xs-6 b-r"> <strong>{{ __('users.security_answer') }}</strong>
<br>
<p class="text-muted">******</p>
</div>
<div class="col-md-3 col-xs-6 b-r"> <strong>{{ __('users.secret_pin') }}</strong>
<br>
<p class="text-muted">******</p>
</div>
</div>
<hr>
<p class="text-muted text-right">{{ __('users.registered_on') }} <code>{{ $user->created_at }}</code></p>
</div>
</div>
</div>
</div>
</div>
<!-- /.row -->
</div>
<!-- /.row -->
@endsection
@push('scripts')
<script type="text/javascript"></script>
<script type="text/javascript">
</script>
@endpush