function render_multi_custom_values($template_id, $multi_set_id, $custom_id, $votes, $header_text = '', $override = array(), $tags_css = array(), $star_factor = 1) { $set = gd_get_multi_set($multi_set_id); $rd_unit_width = $override["size"]; $rd_unit_style = $this->g->is_ie6 ? $override["style_ie6"] : $override["style"]; $rd_unit_width_avg = isset($override["average_size"]) ? $override["average_size"] : $override["style"]; $rd_unit_style_avg = isset($override["average_stars"]) ? $this->g->is_ie6 ? $override["average_stars_ie6"] : $override["average_stars"] : $override["style"]; return GDSRRenderT2::render_mrb($template_id, array("style" => $rd_unit_style, "allow_vote" => false, "votes" => $votes, "post_id" => $custom_id, "set" => $set, "height" => $rd_unit_width, "header_text" => $header_text, "tags_css" => array("MUR_CSS_BLOCK" => ""), "avg_style" => $rd_unit_style_avg, "avg_size" => $rd_unit_width_avg, "star_factor" => $star_factor)); }
function render_multi_rating($post, $user, $settings) { if ($this->is_bot) { return ""; } if (is_feed()) { return ""; } $set = gd_get_multi_set($settings["id"]); if ($set == null) { return ""; } $dbg_allow = "F"; $allow_vote = true; if ($this->is_ban && $this->o["ip_filtering"] == 1) { if ($this->o["ip_filtering_restrictive"] == 1) { return ""; } else { $allow_vote = false; } $dbg_allow = "B"; } if ($settings["read_only"] == 1) { $dbg_allow = "RO"; $allow_vote = false; } if (is_single() || is_page() && $this->o["display_comment_page"] == 1) { $this->init_post(); } $rd_post_id = intval($post->ID); $rd_user_id = intval($user->ID); $rd_is_page = $post->post_type == "page" ? "1" : "0"; $remaining = 0; $deadline = ""; if ($this->p) { $post_data = $this->p; } else { $post_data = GDSRDatabase::get_post_data($rd_post_id); if (count($post_data) == 0) { GDSRDatabase::add_default_vote($rd_post_id, $rd_is_page); $post_data = GDSRDatabase::get_post_data($rd_post_id); } } if ($post_data->rules_articles == "H") { return ""; } if ($allow_vote) { if ($this->o["author_vote"] == 1 && $rd_user_id == $post->post_author) { $allow_vote = false; $dbg_allow = "A"; } } if ($allow_vote) { if ($post_data->rules_articles == "" || $post_data->rules_articles == "A" || $post_data->rules_articles == "U" && $rd_user_id > 0 || $post_data->rules_articles == "V" && $rd_user_id == 0) { $allow_vote = true; } else { $allow_vote = false; $dbg_allow = "R_" . $post_data->rules_articles; } } if ($allow_vote && ($post_data->expiry_type == 'D' || $post_data->expiry_type == 'T')) { switch ($post_data->expiry_type) { case "D": $remaining = GDSRHelper::expiration_date($post_data->expiry_value); $deadline = $post_data->expiry_value; break; case "T": $remaining = GDSRHelper::expiration_countdown($post->post_date, $post_data->expiry_value); $deadline = GDSRHelper::calculate_deadline($remaining); break; } if ($remaining < 1) { GDSRDatabase::lock_post($rd_post_id); $allow_vote = false; $dbg_allow = "T"; } } if ($allow_vote) { $allow_vote = GDSRDBMulti::check_vote($rd_post_id, $rd_user_id, $set->multi_id, 'multis', $_SERVER["REMOTE_ADDR"], $this->o["logged"] != 1, $this->o["mur_allow_mixed_ip_votes"] == 1); if (!$allow_vote) { $dbg_allow = "D"; } } if ($allow_vote) { $allow_vote = $this->check_cookie($rd_post_id . "#" . $set->multi_id, "multis"); if (!$allow_vote) { $dbg_allow = "C"; } } $multi_record_id = GDSRDBMulti::get_vote($rd_post_id, $set->multi_id, count($set->object)); $multi_data = GDSRDBMulti::get_values($multi_record_id); $votes = array(); foreach ($multi_data as $md) { $single_vote = array(); $single_vote["votes"] = 0; $single_vote["score"] = 0; if ($post_data->rules_articles == "A" || $post_data->rules_articles == "N") { $single_vote["votes"] = $md->user_voters + $md->visitor_voters; $single_vote["score"] = $md->user_votes + $md->visitor_votes; } else { if ($post_data->rules_articles == "V") { $single_vote["votes"] = $md->visitor_voters; $single_vote["score"] = $md->visitor_votes; } else { $single_vote["votes"] = $md->user_voters; $single_vote["score"] = $md->user_votes; } } if ($single_vote["votes"] > 0) { $rating = $single_vote["score"] / $single_vote["votes"]; } else { $rating = 0; } if ($rating > $set->stars) { $rating = $set->stars; } $single_vote["rating"] = @number_format($rating, 1); $votes[] = $single_vote; } $debug = $rd_user_id == 0 ? "V" : "U"; $debug .= $rd_user_id == $post->post_author ? "A" : "N"; $debug .= ":" . $dbg_allow . " [" . STARRATING_VERSION . "]"; $tags_css = array(); $tags_css["MUR_CSS_BLOCK"] = $this->o["mur_class_block"]; $tags_css["MUR_CSS_HEADER"] = $this->o["mur_class_header"]; $tags_css["MUR_CSS_TEXT"] = $this->o["mur_class_text"]; $tags_css["MUR_CSS_BUTTON"] = $this->o["mur_class_button"]; if ($settings["tpl"] > 0) { $template_id = $settings["tpl"]; } else { $template_id = $this->o["default_mrb_template"]; } return GDSRRenderT2::render_mrb($this->o["mur_style"], $template_id, $allow_vote, $votes, $rd_post_id, $set, $this->o["mur_size"], $this->o["mur_header_text"], $tags_css, $settings["average_stars"], $settings["average_size"], $post_data->expiry_type, $remaining, $deadline, $this->o["mur_button_active"] == 1, $this->o["mur_button_text"], $debug, $this->loader_multis); }