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/ntc_cafsinfotech_in_bk/application/views/module_setting/module_view.php
<style>
	.sortable {list-style-type:none;margin:0;padding:0;width: auto;}
	.sortable li{margin: 2px 20px 15px 0; padding: 8px; width: 23%; height: auto; font-size: inherit; 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); background-color: #FFFFFF; border: 0px; border-radius: 2px; cursor: pointer;display: inline-block;}
</style>
<ul class="nav nav-tabs" data-tabs="tabs">
	<li class="active" role="presentation">
		<a data-toggle="tab" href="#module_info">Module Information</a>
	</li>
	<li role="presentation">
		<a data-toggle="tab" href="#query_info">Basic Search Query</a>
	</li>
</ul>
<div class="tab-content">
	<div class="tab-pane fade in active" id="module_info">
		<?php echo form_open('module_setting/save_module/' . $prime_module_id,array('id'=>'save_module','class'=>'form-inline')); ?>
			<div class="form-group">
				<?php			
					echo form_label($this->lang->line('module_id'), 'module_id', array('class' => 'required'));
					echo form_input( array('name'=>'prime_module_id', 'id'=>'prime_module_id', 'type'=>'Hidden','value'=>$prime_module_id));
					$module_type = "DYNAMIC";
					if($module_info->module_type){
						$module_type = $module_info->module_type;
					}
					echo form_input( array('name'=>'module_type', 'id'=>'module_type', 'type'=>'Hidden','value'=>$module_type));
					echo form_input(array('name'=> 'module_id', 'id' => 'module_id', 'class' => 'form-control input-sm', "placeholder"=>$this->lang->line('module_id'),'value' => ucwords(str_replace("_"," ",$module_info->module_id))));
				?>
			</div>
			<div class="form-group">
				<?php			
					echo form_label($this->lang->line('module_name'), 'module_name', array('class' => 'required'));
					echo form_input( array('name'=>'prime_module_id', 'id'=>'prime_module_id', 'type'=>'Hidden','value'=>$prime_module_id));
					echo form_input(array('name'=> 'module_name', 'id' => 'module_name', 'class' => 'form-control input-sm', "placeholder"=>$this->lang->line('module_name'),'value' => ucwords(str_replace("_"," ",$module_info->module_name))));
				?>
			</div>
			<div class="form-group">
				<?php
					echo form_label($this->lang->line('rights_to'), 'rights_to', array('class' => 'required'));
					$rights_to_val = "";
					if($module_info->rights_to){
						$rights_to_val = explode(",",$module_info->rights_to);
					}
					$rights_to_array =  array(""=>"---- Rights to ----",1=>"Admin Module",2=>"Customer Module");
					echo form_dropdown(array('name' => 'rights_to[]','multiple id' =>'rights_to','class' => 'form-control input-sm select2'), $rights_to_array,$rights_to_val);
					echo "<label><input name='rights_to_select' id='rights_to_select' type='checkbox'> Select All</label>";
				?>
			</div>	
			<div class="form-group">
				<?php
					echo form_label($this->lang->line('module_for'), 'module_for', array('class' => 'required'));
					$module_for_val = "";
					if($module_info->module_for){
						$module_for_val = explode(",",$module_info->module_for);
					}
					echo form_dropdown(array('name' => 'module_for[]','multiple id' =>'module_for','class' => 'form-control input-sm select2'), $module_for,$module_for_val);
					echo "<label><input name='module_for_select' id='module_for_select' type='checkbox'> Select All</label>";
				?>
			</div>
			<div class="form-group">
				<?php
					echo form_label($this->lang->line('map_menu_to'), 'map_menu_to', array('class' => ''));
					echo form_dropdown(array('name' => 'map_menu_to','id' =>'map_menu_to','class' => 'form-control input-sm'), $map_menu_to,$module_info->menu_id);
				?>
			</div>
			<div class="form-group">
				<?php
					echo form_label($this->lang->line('sub_map_menu_to'), 'sub_map_menu_to', array('class' => 'required'));
					echo form_dropdown(array('name' => 'sub_map_menu_to','id' =>'sub_map_menu_to','class' => 'form-control input-sm'), $sub_map_menu_to,$module_info->sub_menu_id);
				?>
			</div>
			<div class="form-group">
				<?php
					echo form_label($this->lang->line('quicklink'), 'quicklink', array('class' => ''));
					$quicklink_val = "";
					if($module_info->quicklink){
						$quicklink_val = explode(",",$module_info->quicklink);
					}
					echo form_dropdown(array('name' => 'quicklink[]','multiple id' =>'quicklink','class' => 'form-control input-sm select2'), $quicklink_list,$quicklink_val);
				?>
			</div>
			<div class="form-group">
				<label class="checkbox-inline"> 
					<?php
						echo form_checkbox(array(
						'name' => 'show_module',
						'id' => 'show_module',
						'value' => 1,
						'checked' => ($module_info->show_module) ? 1 : 0)
						);
					?>
					<?php echo form_label("Show Module", 'show_module', array('class' => '')); ?>
				</label>
			</div>
			<div class="form-group">
				<button class='btn btn-primary btn-sm' id="module_submit">Add/Update</button>
			</div>
		<?php echo form_close(); ?>
	</div>
	<div class="tab-pane fade in" id="query_info">
		<?php echo form_open('module_setting/save_query_info/' . $prime_module_id,array('id'=>'save_query_info','class'=>'form-inline')); ?>
			<div class="form-group">
				<?php
					echo form_input( array('name'=>'prime_table_id', 'id'=>'prime_table_id', 'type'=>'Hidden','value'=>0));
					echo form_input( array('name'=>'query_module_id', 'id'=>'query_module_id', 'type'=>'Hidden','value'=>$prime_module_id));
					echo form_input( array('name'=>'query_type', 'id'=>'query_type', 'type'=>'Hidden','value'=>''));
					echo form_label($this->lang->line('query_for'), 'field_for', array('class' => 'required'));
					echo form_dropdown(array('name' => 'query_for','id' =>'query_for','class' => 'form-control input-sm'), $field_for);
				?>
			</div>
			<div class="form-group">
				<?php
					echo form_label($this->lang->line('query_column_list'), 'pick_list', array('class' => 'required'));
					echo form_dropdown(array('name' => 'query_column_list','id' =>'query_column_list','class' => 'form-control input-sm'), $column_list);
				?>
			</div>
			<div class="form-group">
				<?php
					echo form_label($this->lang->line('picklist_type'), 'query_type', array('class' => 'required'));
					$query_type_array = array(''=>"--- Select Get Value from ---","1"=>"Get From Picklist ","2"=>"Get From Session");
					echo form_dropdown(array('name' => 'picklist_type','id' =>'picklist_type','class' => 'form-control input-sm'), $query_type_array);
				?>
			</div>			
			<div class="form-group">
				<?php
					echo form_label($this->lang->line('pick_list'), 'pick_list', array('class' => 'required'));
					echo form_dropdown(array('name' => 'pick_list[]','multiple id' =>'pick_list','class' => 'form-control input-sm select2'));
				?>
			</div>
			<div class="form-group">
				<?php
					echo form_label($this->lang->line('session_list'), 'session_list', array('class' => 'required'));
					echo form_dropdown(array('name' => 'session_list','id' =>'session_list','class' => 'form-control input-sm'));
				?>
			</div>	
			<div class="form-group">
				<a class='btn btn-edit btn-sm' id="apply_condition">Apple to Condition</a>
			</div>
			<br/>
			<div style='padding: 15px 0px; background-color: #efefef;'>
				<div class="form-group" style="width:75% !important;margin-bottom: 0px !important;">
					<textarea name='where_condition' id='where_condition'class='form-control' rows='4'  placeholder='Write Condition with out where' >and</textarea>
				</div>
				<div class="form-group">
					<button class='btn btn-primary btn-sm' id="save_query_btn">Add/Update</button>
				</div>
			</div>
		<?php echo form_close(); ?>
		<div id='table_query_list'>
			<?php
				echo $table_query_list;
			?>
		</div>
	</div>
</div>
<script type="text/javascript">
$(document).ready(function(){
	$(function(){
		$('.select2').select2();
		$('.select2-tags').select2({
			tags: true,
			tokenSeparators: [',']
		});
		$(".select2_user").select2({
			tags: true
		});
	});
	$("#rights_to_select").click(function(){
		if($("#rights_to_select").is(':checked') ){
			$("#rights_to > option").prop("selected","selected");
			$("#rights_to").trigger("change");
		}else{
			$("#rights_to > option").removeAttr("selected");
			$("#rights_to").trigger("change");
		}
	});
	$("#module_for_select").click(function(){
		if($("#module_for_select").is(':checked') ){
			$("#module_for > option").prop("selected","selected");
			$("#module_for").trigger("change");
		}else{
			$("#module_for > option").removeAttr("selected");
			$("#module_for").trigger("change");
		}
	});
	var prime_module_id = '<?php echo $prime_module_id; ?>';
	if(prime_module_id !== "0"){
		$('#module_id').attr('readonly', true);
	}
	var rights_to_val  = '<?php echo $rights_to_val; ?>';
	if(rights_to_val === ""){
		$('#rights_to option:selected').removeAttr('selected');
	}
	var pick_list  = $("#pick_list").val();
	if(pick_list === ""){
		$('#pick_list option:selected').removeAttr('selected');
	}
	var module_for_val  = '<?php echo $module_for_val; ?>';
	if(module_for_val === ""){
		$('#module_for option:selected').removeAttr('selected');
	}
	var quicklink_val   = '<?php echo $quicklink_val; ?>';
	if(quicklink_val === ""){
		$('#quicklink option:selected').removeAttr('selected');
	}
	
	
	$('#where_condition').bind('keyup blur change', function(e) {
		where_condition = $("#where_condition").val();
		if(where_condition === ""){
			$("#where_condition").val("and");
		}
	});
	
	$('#map_menu_to').on('change',function(){
		var prime_menu_id = parseInt($('#map_menu_to').val());
		if(prime_menu_id){
			$.ajax({
				type: "POST",
				url: '<?php echo site_url($controller_name . "/get_sub_menu"); ?>',
				data: {prime_menu_id:prime_menu_id},
				success: function(data) {
					var rslt = JSON.parse(data);
					if(rslt.success){
						$('#sub_map_menu_to').html(rslt.message);
						$('#sub_map_menu_to').select2({
							placeholder: '---- Select ----',
							allowClear: true,
							dropdownParent: $('.modal-dialog')
						});
					}
				}
			});
		}
	});
	
	$('#picklist_type,#pick_list,#session_list').parent().hide();
	$("#query_column_list").change(function(){
		query_column    = $("#query_column_list").val();
		query_module_id = $("#query_module_id").val();
		if(query_column){
			$.ajax({
				type: "POST",
				url: '<?php echo site_url($controller_name . "/get_column_info"); ?>',
				data: {query_column:query_column,query_module_id:query_module_id},
				success: function(data) {
					var rslt = JSON.parse(data);
					$('#pick_list').empty();
					$('#session_list').empty();
					$('#picklist_type,#pick_list,#session_list').parent().hide();
					if(rslt.success){
						if(rslt.type === "pick_list"){
							var pick_option ="";
							$.each(rslt.pick_list, function( key, value ) {
							  pick_option += '<option value="' + key + '">' + value + '</option>';
							});	
							$('#pick_list').append(pick_option);
							
							var session_option ="";
							$.each(rslt.session_list, function( key, value ) {
							  session_option += '<option value="' + key + '">' + value + '</option>';
							});	
							$('#session_list').append(session_option);
							$('#picklist_type').parent().show();
							/*
							$('#pick_list').parent().show();
							$(function(){
								$('.select2').select2();
								$('.select2-tags').select2({
									tags: true,
									tokenSeparators: [',']
								});
								$(".select2_user").select2({
									tags: true
								});
							});
							*/
						}else
						if(rslt.type === "session_list"){
							var option ="";
							$.each(rslt.session_list, function( key, value ) {
							  option += '<option value="' + key + '">' + value + '</option>';
							});	
							$('#session_list').append(option);
							$('#session_list').parent().show();
						}						
						$("#query_type").val(rslt.type);
					}else{
						toastr.error(rslt.msg);
					}
				},
			});
		}		
	});
	$("#picklist_type").change(function(){
		$('#pick_list,#session_list').parent().hide();
		picklist_type = $("#picklist_type").val();
		if(picklist_type === "1"){
			$('#pick_list').parent().show();
		}else
		if(picklist_type === "2"){
			$('#session_list').parent().show();
		}
	});
	$("#apply_condition").click(function(){
		query_column = $("#query_column_list").val();
		query_type   = $("#query_type").val();
		var fill_val = "";
		if(query_column){
			if(query_type === "pick_list"){
				picklist_type = $("#picklist_type").val();
				if(picklist_type === "1"){
					sub_value     = $("#pick_list").val();
					if(sub_value){
						fill_val = query_column + " in(^"+sub_value+"^) ";
					}else{
						toastr.error("Please select pick list value");
						return false;
					}
				}else
				if(picklist_type === "2"){
					sub_value = $("#session_list").val();
					sub_value = sub_value.split('|');
					sub_value = sub_value[1];
					if(sub_value){
						fill_val = query_column + " in(^@"+sub_value+"@^)";
					}else{
						toastr.error("Please select session value");
						return false;
					}
				}
			}else
			if(query_type === "session_list"){
				sub_value = $("#session_list").val();
				sub_value = sub_value.split('|');
				sub_value = sub_value[1];
				if(sub_value){
					fill_val = query_column + " = ^@"+sub_value+"@^";
				}else{
					toastr.error("Please select session value");
					return false;
				}
			}else{
				toastr.error("Invalid column");
				return false;
			}
		}else{
			toastr.error("Please select column value");
			return false;
		}		
		if(fill_val){
			where_condition = $("#where_condition").val();
			fill_val = where_condition +" "+fill_val;
			$("#where_condition").val(fill_val);
		}
	});
	jQuery.validator.addMethod("notEqual", function (value, element, param) { // Adding rules for Amount(Not equal to zero)
		return this.optional(element) || value != 'and';
	}, "Write Condition after and");
	$('#save_module').validate($.extend({
		submitHandler: function (form){
			$("#module_submit").html("<i class='fa fa-spinner fa-spin'></i> Processing...");
			$('#module_submit').attr('disabled','disabled');
			$(form).ajaxSubmit({
				success: function (response){
					$('#module_submit').attr('disabled',false);
					$("#module_submit").html("Add/Update");
					if(response.success){
						toastr.success(response.message);
					}else{
						toastr.error(response.message);
					}
					table_support.refresh();
					$('.modal').modal('hide');
				},
				dataType: 'json'
			});
		},
		rules:{
			module_id: "required",
			module_name: "required",
			"module_for[]": "required",
			"rights_to[]": "required",
		}
	}));
	$('#save_query_info').validate($.extend({
		submitHandler: function (form){
			$("#save_query_btn").html("<i class='fa fa-spinner fa-spin'></i> Processing...");
			$('#save_query_btn').attr('disabled','disabled');
			$(form).ajaxSubmit({
				success: function (response){
					$('#save_query_btn').attr('disabled',false);
					$("#save_query_btn").html("Add/Update");
					if(response.success){
						toastr.success(response.message);
						$("#table_query_list").html(response.table_query_list);
						document.getElementById("save_query_info").reset();
						$("#prime_table_id").val(0);
					}else{
						toastr.error(response.message);
					}
				},
				dataType: 'json'
			});
		},
		rules:{			
			query_for: "required",
			where_condition: {
				required:true,
				notEqual: true,
			}
		}
	}));
});
function edit_query(prime_table_id){
	if(prime_table_id){
		$.ajax({
			type: "POST",
			url: '<?php echo site_url($controller_name . "/get_edit_info"); ?>',
			data: {prime_table_id:prime_table_id},
			success: function(data) {
				var rslt = JSON.parse(data);
				if(rslt.success){
					$("#query_for").val(rslt.query_for);
					$("#where_condition").val(rslt.where_condition);
					$("#prime_table_id").val(rslt.prime_table_id);
				}else{
					toastr.error(rslt.message);
				}
			},
		});
	}
}
function remove_query(prime_table_id){	
	query_module_id = $("#query_module_id").val();
	if(confirm("Are you sure to delete!")){
		if(prime_table_id){
			$.ajax({
				type: "POST",
				url: '<?php echo site_url($controller_name . "/remove_query_info"); ?>',
				data: {prime_table_id:prime_table_id,query_module_id:query_module_id},
				success: function(data) {
					var rslt = JSON.parse(data);
					if(rslt.success){
						$("#table_query_list").html(rslt.table_query_list);
						toastr.success(rslt.message);
					}else{
						toastr.error(rslt.message);
					}
				},
			});
		}
	}
}
</script>