<?php
require_once('../classes/body.class.php');
require_once('../classes/db.class.php');
require_once('../classes/system.class.php');
$title= new Body;
$title->SetTitle('Галерея - Загрузка изображения');
$title->GetHeader();
$id = isset($_GET['id']) ? abs((int)$_GET['id']) : false;
echo'<div class="tile"><div class="t-header th-alt bg-teal"><div class="th-title"><i class="zmdi zmdi-widgets"></i><a href="/"style="text-decoration:none; color:white;"> Главная</a> :: <a href="/gallery"style="text-decoration:none; color:white;">Галерея</a> :: Загрузка изображения</div></div></div>';
if (isset($_POST['upl'])) {
$err = [];
$name = check($_POST['name']);
$text = check($_POST['text']);
$cid = abs((int)$_POST['cid']);
$fnames = $_FILES['file']['name'];
$pictures = ['.gif', '.jpg', '.jpeg', '.png'];
$ext = strtolower(strrchr($_FILES['file']['name'], '.'));
$par = @getimagesize($_FILES['file']['tmp_name']);
if (empty($fnames)) {
$err[] = 'Выберите файл!';
} elseif ($par[0] > 1800 || $par[1] > 1600) {
$err[] = 'Большое расширение файла!';
} elseif (preg_match('/(\.php|\.pl|\.htaccess)/i', $fnames) || !in_array($ext, $pictures)) {
$err[] = 'Запрещенный формат файла!';
} elseif ($_FILES['file']['size'] > 1024 * 4 * 1024){
$err[] = 'Большой размер файла!';
}
$uid = (empty($id) ? '0': $cid);
$foto = 'files/album/'.homeurl.'_' . mt_rand(100000, 999999) . $ext;
if (empty($err)) {
copy($_FILES['file']['tmp_name'], $_SERVER['DOCUMENT_ROOT'].'/'.$foto);
DB::$dbs->query("INSERT INTO album_foto SET
user_id = ?, name = ?, text = ?, time = ?,
cid = ?, path = ?", [$b['id'],$name,$text,time(),$uid,$foto]);
$l = DB::$dbs->lastInsertId();
DB::$dbs->query("UPDATE `blogger` SET `gears` = `gears` + ? WHERE id = ?", [1,$b['id']]);
lenta(Nick($b['id']).' добавил новое <a href="/gallery/comm.html?id='.$l.'">[фото]</a> в Галерею.');
if ($id!=0) {
echo '<div class="list-group-item media">Изображение добавлено!<br/><a href="viewalb.html?id='.$id.'">Вернуться в альбом</a></div>';
$title->GetMenu();
$title->GetFooter();
die();
} else {
echo '<div class="list-group-item media">Изображение добавлено!<br/><a href="personal.html?id='.$b['id'].'">Вернуться в мою галлерею</a></div>';
$title->GetMenu();
$title->GetFooter();
die();
}
}
else {
echo '<div class="alert alert-danger">';
foreach($err as $error) {
echo $error.'<br/>';
}
echo '</div>';
}
}
echo '<div class="list-group-item media"><form ENCTYPE="multipart/form-data" method="post" action="upload.html?id='.$id.'">Название:<br/><input class="form-control" type="text" name="name"/><br/>Описание:<br/><br/>';
quickpaste('text');
quickpanel();
echo'<br/><br/><textarea class="form-control" rows="8" name="text"></textarea><br/>Выбрать раздел:<br/><select class="form-control" name="cid">';
if (!$id) {
echo '<option value="0">Галлерея '.$b['nick'].'</option>';
}
$from = DB::$dbs->query("SELECT * FROM album_cat");
while($a = $from -> fetch()) {
echo '<option value="' . $a['id'] . '">' . $a['name'] . '</option>';
}
echo '</select><br/>Изображение: (*max. 1800x1600px. 4mb.)<br/><input name="file" class="form-control" type="file" accept="image/jpeg, image/png, image/gif"/>
<br/>
<input type="submit" class="btn btn-primary" name="upl" value="Добавить"/></div></form>';
$title->GetMenu();
$title->GetFooter();
?>