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/wealth_cafsindia_com/application/helpers/table_helper.php
<?php
function transform_headers_readonly($array){
	$result = array();
	foreach($array as $key => $value){
		$result[] = array('field' => $key, 'title' => $value, 'sortable' => $value != '', 'switchable' => !preg_match('(^$|&nbsp)', $value));
	}
	return json_encode($result);
}

function transform_headers($array){
	$result = array();
	$array  = array_merge(array(array('checkbox' => 'select', 'sortable' => FALSE)),
	$array, array(array('edit' => '')));
	foreach($array as $element){
		$result[] = array('field' => key($element), 'title' => current($element), 'switchable' => isset($element['switchable']) ? $element['switchable'] : !preg_match('(^$|&nbsp)', current($element)), 'sortable' => isset($element['sortable']) ?
		$element['sortable'] : current($element) != '', 'checkbox' => isset($element['checkbox']) ? $element['checkbox'] : FALSE, 'class' => isset($element['checkbox']) || preg_match('(^$|&nbsp)', current($element)) ? 'print_hide' : '');
	}
	return json_encode($result);
}



/* COMMON TABLE HEADER BASED ON SCREEN & SETTING */
function get_dbtable_headers($table_info){
	$CI =&get_instance();
	$access_data      = $CI->session->userdata('access_data');
	$controller_name  = strtolower(get_class($CI));
	$headers = array();
	foreach($table_info as $table){
		$headers[] = array($table->label_name => $table->view_name);
	}
	if(($controller_name === "life_insurance") || ($controller_name === "health_insurance") || ($controller_name === "vehicle_insurance")){
		$headers[]['renewal'] = "";
	}
	return transform_headers($headers);
}
/* COMMON TABLE ROW BASED ON SCREEN SETTING */
function get_dbdata_row($search_data,$table_info,$controller){
	$CI =&get_instance();
	$access_data      = $CI->session->userdata('access_data');
	$controller_name  = strtolower(get_class($CI));
	$access_update    = (int)$access_data[$controller_name]['access_update'];
	$prime_id         = "prime_".$controller_name."_id";
	$cf_id            = "prime_".$controller_name."_cf_id";	
	$page_name        = ucwords(str_replace("_"," ",$controller_name));	
	//$table_info       = explode(",",$table_info);	
	$data_row         = array();	
	$data_row[$prime_id] = $search_data->$prime_id;
	$show_renewal = true;
	foreach($table_info as $table){
		$label_name  = $table->label_name;
		$field_type  = $table->field_type;
		$value       = $search_data->$label_name;	
		if((int)$field_type === 4){
			$value = date('d-m-Y',strtotime($search_data->$label_name));
			if($value === "01-01-1970"){
				$value = "-";
			}
		}else
		if((int)$field_type === 6){
			$value = "No";
			if((int)$search_data->$label_name === 1){
				$value = "Yes";
			}
		}else
		if((int)$field_type === 7){
			if($search_data->$label_name){
				$value = $search_data->$label_name.",..";
			}else{
				$value = "-";
			}			
		}else{
			$value = $search_data->$label_name;
		}		
		if(($label_name === "premium_mode") &&(strtoupper($value) === "SINGLE")){
			$show_renewal = false;
		}		
		$data_row[$label_name] = $value;
	}
	
	if($controller_name === "customer"){
		$today_date = date('d-m-Y');
		$dob_date   = $search_data->dob;
		$total_year = total_year($today_date, $dob_date);
		if($total_year < 18){
			$guardian_pan = $search_data->guardian_pan;
			$data_row['pan_number'] = $guardian_pan;
		}
	}
	$data_row['edit'] = "";
	if($access_update === 1){
		$view_id    = $search_data->$prime_id;
		$data_row['renewal'] = "";
		if($show_renewal){
			$data_row['renewal'] = anchor("$controller_name/renewal/$view_id", '<span class="fa fa-pencil-square-o"></span> Renewal',array('class'=>'modal-dlg btn btn-xs btn-edit', 'title'=>"Renewal $page_name"));
		}
		if($controller_name === "life_insurance"){
			$renewal_count = $search_data->renewal_count;
			$btn_style = "display: block; margin: 4px; text-align: left; ";			
			if($renewal_count > 1){
				$more_list .= anchor("$controller_name/view/$view_id", '<span class="fa fa-pencil-square-o"></span> Edit',array('class'=>'modal-dlg btn btn-xs btn-edit', 'title'=>"Update $page_name",'style'=>$btn_style));
			}else{
				$more_list .= anchor("$controller_name/view/$view_id", '<span class="fa fa-pencil-square-o"></span> Edit',array('class'=>'modal-dlg btn btn-xs btn-edit', 'data-btn-submit' => $CI->lang->line('common_submit'), 'title'=>"Update $page_name",'style'=>$btn_style));
			}			
			$more_list .= anchor("$controller_name/product_info/$view_id", '<span class="fa fa-info-circle"></span> Product Info',array('class'=>'modal-dlg btn btn-xs btn-edit', 'title'=>"Product Information",'style'=>$btn_style));
			$data_row['edit'] = "<div class='dropdown'>
								  <button type='button' class='btn btn-xs btn-edit dropdown-toggle' data-toggle='dropdown'> <span class='fa fa-th-large'></span> &nbsp; More <span class='fa fa-angle-down fa-large'></span> </button>
								  <div class='dropdown-menu' style='min-width:163px !important;left:-85px;'>
									$more_list
								  </div>
								</div>";
		}else
		if($controller_name === "health_insurance"){
			$renewal_count = $search_data->renewal_count;
			if($renewal_count > 1){
				$data_row['edit'] = anchor("$controller_name/view/$view_id", '<span class="fa fa-pencil-square-o"></span> Edit',array('class'=>'modal-dlg btn btn-xs btn-edit', 'title'=>"Update $page_name"));
			}else{
				$data_row['edit'] = anchor("$controller_name/view/$view_id", '<span class="fa fa-pencil-square-o"></span> Edit',array('class'=>'modal-dlg btn btn-xs btn-edit', 'data-btn-submit' => $CI->lang->line('common_submit'), 'title'=>"Update $page_name"));
			}
		}else
		if($controller_name === "vehicle_insurance"){
			$data_row['renewal'] = anchor("$controller_name/renewal/$view_id", '<span class="fa fa-pencil-square-o"></span> Renewal',array('class'=>'modal-dlg btn btn-xs btn-edit', 'title'=>"Renewal $page_name"));
			$data_row['edit'] = anchor("$controller_name/view/$view_id", '<span class="fa fa-pencil-square-o"></span> Edit',array('class'=>'modal-dlg btn btn-xs btn-edit', 'data-btn-submit' => $CI->lang->line('common_submit'), 'title'=>"Update $page_name"));
		}else{
			$data_row['edit'] = anchor("$controller_name/view/$view_id", '<span class="fa fa-pencil-square-o"></span> Edit',array('class'=>'modal-dlg btn btn-xs btn-edit', 'data-btn-submit' => $CI->lang->line('common_submit'), 'title'=>"Update $page_name"));
		}
	}
	return $data_row;
}

/* FORM SETTING - START */
function get_form_setting_headers(){
	$CI=& get_instance();
	$headers = array(
		array('module_name'=>"Module Name"),
		array('menu_name'=>"Menu"),
		array('module_type'=>"Module Type"),
		array('show_module'=>"Module Status"),
	);
	return transform_headers($headers);
}
function get_form_setting_datarows($page_setting,$controller){
	$CI=& get_instance();
	$controller_name=strtolower(get_class($CI));
	$page_name      = ucwords(str_replace("_"," ",$controller_name));
	$access_data    = $CI->session->userdata('access_data');
	$access_update  = (int)$access_data[$controller_name]['access_update'];
	$edit_opt = "";
	if($access_update === 1){
		$title = "Update " . ucwords($page_setting->module_name);
		if($controller_name === "module_setting"){
			$edit_opt = anchor($controller_name."/module_view/$page_setting->module_id", '<span class="fa fa-pencil-square-o"></span> Edit',array('class'=>'modal-dlg btn btn-xs btn-edit', 'title'=>"$title"));
		}else
		if($controller_name === "form_setting"){
			$edit_opt = anchor($controller_name."/view/$page_setting->module_id", '<span class="fa fa-pencil-square-o"></span> Edit',array('class'=>'modal-dlg btn btn-xs btn-edit', 'title'=>"$title"));
		}else{
			$edit_opt = anchor($controller_name."/view/$page_setting->module_id", '<span class="fa fa-pencil-square-o"></span> Edit',array('class'=>'modal-dlg btn btn-xs btn-edit', 'title'=>"$title"));
		}
	}
	$name = ucwords(str_replace("_"," ",$page_setting->module_id));
	$show_module = "Active";
	if((int)$page_setting->show_module === 0){
		$show_module = "In Active";
	}
	
	return array (
		'module_name' => ucwords($page_setting->module_name),
		'menu_name'   => ucwords($page_setting->menu_name),
		'module_type'   => ucwords(strtolower($page_setting->module_type)),
		'show_module' => $show_module,
		'edit'         => $edit_opt
	); 
}
/* FORM SETTING - END */

/* STOCK TABLE - START */
function get_stock_headers(){
	$CI=& get_instance();
	$headers = array(		
		array('customer_name'=>"Customer Name"),
		array('stock_name'=>"Stock Name"),
		array('current_price'=>"Current Price"),
		array('quantity'=>"Quantity"),
		array('avg_invest_price'=>"Avg Invest price"),
		array('over_all_gain'=>"Over all Gain"),
		array('over_all_gain_percentage'=>"Over all Gain%"),
	);
	return transform_headers($headers);
}
function get_stock_datarows($stock,$controller){
	$CI=& get_instance();
	$controller_name=strtolower(get_class($CI));
	$page_name      = ucwords(str_replace("_"," ",$controller_name));
	$access_data    = $CI->session->userdata('access_data');
	$access_update  = (int)$access_data[$controller_name]['access_update'];
	$edit_opt = "";
	if($access_update === 1){
		$edit_opt = anchor($controller_name."/view/$stock->prime_stock_id", '<span class="fa fa-eye"></span> View',array('class'=>'modal-dlg btn btn-xs btn-edit', 'title'=>"View Stock"));
	}
	
	$over_all_gain       = 0;
	$total_amount        = round($stock->quantity*$stock->avg_invest_price,2);
	$over_all_gain       = round(($stock->quantity * $stock->current_price) - $total_amount,2);
	$over_all_gain_per   = round($over_all_gain / $total_amount*100,2);
	if($over_all_gain > 0){
		$over_all_gain     = "<span style='font-weight:bold;color:#1cc41c;'>$over_all_gain</span>";
		$over_all_gain_per = "<span style='font-weight:bold;color:#1cc41c;'>$over_all_gain_per%</span>";
	}else{
		$over_all_gain     = "<span style='font-weight:bold;color:#CC3366;'>$over_all_gain</span>";
		$over_all_gain_per = "<span style='font-weight:bold;color:#CC3366;'>$over_all_gain_per%</span>";
	}
	return array(
		'customer_name'            => $stock->customer_name,
		'stock_name'               => $stock->stock_name,
		'current_price'            => $stock->current_price,
		'quantity'                 => $stock->quantity,
		'avg_invest_price'         => $stock->avg_invest_price,
		'over_all_gain'            => $over_all_gain,
		'over_all_gain_percentage' => $over_all_gain_per,
		'edit'                     => $edit_opt
	);
}
/* STOCK TABLE - END */

/* REPORT SETTING - START */
function get_report_setting_headers(){
	$CI=& get_instance();
	$headers = array(
		//array('prime_report_setting_id'=>"Report ID"),
		array('report_name'=>"Report Name"),
	);
	return transform_headers($headers);
}
function get_report_setting_datarows($report_setting,$controller){
	$CI =&get_instance();
	$access_data         = $CI->session->userdata('access_data');
	$controller_name     = strtolower(get_class($CI));
	$access_update       = (int)$access_data[$controller_name]['access_update'];
	$page_name           = ucwords(str_replace("_"," ",$controller_name));
	return array (
    'prime_report_setting_id' => $report_setting->prime_report_setting_id,
    'report_name' => $report_setting->report_name,
    'edit' => anchor($controller_name."/view/$report_setting->prime_report_setting_id", '<span class="fa fa-pencil-square-o"></span> Edit',
      array('class'=>'modal-dlg btn btn-xs btn-edit', 'title'=>" Update $page_name")),
	); 
}
/* COMMON TABLE HEADER BASED ON REPORT SETTING */
function get_report_headers($table_info){
	$CI =&get_instance();
	$controller_name  = strtolower(get_class($CI));
	$headers = array();
	foreach($table_info as $table){
		$headers[] = array($table->label_name => $table->view_name);
	}
	return transform_headers($headers);
}

/* COMMON TABLE ROW BASED ON REPORT SETTING */
function get_report_row($search_data,$table_info,$report_data,$controller){	
	$CI =&get_instance();
	$access_data         = $CI->session->userdata('access_data');
	$controller_name     = strtolower(get_class($CI));
	$access_update       = (int)$access_data[$controller_name]['access_update'];
	$data_row            = array();	
	$report_view_count   = (int)$report_data[0]->report_view_count;
	$report_name         = ucwords($report_data[0]->report_name);	
	
	$send_val = "?";
	$report_prime_column = $report_data[0]->report_prime_column;
	$report_prime_column = explode(",",$report_prime_column);
	foreach($report_prime_column  as $input_columns){
		$input_columns = explode(".",$input_columns);
		$input_columns = $input_columns[1];
		$input_value   = $search_data->$input_columns;
		$data_row[$input_columns] = $input_value;
		$send_val .= "$input_columns=$input_value&";
	}
	
	foreach($table_info as $table){
		$label_name         = $table->label_name;
		$field_type         = $table->field_type;
		$value              = $search_data->$label_name;
		if((int)$field_type === 4){
			$value = date('d-m-Y',strtotime($search_data->$label_name));
			if($value === "01-01-1970"){
				$value = "-";
			}
		}else
		if((int)$field_type === 6){
			$value = "No";
			if((int)$search_data->$label_name === 1){
				$value = "Yes";
			}
		}else
		if((int)$field_type === 7){
			$value = "-";
			if($search_data->$label_name){
				$value = $search_data->$label_name.",..";
			}			
		}else{
			$value = $search_data->$label_name;
		}
		$data_row[$label_name] = $value;
	}
	if($report_view_count > 0){
		$data_row['edit'] = anchor("$controller_name/report_view/$send_val", '<span class="fa fa-pencil-square-o"></span> View',array('class'=>'modal-dlg btn btn-xs btn-edit', 'title'=>"View $report_name"));
	}else{
		$data_row['edit'] = "";
	}
	return $data_row;
}
/* REPORT SETTING - END */

/* BSK EMPLOYEE PERMISSION HEADERS CUSTOM START */
function get_permission_headers(){
	$CI =& get_instance();
	$headers = array(
		array('role_name' => "Role")
	);
	return transform_headers($headers);
}
function get_permission_dbdata_row($permission, $controller){
	$CI =& get_instance();
	$controller_name=strtolower(get_class($CI));
	return array(
		'role'      => $permission->role,
		'role_name' => $permission->role_name,
		'edit' => anchor("$controller_name/view/$permission->role", '<span class="fa fa-pencil-square-o"></span> Edit',array('class'=>'modal-dlg btn btn-xs btn-edit', 'data-btn-submit' => $CI->lang->line('common_submit'), 'title'=>"Update Permission")));
}
/* BSK EMPLOYEE PERMISSION HEADERS CUSTOM END */

function total_year($end_date, $begin_date){
	$begin_date  = new DateTime($begin_date);
	$begin_date  = $begin_date->format("Y-m-d");
	
	$end_date    = new DateTime($end_date);
	$end_date    = $end_date->format("Y-m-d");
	
	$date_parts1 = explode("-", $begin_date);
	$date_parts2 = explode("-", $end_date);
	$start_date  = gregoriantojd($date_parts1[1], $date_parts1[2], $date_parts1[0]);
	$end_date    = gregoriantojd($date_parts2[1], $date_parts2[2], $date_parts2[0]);
	$diff        = abs($end_date - $start_date);
	if((int)$diff === 365){
		$years  = 1;
	}else{
		$years  = floor($diff / 365.25);
	}
	return $years;
}
?>