<?php
/* Mixanza Production
* Дата последнего редактирования 21.05.2018
* Модифицировал Mixanza
*/
foreach (array('start', 'sess', 'settings', 'db_connect', 'ipua', 'fnc') as $inc) {
require_once "../../../sys/inc/$inc.php";
}
include_once H . 'sys/inc/user.php';
only_reg();
$set['title'] = 'Прикрепить видео';
require_once H . 'sys/inc/thead.php';
aut();
err();
if ($df['vigruzka'] == 0 || access('adm_mysql')){
if ($pdo->query(("SELECT COUNT(*) FROM `disk` WHERE `id_user` = '".$user['id']."' AND `status` = '1' LIMIT 1"), 0)->fetchColumn()){
$disk = 62914560;
}else{
if ($user['rating'] >= 0 && $user['rating'] <= 19){
$disk = 5242880;
}
if ($user['rating'] >= 20 && $user['rating'] <= 49){
$disk = 20971520;
}
if ($user['rating'] >= 50 && $user['rating'] <= 119){
$disk = 31457280;
}
if ($user['rating'] >= 120 && $user['rating'] <= 999999999999999999999){
$disk = 31457280;
}
}
?>
<style>
.progress-bar {
background-color: #555A5E;
height: 34px;
padding: 5px;
width: 100%;
margin-top: 3px;
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
border-radius: 5px;
-moz-box-shadow: 0 1px 5px #000 inset, 0 1px 0 #444;
-webkit-box-shadow: 0 1px 5px #000 inset, 0 1px 0 #444;
box-shadow: 0 1px 5px #000 inset, 0 1px 0 #444;
}
.progress-bar span {
display: inline-block;
height: 25px;
width: 200px;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
border-radius: 3px;
-moz-box-shadow: 0 1px 0 rgba(255, 255, 255, .5) inset;
-webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, .5) inset;
box-shadow: 0 1px 0 rgba(255, 255, 255, .5) inset;
-webkit-transition: width .4s ease-in-out;
-moz-transition: width .4s ease-in-out;
-ms-transition: width .4s ease-in-out;
-o-transition: width .4s ease-in-out;
transition: width .4s ease-in-out;
}
.blue span {
background-color: #34c2e3;
}
.orange span {
background-color: #fecf23;
background-image: -webkit-gradient(linear, left top, left bottom, from(#fecf23), to(#fd9215));
background-image: -webkit-linear-gradient(top, #fecf23, #fd9215);
background-image: -moz-linear-gradient(top, #fecf23, #fd9215);
background-image: -ms-linear-gradient(top, #fecf23, #fd9215);
background-image: -o-linear-gradient(top, #fecf23, #fd9215);
background-image: linear-gradient(top, #fecf23, #fd9215);
}
.green span {
background-color: #a5df41;
background-image: -webkit-gradient(linear, left top, left bottom, from(#a5df41), to(#4ca916));
background-image: -webkit-linear-gradient(top, #a5df41, #4ca916);
background-image: -moz-linear-gradient(top, #a5df41, #4ca916);
background-image: -ms-linear-gradient(top, #a5df41, #4ca916);
background-image: -o-linear-gradient(top, #a5df41, #4ca916);
background-image: linear-gradient(top, #a5df41, #4ca916);
}
.stripes span {
-webkit-background-size: 30px 30px;
-moz-background-size: 30px 30px;
background-size: 30px 30px;
background-image: -webkit-gradient(linear, left top, right bottom,
color-stop(.25, rgba(255, 255, 255, .15)), color-stop(.25, transparent),
color-stop(.5, transparent), color-stop(.5, rgba(255, 255, 255, .15)),
color-stop(.75, rgba(255, 255, 255, .15)), color-stop(.75, transparent),
to(transparent));
background-image: -webkit-linear-gradient(135deg, rgba(255, 255, 255, .15) 25%, transparent 25%,
transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%,
transparent 75%, transparent);
background-image: -moz-linear-gradient(135deg, rgba(255, 255, 255, .15) 25%, transparent 25%,
transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%,
transparent 75%, transparent);
background-image: -ms-linear-gradient(135deg, rgba(255, 255, 255, .15) 25%, transparent 25%,
transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%,
transparent 75%, transparent);
background-image: -o-linear-gradient(135deg, rgba(255, 255, 255, .15) 25%, transparent 25%,
transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%,
transparent 75%, transparent);
background-image: linear-gradient(135deg, rgba(255, 255, 255, .15) 25%, transparent 25%,
transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%,
transparent 75%, transparent);
-webkit-animation: animate-stripes 3s linear infinite;
-moz-animation: animate-stripes 3s linear infinite;
}
@-webkit-keyframes animate-stripes {
0% {background-position: 0 0;} 100% {background-position: 60px 0;}
}
@-moz-keyframes animate-stripes {
0% {background-position: 0 0;} 100% {background-position: 60px 0;}
}
.urt {
border-radius: 4px;
background: #3BA340;
text-align: center;
border-left: 2px #3BA340 solid;
border-right: 2px #3BA340 solid;
}
.urv {
border-radius: 4px;
background: #E9473C;
text-align: center;
border-left: 2px #E9473C solid;
border-right: 2px #E9473C solid;
}
.urp {
border-radius: 4px;
background: #F0B92D;
text-align: center;
border-left: 2px #F0B92D solid;
border-right: 2px #F0B92D solid;
}
.urx {
border-radius: 4px;
background: #AC8BF1;
text-align: center;
border-left: 2px #AC8BF1 solid;
border-right: 2px #AC8BF1 solid;
}
</style>
<?
$ban_f = $pdo->query("SELECT * FROM `ban_files` WHERE `id_user` = '$user[id]' AND `status` = '1' AND `type` = 'video' LIMIT 1")->fetch(PDO::FETCH_ASSOC);
if ($ban_f['status']==1)
{
header('location: /modules/foto/admin/ban_user.php');
}
#Навигация
echo "<div class='card-header'>";
echo "<a href='/' data-toggle='tooltip' data-placement='right' title='" . lang('На главную') . "'><i class='fa fa-home fa-lg'></i></a> <i class='fa fa-angle-right fa-fw'></i> ";
echo "<a href='/info.php?id=$user[id]'>$user[nick]</a> <i class='fa fa-angle-right fa-fw'></i> ";
echo "<a href='/modules/blogs/user.php?id=$user[id]'>" . lang('блог') . "</a> <i class='fa fa-angle-right fa-fw'></i> Прикрепить видео</div>";
if(isset($_GET['add'])){
$fl = $pdo->query("SELECT * FROM `user_video` WHERE `id_user` = '$user[id]' AND `id` = '".intval($_GET['id_files'])."' LIMIT 1")->fetch(PDO::FETCH_ASSOC);
$_SESSION['message'] = 'Видео успешно добавлено';
$pdo->query("INSERT INTO `notes_files` (`name`, `id_post`, `type`, `id_file`, `id_user`, `time`, `id_f`) values('$fl[name]', '0', 'files_video', '".intval($_GET['id_files'])."', '$user[id]', '$time', '".intval($_GET['id_files'])."')");
header("Location: /modules/blogs/add.php?");
}
///////////////////////////////////////////////////////////
$dir_id=$pdo->query("SELECT * FROM `user_dirv` WHERE `id_user` = '$user[id]' LIMIT 1")->fetch(PDO::FETCH_ASSOC);
if ($dir_id['id_user']==$user['id']){
if (isset($_GET['ok'])){
if (!isset($_FILES['file']))$err='Ошибка при выгрузке видео';
elseif (!isset($_FILES['file']['tmp_name']) || filesize($_FILES['file']['tmp_name'])>$disk)$err[]='Размер видео превышает установленные ограничения';
else
{
$id_dir = intval($_POST['id_dir']);
$file=htmlspecialchars($_FILES['file']['name']);
$file=htmlspecialchars(preg_replace('(\#|\?)', NULL, $file));
$name=htmlspecialchars(preg_replace('#\.[^\.]*$#', NULL, $file)); // имя файла без расширения
$ras=htmlspecialchars(strtolower(preg_replace('#^.*\.#', NULL, $file)));
$imya=htmlspecialchars($name);
$size=htmlspecialchars(filesize($_FILES['file']['tmp_name']));
$rasss=explode(';', $dir_id['ras']);
$ras_ok=false;
for($i=0;$i<count($rasss);$i++)
{
if ($rasss[$i]!=NULL && $ras==$rasss[$i])$ras_ok=true;
}
if (!$ras_ok)$err='Неверный формат видео';}
if (isset($_POST['metka']) && ($_POST['metka'] == '0' || $_POST['metka'] == '1'))$metka = $_POST['metka'];
else $metka = 0;
$opis=NULL;
if (isset($_POST['msg']))
$opis=stripslashes(htmlspecialchars($_POST['msg']));
if (utf8_strlen($opis)>300){$err='Описание не может превышать больше 300 символов';}
$id_dir = intval($_POST['id_dir']);
$file=htmlspecialchars($_FILES['file']['name']);
$file=htmlspecialchars(preg_replace('(\#|\?)', NULL, $file));
$name=htmlspecialchars(preg_replace('#\.[^\.]*$#', NULL, $file)); // имя файла без расширения
$ras=htmlspecialchars(strtolower(preg_replace('#^.*\.#', NULL, $file)));
$imya=htmlspecialchars($name);
if ($pdo->query(("SELECT COUNT(*) FROM `user_video` WHERE `dir` = '$id_dir' AND `name` = '$imya'"),0)->fetchColumn()!=0)
$err='Видео с таким названием уже есть в этой папке';
if (!isset($err)){
$pdo->query("INSERT INTO `user_video` (`metka`, `dir`, `name`, `ras`, `size`, `time`, `id_user`, `opis` )
VALUES ('$metka', '$id_dir', '$imya', '$ras', '$size', '$time', '$user[id]', '$opis' )");
$id_file = $pdo->lastInsertId();
if (!@copy($_FILES['file']['tmp_name'], H."files/user_video/$id_file.mp4"))
{
$pdo->query("DELETE FROM `user_video` WHERE `id` = '$id_file' LIMIT 1");
$err[]='Ошибка при выгрузке видео';
}
$_SESSION['message'] = 'Файл успешно загружен';
header("Location: /modules/blogs/add.php?");
}
}}}
///////////////////////////////////////////
?>
<link rel="stylesheet" href="style/css/email.css" type="text/css" />
<?php
if (isset($_GET['category_id'])) {
$category_id = (int) $_GET['category_id'];
$set['p_str'] = 24;
$k_post = $pdo->query(("SELECT COUNT(*) FROM `user_video` WHERE `id_user` = '$user[id]'"), 0)->fetchColumn();
$k_page = k_page($k_post, $set['p_str']);
$page = page($k_page);
$start = $set['p_str'] * $page - $set['p_str'];
if ($k_post == 0) {
$doc->NoResult();
}
$q = $pdo->query("SELECT * FROM `user_video` WHERE `id_user` = '$user[id]' ORDER BY `id` DESC LIMIT $start, $set[p_str]");
echo "<div class='list-group-item'>";
while ($post = $q->fetch(PDO::FETCH_ASSOC)) {
echo "<a href='?id_files=$post[id]&add'><font color=#367CB4><i class='fa fa-video-camera'></i></font> <b><font color=black>$post[name].$post[ras]</font></b> </a>";
}
echo "</div>";
if ($k_page > 1) {
echo "<div class='list-group-item'>";
str('?type=file&category_id=' . $category_id . '&', $k_page, $page);
echo "</div>";
}
$urlBack = '?type=file&category';
} elseif (isset($_GET['category'])) {
$k_post = $pdo->query(("SELECT COUNT(*) FROM `user_video` WHERE `id_user` = '$user[id]'"), 0)->fetchColumn();
$k_page = k_page($k_post, $set['p_str']);
$page = page($k_page);
$start = $set['p_str'] * $page - $set['p_str'];
if ($k_post == 0) {
$doc->NoResult();
}
$q = $pdo->query("SELECT * FROM `user_video` WHERE `id_user` = '$user[id]' ORDER BY `id` DESC LIMIT $start, $set[p_str]");
while ($post = $q->fetch(PDO::FETCH_ASSOC)) {
$count = $pdo->query(("SELECT COUNT(*) FROM `user_video` WHERE `id_user` = '$user[id]'"), 0)->fetchColumn();
echo "<div class='list-group-item'>";
echo "<a href='?id_files=$post[id]&add'><font color=#367CB4><i class='fa fa-video-camera'></i></font> <b><font color=black>$post[name].$post[ras]</font></b> </a>";
echo "</div>";
}
if ($k_page > 1) {
echo "<div class='list-group-item'>";
str('?type=file&category&', $k_page, $page);
echo "</div>";
}
$urlBack = '?type=file';
} else {
$q = $pdo->query("SELECT * FROM `user_video` WHERE `id_user` = '$user[id]' ORDER BY `id` DESC LIMIT 5");
if ($q->rowCount() > 0) {
while ($post = $q->fetch(PDO::FETCH_ASSOC)) {
echo "<div class='list-group-item'>";
echo "<a href='?id_files=$post[id]&add'><font color=#367CB4><i class='fa fa-video-camera'></i></font> <b><font color=black>$post[name].$post[ras]</font></b> </a>";
echo "</div>";
}
echo "<div class='list-group-item'>";
echo "<a href='?type=file&category'>" . lang('Показать все видео') . "</a>";
echo "</div>";
} else {
echo "<div class='alert alert-info'>" . lang('У вас еще нет на сайте загруженных видео, но вы можете воспользоваться формой ниже') . ".</div>";
}
echo "<form class='list-group-item' enctype=\"multipart/form-data\" name='message' action='?type=file&dir=".$dir_id['id']."&ok' method=\"post\">";
echo "<font color='#D59435'><i class='fa fa-folder fa-lg'></i></font> <b>Выберите папку для выгрузки видео:</b><br/>";
echo "<select name='id_dir' class='form-control' style='width: 50%;'>\n";
$k_post = $pdo->query(("SELECT COUNT(*) FROM `user_dirv` WHERE `id_user` = '$user[id]' "),0)->fetchColumn();
if ($k_post==0)
{
echo "<br>У Вас нет папок для выгрузки видео. Пожалуйста, создайте папку.<br><br><a class='knopka' href='/user/video/edit.php?id=0&act=new'><font color=white>Создать папку</font></a>";
}
$q = $pdo->query("SELECT * FROM `user_dirv` WHERE `id_user` = '$user[id]' ORDER BY `id` DESC");
while ($post = $q->fetch(PDO::FETCH_ASSOC))
{
echo "<option value='$post[id]'".($id_dir == $post['id']?" selected='selected'" : null).">" . text($post['name']) . "</option>\n";
}
echo "</select>\n";
echo "<br/><b>Выберите видео</b> <font color='gray'><small>(Не более ".size_file($disk).")</small></font> :<br />
<input class='form-control' style='width:50%;' name='file' type='file'/><br />
<b>Описание</b> <font color='gray'><small>(300 символов)</small></font> :<br />
<textarea class='form-control' name='msg'></textarea><br />";
echo "<label><input type='checkbox' name='metka' value='1' /> Метка <font color=red>18+</font></label><br /><br />
<button class='knopka' name=''><i class='fa fa-upload fa-fw'></i> Загрузить</button><br /><br />";
echo "</form>";
echo "<div class='list-group-item'><b>Допустимый размер выгружаемых файлов:</b><br><br>";
if ($pdo->query(("SELECT COUNT(*) FROM `disk` WHERE `id_user` = '".$user['id']."' AND `status` = '1' LIMIT 1"), 0)->fetchColumn()){
?>
<span style="width: 10%; color: gray;"><small><b><font color=orange>60MB</font> / 60MB</b></small></span>
<div class="progress-bar blue stripes">
<span style="width: 100%"></span>
</div><br>
<?
}else{
if ($user['rating'] >= 0 && $user['rating'] <= 19){
?>
<span style="width: 10%; color: gray;"><small><b><font color=green>5MB</font> / 60MB</b></small> <span class='urt'><span style='position: relative;bottom: 2px;'><font color='white'><font size='-2px'>3 уровень</font></font></span></span></span>
<div class="progress-bar blue stripes">
<span style="width: 10%"></span>
</div><br>
<?
}
if ($user['rating'] >= 20 && $user['rating'] <= 49){
?>
<span style="width: 10%; color: gray;"><small><b><font color=green>20MB</font> / 60MB</b></small> <span class='urv'><span style='position: relative;bottom: 2px;'><font color='white'><font size='-2px'>2 уровень</font></font></span></span></span>
<div class="progress-bar blue stripes">
<span style="width: 25%"></span>
</div><br>
<?
}
if ($user['rating'] >= 50 && $user['rating'] <= 119){
?>
<span style="width: 10%; color: gray;"><small><b><font color=green>30MB</font> / 60MB</b></small> <span class='urp'><span style='position: relative;bottom: 2px;'><font color='white'><font size='-2px'>1 уровень</font></font></span></span></span>
<div class="progress-bar blue stripes">
<span style="width: 50%"></span>
</div><br>
<?
}
if ($user['rating'] >= 120 && $user['rating'] <= 999999999999999999999){
?>
<span style="width: 10%; color: gray;"><small><b><font color=green>30MB</font> / 60MB</b></small></span>
<div class="progress-bar blue stripes">
<span style="width: 50%"></span>
</div><br>
<?
}
}
echo "<small>Объем дискового пространства: <b>не ограничен</b></small><BR><BR>";
echo "<small>Для 3 уровня аккаунтов доступно - <b>5MB</b><BR>";
echo "Для достигших 2 уровень доступно - <b>20MB</b><BR>";
echo "Для достигших 1 уровень доступно - <b>30MB</b><BR>";
echo "Для аккаунтов подключивших услугу <b>Размер выгружаемых файлов</b> доступно - <font color=orange><b>60MB</b></font> / <a href='/modules/shop/disk.php'>Подключить услугу</a></small><BR><BR>";
echo "<div class='mess'>" . lang('Разрешается выгружать видео в формате mp4') . ".</div></div>";
}
}else{
echo "<div class='list-group-item'><div class='err'>Выгрузка файлов временно недоступна по техническим причинам</div></div>";
}
include_once H . 'sys/inc/tfoot.php';