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/cpaqua.cafsinfotech.in/dump/application/views/open_query/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));
	$prime_id       = "prime_create_ticket_id";
	$search_url     = site_url($controller_name ."/search");
	/* PAGE TITLE AND BUTTONS- END */
	/* PAGE FILTER - START */
	$filter_tr_line = "";
	$table_map_list = "";
	$input_ids      = "";
	$date_ids       = "";
	$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)));
		$filter_label       = form_input(array('type'=>'hidden','name' => 'filter_label[]', 'class' => 'form-control input-sm','value' => $label_id));
		$filter_type        = form_input(array('type'=>'hidden','name' => 'filter_type[]', 'class' => 'form-control input-sm','value' => $field_isdefault));
		$field_type_input   = form_input(array('type'=>'hidden','name' => 'field_type[]', 'class' => 'form-control input-sm','value' => $field_type));
		$filter_cond        = form_dropdown(array('name' => 'filter_cond[]', "id"=>$label_id."_con",'class' => 'form-control input-sm'), $filter_cond_array);
		if($field_type === 4){							
			$filter_val     = form_input(array( 'name' => 'filter_val[]', "id"=>$label_id, 'class' => 'form-control input-sm datepicker', 'placeholder'=>'Search value','value' => ''));
		}else
		if(((int)$field_type === 5) || ((int)$field_type === 7)){
			$filter_val  = form_dropdown(array('name' => 'filter_val[]', "id"=>$label_id,'multiple class' => 'form-control input-sm select2'), $array_list);
			$readonly = 'readonly';
		}else{
			$filter_val   = form_input(array( 'name' => 'filter_val[]', "id"=>$label_id, 'class' => 'form-control input-sm', 'placeholder'=>'Search value','value' => ''));
			$readonly = '';
		}
		$filter_cond        = form_dropdown(array('name' => 'filter_cond[]', "id"=>$label_id."_con",'class' => 'form-control input-sm',$readonly=>true), $filter_cond_array);
		$tr_line .= "<tr>
						<td class='search_td'>$field_type_input $label_name $filter_label $filter_type</td>
						<td> $filter_cond </td>
						<td> $filter_val </td>
					</tr>";
	}
	$report_filter   = form_input(array('type'=>'hidden','name' => 'report_filter_id','id' => 'report_filter_id', 'class' => 'form-control input-sm','value' => ''));
	$filter_name   = form_input(array('type'=>'hidden','id' => 'filter_name', 'class' => 'form-control input-sm','value' => ''));
	$form_id         = form_input(array( 'name' => 'form_id','id' => 'form_id','type'=>'hidden','class' => 'form-control input-sm','value' => "$form_id"));
	$filter_table    = "$filter_name $report_filter $form_id<table class='fliter_table' style='width:100%;'>$tr_line</table>";
	$table_map_list .= "
						var filter_label     =  $(\"input[name='filter_label[]']\").map(function(){return $(this).val();}).get();\n
						var field_type     =  $(\"input[name='field_type[]']\").map(function(){return $(this).val();}).get();\n
						var filter_type      =  $(\"input[name='filter_type[]']\").map(function(){return $(this).val();}).get();
						var filter_cond      =  $(\"select[name='filter_cond[]']\").map(function(){return $(this).val();}).get();
						var filter_val       =  $(\"input[name='filter_val[]'],select[name='filter_val[]']\").map(function(){
								if($(this).val()){
									var return_data = ($(this).val()).toString();;
									return return_data;
								}else{
									return '';
								}
								}).get();
					";
	/* PAGE FILTER - END */
	$column_count     = count(array_column($table_headers, "label_name"))+1;

	//echo "BSK $column_count"; die;
	$table_map_list  .= "\n data.field_type = field_type;\n\n data.filter_label = filter_label;\n \n data.filter_type = filter_type;\n \n data.filter_cond = filter_cond;\n \n data.filter_val = filter_val;\n \n data.start_date = start_date;\n \n data.end_date   = end_date;\n ";	
?>
<script src="dist/daterangepicker/knockout.js" type="text/javascript"></script>
<link href="dist/daterangepicker/daterangepicker.min.css" rel="stylesheet" type="text/css" />
<script src="dist/daterangepicker/daterangepicker.min.js" type="text/javascript"></script>

<div class='row title_content'>
	<div class='col-md-2 col-xs-4'>
		<h1 class='page_txt'><?php echo strtoupper($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' 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="toolbar" class="form-inline" style="display: flex;">	
	<div class="form-group" style='width:12% !important;'>
	<?php //if((int)$date_filter === 1){ ?>
			<div class="" >
				<input name="daterangepicker" class="daterangepicker-field form-control input-sm" data-bind='daterangepicker: dateRange, daterangepickerOptions: { maxDate: moment()}'></input>
			</div>
	<?php //}?>
	</div>
	<?php 
		// if($access_search === 1){	 
	?>
		<div id="search_filter_div" class='search_filter' style="display:none;">
			<div style="max-height:250px;overflow: auto;">
				<?php echo $filter_table;?>				
			</div>
			<div class="row" style="margin:0px;margin-top:15px;">
				<div class="col-md-4" style='text-align:left;'>
					<a class="btn btn-xs btn-danger" id="clear_search"> Clear All</a>
				</div>
				<div class="col-md-4" style='text-align:right;left: 35%;'>	
					<a class="btn btn-xs btn-primary" id="search_submit"> Submit </a>
				</div>
			</div>
		</div>
	<?php 
		// }
	?>
</div>
<div id="table_holder">
   	 <table id="table"></table>
</div>
<script type="text/javascript">
$(document).ready(function (){
	var start_date = "<?php echo date('Y-m-d',strtotime('first day of this month')); ?>";
	var end_date   = "<?php echo date('Y-m-d',strtotime('last day of this month')); ?>";
	var encKey  = '<?php echo $encKey; ?>';
	$.fn.dataTable.ext.errMode = 'throw';
	$('.modal-dialog').draggable({ handle: ".modal-header" });	
	$table = $('#table').DataTable({
		paging : true,
		processing: true,
		serverSide: true,
		"bProcessing": true,
        "bServerSide": true,
		serverMethod: 'post',
		lengthMenu: [[10,25,50,100,500,1000,-1],[10,25,50,100,500,1000,"All"]],
        fixedColumns:{leftColumns: 3},
		scrollX:true,
		language:{
			lengthMenu:"<span style='margin-top:8px;margin-left:10px;'>Display</span> _MENU_ <span style='margin-top:8px;'>Records</span>",
			searchPlaceholder: "Search records",
			search: "",
		},		
		ajax:{
			'url': '<?php echo $search_url; ?>',
			'data': function(data){
				<?php echo $table_map_list;?>
				var encData   = encrypt(encKey,{data});
				return { Payload: encData };				
			},
			 beforeSend: function(){
			  $('.dataTables_processing').html('<span style="color:#CC3366;"><i class="fa fa-spinner fa-spin fa-2x fa-fw"></i><br/>Loading...</span>');
			},
		},
		columns: [{
				title:'<input type="checkbox" name="select_all" class="select_all">',
				data: '<?php echo $prime_id; ?>',
				type: 'html',
				orderable: false,
				className: 'select-checkbox',
				searchable:false,
				width:'1%',
				render:function (value) {
					console.log(value);
					return '<input type="checkbox" value="'+value+'" name="select_one" class="select_one">';
				}
			},
			<?php
				foreach($table_headers as $table){
					$label_name  = $table->label_name;
					$view_name   = $table->view_name;
					if($label_name === 'entry_date'){
						$view_name   = 'LAST ENTRY DATE';
					}
					$field_type  = (int)$table->field_type;	
					if($field_type === 4){
						echo "{title:'$view_name',data: '$label_name',type: 'date',visible:true,
								render:function(value) {
									if (value === null || value === '00-00-0000' || value === '1970-01-01') return '-';
									return moment(value).format('DD-MM-YYYY');
									// return value;
								}
							},\n";
					}else
					if($field_type === 6){
						echo "{title:'$view_name',data: '$label_name',type: 'date',visible:true,
								render:function(value) {
									send_val = 'No';
									if(value === '1'){ send_val = 'No'; }
									return send_val;
								}
							},\n";
					}else
					if($field_type === 1 || $field_type === 8){
						echo "{title:'$view_name',data: '$label_name',visible:true,
								render:function(value) {
									if(value){
										var val = value.replace(/\~/g,'\"');
										val = val.replace(/\`/g,'\''); 
										val = val.replace(/\^/g,'\&'); 
										val = val.replace(/xxamp/gi, '&');
										val = val.replace(/xquot/gi, '\'');	
										val = val.replace(/xdbquot/gi, '\"');	
										return val;
									}else{
										return '';
									}
									
								}
							},\n";
					}else
					if($field_type === 10){
						$img = '<img src="@URL@" class="zoom" alt="img" height="30" width="30">';
						echo "{title:'$view_name',data: '$label_name',type: 'date',visible:true,sClass: 'center',
								render:function(value) {
									if(value !== ''){
										var image = '$img';	
										image     = image.replace('@URL@', value);										
										return image;
									}else{
										return '';
									}
									
								}
							},\n";
					}else{
						echo "{title:'$view_name',data:'$label_name',visible:true,},\n";
					}
				}
			?>
		],
    	"initComplete": () => {$("#table").show();}
	});	
	var table_option = "<table><tr><td id='filters' style='padding:8px 2px;'></td><td id='export' style='padding:8px 2px;'></td></tr></table>";
	$("#table_filter").append(table_option);
	var company_name = '<?php echo $company_information->company_name;?>';
	var report_name  = '<?php echo $report_name;?>';
	
	$('#export').html("<button id='export_btn' class='btn btn-xs btn-edit'>Export</button>");
	var custom_filter = "<button class='btn btn-xs btn-edit fliter' id='search_filter'>Filter <i class='fa fa-filter' aria-hidden='true'></i></button>";
	$("#filters").append(custom_filter);
	$(".buttons-collection").addClass("btn btn-xs btn-edit");
	$('input[type=search]').addClass('form-control input-sm');
	$("select[name='table_length']" ).addClass('form-control input-sm');
	
	
	$("#search_filter_div").hide();
	$("#search_submit").click(function(){
		$("#search_filter_div").toggle();
		$table.draw();
	});	
	
	$("#search_filter").click(function(){			
		$("#search_filter_div").toggle();
	});		
	$("#clear_search").click(function(){
		$("select[name='filter_cond[]']").val('');
		$("#pre_filter").val('');
		$("input[name='filter_val[]'],select[name='filter_val[]']").val('');
		$('option').attr('selected', false);
		$("#search_filter_div").toggle();
		$('.select2').select2({
			placeholder: '---- Select ----',
		});
		$table.draw();
	});
	$('.select2').select2({
		placeholder: '---- Select ----',
	});
	$(".datepicker").datetimepicker({
		format: 'DD-MM-YYYY',
		//debug: true
	});
	//date picker new model start BSK -26/07/2021	
	$(".daterangepicker-field").daterangepicker({
		locale: { inputFormat: 'DD/MM/YYYY' },
		forceUpdate: true,
		callback: function(startDate, endDate, period){
			var title = startDate.format('DD/MM/YYYY') + ' – ' + endDate.format('DD/MM/YYYY');
			$(this).val(title);
			start_date = startDate.format('YYYY-MM-DD');
			end_date   = endDate.format('YYYY-MM-DD');
			let navData = window.performance.getEntriesByType("navigation");
			if (navData.length > 0 && navData[0].loadEventEnd > 0){
			   $table.draw();
			   //$('#export').html("<button id='export_btn' class='btn btn-xs btn-edit'>Export</button>");
			} 			
			var date = startDate.format('MMMM-YYYY').toUpperCase();

		}
	});
	//date picker new model end BSK -26/07/2021

	$('#export_btn').click(function(e){
		e.preventDefault();
		$.confirm({
			title: 'Export to Excel',
			content: '' +
			'<form action="" class="formName">' +
			'<div class="form-group">' +
			'<label>Excel Name</label>' +
			'<input type="text" placeholder="Please Enter Excel Name" name="excel_name"  class="name form-control" required />' +
			'</div>' +
			'</form>',
			buttons: {
				formSubmit: {
					text: 'Export',
					btnClass: 'btn-blue',
					action: function () {
						var excel_name = this.$content.find('.name').val();						
						if(!excel_name){
							$.alert('provide a valid Excel name');
							return false;
						}
						var form_id          = $('#form_id').val();
						var search           = $('input[type="search"]').val();						
						var filter_label     =  $("input[name='filter_label[]']").map(function(){return $(this).val();}).get();
						var filter_type      =  $("input[name='filter_type[]']").map(function(){return $(this).val();}).get();
						var field_type      =  $("input[name='field_type[]']").map(function(){return $(this).val();}).get();
						var filter_cond      =  $("select[name='filter_cond[]']").map(function(){return $(this).val();}).get();
						var filter_val       =  $("input[name='filter_val[]'],select[name='filter_val[]']").map(function(){
								if($(this).val()){
									var return_data = ($(this).val()).toString();;
									return return_data;
								}else{
									return '';
								}
								}).get();		
						var i= 0;
						$.each($("input[name='filter_val[]'],select[name='filter_val[]']"), function(){
							var val = $(this).val();							
							if(val && filter_cond[i] === ""){
								i++;
							}else{
								console.log(val+" - "+filter_cond[i]);
							}						
						});
						var i= 0;
						if(parseInt(i) === 0){
							$('.dataTables_processing').html('<span style="color:#CC3366;font-weight:bold;"><i class="fa fa-spinner fa-spin fa-2x fa-fw"></i><br/>Processing the Excel Export.. Please Wait... </span>');
							$('.dataTables_processing').show();
							// Encryption
							var encKey  = '<?php echo $encKey; ?>';
							var data    = {excel_name:excel_name,form_id:form_id,filter_label:filter_label,field_type:field_type,filter_type:filter_type,filter_cond:filter_cond,filter_val:filter_val,start_date:start_date,end_date:end_date};
							var encData = encrypt(encKey,data);
							$.ajax({
								type: "POST",
								url: '<?php echo site_url($controller_name . "/export_to_excel"); ?>',
								data:encData,				
								contentType: 'text/plain',
								success: function(response){
									var rslt = JSON.parse(response);
									var length = rslt.search_result.length;
									if(parseInt(length) > 0){
										JSONToXLSXConvertor(rslt.search_result, excel_name, true);
									}else{
										toastr.error('No Data Available...');
										$('.dataTables_processing').hide();
									}
								  }
							});
						}else{
							toastr.error('Filter condition and value is not equal');
						}
					}
				},
				cancel: function(){
					$('#export_btn').attr('disabled',false);
					$("#export_btn").html("Export");
				},
			},
			onContentReady: function () {
				this.$content.find('.name').val($('#excel_name').val());
				// bind to events
				var jc = this;
				this.$content.find('form').on('submit', function (e) {
					// if the user submits the form by pressing enter in the field.
					e.preventDefault();
					jc.$$formSubmit.trigger('click'); // reference the button and click it
				});
			}
		});
	});
});
function JSONToXLSXConvertor(JSONData, ReportTitle, ShowLabel) {
   var myFile = ReportTitle+".xlsx";
  var myWorkSheet = XLSX.utils.json_to_sheet(JSONData);
  var myWorkBook = XLSX.utils.book_new();
  XLSX.utils.book_append_sheet(myWorkBook, myWorkSheet, "myWorkSheet");
  XLSX.writeFile(myWorkBook, myFile);
  $('.dataTables_processing').hide();
}

</script>
<style type="text/css">
	button.dt-button{
		background-color: #b2ac46;
		border-color: #b2ac46;
		border-radius: 3px;
		padding:8px 2px;
	}
</style>
<?php $this->load->view("partial/footer"); ?>