Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
File Manager
/
wp-content
/
plugins
/
indutri-themer
/
includes
:
comment.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php class Indutri_Themer_Comment{ public static $instance; public static function getInstance() { if (!isset(self::$instance) && !(self::$instance instanceof Indutri_Themer_Comment)) { self::$instance = new Indutri_Themer_Comment(); } return self::$instance; } public function __construct(){ add_action('comment_post', array( $this, 'comment_ratings')); } public function comment_ratings($comment_id) { add_comment_meta($comment_id, 'rate', $_POST['rate']); } public function comment_field($aria_req){ $html = '<div> <div class="comment-rating clearfix"> <label class="field-label" for="comment">'.esc_html__('What is it like to Post?', 'kipso').'</label> <ul class="comment-star-rating"> <li><a href="#" title="Really bad - 1 star" class="one-star" data-rate="1"><i class="far fa-star"></i></a></li> <li><a href="#" title="Bad - 2 stars" class="two-stars" data-rate="2"><i class="far fa-star"></i><i class="far fa-star"></i></a></li> <li><a href="#" title="Good - 3 stars" class="three-stars" data-rate="3"><i class="far fa-star"></i><i class="far fa-star"></i><i class="far fa-star"></i></a></li> <li><a href="#" title="Very good - 4 stars" class="four-stars" data-rate="4"><i class="far fa-star"></i><i class="far fa-star"></i><i class="far fa-star"></i><i class="far fa-star"></i></a></li> <li><a href="#" title="Excellent - 5 stars" class="five-stars" data-rate="5"><i class="far fa-star"></i><i class="far fa-star"></i><i class="far fa-star"></i><i class="far fa-star"></i><i class="far fa-star"></i></a></li> </ul> <input type="hidden" id="comment-rating-ip" name="rate" id="rate" value="" /> </div> </div>'; return $html; } public function comment_rate($rate) { $alt = ''; switch ($rate) { case '0': $alt = 'Zero - 0 stars'; break; case '1': $alt = 'Really bad - 1 star'; break; case '2': $alt = 'Bad - 2 stars'; break; case '3': $alt = 'Good - 3 stars'; break; case '4': $alt = 'Very good - 4 stars'; break; case '5': $alt = 'Excellent - 5 stars'; break; default: $alt = 'No grade'; break; } for ($i = 0; $i < 5; $i++) { if ($rate > $i){ echo '<i class="on fas fa-star"></i>'; }else{ echo '<i class="off far fa-star"></i>'; } } } public function get_average_ratings($id) { $comment_array = get_approved_comments($id); $count = 0; if ($comment_array) { $i = 0; $total = 0; foreach($comment_array as $comment){ $rate = get_comment_meta($comment->comment_ID, 'rate'); if(isset($rate[0]) && $rate[0] !== '') { $i++; $total += $rate[0]; $count++; } } if($i == 0) return array( 'rate' => 0, 'count' => 0 ); else return array( 'rate' => round($total/$i, 1), 'count' => $count ); } else { return array( 'rate' => 0, 'count' => 0 ); } } public function rating_display($rate){ $width = ($rate/5) * 100; $ouput = ''; $ouput .= '<div class="course-review-wrapper">'; $ouput .= '<ul class="base-starts">'; for ($i=1; $i <= 5; $i++) { $ouput .= '<li><i class="fa fa-star"></i></li>'; } $ouput .= '</ul>'; $ouput .= '<ul class="votes-starts" style="width: '.esc_attr($width).'%;">'; for ($i=1; $i <= 5; $i++) { $ouput .= '<li><i class="fa fa-star"></i></li>'; } $ouput .= '</ul>'; $ouput .= '</div>'; return $ouput; } public function rating_results($id){ $comment_array = get_approved_comments($id); $results = array( '1_star' => 0, '2_star' => 0, '3_star' => 0, '4_star' => 0, '5_star' => 0, 'count' => 0 ); if ($comment_array) { $i = 0; $total = 0; foreach($comment_array as $comment){ $rate = get_comment_meta($comment->comment_ID, 'rate'); if(isset($rate[0]) && $rate[0] !== '') { $i++; $results['count']++; if($rate[0] == 1){ $results['1_star']++; }elseif($rate[0] == 2){ $results['2_star']++; }elseif($rate[0] == 3){ $results['3_star']++; }elseif($rate[0] == 4){ $results['4_star']++; }elseif($rate[0] == 5){ $results['5_star']++; } } } } return $results; } } new Indutri_Themer_Comment();