Файл: adultscript-2.0.3-pro/files/templates/defboot/extend/ajax/playlist.plugin.php
Строк: 110
<?php
defined('_VALID') or die('Restricted Access!');
function ajax_plugin_playlist()
{
$data = array('status' => 0, 'msg' => '', 'code' => '', 'debug' => '');
VLanguage::load('frontend.video');
if (VAuth::loggedin()) {
if (isset($_POST['video_id']) && (isset($_POST['playlist_id']) OR
(isset($_POST['name']) && isset($_POST['type']))) &&
isset($_POST['button'])) {
$db = VF::factory('database');
$filter = VF::factory('filter');
$user_id = (int) $_SESSION['user_id'];
$video_id = (int) trim($_POST['video_id']);
$playlist_id = (isset($_POST['playlist_id'])) ? (int) trim($_POST['playlist_id']) : 0;
$name = $filter->clean(VText::truncate_chars(trim($_POST['name']), 100, '', true));
$type = $filter->get('type');
$button = $filter->get('button');
if ($button == 'playlist-create') {
if ($name == '') {
$data['msg'] = __('playlist-empty');
}
if ($type != 'public' && $type != 'private') {
$data['msg'] = __('playlist-invalid');
}
if (empty($data['msg'])) {
$db->query("SELECT duration
FROM #__video
WHERE video_id = ".$video_id."
AND status = 1
LIMIT 1");
if ($db->affected_rows()) {
$duration = (float) $db->fetch_field('duration');
$db->query("INSERT INTO #__playlist
SET user_id = ".$user_id.",
name = '".$db->escape($name)."',
slug = '".$db->escape(prepare_string($name, true))."',
type = '".$db->escape($type)."',
thumb_id = ".$video_id.",
duration = ".$duration.",
total_videos = 1,
add_time = ".time());
if ($db->affected_rows()) {
$playlist_id = $db->get_last_insert_id('#__playlist');
$db->query("INSERT INTO #__playlist_videos
SET playlist_id = ".$playlist_id.",
video_id = ".$video_id).",
add_time = ".time();
$db->query("UPDATE #__user_activity
SET total_playlists = total_playlists+1
WHERE user_id = ".$user_id."
LIMIT 1");
$data['msg'] = __('playlist-create-success');
$data['status'] = 1;
}
} else {
$data['msg'] = 'Failed to find video! Never reached!';
}
}
} else {
$db->query("SELECT video_id
FROM #__playlist_videos
WHERE playlist_id = ".$playlist_id."
AND video_id = ".$video_id."
LIMIT 1");
if ($db->affected_rows()) {
$data['msg'] = __('playlist-already');
return json_encode($data);
}
$db->query("SELECT duration
FROM #__video
WHERE video_id = ".$video_id."
AND status = 1
LIMIT 1");
if ($db->affected_rows()) {
$duration = (float) $db->fetch_field('duration');
$db->query("INSERT INTO #__playlist_videos
SET playlist_id = ".$playlist_id.",
video_id = ".$video_id).",
add_time = ".time();
$db->query("UPDATE #__playlist
SET duration = duration+".$duration.",
total_videos = total_videos+1
WHERE playlist_id = ".$playlist_id."
LIMIT 1");
$data['msg'] = __('playlist-select-success');
$data['status'] = 1;
} else {
$data['msg'] = 'Failed to find video! Never reached!';
}
}
} else {
$user_id = (int) $_SESSION['user_id'];
$db = VF::factory('database');
$db->query("SELECT playlist_id, name, total_videos
FROM #__playlist
WHERE user_id = ".$user_id."
ORDER BY name ASC");
$playlists = $db->fetch_rows();
$output = array();
$output[] = '<button type="button" class="close close-parent"><span aria-hidden="true">×</span><span class="sr-only">'.__('close').'</span></button>';
$output[] = '<br>';
$output[] = '<div class="row">';
$output[] = '<div class="col-xs-12 col-sm-6 col-md-6">';
if ($playlists) {
$output[] = '<div class="content-title">'.__('playlist-select').'</div>';
$output[] = '<form class="form-horizontal">';
$output[] = '<div class="form-group">';
$output[] = '<label for="playlist_id" class="col-sm-2 control-label">'.__('playlist').'</label>';
$output[] = '<div class="col-sm-9">';
$output[] = '<select name="playlist_id" id="playlist_id" class="form-control">';
foreach ($playlists as $playlist) {
$output[] = '<option value="'.$playlist['playlist_id'].'">'.e($playlist['name']).' ('.$playlist['total_videos'].')</option>';
}
$output[] = '</select>';
$output[] = '</div>';
$output[] = '</div>';
$output[] = '<div class="text-center"><button id="playlist-select" type="button" class="btn btn-default">'.__('playlist-select').'</button></div>';
$output[] = '</form>';
} else {
$output[] = '<div class="none">'.__('playlist-none').'</div>';
}
$output[] = '</div>';
$output[] = '<div class="col-xs-12 col-sm-6 col-md-6">';
$output[] = '<div class="content-title">'.__('playlist-create').'</div>';
$output[] = '<form class="form-horizontal">';
$output[] = '<div class="form-group">';
$output[] = '<label for="name" class="col-sm-2 control-label">'.__('name').'</label>';
$output[] = '<div class="col-sm-9">';
$output[] = '<input name="name" type="text" class="form-control" id="name" value="" maxlength="100">';
$output[] = '</div>';
$output[] = '</div>';
$output[] = '<div class="form-group">';
$output[] = '<label for="type" class="col-sm-2 control-label">'.__('type').'</label>';
$output[] = '<div class="col-sm-9">';
$output[] = '<select name="type" id="type" class="form-control">';
$output[] = '<option value="public">'.__('public').'</option>';
$output[] = '<option value="private">'.__('private').'</option>';
$output[] = '</select>';
$output[] = '</div>';
$output[] = '</div>';
$output[] = '<div class="text-center"><button id="playlist-create" type="button" class="btn btn-default">'.__('playlist-create').'</button></div>';
$output[] = '</form>';
$output[] = '</div>';
$output[] = '</div>';
$data['code'] = implode("n", $output);
$data['status'] = 1;
}
} else {
$data['msg'] = __('playlist-login', array('<a href="#login" class="login"><i class="fa fa-sign-in"></i>', '</a>'));
}
return json_encode($data);
}