Файл: foto/inc/gallery_show_act.php
Строк: 67
<?
//загружаем класс для работы с изображениями
require_once H."sys/inc/ImgType.class.php";
if ((user_access('foto_alb_del') || isset($user) && $user['id']==$ank['id']) && isset($_GET['act']) && $_GET['act']=='delete' && isset($_GET['ok']))
{
$q=mysql_query("SELECT * FROM `gallery_foto` WHERE `id_gallery` = '$gallery[id]'");
while ($post = mysql_fetch_assoc($q))
{
@unlink(H."files/foto/$post[id].png");
mysql_query("DELETE FROM `gallery_foto` WHERE `id` = '$post[id]' LIMIT 1");
}
if ($user['id']!=$ank['id'])admin_log('Фотогалерея','Фотоальбомы',"Удаление альбома $gallery[name] (фотографий: ".mysql_num_rows($q).")");
mysql_query("DELETE FROM `gallery` WHERE `id` = '$gallery[id]' LIMIT 1");
msg(lang('Фотоальбом успешно удален'));
aut();
echo "<div class="foot">n";
echo "«<a href='/foto/$ank[id]/'>".lang('К фотоальбомам')."</a><br />n";
echo "</div>n";
include_once '../sys/inc/tfoot.php';
exit;
}
if (isset($user) && $user['id']==$ank['id'] && isset($_FILES['file']))
{
if ($imgc=@imagecreatefromstring(file_get_contents($_FILES['file']['tmp_name'])))
{
$name=esc(stripcslashes(htmlspecialchars($_POST['name'])),1);
if (isset($_POST['translit1']) && $_POST['translit1']==1)$name=translit($name);
if ($name==null)$name=esc(stripcslashes(htmlspecialchars(preg_replace('#.[^.]*$#i', NULL, $_FILES['file']['name'])))); // имя файла без расширения)),1);
if (!preg_match("#^([A-zА-я0-9-_ ])+$#ui",$name))$err='В названии фото присутствуют запрещенные символы';
if (strlen2($name) < 3 ) $name = $name .'_'. mt_rand(1,99);
//$err='Короткое название';
if (strlen2($name) > 32)$err='Название не должно быть длиннее 32-х символов';
$name=my_esc($name);
$msg = $_POST['opis'];
if (isset($_POST['translit2']) && $_POST['translit2']==1)$msg=translit($msg);
if (strlen2($msg) > 1024)$err='Длина описания превышает предел в 1024 символов';
$msg=my_esc($msg);
$img_x=imagesx($imgc);
$img_y=imagesy($imgc);
if ($img_x > $set['max_upload_foto_x'] or $img_y>$set['max_upload_foto_y'])
$err = 'Размер изображения превышает ограничения в '.$set['max_upload_foto_x'].'*'.$set['max_upload_foto_y'];
if (!isset($err)){
mysql_query("INSERT INTO `gallery_foto` (`id_gallery`, `name`, `ras`, `type`, `opis` ,`id_user`,`time`,`act`) values ('$gallery[id]', '$name', 'png', 'image/png', '$msg','$user[id]','".time()."','1')");
$id_foto = mysql_insert_id();
mysql_query("UPDATE `gallery` SET `time` = '$time' WHERE `id` = '$gallery[id]' LIMIT 1");
//класс для работы с файлом изображения
$image = new ImgType();
//сам файл
$image->load($_FILES['file']['tmp_name']);
//размеры
$image->resizeToWidth($set['max_upload_foto_x']);
//сохраняем под ...
$image->save(H.'files/foto/'. $id_foto .'.png');
if ($set['img_copyright'] == 1)
{
if ($img_x == $img_y)
{
$dstW = $set['max_upload_foto_x']; // ширина
$dstH = $set['max_upload_foto_y']; // высота
}
elseif ($img_x > $img_y)
{
$prop = $img_x/$img_y;
$dstW = $set['max_upload_foto_x'];
$dstH = ceil($dstW/$prop);
}
else
{
$prop = $img_y/$img_x;
$dstH = $set['max_upload_foto_y'];
$dstW = ceil($dstH/$prop);
}
$screen = imagecreatetruecolor($dstW, $dstH);
$y=imagesy($screen);
imagecopyresampled($screen, $imgc, 0, 0, 0, 0, $dstW, $dstH, $img_x, $img_y);
// наложение копирайта
$screen = img_copyright($screen);
//Куда накладываем
imagejpeg($screen,H.'files/foto/'. $id_foto .'.png',90);
// Освобождаем память
imagedestroy($screen);
}
$_SESSION['message'] = 'Фотография успешно добавлена';
exit(header("Location: ?"));
}
}
else $err='Выбранный Вами формат изображения не поддерживается';
}
?>