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('(^$| )', $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('(^$| )', current($element)), 'sortable' => isset($element['sortable']) ?
$element['sortable'] : current($element) != '', 'checkbox' => isset($element['checkbox']) ? $element['checkbox'] : FALSE, 'class' => isset($element['checkbox']) || preg_match('(^$| )', 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> 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;
}
?>