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/muster_roll_wizard/generate_excel.php
<ul class="nav nav-tabs" data-tabs="tabs">
	<li class="active" role="presentation">
		<a data-toggle="tab" href="#setting_info">Excel Download</a>
	</li>
</ul>
<div class="tab-content">
	<div class="tab-pane fade in active" id="setting_info">
		<div id="holder" class="form-inline" style="margin-top:20px;">
			<div class="row" style='margin-bottom:0px;'>
				<div class="col-md-12">
					<div class="form-group">
						<?php
							echo form_input( array('name'=>'prime_muster_transaction_id', 'id'=>'prime_muster_transaction_id', 'type'=>'Hidden','value'=> $muster_transaction_info[0]->prime_muster_transaction_id));

							$report_period_list =  array(""=>"---- Select Type ----",1=>"Month Wise",2=>"Date Wise");
							echo form_label('Report Period', 'report_period', array('class' => 'required'));
							echo form_dropdown(array( 'name' => 'report_period', 'id' => 'report_period', 'class' => 'form-control input-sm select2'), $report_period_list);
						?>
					</div>
					<div class="form-group" style="display: none;">
						<?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', 'placeholder' => 'Select Month'));
						?>
					</div>
					<div class="form-group" style="display: none;">
						<?php
							echo form_label('Start Date', 'start_date', array('class' => 'required'));
							echo form_input(array( 'name' => 'start_date', 'id' => 'start_date', 'class' => 'form-control input-sm datepicker', 'placeholder' => 'Select Date'));
						?>
					</div>
					<div class="form-group" style="display: none;">
						<?php
							echo form_label('End Date', 'end_date', array('class' => 'required'));
							echo form_input(array( 'name' => 'end_date', 'id' => 'end_date', 'class' => 'form-control input-sm datepicker', 'placeholder' => 'Select Date'));
						?>
					</div>
					<div class="form-group">
						<?php
						$employee_type_list =  array(""=>"---- Select Type ----",1=>"Single",2=>"All");
							echo form_label('Employee Type', 'employee_type', array('class' => 'required'));
							echo form_dropdown(array( 'name' => 'employee_type', 'id' => 'employee_type', 'class' => 'form-control input-sm select2'), $employee_type_list);
						?>
					</div>
					<div class="form-group" style="display: none;">
						<?php
							echo form_label('Employee Code', 'employee_code', array('class' => 'required'));
							echo form_dropdown(array( 'name' => 'employee_code', 'id' => 'employee_code', 'class' => 'form-control input-sm select2'));
						?>
					</div>
					<div class="form-group" id = "filter_comp"  style="display:none;">
						<a class="btn btn-sm btn-edit" id="search_filter">
							<i class="fa fa-filter" aria-hidden="true"></i> Search filter
							<span class="caret"></span>
						</a>
						<div id="search_filter_div" class='search_filter'>
							<div style="max-height:250px;overflow: auto;">
								<?php
									$filter_cond_array = array('' => '--- Select ---','=' => '=','>' => '>','<' => '<','LIKE' => 'LIKE');
									$tr_line = "";
									foreach($fliter_list as $fliter){
										$label_id         = $fliter['label_id'];
										$field_isdefault  = $fliter['field_isdefault'];
										$array_list       = $fliter['array_list'];
										$field_type       = $fliter['field_type'];
										
										$label_name = ucwords(strtolower(str_replace("_"," ",$label_id)));
										$fliter_label = form_input(array('type'=>'hidden','name' => 'fliter_label[]', 'class' => 'form-control input-sm','value' => $label_id));
										$fliter_type  = form_input(array('type'=>'hidden','name' => 'fliter_type[]', 'class' => 'form-control input-sm','value' => $field_isdefault));
										$filter_cond  = form_dropdown(array('name' => 'filter_cond[]','class' => 'form-control input-sm'), $filter_cond_array);
										if($field_type === 4){							
											$fliter_val   = form_input(array( 'name' => 'fliter_val[]', 'class' => 'form-control input-sm datepicker', 'placeholder'=>'Search value','value' => ''));
										}else
										if(((int)$field_type === 5) || ((int)$field_type === 7)){
											$fliter_val  = form_dropdown(array('name' => 'fliter_val[]','class' => 'form-control input-sm'), $array_list);
										}else{
											$fliter_val   = form_input(array( 'name' => 'fliter_val[]', 'class' => 'form-control input-sm', 'placeholder'=>'Search value','value' => ''));
										}						
										$tr_line .= "<tr>
														<td class='search_td'> $label_name $fliter_label $fliter_type</td>
														<td> $filter_cond</td>
														<td> $fliter_val </td>
													</tr>";
									}
									echo "<table style='width:100%;'>$tr_line</table>";
								?>				
							</div>
							<div style="margin-top:8px;">
								<div class="row">
									<div class="col-md-6" style='text-align:left;'>
										<a class="btn btn-xs btn-danger" id="clear_search"> Clear / Close</a>
									</div>
									<div class="col-md-6" style='text-align:right;'>	
										<a class="btn btn-xs btn-primary" id="search_submit"> Done </a>
									</div>
								</div>
							</div>
						</div>
					</div>
					<div class="form-group">
						<!-- <a id="link" style="display: none;" class="btn btn-info btn-sm" href="#" title='Export All Data'><span class="fa fa-user-exit">&nbsp</span>Export Mapping Format</a> -->
						<button class='btn btn-primary btn-sm' id="submit" style="display: none;">Submit</button>
					</div>
				</div>
			</div>
		</div>
	</div>
</div>
<div class="row" style='margin:0px;overflow:auto;'>	
	<div id='table_structure' class='col-md-12' style='padding:8px;min-height: 160px;'>
	</div>
</div>


<script type="text/javascript">
$(document).ready(function(){
	$("#filter_comp").hide();
	// select_call();
	
	$("#search_submit").click(function(){
		$("#search_filter_div").toggle()
	});
	$("#search_filter_div").hide();
	$("#search_filter").click(function(){
		$("#search_filter_div").toggle();
	});
	$("#clear_search").click(function(){
		$('#search_filter_div').find('input').val('');
		$('option').attr('selected', false);
		$("#search_filter_div").toggle();
	});	
	$(function () {
		$(".datepicker").datetimepicker({
			format: 'DD-MM-YYYY',
			//debug: true
		});
		$("#process_month").datetimepicker({
			format: 'MM-YYYY',
			//debug: true
		});
		$(".datepicker_time").datetimepicker({
			format: 'DD-MM-YYYY HH:mm:ss',
			//debug: true
		});
	});
	$('textarea').on('keyup keypress', function(e) {
		if(e.keyCode === 13) {    
			e.stopPropagation();
		}else
		if(e.shiftKey){
			e.stopPropagation();
		}
	});
	$(".number").bind('keyup', function(e) {
		this.value = this.value.replace(/[^0-9_.]/g,'');
	});
	$('.alpha').bind('keypress', function (event) {
		var regex = new RegExp("^[a-zA-Z0-9\-_.@\/\\s]+$");
		var key = String.fromCharCode(!event.charCode ? event.which : event.charCode);
		if (!regex.test(key)) {
		   event.preventDefault();
		   return false;
		}
	});

	var report_period  = parseInt($('#report_period').val());
	if(report_period){
		report_wise_hide(report_period)
	}
	$('#report_period').on("change",function(e) {
		var report_period  = parseInt($('#report_period').val());
		if(report_period){
			report_wise_hide(report_period);
		}
	});

	var employee_type  = parseInt($('#employee_type').val());
	if(employee_type){
		emp_type_wise_hide(employee_type);
	}
	$('#employee_type').change(function(){
		var muster_transaction_id  = $('#prime_muster_transaction_id').val();
		var report_period          = parseInt($('#report_period').val());
		var employee_type          = parseInt($('#employee_type').val());
		var process_month          = $('#process_month').val();
		var start_date             = $('#start_date').val();
		var end_date               = $('#end_date').val();
		if(!report_period){
			toastr.error('Report Period Should not Empty..!!');
			$('#employee_type').val('');
			return false;
		}else
		if(report_period === 1){
			if(!process_month){
				toastr.error('Process Month Should not Empty..!!');
				$('#employee_type').val('');
				return false;
			}
		}else
		if(report_period === 2){
			if(!start_date){
				toastr.error('Start Date Should not Empty..!!');
				$('#employee_type').val('');
				return false;

			}else
			if(!end_date){
				toastr.error('End Date Should not Empty..!!');
				$('#employee_type').val('');
				return false;
			}
		}
		if(employee_type === 1){
			emp_code_list(muster_transaction_id,report_period,process_month,start_date,end_date);
		}
		if(employee_type){
			emp_type_wise_hide(employee_type);
		}
		
	});
	//CREATING HREF ATTRIBUTE
	$('#report_period,#employee_type,#employee_code').change(function(){
		var change_id               = $(this).attr('id');
		var muster_transaction_id   = $('#prime_muster_transaction_id').val();
		var report_period           = parseInt($('#report_period').val());
		var employee_type           = parseInt($('#employee_type').val());
		var process_month           = $('#process_month').val();
		var start_date              = $('#start_date').val();
		var end_date                = $('#end_date').val();
		var employee_code           = $('#employee_code').val();
		if(change_id === "report_period"){
			$('#employee_type,#employee_code').val('');
			$('#employee_code').parent().hide();
			$('#submit').hide();

		}
		if(change_id !== "employee_code" && change_id !== "employee_type"){
			if(report_period && (process_month || (start_date && end_date))){
				emp_code_list(muster_transaction_id,report_period,process_month,start_date,end_date);
			}
		}
		if(report_period && employee_type){
			// $('#submit').show();
			if(employee_type === 2 || (employee_type === 1 && employee_code)){
				if(report_period === 1 && process_month){
					$('#submit').show();
				}else
				if(report_period === 2 && start_date && end_date){
					start_check_date = moment(start_date, 'DD-MM-YYYY').format('YYYY-MM-DD');
					end_check_date   = moment(end_date, 'DD-MM-YYYY').format('YYYY-MM-DD');
					var check_date   = moment(start_date, 'DD-MM-YYYY').add(+30, 'days').format('YYYY-MM-DD');
					if(end_check_date < start_check_date){
						toastr.error('Start Date Should not be Greater Than End Date?');
						$('#end_date').val('');
					}else
					if(check_date < end_check_date){
						toastr.error('Your date Difference Should be Maximum 30 Days Period..!!');
						$('#end_date').val('');
					}else{
						// $('#link').attr("href","index.php/<?php echo $controller_name; ?>/generate_excel_sheets/"+muster_transaction_id+"/"+report_period+"/"+employee_type+"/"+employee_code+"/"+process_month+"/"+start_date+"/"+end_date);
						$('#submit').show();
					}
				}
			}	
			
		}else{
			// $('#link').hide();
			$('#submit').hide();
		}	
		select_call();	
	});
	
	//CREATING HREF ATTRIBUTE
	$('#process_month,#start_date,#end_date').on("dp.hide",function (e) {
		var muster_transaction_id   = $('#prime_muster_transaction_id').val();
		var report_period           = parseInt($('#report_period').val());
		var employee_type           = parseInt($('#employee_type').val());
		var process_month           = $('#process_month').val();
		var start_date              = $('#start_date').val();
		var end_date                = $('#end_date').val();
		var employee_code           = $('#employee_code').val();
		if(report_period && employee_type === 1 && (process_month || (start_date && end_date))){
			emp_code_list(muster_transaction_id,report_period,process_month,start_date,end_date);
		}
		if(report_period && employee_type){
			// $('#submit').show();
			if(employee_type === 2 || (employee_type === 1 && employee_code)){
				if(report_period === 1 && process_month){
					$('#submit').show();
				}else
				if(report_period === 2 && start_date && end_date){
					start_check_date = moment(start_date, 'DD-MM-YYYY').format('YYYY-MM-DD');
					end_check_date   = moment(end_date, 'DD-MM-YYYY').format('YYYY-MM-DD');
					var check_date   = moment(start_date, 'DD-MM-YYYY').add(+30, 'days').format('YYYY-MM-DD');
					if(end_check_date < start_check_date){
						toastr.error('Start Date Should not be Greater Than End Date?');
						$('#end_date').val('');
						return false;
					}else
					if(check_date < end_check_date){
						toastr.error('Your date Difference Should be Maximum 30 Days Period..!!');
						$('#end_date').val('');
						return false;
					}else{
						// $('#link').attr("href","index.php/<?php echo $controller_name; ?>/generate_excel_sheets/"+muster_transaction_id+"/"+report_period+"/"+employee_type+"/"+employee_code+"/"+process_month+"/"+start_date+"/"+end_date);
						$('#submit').show();
					}	
				}	
			}
			select_call();	
		}else{
			// $('#link').hide();
			$('#submit').hide();
		}	
	});

	//GENERATING EXCEL
	$('#submit').on('click',function(){
		var muster_transaction_id       = $('#prime_muster_transaction_id').val();
		var report_period               = parseInt($('#report_period').val());
		var employee_type               = parseInt($('#employee_type').val());
		var process_month               = $('#process_month').val();
		var start_date                  = $('#start_date').val();
		var end_date                    = $('#end_date').val();
		var employee_code               = $('#employee_code').val();
		var send_url                    = '<?php echo site_url("$controller_name/get_muster_report");?>'
		if(muster_transaction_id){
			var fliter_label                =  $("input[name='fliter_label[]']").map(function(){return $(this).val();}).get();
			var fliter_type                 =  $("input[name='fliter_type[]']").map(function(){return $(this).val();}).get();
			var input_field_type            =  $("input[name='input_field_type[]']").map(function(){return $(this).val();}).get();
			var filter_cond                 =  $("select[name='filter_cond[]']").map(function(){return $(this).val();}).get();
			var fliter_val                  =  $("input[name='fliter_val[]'],select[name='fliter_val[]']").map(function(){return $(this).val();}).get();
			var group_by                    =  $("select[name='group_by[]']").map(function(){return $(this).val();}).get();
			$("#submit").html("<i class='fa fa-spinner fa-spin'></i> Processing...");
			$('#submit').attr('disabled','disabled');
			$.ajax({
				type: 'POST',
				url: send_url,
				data: {muster_transaction_id:muster_transaction_id,report_period:report_period,employee_type:employee_type,employee_code:employee_code,process_month:process_month,start_date:start_date,end_date:end_date,fliter_label:fliter_label,fliter_type:fliter_type,input_field_type:input_field_type,filter_cond:filter_cond,fliter_val:fliter_val,group_by:group_by},
				success: function(response){
					$('#submit').attr('disabled',false);
					$("#submit").html("Submit");
					var result = JSON.parse(response);
					if(result.success){
						toastr.success(result.message);
						// var href = $('#link').attr('href');
						// window.location.href = href;
						$('#table_structure').html(result.muster_report);
						$table = $('#muster_report').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,
							// scrollCollapse: true,
							language:{
								lengthMenu:"<span style='margin-top:12px;margin-left:10px;'>Display</span> _MENU_ <span style='margin-top:12px;'>Records</span>",
								searchPlaceholder: "Search records",
								search: "",
							},
						});
						var table_option = "<div class='dataTables_length' id='muster_report_length'><table><tr><td id='export' style='padding:8px 2px;'></td></tr></table></div>";
						$("#muster_report_wrapper").prepend(table_option);
						var buttons = new $.fn.dataTable.Buttons($table, {
							 buttons: [{
								extend: 'collection',
								text: 'Export',
								buttons: [
									{extend:'copy',exportOptions:{modifier :{order:'index',page:'all',search:'none'},columns:':visible'}},
									{extend:'csv',exportOptions:{modifier:{order:'index',page:'all',search:'none'},columns:':visible'}},
									{extend:'excel',exportOptions:{modifier:{order :'index',page: 'all',search:'none'},columns:':visible'}},
									{extend:'pdf',exportOptions:{modifier:{order :'index',page:'all',search:'none'},columns:':visible'}},
									{extend:'print',exportOptions:{modifier:{order :'index',page:'all',search:'none'},columns:':visible',}},
								]
							}]	
						}).container().appendTo($('#export'));
						$('input[type=search]').addClass('form-control input-sm');
						$("select[name='table_length']" ).addClass('form-control input-sm');
					}else{
						toastr.error(result.message);
					}
				},
			});
			select_call();
		}else{
			toastr.error("First should be add a setting name..!!");
		}
	});
	select_call();
});
function emp_code_list(muster_transaction_id,report_period,process_month,start_date,end_date){
	var send_url   = '<?php echo site_url("$controller_name/emp_code_list");?>';
	$("#employee_code").html('');
	$.ajax({
		type: 'POST',
		url: send_url,
		data: {muster_transaction_id:muster_transaction_id,report_period:report_period,process_month:process_month,start_date:start_date,end_date:end_date},
		beforeSend: function () {
			$("#employee_code").next('span').attr('id', 'employee_code_span');
				$('#employee_code_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 result = JSON.parse(response);
			if(data){
				$('#employee_code_span').empty(); 
				$('.select2').select2({
					placeholder: '---- Select ----',
					allowClear: true,
					//dropdownParent: $('.modal-dialog')
				});
				$("#employee_code").html(data);
				$('#submit').hide();

			}else{
				toastr.error(result.message);
			}
		},
	});
	select_call();
}
function report_wise_hide(report_period){
	if(report_period === 1){
		$('#process_month').parent().show();
		$('#start_date,#end_date').parent().hide();
		$('#start_date,#end_date').val('');
		// $('#start_date,#end_date').addClass('ignore');
		// $('#process_month').removeClass('ignore');
	}else{
		$('#start_date,#end_date').parent().show();
		$('#process_month').parent().hide();
		$('#process_month').val('');
		// $('#process_month').addClass('ignore');
		// $('#start_date,#end_date').removeClass('ignore');
	}
	select_call();
}
function emp_type_wise_hide(employee_type){
	if(employee_type === 1){
		$('#employee_code').parent().show();
		$("#filter_comp").hide();
		// $('.search_filter').hide();
		// $('input').val('');
		// $('option').attr('selected', false);
		// $("#search_filter_div").toggle();
		// $('#employee_code').removeClass('ignore');

	}else{
		$('#employee_code').val('');
		$('#employee_code').parent().hide();
		$("#filter_comp").show();
		// $('.search_filter').show();
		// $('#employee_code').addClass('ignore');
	}
	select_call();
}
//Select Call 
function select_call(){
	setTimeout(function(){ 
		$(function(){
			$('.select2').select2({
				placeholder: '---- Select ----',
				allowClear: true,
				dropdownParent: $('.modal-dialog'),
				maximumInputLength : 15
			});
			$('.select2-tags').select2({
				tags: true,
				allowClear: true,
				tokenSeparators: [',']

			});
		});
	}, 500);
		
}

</script>