File: /home/cafsindia/hrms_cafsinfotech_in/application/views/process_payroll/manage.php
<?php
$this->load->view("partial/header");
$access_data = $this->session->userdata('access_data');
$access_add = (int)$access_data[$controller_name]['access_add'];
$access_update = (int)$access_data[$controller_name]['access_update'];
$access_delete = (int)$access_data[$controller_name]['access_delete'];
$access_search = (int)$access_data[$controller_name]['access_search'];
$access_export = (int)$access_data[$controller_name]['access_export'];
$access_import = (int)$access_data[$controller_name]['access_import'];
$page_name = ucwords(str_replace("_"," ",$controller_name));
$uniqueId = "prime_".$controller_name."_id";
$end_date = date('Y-m-d');
?>
<div class='row title_content'>
<div class='col-md-2 col-xs-4'>
<h1 class='page_txt'><?php echo $page_name;?></h1>
</div>
<div class='col-md-10 col-xs-8'>
<ol class="breadcrumb">
<!-- <li>
<div class='form-group'>
<a class='btn btn-xs btn-primary' href='<?= site_url() ?>/<?php echo $controller_name; ?>/export_columns'><i class="fa fa-sign-out" aria-hidden="true"></i> Column Export</a>
</div>
</li> -->
<?php
if($access_import === 1){
$import_url = site_url($controller_name."/import");
$submit = $this->lang->line('common_submit');
echo "<li>
<a class='btn btn-xs btn-primary' data-toggle='modal' data-target='#myModal'
title='Import $page_name'> <span class='fa fa-cloud-upload'> </span> Import $page_name
</a>
</li>";
}
$quick_link = explode(",",$link_info[0]->quicklink);
$link_li_line = "";
foreach($quick_link as $link){
if($link){
$url = site_url("$link");
$name = ucwords(str_replace("_"," ",$link));
$link_li_line .= "<li><a href='$url'> <i class='fa fa-angle-double-right fa-lg' aria-hidden='true'></i> $name</a></li>";
}
}
if($link_li_line){
echo "<li class='dropdown'>
<a class='btn btn-xs btn-primary dropdown-toggle' type='button' id='dropdownMenu2' data-toggle='dropdown' aria-haspopup='true' aria-expanded='false'>
<i class='fa fa-plus-circle' aria-hidden='true'></i> Quick Links
</a>
<ul class='dropdown-menu dropdown-menu-left' aria-labelledby='dropdownMenu2'>
$link_li_line
</ul>
</li>";
}
?>
<li><a href="<?php echo site_url()?>#Home">Home</a></li>
<li><a href="<?php echo site_url($controller_name)?>#<?php echo "$controller_name";?>"><?php echo "$page_name";?></a></li>
<li class="active">Process</li>
</ol>
</div>
</div>
<div>
<?php
if($error_info){
echo $error_info;
exit(0);
}
?>
</div>
<div id="table_holder">
<div class='col-md-12'>
<?php echo form_open("$controller_name/process_payroll",array("id"=>"process_payroll","class"=>"form-inline")); ?>
<div class="form-group">
<?php
echo form_label("Process Month", 'process_month', array('class' => 'required'));
echo form_input(array('name' => 'process_month','id' => 'process_month','class' => 'form-control input-sm datepicker','placeholder'=>"Search Month",'value'=>''));
?>
</div>
<div class="form-group">
<?php
$process_type = array(""=>"---- Select Process Type ----","1"=>"Process By Employee","4"=>"Process By Multi Employee","2"=>"Process By $process_role_lable","3"=>"Process All",);
echo form_label("Process Type", 'process_type', array('class' => 'required'));
echo form_dropdown(array("name" =>'process_type',"id" =>'process_type',"class" =>'form-control input-sm select2'),$process_type);
?>
</div>
<div class="form-group" style='display:none;'>
<?php
echo form_label("$process_role_lable", 'process_role', array('class' => 'required'));
echo form_dropdown(array("name" =>'process_role[]',"multiple id" =>'process_role',"class" =>'form-control input-sm select2'),$process_role);
?>
</div>
<div class="form-group">
<?php
$process_mode = array(""=>"---- Select Type ----","1"=>"Process Payroll","2"=>"Delete Payroll","3"=>"View Payroll");
echo form_label("Process Mode", 'process_mode', array('class' => 'required'));
echo form_dropdown(array("name" =>'process_mode',"id" =>'process_mode',"class" =>'form-control input-sm select2'),$process_mode);
?>
</div>
<div class="form-group" style='display:none;max-height: 50px !important'>
<?php
echo form_label("Search Employee", 'process_emp_code', array('class' => 'required'));
echo form_input(array('name' =>'process_emp_code_show','id' =>'process_emp_code','class' => 'form-control input-sm','value'=>'','placeholder'=>"Search by Employee Code"));
echo form_input(array('name' =>'process_emp_code','id' =>'process_emp_code_hidden','class' => 'form-control input-sm','value'=>'','type' => 'hidden','placeholder'=>"Search by Employee Code"));
?>
<div class='append_div'></div>
</div>
<div class="form-group" id="paste_block" style="display:none;">
<?php
echo form_label("Paste Employee Codes (Excel column OR comma separated)", 'emp_codes', ['class' => 'required']);
echo form_textarea(["name" => "emp_codes","id"=> "emp_codes","class" => "form-control input-sm","placeholder" => "Paste employee codes here","rows" => 4,"style" => "width:100%; overflow:hidden; resize:none; text-overflow:ellipsis; white-space:nowrap"]);
?>
</div>
<div class="form-group" id="multi_block" style="display:none;">
<?php
echo form_label("Multi Employee Code", 'multi_employee_code', ['class' => 'required']);
echo form_dropdown(["name"=> "multi_employee_code[]","id"=> "multi_employee_code","multiple" => "multiple",
"class" => "form-control input-sm select2"],[],[]);
?>
<div style="margin-top:10px;">
<label>
<input type="checkbox" id="change_codes"/> Change Codes
</label>
</div>
</div>
<?php if($this->config->item("db_name") !== 'rad_hrms_db'){ ?>
<div class="form-group" style='display:inline-grid;'>
<label>
<input name='process_income_tax' id='process_income_tax' type="checkbox"> Process With Income Tax
</label>
<label>
<input name='process_proof_wise' id='process_proof_wise' type="checkbox"> Process Proof Wise
</label>
</div>
<?php } ?>
<div class="form-group">
<button class='btn btn-primary btn-sm' id="process_payroll_btn">Submit</button>
</div>
<?php echo form_close(); ?>
<div style='padding:10px;overflow: auto !important; margin:15px; margin-bottom:0px;' id='rslt_info'>
</div>
</div>
<div class="myProgress" style ="z-index: 10000; text-align: center;display:none;padding:50px;color:#4b6fa2;">
<i class="fa fa-spinner fa-spin fa-2x fa-fw" ></i>Please wait processing....
</div>
<div id="loader" style="display:none;"></div>
</div>
<!-- Modal -->
<div id="myModal" class="modal fade" role="dialog">
<div class="modal-dialog">
<!-- Modal content-->
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">Import Process Payroll</h4>
</div>
<div class="modal-body">
<?php echo form_open("$controller_name/save_import/",array("id"=>'save_import',"class"=>"form-inline")); ?>
<fieldset id='FundBasicInfo' style='margin:0px;padding:8px;'>
<div class="form-group">
<?php
echo form_input( array('name'=>'module_id', 'id'=>'module_id', 'type'=>'Hidden','value'=>$module_id));
echo form_label($this->lang->line('mod_excel_format'), 'excel_format', array('class' => 'required'));
echo form_dropdown(array( 'name' => 'excel_format', 'id' => 'excel_format', 'class' => 'form-control input-sm'), $excel_format_drop);
?>
</div>
<div class="form-group">
<?php
echo form_label($this->lang->line('excel_select_file'), 'excel_select_file', array('class' => 'required'));
echo form_upload(array('name' => 'excel_select_file','id' => 'excel_select_file','class' => 'form-control input-sm','value' =>'','accept' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel,text/comma-separated-values, text/csv, application/csv' ));
?>
<a id="link" style="display: none;" href="#" title='Export All Data'><span class="fa fa-user-exit"> </span> Export Mapping Format </a>
<input type='hidden' id='excel_file_path' name='excel_file_path' value=''>
<span id='loader' style='color:#CC3366'></span>
</div>
<div class="form-group">
<?php
echo form_label("Excel Sheet Name", 'excel_sheet_name', array('class' => 'required'));
echo form_dropdown(array( 'name' => 'excel_sheet_name', 'id' => 'excel_sheet_name', 'class' => 'form-control input-sm'), $excel_sheet_name);
?>
</div>
<div class="form-group">
<?php
echo form_label("Excel Start Row", 'excel_start_row', array('class' => 'required'));
echo form_input(array( 'name' => 'excel_start_row', 'id' => 'excel_start_row', 'class' => 'form-control input-sm number', 'value' => '1'));
?>
</div>
<div class="form-group">
<?php
echo form_label("Excel End Row", 'excel_end_row', array('class' => ''));
echo form_input(array( 'name' => 'excel_end_row', 'id' => 'excel_end_row', 'class' => 'form-control input-sm number', 'value' => ''));
?>
</div>
<div class="form-group">
<?php
echo form_label("Transaction Month", 'transaction_month', array('class' => 'required'));
echo form_input(array('name' => 'transaction_month', 'id' => 'transaction_month', 'class' => 'form-control input-sm datepicker', 'value'=> ''));
?>
</div>
<div class="form-group">
<button class='btn btn-primary btn-sm' id="save_import_btn">Submit</button>
</div>
</fieldset>
<?php echo form_close();?>
<div id='imp_table_info' style='padding:8px;overflow: auto;'>
</div>
<hr class="left"/>
<p style="color:blue;margin-left:10px;">Please map the date format like this (DD-MM-YYYY) only...</p>
</div>
</div>
</div>
</div>
<!-- Neha Edit 07-dec-2019 -->
<div class="modal fade" id="active_list_model" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<div class="modal-dialog modal-lg" style="width: 90%;" role="document">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title" id="myModalLabel">Activity Remainder</h4>
</div>
<div class="modal-body" id="activity_rem_info" style="padding:10px;">
</div>
<div class="modal-footer">
<button type="button" class="btn btn-danger" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
<!-- Neha Edit end 09-dec-2019 -->
<script type="text/javascript">
<?php echo $error_info; ?>
$(document).ready(function (){
$(function(){
$(".datepicker").datetimepicker({
format: 'MM-YYYY',
});
});
$(function(){
//$("#process_role option")[0].remove();
$('.select2').select2({
placeholder: '---- Select ----',
/*allowClear: true,
tags: true*/
});
});
// MULTI EMPLOYEE CODE PROCESS _ARN 11-09-2025
$('#paste_block').hide();
$('#multi_block').hide();
$('#emp_codes').val("");
$('#multi_employee_code').empty();
$('#change_codes').prop('checked', false);
// MULTI EMPLOYEE CODE PROCESS _ARN 11-09-2025
$('#emp_codes').on('paste keyup', function(e){
if(e.type === 'keyup' && e.key !== 'Enter') return;
setTimeout(check_codes, 100);
});
// ALLOW RECODE PASTE MULTI EMPLOYEE _ARN 11-09-2025
$('#change_codes').change(function(){
if($(this).is(':checked')){
$('#multi_block').hide();
$('#multi_employee_code').empty();
$('#paste_block').show();
$('#emp_codes').val("").focus();
$(this).prop('checked', false);
}
});
$('#process_role option').filter(function(){
return !this.value || $.trim(this.value).length == 0;
}).remove();
$("#transaction_month").on('dp.hide',function(){
var transaction_month = $("#transaction_month").val();
//Encryption
var key = '<?php echo $key; ?>';
var data = {transaction_month:transaction_month};
var encData = encrypt(key,data);
$.ajax({
type: "POST",
url: '<?php echo site_url($controller_name . "/check_import_month"); ?>',
data:encData,
contentType: 'text/plain',
success: function(data) {
var rslt = JSON.parse(data);
if(rslt.success){
toastr.success(rslt.message);
}else{
toastr.error(rslt.message);
$("#transaction_month").val('');
}
},
});
});
$("#process_month").on('dp.hide',function(){
var process_month = $("#process_month").val();
var category = $("#process_role").val();
//Encryption
var key = '<?php echo $key; ?>';
var data = {process_month:process_month,category:category};
var encData = encrypt(key,data);
$.ajax({
type: "POST",
url: '<?php echo site_url($controller_name . "/check_import_month"); ?>',
data:encData,
contentType: 'text/plain',
success: function(data) {
var rslt = JSON.parse(data);
if(rslt.success){
toastr.success(rslt.message);
$("#loader").hide();
get_activity_remainder(process_month);
}else{
toastr.error(rslt.message);
$("#process_month").val('');
}
},
});
});
$('#process_type').change(function () {
process_type = $("#process_type").val();
$('#process_emp_code,#process_role').parent().hide();
$('#process_emp_code').val("").trigger("change");
$('#process_emp_code_hidden').val("");
$('#process_role').val("");
// MULTI EMPLOYEE CODE PROCESS _ARN 11-09-2025
$('#emp_codes').val("").focus();
$('#multi_employee_code').empty();
$('#paste_block,#multi_block').hide();
if(process_type === "1"){
$('#process_emp_code').parent().show();
$('#process_role').val("");
$('#paste_block,#multi_block').hide();
}else
if(process_type === "2"){
$('#process_role').parent().show();
$('#process_emp_code,#process_emp_code_hidden,#process_emp_code_show').val("");
$('#paste_block,#multi_block').hide();
}else
if(process_type === "4"){
$('#paste_block').show();
}else{
$('#process_emp_code,#process_role').parent().hide();
$('#process_emp_code,#process_emp_code_hidden,#process_emp_code_show,#process_role').val("");
}
});
// AUTOCOMPLETE ENCRYPTED BY _ARN (04-09-2025)
$('#process_emp_code').autocomplete({
source: function (request, response){
var process_month = $('#process_month').val();
var process_mode = $('#process_mode').val();
if(!process_mode){
toastr.error('Please choose process mode field ');
}
var key = '<?php echo $key; ?>';
if(process_month){
// Encrypt request data
var encData = encrypt(key,{term: request.term,process_month: process_month,process_mode:process_mode});
$.ajax({
url: '<?php echo site_url("$controller_name/emp_suggest"); ?>',
type: 'POST',
data: encData,
success: function (data) {
var rslt = JSON.parse(data);
response($.map(rslt, function (el) {
return {
value: el.value,
label: el.label,
display_name: el.display_name
};
}));
}
});
} else {
toastr.error("Please Select Process Month..");
$('#process_emp_code').val('');
}
},
minLength: 3, // jQuery UI correct option
autoFocus: true,
delay: 10,
scroll: true,
appendTo: '.append_div',
select: function (e, ui) {
$('#process_emp_code').val(ui.item.label);
$('#process_emp_code_hidden').val(ui.item.value); // hidden field
return false;
}
});
$('#process_payroll').validate($.extend({
submitHandler: function (form){
var send_url = '<?php echo site_url("$controller_name/process_payroll");?>'
$("#process_payroll_btn").html("<i class='fa fa-spinner fa-spin'></i> Processing...");
$('.myProgress').show();
$('#process_payroll_btn').attr('disabled','disabled');
var count = $('#process_role').find('option:selected').length;
var process_type = $('#process_type').val();
if(process_type === "4"){
var multi_employee_code = $('#multi_employee_code').val();
if(multi_employee_code == ''){
toastr.error('Please set multi employee code correctly');
$("#process_payroll_btn").html("Submit"); // reset button text
$('#process_payroll_btn').removeAttr('disabled'); // re-enable button
$('.myProgress').hide();
return false;
}
}
let formData = new FormData(form);
// Convert FormData to JSON object
let jsonData = Object.fromEntries(formData.entries());
jsonData['process_role'] = $('#process_role').val();
jsonData['multi_employee_code'] = $('#multi_employee_code').val();
var key = '<?php echo $key; ?>';
var encData = encrypt(key,jsonData);
$.ajax({
url : send_url,
type : 'POST',
contentType : 'text/plain',
data : encData,
success: function (response){
$('.myProgress').hide();
$("#loader").css("display", "none");
$('#process_payroll_btn').attr('disabled',false);
$("#process_payroll_btn").html("Submit");
if(response.table_content){
$("#rslt_info").css("display", "block");
$("#rslt_info").html(response.table_content);
var table = $('#detail_list').DataTable({
destroy: true,
processing: true,
lengthMenu: [[10,25,50,100,500,1000,-1],[10,25,50,100,500,1000,"All"]],
language: {
lengthMenu: "<span style='margin-top:8px;margin-left:10px;'>Display</span> _MENU_ <span style='margin-top:8px;'>Records</span>",
searchPlaceholder: "Search records",
search: "",
},
dom: 'lfrtip',
fixedColumns: { leftColumns: 2 },
scrollX: true,
buttons: [
{
extend: 'collection',
text: 'Export',
buttons: [
{
extend: 'excel',
title: 'Payroll Report_' + moment(new Date()).format('DD-MM-YYYY'),
}
]
}
],
});
// Append export button container into #detail_list_filter
table.buttons().container().appendTo('#detail_list_filter');
}else{
$("#rslt_info").css("display", "none");
}
$('input[type=search]').addClass('form-control input-sm');
if(response.success){
toastr.success(response.message);
$('#process_proof_wise').prop('checked', false);
$('#process_income_tax').prop('checked', false);
}else{
toastr.error(response.message);
$('#process_proof_wise').prop('checked', false);
$('#process_income_tax').prop('checked', false);
}
},
dataType: 'json'
});
},
rules:{
process_month : "required",
process_type : "required",
process_emp_code : "required",
"process_role[]" : "required",
process_mode : "required",
multi_employee_code:"required",
},
}));
/*$('#process_payroll_btn').click(function () {
$("#rslt_info").css("display", "none");
$("#loader").css("display", "block");
});*/
$('#excel_select_file').change(function() {
$("#loader").html("<i class='fa fa-spinner fa-spin'></i> Processing...");
$('#submit').attr('disabled','disabled');
var file_data = $('#excel_select_file').prop('files')[0];
var send_url = '<?php echo site_url("$controller_name/import_file");?>';;
if(file_data){
var fileName = file_data.name;
var size = file_data.size;
var key = '<?php echo $key; ?>';
var encData = encrypt(key,{send_from:'<?php echo $controller_name; ?>',send_for:'import',fileName:fileName,size:size});
var form_data = new FormData();
form_data.append('excel_select_file', file_data);
form_data.append('Payload', encData);
$.ajax({
url: send_url,
cache: false,
contentType: false,
processData: false,
data: form_data,
type: 'post',
success: function(result_data){
$("#loader").html("");
$('#submit').attr('disabled',false);
var rslt = JSON.parse(result_data);
if(rslt['success']){
$('#excel_file_path').val(rslt['path']);
get_excel(rslt['path']);
}else{
toastr.error(rslt['message']);
}
}
});
}else{
toastr.error('Please select file to upload');
$("#loader").html("");
$('#submit').attr('disabled',false);
}
});
$('#save_import').validate($.extend({
submitHandler: function (form){
var send_url = '<?php echo site_url("$controller_name/save_import");?>'
$("#save_import_btn").html("<i class='fa fa-spinner fa-spin'></i> Processing...");
$('#save_import_btn').attr('disabled','disabled');
//Encrypted
let formData = new FormData(form);
// Convert FormData to JSON object
let jsonData = Object.fromEntries(formData.entries());
var key = '<?php echo $key; ?>';
var encData = encrypt(key,jsonData);
$.ajax({
url : send_url,
type : 'POST',
contentType : 'text/plain',
data : encData,
success: function (response){
$('#save_import_btn').attr('disabled',false);
$("#save_import_btn").html("Submit");
if(response.success){
toastr.success(response.message);
$('#save_import')[0].reset();
$('#myModal').modal('toggle');
}else{
$('#save_import')[0].reset();
if(response.cat_sts){
toastr.error(response.warning);
$("#imp_table_info").html(response.table_info);
}else{
toastr.error(response.message);
$("#imp_table_info").html(response.table_info);
}
}
},
dataType: 'json'
});
},
rules:{
transaction_month: "required",
excel_format: "required",
excel_select_file: "required",
excel_sheet_name: "required",
excel_start_row:{
required: true,
min:1,
number:true,
},
}
}));
$('#excel_format').change(function(){
var module_id = $('#module_id').val();
var excel_format = $('#excel_format').val();
var controller_name = '<?php echo $controller_name; ?>';
var key = '<?php echo $key; ?>';
var Payload = encodeURIComponent(window.btoa(encrypt(key,{module_id:module_id,excel_format:excel_format})));
if(excel_format){
$('#link').show();
$('#link').attr("href","index.php/<?php echo $controller_name; ?>/payroll_excel/"+Payload);
}else{
$('#link').hide();
}
});
/* NEHA EDIT START 07-DEC-2019 */
//PAYROLL PROCESS GET ACTIVITY REMINDER INFO MODAL VIEW
/*$('#process_month').change(function () {
var process_month = $("#process_month").val();
$("#loader").hide();
//$('#active_list_model').modal('toggle');
get_activity_remainder(process_month);
});*/
});
function check_codes(){
let codes = $('#emp_codes').val().trim();
var process_month = $('#process_month').val();
var process_mode = $('#process_mode').val();
if(!process_month || !process_mode){
toastr.error('Please choose process mode and process month field ');
}
var key = '<?php echo $key; ?>';
var data = {codes: codes,process_month: process_month,process_mode:process_mode,fandf:"2"};
var encData = encrypt(key, data);
$.ajax({
url : '<?php echo site_url($controller_name ."/check_employee_codes"); ?>',
type: "POST",
data: encData,
contentType: 'text/plain',
dataType: "json",
success: function(response){
if(response.success){
$('#multi_employee_code').empty();
$.each(response.employees, function(i, emp){
$('#multi_employee_code').append(
'<option value="'+emp.employee_code+'" selected>'+
emp.employee_code+' - '+emp.emp_name+
'</option>'
);
});
if($('#multi_employee_code option').length > 0){
$('#paste_block').hide();
$('#multi_block').show();
}
if(response.message){
toastr.warning(response.message);
}
}else{
toastr.error(response.message);
$('#emp_codes').val("").focus();
}
},
error: function(){
toastr.error("Error contacting server");
}
});
}
function get_activity_remainder(process_month){
//Encryption
var key = '<?php echo $key; ?>';
var data = {process_month:process_month};
var encData = encrypt(key,data);
$.ajax({
type: "POST",
url: '<?php echo site_url($controller_name . "/get_activity_remainder"); ?>',
data:encData,
contentType: 'text/plain',
success: function(data) {
var rslt = JSON.parse(data);
if(rslt.sts_count){
$('#active_list_model').modal('show');
$('#activity_rem_info').html(rslt.table_data);
}
},
});
}
//EDIT ACTIVITY REMINDER INFO
function edit_active_info(prime_activity_remainder_id){
if(prime_activity_remainder_id){
var remainder_status = $("#remainder_status_"+prime_activity_remainder_id).val();
}
//Encryption
var key = '<?php echo $key; ?>';
var data = {prime_activity_remainder_id:prime_activity_remainder_id,remainder_status:remainder_status};
var encData = encrypt(key,data);
$.ajax({
type: "POST",
url:'<?php echo site_url($controller_name . "/edit_active_info");?>',
data:encData,
contentType: 'text/plain',
success: function(rslt){
var result = JSON.parse(rslt);
if(result.success){
toastr.success("updated Successfully");
if(remainder_status === "2"){
get_activity_remainder();
}
if(result.sts_count === 0){
$('#active_list_model').modal('hide');
}
}else{
toastr.error(result.message);
}
}
});
}
// NEHA EDIT END
function get_excel(file_path){
var import_url = '<?php echo site_url("$controller_name/sheet_name");?>'
if(file_path){
//Encryption
var key = '<?php echo $key; ?>';
var data = {file_path:file_path};
var encData = encrypt(key,data);
$.ajax({
type: 'POST',
url: import_url,
data:encData,
contentType: 'text/plain',
success: function(data) {
var rslt = JSON.parse(data);
var option = "<option value=''>-- Select Sheet Name --</option>";
for(i = 0; i < rslt.sheet_name.length; i++) {
sheet_name = rslt.sheet_name[i];
option += "<option value='"+i+"'>"+sheet_name+"</option>";
}
$("#excel_sheet_name").html(option);
}
});
}
}
</script>
<style>
#myProgress {
width: 100%;
background-color: #ddd;
}
#myBar {
width: 10%;
height: 30px;
background-color: #4CAF50;
text-align: center;
line-height: 30px;
color: white;
}
/* For Single Employee salary view */
.tlf {
display:table;
width:100%;
table-layout:fixed;
}
#detail_list_filter{
display: flex;
gap: 10px;
}
</style>
<?php $this->load->view("partial/footer"); ?>