Файл: groups/admin.php
Строк: 191
<?
require'../config.php';
$align='left';
$title='Группы-Управлеие';
aut();
include '../style/head.php';
who_add(0,'grup');
if(!isset($_GET['gid']) && isset($_SESSION['gid']))
$gid = check(intval($_SESSION['gid']));
else
{
$gid = check(intval($_GET['gid']));
$_SESSION['gid']=$_GET['gid'];
}
$a = $db->sql_fetchrow($db->sql_query ("Select * from groups where id = '".$gid."'"));
if (!$a)
{
header ('Location: index?'.SID);
exit;
}
$group = $db->sql_fetchrow($db->sql_query ("Select * from group_users where gid = '".$gid."' and user_id = '".$user['id']."'"));
if ($user['level']<8&&!$a)
{
header ('Location: index?'.SID);
exit;
}
if($user['level']<8&&$group['level']<2)
{
header ('Location: index?'.SID);
exit;
}
switch($mod)
{
default:
if (isset($_GET['del']))
{
if($user['level']>=8||$group['level']==3)
{
$db->sql_query("DELETE FROM `groups` WHERE `id` = '".$gid."'");
$db->sql_query("DELETE FROM `group_users` WHERE `gid` = '".$gid."'");
$db->sql_query("DELETE FROM `group_chat` WHERE `gid` = '".$gid."'");
$db->sql_query("DELETE FROM `group_newskom` WHERE `gid` = '".$gid."'");
$db->sql_query("DELETE FROM `group_news` WHERE `gid` = '".$gid."'");
}
header ('Location: ./?'.SID);
}
echo '<br />';
$k_ac=$db->sql_fetchfield($db->sql_query("select count(*) as num from group_users where access = '1' and gid = '".$a['id']."'"),0);
if ($a['tip']==0)
echo '» <a href="?mod=access&gid='.$gid.'">Заявки на вступление</a>('.$k_ac.')<br />';
if($user['level']>=8||$group['level']==3)
echo '» <a href="?mod=set&gid='.$gid.'">Настройки группы</a><br />';
if($user['level']>=8||$group['level']==3)
echo '» <a href="?mod=icon&gid='.$gid.'">Иконка группы</a><br />';
if($user['level']>=8||$group['level']==3)
echo '
» <a href="?mod=logo&gid='.$gid.'">Логотип группы</a><br />
» <a href="?mod=news&gid='.$gid.'">Новости</a><br /><br />';
if($user['level']>=8||$group['level']==3)
echo '» <a href="?gid='.$gid.'&del">Удалить группу!</a><br />';
break;
case 'logo':
if($user['level']>=8||$group['level']==3)
{
if (empty($act))
{
echo 'Размер загружаемого лого не должен привышать '.$set['s_gr_logo'].' кб. Форматы: gif, jpg, jpeg, png, bmp.<br/>';
if ($_GET['err']==1)
echo '<b>Недопустимое расширение файла!</b><br />';
if ($_GET['err']==2)echo '<b>Размер файла не должен превышать '.$set['s_gr_logo'].' кб.</b><br />';
echo '
<form ENCTYPE="multipart/form-data" action="?mod='.$mod.'&act=act&gid='.$gid.'&'.SID.'" method="post">
<b>Прикрепить:</b><br/>
<INPUT NAME="file" TYPE="file" SIZE="20"><br/>
<input type="submit" class="ibutton" value="Отправить">
</form><br/>';
}
else
{
if(!isset($_FILES['file']))
$err = "<b>Вы не указали файл!</b><br/>";
$pictures = array('.gif', '.jpg', '.jpeg', '.bmp', '.png');
$ext = strtolower(strrchr($_FILES['file']['name'], '.'));
$fnames=$_FILES['file']['name']; //имя
if ((preg_match("/.php/i", $fnames)) or (preg_match("/.pl/i", $fnames)) or ($fnames == ".htaccess"))
{
header ('Location: ?mod='.$mod.'&err=1&'.SID);
exit;
}
if(!in_array($ext, $pictures))
{
header ('Location: ?mod='.$mod.'&err=1&'.SID);
exit;
}
if($_FILES['file']['size'] > (1024 * $set['s_gr_logo']))
{
header ('Location: ?mod='.$mod.'&err=2&'.SID);
exit;
}
$logo = "files/groups/logo/".$gid.$ext."";
@copy($_FILES['file']['tmp_name'], H.$logo);
@chmod(H.basename($logo), 0644);
@$db->sql_query ("Update groups set logo='".$logo."' where id ='".$gid."'");
echo '<b>Логотип успешно загружен!</b>';
}
}
break;
case 'icon':
if($user['level']>=8||$group['level']==3)
{
$ava = check($_GET['ava']);
if (empty($ava))
{
$path = 'icons';
$col = 10;
$d=opendir("$path");
if(isset($_GET['list']))
$list = check(intval($_GET['list']));
else
$list = check(intval($_POST['list']));
if(!$list) $list = "1";
$n = "1";
while(($k=readdir($d))!==false)
{
if ($k=='.'||$k=='..'||$k=="index.php"||$k==".htaccess"||$k==".Thumbs.db") continue;
$n++;
}
closedir($d);
$num=($n/$col);
if ($num!==(int)$num)
{
$foo = (int)$num;
$fo = ($foo + 1);
}
else
{
$fo=$num;
}
for ($i="1"; $i<=$fo; $i++)
{
/*echo "<a href="1?list=$i">$i</a>|";*/
}
if ($list == "")
{
$c="0";
}
else
{
$c=($col*($list-1));
}
$d=opendir("$path");
$la = "-1";
echo "Вы можете установить любую из этих иконок, просто щелкните на понравившейся картинке.<br/>";
while(($e=readdir($d)))
{
if ($e=='.'||$e=='..'||$e=="index"||$e==".htaccess"||$e==".Thumbs.db") continue;
$la = $la + 1;
if($la>$c-1 and $la<$c+$col)
{
$laa = $la + 1; // Номер файла
echo "<a href="?mod=".$mod."&gid=$gid&ava=$e"><img src="$path/$e" alt="$e1"/></a><br/> ";
}
}
for ($i="0";$i<=$fo;$i++)
if ($list == "$path")
{
$c="0";
}
else
{
$c=($col*($list-1));
}
$lis = $list + 1;
$lis1 = $list - 1;
echo "<br/>";
if ($lis1 < "1")
{
echo "<<пред.";
}
else
{
echo "<a href="?list=$lis1&mod=".$mod."&gid=$gid"><<пред. </a>";
}
if ($lis == "$i")
{
echo "| след.>><br/>";
}
else
{
echo "| <a href="?list=$lis&mod=".$mod."&gid=$gid">след.>></a><br/>";
}
if ($ver!='wml')
echo "<form method="POST" action="?mod=".$mod."&gid=$gid" name="auth">";
echo "Перейти к:<br/>";
echo "<input name="list" format="*N" size="3"/><br/>";
echo "странице<br/>";
if ($ver=='wml')
{
echo "<anchor title="go">Пошёл<go href="?$ses&&mod=avatars" method="post">
<postfield name="list" value="$(list)"/>
</go></anchor><br/>";
}
else
{
echo "<input type="submit" class="ibutton" value="Пошёл" name="enter"/></form><br/>";
}
$alls = $i - 1;
echo "<br/>";
echo "Иконок:<b> $n</b><br/>Страницa:<b> $list/$alls</b><br/>";
closedir($d);
}
else
{
@$db->sql_query ("Update groups set icon='".$ava."' where id ='".$gid."'");
echo "<b>Иконка группы успешно установлена!</b><br/>";
}
}
break;
case 'access':
if (empty($user['max']))
$user['max']=10;
$max = $user['max'];
$k_post=$db->sql_fetchfield($db->sql_query("select count(*) as num from group_users where access = '1'"),0);
$k_page=k_page($k_post,$max);
$page=page($k_page);
$start=$max*$page-$max;
$r = $db->sql_query ("Select * from group_users where access = '1' order by id LIMIT $start, $max");
if ($k_post == 0)
echo '<br />Список пуст...<br />';
else
{
if (($max*$page)<$k_post)
$maxi = $max*$page;
else $maxi = $k_post;
echo 'показаны '.($start+1).'-'.$maxi.' из '.$k_post.'<br /><br />';
}
$post_k=$start+1;
$nick = check($_GET['nick']);
if (isset($_GET['yes']))
{
$db->sql_query('UPDATE `group_users` SET `access` = "0" WHERE `user_id` = "'.$nick.'"');
header('Location: ?mod='.$mod.'&gid='.$gid.'&'.SID);
}
if (isset($_GET['no']))
{
$db->sql_query("DELETE FROM `group_users` WHERE `user_id` = '".$nick."';");
header('Location: ?mod='.$mod.'&gid='.$gid.'&'.SID);
}
while($a = @$db->sql_fetchrow($r))
{
echo links.'<b>'.user($a['user_id'],1).'</b> [<a href="?mod='.$mod.'&gid='.$gid.'&nick='.$a['user_id'].'&yes">Принять</a>]|[<a href="?mod='.$mod.'&gid='.$gid.'&nick='.$a['user_id'].'&no">Отклонить</a>]'.div;
echo '<dl></dl>';
}
if ($k_page>1)
{
echo '<dl><dt></dt></dl>';
str('?mod='.$mod.'&gid='.$gid.'&',$k_page,$page); // Вывод страниц
echo '<br /><dl><dt></dt></dl>'; }
break;
case 'set':
if($user['level']>=8||$group['level']==3)
{
if (empty($act))
{
if ($ver!='wml')
echo '<form action="?mod='.$mod.'&act=act&gid='.$gid.'&'.SID.'" method="post">
Название:<br /><input name="name" value="'.$a['name'].'" maxlength="30" title="Название"/><br/>';
if($a['tip']==1)
{
echo 'Тип:<br/><select name="tip">
<option value="1">Открытая</option>
<option value="0">Закрытая</option>
</select><br />';
}
else
{
echo 'Тип:<br/><select name="tip">
<option value="0">Закрытая</option>
<option value="1">Открытая</option>
</select><br />';
}
if ($ver=='wml')
echo 'Описание:<br /><input name="opis'.$ref.'" value="'.$a['opis'].'" title="Описание"/><br/>';
else
echo'Описание:<br /><textarea cols="'.$user['pole2'].'" rows="'.$user['pole1'].'" name="opis" >'.$a['opis'].'</textarea><br />';
if ($ver=='wml')
{
echo '<br /><anchor title="go">Изменить<go href="?mod='.$mod.'&act=add&gid='.$gid.'&'.SID.'" method="post">
<br /><postfield name="name" value="$name'.$ref.'"/>
<postfield name="opis" value="$opis'.$ref.'"/>
<postfield name="tip" value="$tip"/>
<postfield name="code" value="$code"/>
</go></anchor><br />';
}
else
{
echo '<br /><input type="submit" class="ibutton" value="Изменить"/></form><br /><br />';
}
}
else
{
$name = check($_POST['name']);
$opis = check($_POST['opis']);
$tip = check($_POST['tip']);
$_POST['code'] = check($_POST['code']);
if ($user['translit']==1)
$name = translit($name);
if ($user['translit']==1)
$opis = translit($opis);
if (strlen2($name)<2)
$err = 'Короткое название!';
if (strlen2($opis)<10)
$err = 'Короткое описание!';
$p = @$db->sql_fetchrow($db->sql_query(@"select * from `groups` where name='$name' and id != '".$gid."' limit 1;"));
if ($name == $p['name'])
$err = 'Такая группа уже есть!';
if(empty($err))
{
if ($db->sql_query ("UPDATE `groups` SET `name` = '$name', `opis` = '$opis', `tip` = '$tip' where `id`='".$gid."' LIMIT 1"))
{
echo '<b>Изменения сохранены.</b><br />';
}
else
echo '<b>Ошибка. Сообщите администрации</b><br />';
}
else
echo $err;
}
}
break;
case 'news':
if (empty($act))
{
if (isset($_GET['delk']))
{
if($user[level]>=5)
{
$db->sql_query("DELETE FROM `group_news` WHERE `id` = '".check(intval($_GET['delk']))."' and gid = '".$gid."'");
$db->sql_query("DELETE FROM `group_newskom` WHERE `new` = '".check(intval($_GET['delk']))."' and gid = '".$gid."'");
}
header ('Location: ?mod='.$mod.'&gid='.$gid.'&'.SID);
}
echo '<a href="?mod='.$mod.'&gid='.$gid.'&act=add">Добавить новость</a><dt></dt>';
if (empty($user['max']))
$user['max']=10;
$max = $user['max'];
$k_post=$db->sql_fetchfield($db->sql_query("select count(*) as num from group_news where gid = '".$gid."'"),0);
$k_page=k_page($k_post,$max);
$page=page($k_page);
$start=$max*$page-$max;
$r = $db->sql_query ("Select * from group_news where gid = '".$gid."' order by time desc LIMIT $start, $max");
if ($k_post == 0)
echo 'Новостей нет<br />';
$post_k=$start+1;
while($a = @$db->sql_fetchrow($r))
{
echo links.''.nik($a['user_id']).' ('.times($a['time']).') <a href="?mod='.$mod.'&gid='.$gid.'&delk='.$a['id'].'">[Удал]</a>|<a href="?mod='.$mod.'&gid='.$gid.'&act=edit&new='.$a['id'].'">[Изм]</a>'.div;
echo text($a['msg']).'<dl></dl>';
}
if ($k_page>1)
{
echo "<dl><dt></dt></dl>";
str('?mod='.$mod.'&gid='.$gid.'&',$k_page,$page); // Вывод страниц
echo "<br /><dl><dt></dt></dl><br />";
}
}
else
if($act=='add')
{
$msg = check($_POST['msg']);
if (empty($msg))
{
if ($ver!='wml')
{
echo '
<form action="?mod='.$mod.'&gid='.$gid.'&act='.$act.'&'.SID.'" method="post">
Новость:<br /><textarea cols="'.$user['pole2'].'" rows="'.$user['pole1'].'" name="msg" ></textarea><br />
<br /><input type="submit" class="ibutton" value="Добавить"/></form><br /><br />';
}
else
{
echo '
Новость:<br />
<input name="msg'.$ref.'" title="Новость"/>
<br/><br />
<anchor title="go">Добавить<go href="?mod='.$mod.'&gid='.$gid.'&act='.$act.'&'.SID.'" method="post">
<postfield name="msg" value="$msg'.$ref.'"/>
</go></anchor><br/>';
}
}
else
{
if (strlen2($msg)<5)
{
echo 'Новость слишком короткая!';
exit;
}
if ($user['translit']==1)
$msg = translit($msg);
if ($db->sql_query ("INSERT INTO group_news (gid,user_id,time,msg) VALUES ('$gid','$user[id]','$time','$msg')"))
{
header ('Location: ?mod='.$mod.'&gid='.$gid.'&'.SID);
exit;
}
else
echo 'Ошибка!<br />';
}
}
else
if($act=='edit')
{ // Изменение
$msg = check($_POST['msg']);
$new = check(intval($_GET['new']));
if (empty($msg))
{
$a = @$db->sql_fetchrow($db->sql_query ("Select * from group_news where id = '".$new."' and gid = '".$gid."'"));
if ($ver!='wml')
{
echo '<form action="?mod='.$mod.'&gid='.$gid.'&new='.$new.'&act=edit&'.SID.'" method="post">
Новость:<br /><textarea cols="'.$user['pole2'].'" rows="'.$user['pole1'].'" name="msg" >'.text($a[msg],false,true,false,false,false).'
</textarea><br /><br />
<input type="submit" class="ibutton" value="Изменить"/>
</form><br /><br />';
}
else
{
echo 'Новость:<br />
<input name="msg'.$ref.'" value="'.text($a[msg],false,true,false,false,false).'" title="Новость"/>
<br/><br />
<anchor title="go">Изменить<go href="?mod='.$mod.'&new='.$new.'&act=edit&'.SID.'" method="post">
<postfield name="msg" value="$msg'.$ref.'"/>
</go></anchor><br/>';
}
}
else
{
$msg = check($_POST['msg']);
if (strlen2($msg)<5)
{
echo 'Новость слишком короткая!';
exit;
}
if ($user['translit']==1)
$msg = translit($msg);
if ($db->sql_query("UPDATE `group_news` SET `msg` = '$msg' WHERE `id` = '".$new."' and gid = '".$gid."'"))
{
header ('Location: ?mod='.$mod.'&gid='.$gid.'&'.SID);
exit;
}
else
echo 'Ошибка!<br />';
}
}
break;
}
echo "<br/>";
if ($mod)echo gb.'<a href="?gid='.$gid.'">Управление</a>'.div;
echo gb.'<a href="group'.$gid.'">Группа</a>'.div;
include '../style/foot.php';
?>