View file xmyx.ru/club/act/edit.php

File size: 12.75Kb
<?

/*
 * Author - Tw1nGo
 * VK - https://vk.com/tw1ngo93
*/

if (isset($_GET['id'])){
    $group = mysql_fetch_assoc(mysql_query("SELECT * FROM `groups` WHERE `id` = '".abs(intval($_GET['id']))."' LIMIT 1"));
}
if (!isset($_GET['id']) || !isset($group) || $group['id'] <= 0 || !isset($user) || ($user['id'] != $group['id_user'] && $user['level'] <= 3)){
    header("Location: /groups");
    exit;
}


if (isset($user) && ($user['id'] == $group['id_user'] || $user['level'] >= 4)){

# Смена логотипа в группе
if(isset($_GET['tab']) && $_GET['tab'] == 'logo'){

$set['title'] = 'Редактирование группы '.text($group['title']).'';
include_once H.'sys/inc/thead.php';

// Конфигурационный файл
require 'config.php';

shapka_VK(true, '?act=edit', 'Логотип');

if (isset($_POST['cfms'])){

if (isset($_FILES['logotip']) && $imgc = @imagecreatefromstring(file_get_contents($_FILES['logotip']['tmp_name']))){

$img_x = imagesx($imgc);
$img_y = imagesy($imgc);

if ($img_x < 100 || $img_y < 100)
   $err = 'Маленькое изображение,  min: 100x100, у Вас '.$img_x.'x'.$img_y.'.';

if (!isset($err)){

# Удаляет старый логотип, если он есть       
if (is_file(H.'files/groups/logo/'.$group['id'].'.jpg')){
	unlink(H.'files/groups/logo/'.$group['id'].'.jpg');
}

if ($img_x > 200 || $img_y > 200){

if ($img_x == $img_y){
	$dstW = 200;
	$dstH = 200;
}
else if ($img_x > $img_y){
	$prop = $img_x/$img_y;
	$dstW = 200;
	$dstH = ceil($dstW/$prop);
} 
else{
	$prop = $img_y/$img_x;
	$dstH = 200;
	$dstW = ceil($dstH/$prop);
}
} 
else{
	$dstW = $img_x;
	$dstH = $img_y;
}

$screen = imagecreatetruecolor($dstW, $dstH);
imagecopyresampled($screen, $imgc, 0, 0, 0, 0, $dstW, $dstH, $img_x, $img_y);
imagedestroy($imgc);
imagejpeg($screen, H.'files/groups/logo/'.$group['id'].'.jpg');
imagedestroy($screen);
chmod(H.'files/groups/logo/'.$group['id'].'.jpg', 0777);

$_SESSION['message'] = "Фотография группы обновлена.";
header("Location: /group".$group['id']."");
exit;
}
} 
else{
	$err = 'Выберите изображение!';
}
}
 

?>   
<div class="_copts pcont fit_box">
<?
uvedom();
?>
<div class="owner_panel">
<div class="inline_upload_wrap op_iwrap"><img src="<?= Tw1nGo::Ava($group['id'])?>" class="op_img"></div>
<div class="op_cont">
<a class="op_owner al_g<?= $group['id']?> _g<?= $group['id']?>" href="/group<?= $group['id']?>"><?= text($group['title'])?></a>
<?
if($group['typic'] == 0){
?>
<div class="op_info">Открытая группа</div>
<?
}
elseif($group['typic'] == 1){
?>
<div class="op_info">Закрытая группа</div>
<?
}
elseif($group['typic'] == 2){
?>
<div class="op_info">Частная группа</div>
<?
}
?>
</div>
</div>

<div class="upanel">
<h4 class="slim_header">Смена логотипа группы</h4>
<div class="form_item bl_item">
<?
err();
?>
<form action="?act=edit&tab=logo" method="POST" method="post" enctype="multipart/form-data">
<dl class="fi_row">
<dt class="fi_label">Выберите изображение:</dt>
<dd class="iwrap"><input name="logotip" class="textfield" accept="image/*,image/png,image/gif,image/jpg" type="file"></dd>
</dl>
<div class="fi_row"><input class="button" name="cfms" value="Изменить" type="submit"></div>
</form>

</div>
</div>
</div>
<?

}elseif(isset($_GET['tab']) && $_GET['tab'] == 'cover'){


// Удаление обложки
if(isset($_GET['to']) && $_GET['to'] == 'dell'){

	if (is_file(H."files/groups/cover/".$group['id'].".jpg")){
    		unlink(H."files/groups/cover/".$group['id'].".jpg");
	}
	
	mysql_query("UPDATE `groups` SET `cover` = '0' WHERE `id` = '$group[id]'");
	header("location:  ?act=edit&tab=cover");
	exit;
}

$set['title'] = 'Редактирование группы '.text($group['title']).'';
include_once H.'sys/inc/thead.php';

// Конфигурационный файл
require 'config.php';

shapka_VK(true, '?act=edit', 'Обложка');

if (isset($user) && isset($_POST['cfms']) && isset($_FILES['file'])){

if ($imgc = @imagecreatefromstring(file_get_contents($_FILES['file']['tmp_name']))){

$img_x = imagesx($imgc);
$img_y = imagesy($imgc);

if ($img_x > 900 || $img_y > 220)$err = '<b>Слишком большой размер обложки</b><br />Загружайте обложку размером менее чем 900х200.';
if ($img_x < 610 || $img_y < 160)$err = '<b>Слишком маленький размер обложки</b><br />Загружайте обложку размером более чем 160х610.';

if (!isset($err)){
	
	$Cover_uid = $group['id'];
	mysql_query("UPDATE `groups` SET `cover` = '$Cover_uid' WHERE `id` = '$group[id]'");
	
	@unlink(H."files/groups/cover/$Cover_uid.jpg");
	imagejpeg($imgc,H."files/groups/cover/$Cover_uid.jpg",90);
	@chmod(H."files/groups/cover/$Cover_uid.jpg",0777);
	imagedestroy($imgc);

	$_SESSION['message'] = 'Обожка успешно загружена.';
	header("location:  /group".$group['id']."");
	exit;
}

}
else 
$err = 'Выбранный Вами формат обложки не поддерживается!';

}

?>   
<div class="_copts pcont fit_box">
<?

if($group['cover'] != 0){
?>
<div class="groupCover">
      <div class="groupCover__image" style="background-image: url('http://xmyx.ru/files/groups/cover/<?= $group['id']?>.jpg');"></div>
      <div class="groupCover__scrim"></div>
      <div class="groupCover__dimmer"></div>
</div>
<?
}

?>
<div class="owner_panel">
<div class="inline_upload_wrap op_iwrap"><img src="<?= Tw1nGo::Ava($group['id'])?>" class="op_img"></div>
<div class="op_cont">
<a class="op_owner al_g<?= $group['id']?> _g<?= $group['id']?>" href="/group<?= $group['id']?>"><?= text($group['title'])?></a>
<?
if($group['typic'] == 0){
?>
<div class="op_info">Открытая группа</div>
<?
}
elseif($group['typic'] == 1){
?>
<div class="op_info">Закрытая группа</div>
<?
}
elseif($group['typic'] == 2){
?>
<div class="op_info">Частная группа</div>
<?
}
?>
</div>
</div>

<div class="upanel">
<h4 class="slim_header">Смена обложки группы</h4>
<div class="form_item bl_item">
<?
err();
uvedom();
?>
<form action="?act=edit&tab=cover" method="POST" method="post" enctype="multipart/form-data">
<dl class="fi_row">
<dt class="fi_label">Выберите обложку:</dt>
<dd class="iwrap"><input name="file" class="textfield" accept="image/*,image/png,image/gif,image/jpg" type="file"></dd>
</dl>
<div class="fi_row">
<input class="button" name="cfms" value="Изменить" type="submit">
<?
if (is_file(H.'files/groups/cover/'.$group['id'].'.jpg')){
?>
<div class="near_btn"><a href="?act=edit&tab=cover&to=dell">Удалить обложку</a></div>
<?
}
?>
</div>
</form>

</div>
</div>
</div>
<?
}
else{

$set['title'] = 'Редактирование группы '.text($group['title']).'';
include_once H.'sys/inc/thead.php';

// Конфигурационный файл
require 'config.php';

shapka_VK(true, '/group'.$group['id'].'', 'Информация');


# Сохранение настроек
if (isset($_POST['cfms']) && isset($_POST['title']) && isset($_POST['description']))
{

$name = my_esc($_POST['title']);

if (strlen2($name) == 0){
	$err = 'Укажите название группы.';
}
else{
if (strlen2($name) < 4)$err = 'Короткое название группы, min: 4.';
if (strlen2($name) > 50)$err = 'Длинное название группы, max: 50.';
}
$name = my_esc($name);

$msg = $_POST['description'];
if (strlen2($msg) > 500)$err = 'Длинное описание группы, max: 500.';
$msg = my_esc($msg);

if (isset($_POST['website']) && $_POST['website'] != NULL && filter_var($_POST['website'], FILTER_VALIDATE_URL))
{
	$group['link'] = my_esc($_POST['website']);
} else {
	$group['link'] = '';
}

if (isset($_POST['access']) && $_POST['access'] != NULL && is_numeric($_POST['access']) && $_POST['access'] >= 0 && $_POST['access'] <= 2)
{
	$group['typic'] = abs(intval($_POST['access']));
} 
else{
	$group['typic'] = 0;
}
if (isset($_POST['category']) && $_POST['category'] != NULL && is_numeric($_POST['category']) && $_POST['category'] > 0 && mysql_result(mysql_query("SELECT COUNT(*) FROM `groups_subject` WHERE `id` = '".abs(intval($_POST['category']))."'"), 0) > 0)
{
	$group['subject'] = abs(intval($_POST['category']));
} 
else $err = 'Укажите тематику группы.';



if (!isset($err)){
	mysql_query("UPDATE `groups` SET `title` = '".$name."', `opis` = '".$msg."', `subject` = '".$group['subject']."', `link` = '".$group['link']."', `typic` = '".$group['typic']."' WHERE `id` = '".$group['id']."' LIMIT 1");
	$_SESSION['message'] = "<b>Изменения сохранены.</b><br>Основная информация и настройки группы сохранены.";  
	header("location:  /group".$group['id']."");
	exit; 
}


}



?>
<div class="_copts pcont fit_box">
<?
uvedom();
?>
<div class="owner_panel">
<div class="inline_upload_wrap op_iwrap"><img src="<?= Tw1nGo::Ava($group['id'])?>" class="op_img"></div>
<div class="op_cont">
<a class="op_owner al_g<?= $group['id']?> _g<?= $group['id']?>" href="/group<?= $group['id']?>"><?= text($group['title'])?></a>
<?
if($group['typic'] == 0){
?>
<div class="op_info">Открытая группа</div>
<?
}
elseif($group['typic'] == 1){
?>
<div class="op_info">Закрытая группа</div>
<?
}
elseif($group['typic'] == 2){
?>
<div class="op_info">Частная группа</div>
<?
}
?>
</div>
</div>

<div class="upanel">

<div class="profile_info">
<div class="profile_info_cont profile_info_custom">
<ul class="profile_menu">
<li><div class="inline_upload_wrap pointer_wrap _touched">
<a href="?act=edit&tab=logo" class="pm_item profile_photo_upload_wrap">
<div class="pointer pem_pointer"><i class="i_pointer"></i></div>
<div class="profile_photo_upload"><i class="i_icon i_photo"></i>Изменить фотографию</div>
</a>
</div></li>
</ul>
</div>
</div>

<h4 class="slim_header">Общая информация</h4>

<div class="form_item bl_item">
<?
err();
?>
<form action="?act=edit" method="POST">

<dl class="fi_row">
<dt class="fi_label">Название:</dt>
<dd class="iwrap"><input name="title" class="textfield" value="<?= text($group['title'])?>" type="text"></dd>
</dl>

<dl class="fi_row">
<dt class="fi_label">Тематика:</dt>
<dd>
<select class="basisGroup__groupEditCategory group_category0" id="category" name="category">    
<?
$q = mysql_query("SELECT * FROM `groups_subject` ORDER BY `name` ASC");

while ($r = mysql_fetch_array($q)){
?>
<option value="<?echo $r['id'];?>"<?= ($group['subject'] == $r['id'] ? " selected='selected'" : null)?>><?= text($r['name'])?></option>
<?
}
?>
</select></dd>
</dl>

<dl class="fi_row">
<dt class="fi_label">Описание:</dt>
<dd class="iwrap"><textarea name="description" class="textfield" rows="3"><?= text($group['opis'])?></textarea></dd>
</dl>

<dl class="fi_row">
  <dt class="fi_label">Веб-сайт:</dt>
  <dd class="iwrap"><input name="website" class="textfield" value="<?echo stripcslashes(htmlspecialchars($group['link']));?>" type="text"></dd>
</dl>

<dl class="fi_row fi_row_new">
  <dt class="fi_label">Тип группы:</dt>
  <dd><label class="option_row option_row_fl" onclick="">
  <input class="radio" name="access" value="0"<?= ($group['typic'] == 0 ? " checked='checked'" : null)?> type="radio">
  <div class="option_label">
    <div class="option_value">Открытая</div>
    <div class="option_tip">в группу могут вступить все желающие пользователи</div>
  </div>
</label><label class="option_row option_row_fl" onclick="">
  <input class="radio" name="access" value="1"<?= ($group['typic'] == 1 ? " checked='checked'" : null)?> type="radio">
  <div class="option_label">
    <div class="option_value">Закрытая</div>
    <div class="option_tip">в группу можно вступить по приглашению или подав заявку</div>
  </div>
</label><label class="option_row option_row_fl" onclick="">
  <input class="radio" name="access" value="2"<?= ($group['typic'] == 2 ? " checked='checked'" : null)?> type="radio">
  <div class="option_label">
    <div class="option_value">Частная</div>
    <div class="option_tip">в группу можно попасть только по приглашению руководителей</div>
  </div>
</label></dd>
</dl>

<div class="fi_row"><input class="button" name="cfms" value="Сохранить" type="submit"></div>

</form>
</div>
<?
if($user['id'] == $group['id_user'] || $user['level'] >= 4){
?>
<a class="inline_item inline_item_blank" style="border-bottom: 1px solid #dfe3e8;" href="?act=dell_group">
  <div class="ii_body">
    <div class="ii_owner"> Удалить группу</div>
  </div>
</a>
<?
}
?>
</div>

</div>
<?

}

}
else{
	header("Location: /groups");
	exit;
}