MOON
Server: Apache
System: Linux nserver.cafsindia.com 4.18.0-553.104.1.lve.el8.x86_64 #1 SMP Tue Feb 10 20:07:30 UTC 2026 x86_64
User: cafsindia (1002)
PHP: 8.2.30
Disabled: NONE
Upload Files
File: /home/cafsindia/.trash/application.1/views/arrears/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";
?>
<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">
			<?php
				$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">List</li>
		</ol>
	</div>
</div>

<div id="table_holder">
    <div class='col-md-12'style='margin:15px 0px;border-radius:2px;box-shadow:0 2px 2px 0 rgba(0,0,0,0.14),0 3px 1px -2px rgba(0,0,0,0.12),0 1px 5px 0 rgba(0,0,0,0.2);padding:15px 0px;'>
		<div 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','value'=>'')); 
				?>
			</div>
			<div class="form-group">
				<?php
					$process_type = array(""=>"---- Select Process Type ----","1"=>"Process By Employee","2"=>"Process By Role");
					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;max-height: 50px;!important'>
				<?php
					echo form_label("Search Employee", 'process_emp_id', array('class' => 'required'));
					echo form_input(array('name' =>'process_emp_id','id' =>'process_emp_id','class' => 'form-control input-sm','value'=>'','placeholder'=>"Search by Employee Code")); // changed picklist to input  // [MS 18-10-2024]
				?>
				<div class='append_div'></div>
			</div>
			<div class="form-group" style='display:none;'>
				<?php
					echo form_label("Process Role", 'process_role', array('class' => 'required'));
					echo form_dropdown(array("name" =>'process_role',"id" =>'process_role',"class" =>'form-control input-sm select2'),$process_role);
				?>
			</div>
			<div class="form-group">
				<button class='btn btn-primary btn-sm' id="arrears_btn">Submit</button>
			</div>
			</div>
			<div style='padding:8px;overflow: auto !important;' id='arrear_cumulative_info'>
			</div>
	</div>
	<div class="modal fade" id="arrear_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">
	        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
	        <h4 class="modal-title" id="myModalLabel">Arrears Information</h4>
	      </div>
	      <div class="modal-body" id="arrear_info">
	        
	      </div>
		  <div class="modal-footer">
			<button type="button" class="btn btn-danger" data-dismiss="modal">Close</button>
		  </div>
	    </div>
	  </div>
	</div>
	<div id="loader" style="display:none;"></div>
</div>

<script type="text/javascript">
    $(document).ready(function (){
    	select_call();
		//Date Picker
		$(function(){
			$(".datepicker").datetimepicker({
				format: 'MM-YYYY',
			});
		});
		$('#process_type').change(function () {
				process_type  = $("#process_type").val();
				$('#process_emp_id,#process_role').parent().hide();
				$('#process_emp_id').val("");
				$('#process_role').val("");
				if(process_type === "1"){
					$('#process_emp_id').parent().show();
				}else
				if(process_type === "2"){
					$('#process_role').parent().show();
				}else{
					$('#process_emp_id,#process_role').parent().hide();
				}
			});
			
			$('#process_emp_id').autocomplete({
				 source: function(request, response) {
					// Encryption			
					var key       = '<?php echo $key; ?>'; 
					var encData   = encrypt(key,{term:request.term});
					$.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) {
								if(el.value === '0'){
									$('#hidden_id').val('');
								}
								return {
									value: el.value,
									label: el.label,
									display_name:el.display_name
								};
							}));
						}
					});
				},
				minChars:2,
				autoFocus: true,
				delay:10,
				scroll: true,
				appendTo: '.append_div',
				select: function(e, ui) {
					$('#process_emp_id').val(ui.item.value);
					return false;
				}
			});
			
			$('#arrears_btn').click(function (){
				get_arrear_cumulative();
			});
	});
	
function get_arrear_cumulative(){
	var process_month  = $("#process_month").val();
	var process_type   = $("#process_type").val();
	var process_emp_id = $("#process_emp_id").val();
	var process_role   = $("#process_role").val();
	if(process_month.length === 0){
		toastr.error('Please choose process month?');
		return false;
	}
	if(process_type.length === 0){
		toastr.error('Please choose type?');
		return false;
	}else
	if(parseInt(process_type) === 1){
		if(process_emp_id.length === 0){
			toastr.error('Please select employee?');
			return false;
		}
	}else
	if(parseInt(process_type) === 2){
		if(process_role.length === 0){
			toastr.error('Please select role?');
			return false;
		}
	}
	if(process_month && process_type){
		$("#arrears_btn").html("<i class='fa fa-spinner fa-spin'></i> Processing...");
		$('#arrears_btn').attr('disabled','disabled');
		//Encryption
		var key     = '<?php echo $key; ?>';
		var data    = {process_month:process_month,process_type:process_type,process_emp_id:process_emp_id,process_role:process_role};
		var encData = encrypt(key,data);
		$.ajax({
			type: "POST",
			url: '<?php echo site_url($controller_name . "/get_arrear_cumulative"); ?>',
			data:encData,				
			contentType: 'text/plain',
			success: function(data){
				var rslt    = JSON.parse(data);
					if(rslt.success){
						$('#arrear_cumulative_info').html(rslt.message);
						var col_1 = 0;
						var tableCols = 0;
						$("#role tbody tr").each(function(){
							var currCount = 0
							$(this).children("td").each(function(){
									currCount++;
									var colSpan = $(this).attr("colspan");
									if (colSpan > 0) {
										currCount = currCount + (colSpan - 1);
									}
									if (currCount > tableCols)
										tableCols = currCount;
							}); 
						}); 
						$('#role').DataTable({
							destroy        : true,
							paging         : true,
							fixedHeader    : true,	
						    scrollX        : true,
						    columnDefs     : [{
					            targets : '_all',
					            width   : 100 / tableCols + '%'
					        }],
						    autoWidth      : false,
							language       : {
								lengthMenu : "<span style='margin-top:8px;margin-left:10px;'>Display</span> _MENU_ <span style='margin-top:8px;'>Records</span>",
								searchPlaceholder : "Search records",
								search     : "",
								processing : '<div style="text-align: center; padding: 50px;color:#4b6fa2;z-index:999999999;"><i class="fa fa-spinner fa-spin fa-2x fa-fw"></i><br/>Loading...</div>',
							},
							dom         : 'Bfrtip',
    						buttons     : [
    						    {extend : 'collection',text: 'Export',
    						    buttons : [{extend:'excel',exportOptions:{modifier:{order :'index',page: 'all',search:'none'},columns:':visible'}},{extend:'pdf',exportOptions:{modifier:{order :'index',page: 'all',search:'none'},columns:':visible'}}]}
    						],
							"footerCallback": function ( row, data, start, end, display ) {
								var api    = this.api(), data;
								var intVal = function ( i ) { return typeof i === 'string' ? i.replace(/[\$,]/g, '')*1 : typeof i === 'number' ? i : 0; };
								
								for (var j = 2; j < tableCols; j++) {
									col_1  = api.column(j,{ page:'current'}).data().reduce(function(a, b){return intVal(a)+intVal(b);},0);
									$(api.column(j).footer() ).html(col_1.toFixed(2));
								}
							}
						});
	                    $('input[type=search]').addClass('form-control input-sm select2');
	                    $("select[name='table_length']" ).addClass('form-control input-sm');
						$('#arrears_btn').attr('disabled',false);
						$("#arrears_btn").html("Submit");
					}else{
						$('#arrears_btn').attr('disabled',false);
						$("#arrears_btn").html("Submit");
						toastr.error(rslt.message);
						setTimeout(function(){
							window.location.reload();
						},300);
					}
				},
		});
	}
}
function select_call(){
	$(function(){
		$('.select2').select2({
			placeholder: '---- Select ----',
			allowClear: true,
			//dropdownParent: $('.modal-dialog')
		});
		$('.select2-tags').select2({
			tags: true,
			tokenSeparators: [',']
		});
	});
}
function view_arrear_info(prime_cumulative_id,increment_apply_month,effective_date,key,category){
	//Encryption
	var key     = '<?php echo $key; ?>';
	var data    = {prime_cumulative_id:prime_cumulative_id,increment_apply_month:increment_apply_month,effective_date:effective_date,key:key,category:category};
	var encData = encrypt(key,data);
	$.ajax({
		type: "POST",
		url:'<?php echo site_url($controller_name . "/view_arrear_info");?>',
		data:encData,				
		contentType: 'text/plain',
		success: function(data) {
			var rslt    = JSON.parse(data);
			$('#arrear_model').modal('toggle');
			$('#arrear_info').html(rslt.message);
			$table = $('#arrears_table').DataTable({
				processing: true,
				lengthMenu: [[10,25,50,100,500,1000,-1],[10,25,50,100,500,1000,"All"]],
				// fixedColumns:{leftColumns: 4},
				scrollX: true,
				// scrollY:"360px",
				// 'bSort': false,
				language:{
					lengthMenu:"<span style='margin-top:12px;margin-left:10px;'>Display</span> _MENU_ <span style='margin-top:12px;'>Records</span>",
					searchPlaceholder: "Search records",
					search: "",
				},
			});
			$('.dataTables_scrollHeadInner').removeAttr('style'); // TABLE HEAD ISSUE FIXED BY [MS 18-10-2024]
			$('input[type=search]').addClass('form-control input-sm');
			$("select[name='table_length']" ).addClass('form-control input-sm');
		},			
	});
}
//SORTABLE DEFAULT TABLE 
function default_sortable(){
	var table_idsInOrder = [];
	$( ".default_table" ).sortable({
		update: function( event, ui ){
			table_idsInOrder = [];
			$('#table_sortable tr > th').each(function() {
				table_idsInOrder.push($(this).attr('id'));
			});
			if(table_idsInOrder){
				prime_module_id = $("#prime_module_id").val();
				//Encryption
				var key     = '<?php echo $key; ?>';
				var data    = {table_idsInOrder:table_idsInOrder,prime_module_id:prime_module_id};
				var encData = encrypt(key,data);
				$.ajax({
					type: "POST",
					url: '<?php echo site_url($controller_name . "/update_table_sortorder"); ?>',
					data:encData,				
					contentType: 'text/plain',
					success: function(data) {
						var rslt = JSON.parse(data);
						if(rslt.success){
							toastr.success(rslt.message);
						}
					},
				});
				get_table_view_data();
			}
		},connectWith: '.default_table'
	});
}

</script>

<style>
	.pull-right.search {
		display: none !important;
	}
	.columns.columns-right.btn-group.pull-right {
		display: none !important;
	}
	<?php 
		if($access_search === 1){
			echo ".pull-right.search { display: block !important; }";
		}
		if($access_export === 1){
			echo ".columns.columns-right.btn-group.pull-right{display: block !important;}";
		}
	?>
</style>
<?php $this->load->view("partial/footer"); ?>