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/views/form_16_report/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";
?>
<script type="text/javascript">
$(document).ready(function (){
	//SELECT2
	$(function(){
		$('.select2').select2({
			placeholder: '---- Select ----',
		});
		$('.select2-tags').select2({
			tags: true,
			tokenSeparators: [',']
		});
	});
	$('#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();
		}
	});
	//AUTO COMPLETE -> EMP CODE	
	$('#process_emp_id').autocomplete({
		source: function(request, response) {
			$.getJSON('<?php echo site_url("$controller_name/emp_suggest");?>',{term:request.term},response);
		},
		minChars:2,
		autoFocus: true,
		delay:10,
		scroll: true,
		appendTo: '.append_div',
		select: function(e, ui) {
			$('#process_emp_id').val(ui.item.value);
			return false;
		}
	});
	//FORM SUBMIT
	var pdfDataArray  = [];	
	$('#form_generate').validate($.extend({
		rules:{
			process_type: "required",
			process_emp_id: "required",
			process_role: "required",
			process_mode: "required",
		},
		submitHandler: function(form){
			$("#form_btn").html("<i class='fa fa-spinner fa-spin'></i> Processing...");
			$('#form_btn').attr('disabled','disabled');
			$('#pdf_tbl').DataTable();
			$('#pdf_files').empty();
			$(form).ajaxSubmit({
				dataType: 'json',
				success: function(response){
					$("#loader").css("display", "none");
					$('#form_btn').attr('disabled',false);
					$("#form_btn").html("Submit");
					jQuery("body").prepend('<div id="preloader">Loading...</div>');
					var get_year = response.get_year;
					if(response.success == false){
						toastr.error(response.msg);
					}else
					if(response.sts === 2){
						var pdfCounter = 0;
						$.when(
							$.each(response.pdf_data, function(code, html){
								generate_pdf(code, html, get_year)
						        .then(function(download){
						            pdfDataArray.push(download);
						            pdfCounter++;
			                        if(pdfCounter === response.count){
					                    toastr.success("Tax Processed Successfully");
						                // All PDFs have been generated, append the button
					                    if($("#downloadAll").length){
					                        $("#downloadAll").remove();
					                    }
					                    $("#pdf_tbl_length").append("<button id='downloadAll' class='dt-button buttons-collection' style='margin-left:5px;'><i class='fa fa-download' aria-hidden='true'></i> DOWNLOAD ALL</button>");
						            }
						        });
							})
						)	
					}else
					if(response.sts === 1){
						$('#rslt_info').hide();
						toastr.success("Form 24QA is generated successfully");
						$('#excel_info').show();
						trline = "<tr><td>Form 24Q Annexure Report</td><td><a href="+response.excel_rslt+" target='_blank' class='btn btn-primary btn-sm'><span class='fa fa-download'>&nbsp;</span> Download</a></td></tr>";
						$('#excel_file').html(trline);
					}
					jQuery("#preloader").remove();
				}
			});	
		}
	}));
	$('#rslt_info').hide();
	$('#excel_info').hide();
	//DOWNLOAD ALL BTN
	$(document).on('click', '#downloadAll', function(){
		$("#downloadAll").html("<i class='fa fa-spinner fa-spin'></i> Processing...");
		$('#downloadAll').attr('disabled','disabled');
	    var path_name = pdfDataArray[0]['folder'];
	    var emp_codes = pdfDataArray.map(function(item){
	        return item['file']+'.pdf';
	    }).join('","');
	    if(path_name && emp_codes){
	        $.ajax({
	            type: "POST",
	            url : '<?php echo site_url($controller_name . "/download_zip"); ?>',
	            data: { path_name: path_name, emp_codes: emp_codes },
	            success: function(data){
	        		$('#downloadAll').attr('disabled',false);
					$("#downloadAll").html("<i class='fa fa-download' aria-hidden='true'></i> DOWNLOAD ALL");
	                var rslt = JSON.parse(data);
	                if(rslt.success){
	                    window.open(rslt.filename, '_blank');
	                }else{
	                    toastr.error("File not exists");
	                }
	            },
	        });
	    }
	});

});
//PDF VIEW FUNCTION!!!
function generate_pdf(code,html,get_year){
	// Return a promise
    return new Promise(function(resolve, reject) {
		if(html){
			$.ajax({
				type: "POST",
				url : '<?php echo site_url($controller_name."/generate_pdf"); ?>',
				data: {code:code,html:html,get_year:get_year},
				success:function(data){
					var rslt = JSON.parse(data);
					if(rslt){
						$('#rslt_info').show();
						var encodedData = btoa(rslt.path);
						var trline = "<tr><td>" + code + "</td><td><a onclick=pdf_viewer('"+$.trim(rslt['path'])+"')>View</a></td></tr>";
	        			$('#pdf_tbl').DataTable().row.add($(trline)).draw();
						resolve(rslt);
					}
				},
			});
			$('#pdf_tbl').DataTable().row().remove();
		}
	});
}
//CALLING PDF OBJECT LIB!!!
function pdf_viewer(url){	
	var file_path   = atob(url); 
	PDFObject.embed(file_path, "#view_pdf");
	$("#myModal").modal("show");
}
</script>
<div class='row title_content'>
	<div class='col-md-2 col-xs-4'>
		<h1 class='page_txt'>Form 16 and 24Q Report</h1>
	</div>
	<div class='col-md-10 col-xs-8'>
	</div>
</div>
<!-- FORM CONTENT -->
<div id="holder" class="form-inline" style="margin-top:20px;">
	<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;'>
	<?php  echo  form_open("$controller_name/form_generate/",array("id"=>"form_generate","class"=>"form-inline")); ?>
		<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-smselect2','value'=>'','placeholder'=>"Search by Employee Code")); 
			?>
			<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[]',"multiple id" =>'process_role',"class" =>'form-control input-sm select2'),$process_role);
			?>
		</div>	
		<div class="form-group">
			<?php
				$process_mode = array(""=>"---- Select Type ----","1"=>"Form 16B","3"=>"Form 16 With Challan","2"=>"Form 24Q");
				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">
			<button class='btn btn-primary btn-sm' id="form_btn">Submit</button>
		</div>

	<?php  echo form_close(); ?>
<!-- MODAL CONTENT -->
		<div id="employee_table_view" style="margin-left:15px;margin-right:15px;"></div>
			<div class="modal" id="myModal">
			  <div class="modal-dialog">
			    <div class="modal-content">
			      <div class="modal-header">
			        <h4 class="modal-title">View PDF</h4>
			        <button type="button" class="close" data-dismiss="modal">&times;</button>
			      </div>
		
			      <div class="modal-body" id="view_pdf">
			      </div>
			      <div class="modal-footer">
			        <button type="button" class="btn btn-danger" data-dismiss="modal">Close</button>
			      </div>
			    </div>
		  	</div>
		</div>
<!-- TABLE CONTENT -->
		<div style="margin:20px !important; padding:15px;background-color: #f2f2f2;" id='rslt_info'>
			<table class="table table-hover" id="pdf_tbl">
				
				<thead>
					<tr>
					<th>Employee Code</th>
					<th>Option</th>
				</tr>
				</thead>
				<tbody id="pdf_files">
				</tbody>
			</table>
		</div>
		<div style="margin:20px !important; padding:15px;background-color: #f2f2f2;" id='excel_info'>
			<table class="table table-hover" id="excel_tbl">
				<thead>
					<tr>
					<th>Report</th>
					<th>File</th>
				</tr>
				</thead>
				<tbody id="excel_file">
				</tbody>
			</table>
		</div>
		
	</div>

</div>

<?php $this->load->view("partial/footer"); ?>