Файл: adultscript-2.0.3-pro/files/templates/defboot/extend/ajax/video_report.plugin.php
Строк: 85
<?php
function ajax_plugin_video_report()
{
$data = array('status' => 0, 'msg' => 0, 'code' => '');
if (isset($_GET['modal'])) {
VLanguage::load('frontend.video');
$code = array();
$code[] = '<div id="report-modal" class="modal fade">';
$code[] = '<div class="modal-dialog modal-sm">';
$code[] = '<div class="modal-content">';
$code[] = '<div class="modal-header">';
$code[] = '<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">'.__('close').'</span></button>';
$code[] = '<h4 class="modal-title">'.__('report-video').'</h4>';
$code[] = '</div>';
$code[] = '<div class="modal-body">';
$code[] = '<div class="form-group">';
$code[] = '<label for="reason">'.__('reason').'</label>';
$code[] = '<div class="ratio"><label><input name="reason" type="radio" value="1"> '.__('inappropriate').'</label></div>';
$code[] = '<div class="ratio"><label><input name="reason" type="radio" value="2"> '.__('underage').'</label></div>';
$code[] = '<div class="ratio"><label><input name="reason" type="radio" value="3"> '.__('copyrighted-material').'</label></div>';
$code[] = '<div class="ratio"><label><input name="reason" type="radio" value="4"> '.__('video-not-playing').'</label></div>';
$code[] = '<div class="ratio"><label><input name="reason" type="radio" value="5"> '.__('other').'</label></div>';
$code[] = '</div>';
$code[] = '<div class="form-group">';
$code[] = '<label for="message">'.__('message').'</label>';
$code[] = '<textarea name="message" id="message" class="form-control"></textarea>';
$code[] = '</div>';
$code[] = '<div class="modal-footer">';
$code[] = '<button type="button" class="btn btn-default" data-dismiss="modal">'.__('close').'</button>';
$code[] = '<button type="button" id="report-send" class="btn btn-primary">'.__('flag-button').'</button>';
$code[] = '</div>';
$code[] = '</div>';
$code[] = '</div>';
$code[] = '</div>';
return implode('', $code);
} else {
if (isset($_POST['video_id']) && isset($_POST['reason']) && isset($_POST['message'])) {
$video_id = (int) trim($_POST['video_id']);
$user_id = (isset($_SESSION['user_id'])) ? (int) $_SESSION['user_id'] : 0;
$reason = (int) trim($_POST['reason']);
$reasons = array(
1 => 'Inappropriate',
2 => 'Underage',
3 => 'Copyright',
4 => 'Not Playing',
5 => 'Other'
);
$message = VF::factory('filter')->get('message');
if (!isset($reasons[$reason])) {
$data['msg'] = __('reason-invalid');
return json_encode($data);
}
$ip = VServer::ip(true);
$db = VF::factory('database');
$db->query("SELECT flag_id
FROM #__video_flags
WHERE video_id = ".$video_id."
AND ip = ".$ip."
LIMIT 1");
if ($db->affected_rows()) {
$data['msg'] = __('report-already');
} else {
$db->query("UPDATE #__video
SET flagged = '1'
WHERE video_id = ".$video_id."
LIMIT 1");
$db->query("INSERT INTO #__video_flags
SET video_id = ".$video_id.",
user_id = ".$user_id.",
ip = ".$ip.",
reason = '".$reason."',
message = '".$db->escape($message)."',
add_date = '".date('Y-m-d h:i:s')."'");
// notify administrator that a new video was flagged
$mail = VF::factory('email');
$search = array('[#SITE_NAME#]', '[#FLAG#]', '[#URL#]');
$replace = array(VF::cfg_item('site_name'), $reason, BASE_URL);
$mail->predefined('video-flag', VF::cfg_item('email_admin'), $search, $replace, 'noreply');
$data['status'] = 1;
}
} else {
$data['msg'] = 'Invalid request!';
}
}
return json_encode($data);
}