View file ava.php

File size: 4.82Kb
<?php 

////////////////////////////////////////
///// Kyber ApiCMS 2013 apicms.ru //////
///// Запрещается продажа данной CMS ///
///// Автор Евгений Медянкин Kyber /////
///// ICQ 626-000-895 или 37-22-47 /////
////////////////////////////////////////

#подключаем ядро и шапку
////////////////////////////////////////
$title = 'Загрузка аватарки';
require_once 'api_core/apicms_system.php';
require_once 'api_core/head.php';
////////////////////////////////////////
# авторизовался
if ($user['id']){
echo '<div id="text">';
////////////////////////////////////////
$user_r = mysql_query("SELECT * FROM `users` WHERE `id` = '".$user['id']."'");
$users = mysql_fetch_array($user_r);
////////////////////////////////////////
# Вывод аватара
echo '<div class="subhead"><center>';
echo apicms_ava64($user['id']);
echo '</center></div>';
	
if (isset($_FILES['file'])){
if (preg_match('#\.jpe?g$#i',$_FILES['file']['name']) && $imgc=@imagecreatefromjpeg($_FILES['file']['tmp_name'])){
if (imagesx($imgc)>1 || imagesy($imgc)>256){
				$img_x=imagesx($imgc);
				$img_y=imagesy($imgc);

				if ($img_x==$img_y)
				{
					$dstW=256; // ширина
					$dstH=256; // высота 
				}
				elseif ($img_x>$img_y)
				{
					$prop=$img_x/$img_y;
					$dstW=256;
					$dstH=ceil($dstW/$prop);
				}else{
					$prop=$img_y/$img_x;
					$dstH=256;
					$dstW=ceil($dstH/$prop);
				}

				$screen=imagecreatetruecolor($dstW, $dstH);
				imagecopyresampled($screen, $imgc, 0, 0, 0, 0, $dstW, $dstH, $img_x, $img_y);
				imagedestroy($imgc);
				$avs=glob($_SERVER['DOCUMENT_ROOT'].'/files/ava/'.$user['id'].'*');
				if ($avs)
				{
					foreach ($avs as $value)
					{
						@chmod($value,0777);
						@unlink($value);
					}
				}
				imagejpeg($screen,$_SERVER['DOCUMENT_ROOT'].'/files/ava/'.$user['id'].'.jpg',100);
				@chmod($_SERVER['DOCUMENT_ROOT'].'/files/ava/'.$user['id'].'.jpg',0777);
				imagedestroy($screen);
}else{
copy($_FILES['file']['tmp_name'], $_SERVER['DOCUMENT_ROOT'].'/files/ava/'.$user['id'].'.jpg');
}
$err .= '<div class="erors"><center>Аватар успешно установлен</center></div>';
}
elseif (preg_match('#\.gif$#i',$_FILES['file']['name']) && $imgc=@imagecreatefromgif($_FILES['file']['tmp_name']))
{
$avs=glob($_SERVER['DOCUMENT_ROOT'].'/files/ava/'.$user['id'].'*');
if ($avs)
{
foreach ($avs as $value)
{
@chmod($value,0777);
@unlink($value);
}
}

copy($_FILES['file']['tmp_name'], $_SERVER['DOCUMENT_ROOT'].'/files/ava/'.$user['id'].'.gif');
@chmod($_SERVER['DOCUMENT_ROOT'].'/files/ava/'.$user['id'].'.gif',0777);

$err .= '<div class="erors"><center>Аватар успешно установлен</center></div>';
}
elseif (preg_match('#\.png$#i',$_FILES['file']['name']) && $imgc=@imagecreatefrompng($_FILES['file']['tmp_name']))
{
if (imagesx($imgc)>256 || imagesy($imgc)>256)
{

					$img_x=imagesx($imgc);
					$img_y=imagesy($imgc);
					if ($img_x==$img_y)
					{
					$dstW=256; // ширина
					$dstH=256; // высота 
					}
					elseif ($img_x>$img_y)
					{
					$prop=$img_x/$img_y;
					$dstW=256;
					$dstH=ceil($dstW/$prop);
					}
					else
					{
					$prop=$img_y/$img_x;
					$dstH=256;
					$dstW=ceil($dstH/$prop);
					}

					$screen=ImageCreate($dstW, $dstH);
					imagecopyresampled($screen, $imgc, 0, 0, 0, 0, $dstW, $dstH, $img_x, $img_y);
					imagedestroy($imgc);

					$avs=glob($_SERVER['DOCUMENT_ROOT'].'/files/ava/'.$user['id'].'*');
					if ($avs)
					{
						foreach ($avs as $value)
						{
							@chmod($value,0777);
							@unlink($value);
						}
					}


					imagepng($screen,$_SERVER['DOCUMENT_ROOT'].'/files/ava/'.$user['id'].'.png');
					@chmod($_SERVER['DOCUMENT_ROOT'].'/files/ava/'.$user['id'].'.png',0777);
					imagedestroy($screen);
}else{
copy($_FILES['file']['tmp_name'], $_SERVER['DOCUMENT_ROOT']."/files/ava/$user[id].png");
}

$err .= '<div class="erors"><center>Аватар успешно установлен</center></div>';
}else{
$err .= '<div class="erors"><center>Неверный формат</center></div>';
}
}
echo '</div>';
apicms_error($err);
////////////////////////////////////////
echo '<div class="subhead"><center><div id="text"><form method="post" enctype="multipart/form-data" action="">
<a><input type="file" name="file" accept="image/*,image/gif,image/png,image/jpeg" /></a>
<input value="Загрузить" type="submit" /></form></div></center></div>';
////////////////////////////////////////
# окончилась сессия авторизации
} else {
echo '<div class="erors">Извините у вас нет прав для загрузки аватара</div>';
}
////////////////////////////////////////
apicms_foot();
?>