Вход Регистрация
Файл: adultscript-2.0.3-pro/files/templates/defboot/extend/ajax/video_rate.plugin.php
Строк: 63
<?php
function ajax_plugin_video_rate()
{
    
$data = array('status' => 0'code' => '''msg' => '''debug' => '');
    
    
VLanguage::load('frontend.video');
    if (
VCfg::get('video.allow_rating') != '1') {
        
$data['msg'] = __('rating-disabled');
        return 
json_encode($data);
    }
    
    if (isset(
$_POST['rating']) && isset($_POST['video_id'])) {
        
$user_id = (VAuth::loggedin()) ? (int) $_SESSION['user_id'] : 0;
        if (
VCfg::get('video.rating_type') == 'user' && !$user_id) {
            
$data['msg'] = __('rating-login');
            return 
json_encode($data);
        }
    
        
$video_id   = (int) trim($_POST['video_id']);
        
$vote       = (int) trim($_POST['rating']);
        
$ip         VServer::ip(TRUE);
    
        
$db         VF::factory('database');
        if (
VCfg::get('video.rating_count') == '1') {
            if (
VCfg::get('video.rating_type') == 'user') {
                
$sql "SELECT rating_id
                        FROM #__video_rating
                        WHERE video_id = "
.$video_id."
                        AND voter_id = "
.$user_id."
                        LIMIT 1"
;
            } else {
                
$sql "SELECT rating_id
                        FROM #__video_rating
                        WHERE video_id = "
.$video_id."
                        AND voter_ip = "
.$ip."
                        LIMIT 1"
;
            }
    
            
$db->query($sql);
            if (
$db->affected_rows()) {
                
$data['msg'] = __('rating-already');
                return 
json_encode($data);
            }
        }
        
        
$db->query("SELECT likes, rating, rated_by
                    FROM #__video
                    WHERE video_id = "
.$video_id."
                    LIMIT 1"
);
        if (
$db->affected_rows()) {
              
$data        $db->fetch_assoc();
              
$likes        $data['likes'];
              
$rating        $data['rating'];
              
$rated_by    $data['rated_by'];
              
              
$likes        = ($vote === 1) ? $likes+$likes;
              
$value        round($rating*$rated_by2);
              
$rating        = ($vote === 1) ? $value+$value+1;
              
$rated_by    $rated_by+1;
              
$rating        round($rating/$rated_by2);
        
            
$db->query("UPDATE #__video
                        SET likes = "
.$likes.",
                            rating = "
.$rating.",
                            rated_by = "
.$rated_by."
                        WHERE video_id = "
.$video_id."
                        LIMIT 1"
);
                        
            
$db->query("INSERT INTO #__video_rating
                        SET video_id = "
.$video_id.",
                            voter_id = "
.$user_id.",
                            voter_ip = "
.$ip.",
                            rating = "
.$vote.",
                            add_time = "
.time());
            
            
VF::factory('cache')->remove('video_'.$video_id);
            
            
$percent        round(($likes*100)/$rated_by);
            
            
$code            $percent.'% ('.$likes.'/'.$rated_by.') ';
            
$code           .= '<div class="progress">';
            
$code           .= '<div class="progress-bar" role="progressbar" aria-valuenow="'.$percent.'" aria-valuemin="0" aria-valuemax="100" style="width:'.$percent.'%;">';
            
$code          .= '<span class="sr-only">'.$percent.'% Complete</span>';
            
$code           .= '</div>';
            
$code           .= '</div>';
                            
            
$data['status'] = 1;
            
$data['code']    = $code;
        } else {
            
$data['msg'] = __('video-invalid');;
        }
    }
    
    return 
json_encode($data);
}
Онлайн: 0
Реклама