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/uds.cafsinfotech.in/application/views_bk/employees/import.php
<script src="dist/jquery.progressBarTimer.js" type="text/javascript" charset="utf-8"></script>
<div class="import_excel_div">
<?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));
				$imp_list = array(""=>"---- Select one ----",1=>"New",2=>"Amendment");
				echo form_label("Import Type", 'import_type', array('class' => 'required')); 
				// echo form_dropdown(array('name' => 'import_type','id' =>'import_type','class' => 'form-control input-sm select2', 'readonly' =>'readonly'),$imp_list, 2);
				echo form_dropdown(array('name' => 'import_type','id' =>'import_type','class' => 'form-control input-sm select2'),$imp_list);
			?>
		</div>
		<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 select2'));
			?>
		</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">&nbsp</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 select2'), $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' => '2'));
			?>
		</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>
	</fieldset>
<?php echo form_close();?>
	<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>
	<hr class="left"/>
	<p style="color:blue;margin-left:10px;">Please map the date format like this (DD-MM-YYYY) only...</p>
	<div id='imp_table_info' style='padding:8px;overflow: auto;'>
	</div>
</div>
<script type="text/javascript">
$(document).ready(function(){
	select();
	$('#imp_loader').hide();
	var send_url = '<?php echo base_url("$controller_name/import_file");?>';
	$('#save_import').validate($.extend({
		submitHandler: function (form){
			//Encrypted
			let formData   = new FormData(form);
			// Convert FormData to JSON object
			let jsonData   = Object.fromEntries(formData.entries());
			var key        = '<?php echo $encKey; ?>';
			var encData    = encrypt(key,jsonData);
			$("#submit").html("<i class='fa fa-spinner fa-spin'></i> Processing...");
			$('#submit').attr('disabled','disabled');
			$('#imp_loader').show();
			$('.myProgress').show();
			$.ajax({
				url         : $(form).attr('action'), 
				type        : 'POST',
				contentType : 'text/plain', 
				data        : encData,
				success: function (response){
					$('.myProgress').hide();
					$('#submit').attr('disabled',false);
					$("#submit").html("Submit");
					if(response.success){
						toastr.success(response.message);
						$("#imp_table_info").html(response.table_info);
						$("#excel_select_file").val(null);
					}else{
						toastr.error(response.message);
						$("#imp_table_info").html(response.table_info);
						$("#excel_select_file").val(null);
						//$('.modal').modal('toggle');
					}
					$table = $('#table_details').DataTable({
						processing: true,
						lengthMenu: [[10,25,50,100,500,1000,-1],[10,25,50,100,500,1000,"All"]],
						"order": [],
						// fixedColumns:{leftColumns: 4},
						scrollX: true,
						dom: '<"top"fi>rt<"bottom"lp><"clear">',
						// 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: "",
						},
					});
					$('input[type=search]').addClass('form-control input-sm');
					$("select[name='table_length']" ).addClass('form-control input-sm');
					$('#imp_loader').hide();
				},
				dataType: 'json'
			});
		},
		rules:{
			excel_format: "required",
			excel_select_file: "required",
			excel_sheet_name: "required",
			excel_start_row:{
				required: true,
				min:1,
				number:true,
			},
		}
	}));
	
	$('#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];
		if(file_data){
			var fileName  = file_data.name;
			var size      = file_data.size;
			var key       = '<?php echo $encKey; ?>';
			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['msg']);
					}
				}
			});
		}else{
			toastr.error('Please select file to upload');
			$("#loader").html("");
			$('#submit').attr('disabled',false);
		}
	});
	
	//End row checking with valid row end number
	$('#excel_end_row').change(function(){
		var start_row = $('#excel_start_row').val();
		var end_row   = $('#excel_end_row').val();
		if(parseInt(end_row) < parseInt(start_row)){
			toastr.error('End rows always higherthen or equal start rows?');
		}
	});
	
	$('#import_type').change(function(){
		var import_type = $('#import_type').val();
		var module_id   = $('#module_id').val();
		// Encryption
		var encKey  = '<?php echo $encKey; ?>';
		var data    = {module_id:module_id,import_type:import_type};
		var encData = encrypt(encKey,data);
		if(import_type){
			$.ajax({
				type: "POST",
				url: '<?php echo site_url($controller_name . "/get_excel_template"); ?>',
				data:encData,				
				contentType: 'text/plain',
				beforeSend: function () {
					$("#excel_format").next('span').attr('id', 'excel_format_span');
					$('#excel_format_span').html('<span style="color:#CC3366;"><i class="fa fa-spinner fa-spin fa-2x fa-fw"></i><br/>Loading...</span>');  
	 			},
				success: function(data) {
					var rslt = JSON.parse(data);
					$('#excel_format_span').empty();
					$('#excel_format').empty();
					select();
					var option = "";
					$.each(rslt.excel_format_drop, function( key, value ) {
						option += '<option value="' + key + '">' + value + '</option>';
					});
					$('#excel_format').append(option);
				}
			});
		} 
	});
	$('#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 $encKey; ?>'; 
		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; ?>/emp_excel/"+Payload);
		}else{
			$('#link').hide();
		}	
	});	

	//DR CODE FOR EMPLOYEE AMENMENT IMPORT EXCEL FORMAT CODE 3AUG22
	var import_type = $('#import_type').val();
	var module_id   = $('#module_id').val();
	if(import_type){
		get_excel_template(import_type,module_id);
	}
});

function get_excel(){
	file_path = $('#excel_file_path').val();
	var import_url = '<?php echo site_url("$controller_name/sheet_name");?>'
	if(file_path){
		var key        = '<?php echo $encKey; ?>';
		var encData    = encrypt(key,{file_path:file_path});
		var import_url = '<?php echo site_url("$controller_name/sheet_name");?>'
		$.ajax({
			type: 'POST',
			url: import_url,
			contentType : 'text/plain',
			data:encData,
			beforeSend: function () {
				$("#excel_sheet_name").next('span').attr('id', 'excel_sheet_name_span');
					$('#excel_sheet_name_span').html('<span style="color:#CC3366;"><i class="fa fa-spinner fa-spin fa-2x fa-fw"></i><br/>Loading...</span>');  
	 		},
			success: function(data) {
				var rslt = JSON.parse(data);
				$('#excel_sheet_name_span').empty(); 
				select();
				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);
			}
		});
	}
}

//DR CODE FOR EMPLOYEE AMENMENT IMPORT EXCEL FUNCTION CODE 3AUG22
function get_excel_template(import_type,module_id){
	$.ajax({
		type: "POST",
		url: '<?php echo site_url($controller_name . "/get_excel_template"); ?>',
		data: {module_id:module_id,import_type:import_type},
		beforeSend: function () {
			$("#excel_format").next('span').attr('id', 'excel_format_span');
			$('#excel_format_span').html('<span style="color:#CC3366;"><i class="fa fa-spinner fa-spin fa-2x fa-fw"></i><br/>Loading...</span>');  
		},
		success: function(data) {
			var rslt = JSON.parse(data);
			$('#excel_format_span').empty();
			select();
			var option = "";
			$.each(rslt.excel_format_drop, function( key, value ) {
				option += '<option value="' + key + '">' + value + '</option>';
			});
			$('#excel_format').append(option);
		}
	});
}

function select(){
	$('.select2').select2({
		
		placeholder: '---- Select ----',
		allowClear: true,
		dropdownParent: $('.modal-dialog'),
	});
	$('.select2-tags').select2({
		tags: true,
		tokenSeparators: [',']
	});
}
</script>
<style>
hr.left {
	text-align: left;
	margin-left:10px;
	width: 5%;
	border: 0.5px solid blue;
	margin-bottom: 5px;
}
.import_excel_div{
	height: 400px;
	overflow-y: scroll !important;
}
.modal{
	overflow-y: hidden !important;
}
</style>