/** * Renders average result of comment integration of multi rating for specific comment * * @param int $comment_id initial rating value * @param object $post_id post id * @param int $multi_set_id id of the multi rating set to use * @param int $template_id id of the template to use * @param string $avg_stars_set set to use for rendering of average value * @param int $avg_stars_size set size to use for rendering of average value * @param string $avg_stars_set_ie6 set to use for rendering of average value in ie6 */ function comment_integrate_multi_result_average($comment_id, $post_id, $multi_set_id, $template_id, $avg_stars_set = "oxygen", $avg_stars_size = 20, $avg_stars_set_ie6 = "oxygen_gif") { $value = GDSRDBMulti::rating_from_comment($comment_id, $multi_set_id); if (is_serialized($value)) { $value = unserialize($value); $set = gd_get_multi_set($multi_set_id); $weight_norm = array_sum($set->weight); $avg_rating = $i = 0; foreach ($value as $md) { $avg_rating += $md * $set->weight[$i] / $weight_norm; $i++; } $avg_rating = @number_format($avg_rating, 1); if ($avg_rating > 0) { return GDSRRenderT2::render_mcr($template_id, array("post_id" => $post_id, "set" => $set, "avg_rating" => $avg_rating, "avg_style" => $this->g->is_ie6 ? $avg_stars_set_ie6 : $avg_stars_set, "avg_size" => $avg_stars_size)); } else { return ""; } } else { return ""; } }