Example #1
0
 function render_mrb($template_id, $rpar = array())
 {
     $rdef = array("style" => "oxygen", "allow_vote" => true, "votes" => 0, "post_id" => 0, "set" => "", "height" => "", "header_text" => "", "tags_css" => array(), "avg_style" => "oxygen", "avg_size" => 20, "star_factor" => 1, "time_restirctions" => "N", "time_remaining" => 0, "time_date" => "", "button_active" => true, "button_text" => "Submit", "debug" => "", "wait_msg" => "");
     $rpar = wp_parse_args($rpar, $rdef);
     $rpar = apply_filters('gdsr_t2parameters_mrb', $rpar);
     extract($rpar, EXTR_SKIP);
     $template = GDSRRenderT2::get_template($template_id, "MRB");
     $tpl_render = $template->elm["normal"];
     $tpl_render = html_entity_decode($tpl_render);
     $tpl_render = apply_filters('gdsr_t2render_mrb_normal', $tpl_render, $template, $rpar, "normal");
     foreach ($tags_css as $tag => $value) {
         $tpl_render = str_replace('%' . $tag . '%', $value, $tpl_render);
     }
     $tpl_render = str_replace("%MUR_HEADER_TEXT%", html_entity_decode($header_text), $tpl_render);
     $rater = '<div id="gdsr_mur_block_' . $post_id . '_' . $set->multi_id . '" class="ratingmulti ' . $tags_css["MUR_CSS_BLOCK"] . '">';
     $empty_value = str_repeat("0X", count($set->object));
     $empty_value = substr($empty_value, 0, strlen($empty_value) - 1);
     if ($debug != '') {
         $rater .= '<div style="display: none">' . $debug . '</div>';
     }
     if ($allow_vote) {
         $rater .= '<input type="hidden" id="gdsr_multi_' . $post_id . '_' . $set->multi_id . '" name="gdsrmulti[' . $post_id . '][' . $set->multi_id . ']" value="' . $empty_value . '" />';
     }
     if (in_array("%POST_TITLE%", $template->tag["normal"])) {
         $act_post = get_post($post_id);
         $tpl_render = str_replace("%POST_TITLE%", $act_post->post_title, $tpl_render);
     }
     if (in_array("%POST_PERMALINK%", $template->tag["normal"])) {
         $tpl_render = str_replace("%POST_PERMALINK%", get_permalink($post_id), $tpl_render);
     }
     $i = 0;
     $weighted = 0;
     $total_votes = 0;
     $weight_norm = array_sum($set->weight);
     $rating_stars = "";
     $table_row_class = $template->dep["MRS"]->dep["ETR"];
     foreach ($set->object as $el) {
         $single_row = html_entity_decode($template->dep["MRS"]->elm["item"]);
         $single_row = str_replace('%ELEMENT_NAME%', $el, $single_row);
         $single_row = str_replace('%ELEMENT_ID%', $i, $single_row);
         $single_row = str_replace('%ELEMENT_VALUE%', $votes[$i]["rating"], $single_row);
         $single_row = str_replace('%ELEMENT_STARS%', GDSRRender::rating_stars_multi($style, $post_id, $template_id, $set->multi_id, $i, $height, $set->stars * $star_factor, $allow_vote, $votes[$i]["rating"] * $star_factor), $single_row);
         $single_row = str_replace('%TABLE_ROW_CLASS%', is_odd($i) ? $table_row_class->elm["odd"] : $table_row_class->elm["even"], $single_row);
         $rating_stars .= $single_row;
         $weighted += $votes[$i]["rating"] * $set->weight[$i] / $weight_norm;
         $total_votes += $votes[$i]["votes"];
         $i++;
     }
     $rating = @number_format($weighted, 1);
     $total_votes = $i == 0 ? 0 : @number_format($total_votes / $i, 0);
     if (in_array("%MUR_RATING_TEXT%", $template->tag["normal"])) {
         $rating_text = GDSRRenderT2::render_mrt($template->dep["MRT"], array("rating" => $rating, "unit_count" => $set->stars, "votes" => $total_votes, "id" => $post_id, "time_restirctions" => $time_restirctions, "time_remaining" => $time_remaining, "time_date" => $time_date));
         $rating_wait = $allow_vote ? GDSRRender::rating_wait("gdsr_mur_loader_" . $post_id . "_" . $set->multi_id, "100%", "", $wait_msg) : "";
         $voted = $allow_vote ? '' : ' class="voted"';
         $rating_text = $rating_wait . '<div' . $voted . ' id="gdsr_mur_text_' . $post_id . '_' . $set->multi_id . '">' . $rating_text . '</div>';
         $tpl_render = str_replace("%MUR_RATING_TEXT%", $rating_text, $tpl_render);
     }
     if (in_array("%BUTTON%", $template->tag["normal"])) {
         if ($button_active) {
             $rating_button = '<div class="ratingbutton gdinactive gdsr_multisbutton_as ' . $tags_css["MUR_CSS_BUTTON"] . '" id="gdsr_button_' . $post_id . '_' . $set->multi_id . '_' . $template_id . '_' . $height . '"><a rel="nofollow">' . $button_text . '</a></div>';
         } else {
             $rating_button = "";
         }
         $tpl_render = str_replace("%BUTTON%", $rating_button, $tpl_render);
     }
     $tpl_render = str_replace("%MUR_RATING_STARS%", $rating_stars, $tpl_render);
     $tpl_render = str_replace("%AVG_RATING%", apply_filters('gdsr_t2_tag_value', $rating, "MRB", "%AVG_RATING%"), $tpl_render);
     if (in_array("%AVG_RATING_STARS%", $template->tag["normal"])) {
         $avg_id = "gdsr_mur_avgstars_" . $post_id . "_" . $set->multi_id;
         $tpl_render = str_replace("%AVG_RATING_STARS%", GDSRRender::render_static_stars($avg_style, $avg_size, $set->stars * $star_factor, $rating * $star_factor, $avg_id, "", $star_factor), $tpl_render);
     }
     $rater .= $tpl_render . "</div>";
     return $rater;
 }
 function render_mre($style, $template_id, $allow_vote, $votes, $post_id, $set, $height)
 {
     $template = GDSRRenderT2::get_template($template_id, "MRE");
     $tpl_render = $template->elm["normal"];
     $tpl_render = html_entity_decode($tpl_render);
     $rater = '<div id="gdsr_mur_block_' . $post_id . '_' . $set->multi_id . '" class="ratingmulti gdsr-review-block">';
     $empty_value = str_repeat("0X", count($set->object));
     $empty_value = substr($empty_value, 0, strlen($empty_value) - 1);
     $original_value = "";
     foreach ($votes as $vote) {
         $original_value .= number_format($vote["rating"], 0) . "X";
     }
     $original_value = substr($original_value, 0, strlen($original_value) - 1);
     $rater .= '<input type="hidden" id="gdsr_mur_review_' . $post_id . '_' . $set->multi_id . '" name="gdsrmurreview[' . $post_id . '][' . $set->id . ']" value="' . $original_value . '" />';
     $empty_value = $original_value;
     if ($allow_vote) {
         $rater .= '<input type="hidden" id="gdsr_multi_' . $post_id . '_' . $set->multi_id . '" name="gdsrmulti[' . $post_id . '][' . $set->id . ']" value="' . $empty_value . '" />';
     }
     $i = 0;
     $weighted = 0;
     $total_votes = 0;
     $weight_norm = array_sum($set->weight);
     $rating_stars = "";
     $table_row_class = $template->dep["MRS"]->dep["ETR"];
     foreach ($set->object as $el) {
         $single_row = html_entity_decode($template->dep["MRS"]->elm["item"]);
         $single_row = str_replace('%ELEMENT_NAME%', $el, $single_row);
         $single_row = str_replace('%ELEMENT_ID%', $i, $single_row);
         $single_row = str_replace('%ELEMENT_STARS%', GDSRRender::rating_stars_multi($style, $post_id, $template_id, $set->multi_id, $i, $height, $set->stars, $allow_vote, $votes[$i]["rating"], "", true), $single_row);
         $single_row = str_replace('%TABLE_ROW_CLASS%', is_odd($i) ? $table_row_class->elm["odd"] : $table_row_class->elm["even"], $single_row);
         $rating_stars .= $single_row;
         $weighted += $votes[$i]["rating"] * $set->weight[$i] / $weight_norm;
         $total_votes += $votes[$i]["votes"];
         $i++;
     }
     $tpl_render = str_replace("%MUR_RATING_STARS%", $rating_stars, $tpl_render);
     $rater .= $tpl_render . "</div>";
     return $rater;
 }