function aft_plgn_calculate_summary($aft_data, $aft_fetch_data, $isnew, $aft_old_data = null, $is_delete = false) { global $wpdb; // Initialize value for declared variables. $post_id = $aft_data['post_id']; $total_trustworthy = $aft_data['trustworthy_rate']; $total_objective = $aft_data['objective_rate']; $total_complete = $aft_data['complete_rate']; $total_wellwritten = $aft_data['wellwritten_rate']; $is_page = $aft_data['is_page']; // Identify if the summary stored is a page rated summary. // Counting the # of user who rated the posts/pages based on each items. $count_trustworthy = rtp_count_rated_item($post_id, 'trustworthy_rate'); $count_objective = rtp_count_rated_item($post_id, 'objective_rate'); $count_complete = rtp_count_rated_item($post_id, 'complete_rate'); $count_wellwritten = rtp_count_rated_item($post_id, 'wellwritten_rate'); // Check if post_id already exist in wp_feedbacks_summary table. if ($aft_fetch_data->post_id != 0) { if (!$isnew) { // Sum of total rate from users for Trustworthy Rating. if ($total_trustworthy <= $aft_old_data->trustworthy_rate) { $temp_total = intval($aft_old_data->trustworthy_rate - $total_trustworthy); if ($temp_total == 0 && $is_delete) { $total_trustworthy = intval($aft_fetch_data->total_trustworthy - $total_trustworthy); } else { $total_trustworthy = intval($aft_fetch_data->total_trustworthy - $temp_total); } } else { $temp_total = intval($total_trustworthy - $aft_old_data->trustworthy_rate); $total_trustworthy = intval($aft_fetch_data->total_trustworthy + $temp_total); } // Sum of total rate from users for Objective Rating. if ($total_objective <= $aft_old_data->objective_rate) { $temp_total = intval($aft_old_data->objective_rate - $total_objective); if ($temp_total == 0 && $is_delete) { $total_objective = intval($aft_fetch_data->total_objective - $total_objective); } else { $total_objective = intval($aft_fetch_data->total_objective - $temp_total); } } else { $temp_total = intval($total_objective - $aft_old_data->objective_rate); $total_objective = intval($aft_fetch_data->total_objective + $temp_total); } // Sum of total rate from users for Complete Rating. if ($total_complete <= $aft_old_data->complete_rate) { $temp_total = intval($aft_old_data->complete_rate - $total_complete); if ($temp_total == 0 && $is_delete) { $total_complete = intval($aft_fetch_data->total_complete - $total_complete); } else { $total_complete = intval($aft_fetch_data->total_complete - $temp_total); } } else { $temp_total = intval($total_complete - $aft_old_data->complete_rate); $total_complete = intval($aft_fetch_data->total_complete + $temp_total); } // Sum of total rate from users for Well-written Rating. if ($total_wellwritten <= $aft_old_data->wellwritten_rate) { $temp_total = intval($aft_old_data->wellwritten_rate - $total_wellwritten); if ($temp_total == 0 && $is_delete) { $total_wellwritten = intval($aft_fetch_data->total_wellwritten - $total_wellwritten); } else { $total_wellwritten = intval($aft_fetch_data->total_wellwritten - $temp_total); } } else { $temp_total = intval($total_wellwritten - $aft_old_data->wellwritten_rate); $total_wellwritten = intval($aft_fetch_data->total_wellwritten + $temp_total); } } else { $total_trustworthy = intval($aft_fetch_data->total_trustworthy + $total_trustworthy); $total_objective = intval($aft_fetch_data->total_objective + $total_objective); $total_complete = intval($aft_fetch_data->total_complete + $total_complete); $total_wellwritten = intval($aft_fetch_data->total_wellwritten + $total_wellwritten); } } // Place all supplied variable in an array. $aft_sdata = array('post_id' => $post_id, 'total_trustworthy' => $total_trustworthy, 'count_trustworthy' => $count_trustworthy, 'total_objective' => $total_objective, 'count_objective' => $count_objective, 'total_complete' => $total_complete, 'count_complete' => $count_complete, 'total_wellwritten' => $total_wellwritten, 'count_wellwritten' => $count_wellwritten, 'is_page' => $is_page); // Compute overall average rating of the article that was rated. $total_votes_score = array($total_trustworthy, $total_objective, $total_complete, $total_wellwritten); $total_votes_count = array($count_trustworthy, $count_objective, $count_complete, $count_wellwritten); $sum_of_votes = array_sum($total_votes_score); $sum_of_counts = array_sum($total_votes_count); if ($sum_of_votes == 0 && $sum_of_counts == 0) { $aft_sdata['rate_average'] = 0; } else { $aft_sdata['rate_average'] = $sum_of_votes / $sum_of_counts; } // Check if post_id not exist in wp_feedbacks_summary table. if ($aft_fetch_data->post_id == 0) { $sql = sprintf('%sfeedbacks_summary', $wpdb->prefix); $wpdb->insert($sql, $aft_sdata); } else { // The summary of the page being rated. if ($aft_fetch_data->is_page == 'true') { $sql = sprintf('%sfeedbacks_summary', $wpdb->prefix); $wpdb->update($sql, $aft_sdata, array('post_id' => $post_id, 'is_page' => $is_page)); } else { $sql = sprintf('%sfeedbacks_summary', $wpdb->prefix); $wpdb->update($sql, $aft_sdata, array('post_id' => $post_id)); } } }
</strong>] Rate / <br />[<strong><?php echo rtp_count_rated_item($rows->post_id, 'wellwritten_rate'); ?> </strong>] Count </td> <?php if ($_POST['aft-filter'] != 'last-update') { ?> <td class="rtp-rpt-average"> [<strong><?php echo $rows->rate_average; ?> </strong>] Ave. / <br />[<strong><?php echo rtp_count_rated_item($rows->post_id, array('trustworthy_rate', 'objective_rate', 'complete_rate', 'wellwritten_rate')); ?> </strong>] Count </td> <?php } else { ?> <td><?php echo $rows->rate_modified; ?> </td> <?php } ?> </tr> <?php