Файл: www/party.php
Строк: 197
<?php
include 'inc/mysql.php';
include 'inc/check.php';
include 'inc/functions.php';
top();
include 'inc/account.php';
$titlestr='Отряд';
include 'inc/interface.php';
if(isset($_SESSION['auth']) && $_SESSION['auth']==1){
@$party=mysql_fetch_assoc(mysql_query("SELECT * FROM `party` WHERE `id`='".$account['party']."'"));
if (isset($_GET['out_all'])){
if ($account['party']==$party['id']){
mysql_query("UPDATE `account` SET `party`='' WHERE `id`='".$account['id']."'");
mysql_query("INSERT INTO `msg_list`(`acount`,`msg`)VALUES('".$account['id']."','<div class="help">Ваша группа расформирована</div>')");
$qr=mysql_query("SELECT * FROM `account` WHERE `party`='".$party['id']."'");
while($resqr=mysql_fetch_assoc($qr)){
mysql_query("INSERT INTO `msg_list`(`acount`,`msg`)VALUES('".$resqr['id']."','<div class="help">Ваша группа расформирована</div>')");
mysql_query("UPDATE `account` SET `party`='' WHERE `id`='".$resqr['id']."'");
}
mysql_query("DELETE FROM `party` WHERE `id`='".$party['id']."'");
mysql_query("DELETE FROM `party_add` WHERE `party`='".$party['id']."'");
mysql_query("DELETE FROM `party_chat` WHERE `party`='".$party['id']."'");
header('Location: ?');
exit;
}else{
header("Location: ?");
exit;
}
}
if (isset($_GET['out'])){
if ($account['party']){
if ($party['account']==$account['party']){
mysql_query("UPDATE `account` SET `party`='' WHERE `id`='".$account['id']."'");
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `account` WHERE `party`='".$party['id']."'"),0)<=1){
mysql_query("UPDATE `account` SET `party`='' WHERE `party`='".$party['id']."'");
mysql_query("INSERT INTO `msg_list`(`acount`,`msg`)VALUES('".mysql_result(mysql_query("SELECT `id` FROM `account` WHERE `party`='".$party['id']."' LIMIT 1"),0)."','".$account['name']." покидает группу')");
mysql_query("INSERT INTO `msg_list`(`acount`,`msg`)VALUES('".mysql_result(mysql_query("SELECT `id` FROM `account` WHERE `party`='".$party['id']."' LIMIT 1"),0)."','Ваша группа расформирована')");
mysql_query("INSERT INTO `msg_list`(`acount`,`msg`)VALUES('".$account['id']."','<div class="help">Ваша группа расформирована</div>')");
mysql_query("DELETE FROM `party` WHERE `id`='".$party['id']."'");
mysql_query("DELETE FROM `party_add` WHERE `party`='".$party['id']."'");
mysql_query("DELETE FROM `party_chat` WHERE `party`='".$party['id']."'");
header("Location: ?");
exit;
}else{
$newlid=mysql_result(mysql_query("SELECT `id` FROM `account` WHERE `party`='".$party['id']."' ORDER BY RANDOM() LIMIT 1"),0);
mysql_query("UPDATE `party` SET `account`='".$newlid."'");
$qr=mysql_query("SELECT * FROM `account` WHERE `party`='".$party['id']."'");
while($resqr=mysql_fetch_assoc($qr)){
mysql_query("INSERT INTO `msg_list`(`acount`,`msg`)VALUES('".$resqr['id']."','".$account['name']." покидает группу')");
if ($newlid==$resqr['id']){
mysql_query("INSERT INTO `msg_list`(`acount`,`msg`)VALUES('".$resqr['id']."','<div class="help">Вы теперь лидер группы</div>')");
}else{
mysql_query("INSERT INTO `msg_list`(`acount`,`msg`)VALUES('".$resqr['id']."','".mysql_result(mysql_query("SELECT `name` FROM `account` WHERE `id`='".$newlid."'"),0)." теперь лидер группы')");
}
}
mysql_query("INSERT INTO `msg_list`(`acount`,`msg`)VALUES('".$account['id']."','<div class="help">Ваша группа расформирована</div>')");
header("Location: ?");
exit;
}
}else{
mysql_query("UPDATE `account` SET `party`='' WHERE `id`='".$account['id']."'");
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `account` WHERE `party`='".$party['id']."'"),0)<=1){
$lastusr=mysql_fetch_assoc(mysql_query("SELECT `id` FROM `account` WHERE `party`='".$party['id']."'"));
mysql_query("UPDATE `account` SET `party`='' WHERE `party`='".$party['id']."'");
mysql_query("INSERT INTO `msg_list`(`acount`,`msg`)VALUES('".$lastusr['id']."','<div class="help">".$account['name']." покидает группу</div>')");
mysql_query("INSERT INTO `msg_list`(`acount`,`msg`)VALUES('".$lastusr['id']."','<div class="help">Ваша группа расформирована</div>')");
mysql_query("INSERT INTO `msg_list`(`acount`,`msg`)VALUES('".$account['id']."','<div class="help">Ваша группа расформирована</div>')");
mysql_query("DELETE FROM `party` WHERE `id`='".$party['id']."'");
mysql_query("DELETE FROM `party_add` WHERE `party`='".$party['id']."'");
mysql_query("DELETE FROM `party_chat` WHERE `party`='".$party['id']."'");
header("Location: ?");
exit;
}else{
$qr=mysql_query("SELECT * FROM `account` WHERE `party`='".$party['id']."'");
while($resqr=mysql_fetch_assoc($qr)){
mysql_query("INSERT INTO `msg_list`(`acount`,`msg`)VALUES('".$resqr['id']."','<div class="help">".$account['name']." покидает группу</div>')");
}
mysql_query("INSERT INTO `msg_list`(`acount`,`msg`)VALUES('".$account['id']."','<div class="help">Ваша группа расформирована</div>')");
header("Location: ?");
exit;
}
}
}else{
header("Location: ?");
exit;
}
}
if(isset($_POST['msg']) && $account['party']){
$_POST['msg'] = trim($_POST['msg']);
if(!empty($_POST['msg'])){
if(mysql_result(mysql_query("SELECT COUNT(*) FROM `party_chat` WHERE `party`='".$party['id']."' AND `account`='".$account['id']."'"),0)>0 AND 5>(time()-mysql_result(mysql_query("SELECT `time` FROM `party_chat` WHERE `party`='".$party['id']."' AND `account`='".$account['id']."' ORDER BY `id` DESC LIMIT 1"),0)))$help[]='Нельзя писать так часто!';
if(strlen($_POST['msg'])>1024) $help[]='Слишком длинное сообщение!';
if(strlen($_POST['msg'])<2) $help[]='Слишком короткое сообщение!';
}else{
$help[]='Пустое сообщение!';
}
if(!$help){
$msg = mysql_real_escape_string($_POST['msg']);
$msg = $msg;
mysql_query("INSERT INTO `party_chat`(`account`,`msg`,`time`,`party`) VALUES('".$account['id']."','".$msg."','".time()."','".$party['id']."')");
header("Location: ?"); exit;
}else{
foreach($help as $value){
echo '
<div class="help">'.$value.'</div>
';
}
}
}
if (isset($_GET['kick'])){
if ($account['party']){
if ($party['account']==$account['id']){
$kick=intval($_GET['kick']);
if ($kick!=$account['id']){
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `account` WHERE `party`='".$party['id']."' AND `id`='".$kick."'"),0)){
mysql_query("UPDATE `account` SET `party`='' WHERE `id`='".$kick."'");
mysql_query("INSERT INTO `msg_list` VALUES(
`id`,
'".$kick."',
'<div class="help">Вас исключили из группы</div>')");
echo '<div class="help">Пользователь исключен из группы</div>';
}else{
header("Location: ?");
exit;
}
}else{
header("Location: ?");
exit;
}
}else{
header("Location: ?");
exit;
}
}else{
header("Location: ?");
exit;
}
}
if (isset($_GET['lid'])){
if ($account['party']){
if ($party['account']==$account['id']){
$lid=intval($_GET['lid']);
if ($lid!=$account['id']){
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `account` WHERE `party`='".$party['id']."' AND `id`='".$lid."'"),0)){
mysql_query("UPDATE `party` SET `account`='".$lid."' WHERE `id`='".$party['id']."'");
mysql_query("INSERT INTO `msg_list` VALUES(
`id`,
'".$lid."',
'<div class="help">Теперь вы лидер группы</div>')");
echo '<div class="help">Лидер группы изменен</div>';
$party['account']=$lid;
}else{
header("Location: ?");
exit;
}
}else{
header("Location: ?");
exit;
}
}else{
header("Location: ?");
exit;
}
}else{
header("Location: ?");
exit;
}
}
if ($_GET['get_add'] && is_numeric($_GET['get_add'])){
$_POST['account']=mysql_result(mysql_query("SELECT `name` FROM `account` WHERE `id`='".intval($_GET['get_add'])."'"),0);
}
if (isset($_POST['account']) && !empty($_POST['account'])){
$user=mysql_real_escape_string($_POST['account']);
if ($account['name']!=$user && mysql_result(mysql_query("SELECT COUNT(*) FROM `account` WHERE `name`='".$user."' AND '".time()."'-`last_active` <'360'"),0)){
$user=mysql_fetch_assoc(mysql_query("SELECT * FROM `account` WHERE `name`='".$user."'"));
if (!mysql_result(mysql_query("SELECT COUNT(*) FROM `party_add` WHERE `user`='".$user['id']."'"),0) && mysql_result(mysql_query("SELECT COUNT(*) FROM `account` WHERE `id`='".$user['id']."' AND (`party`='' OR `party`='0')"),0)){
if ($account['party']){
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `party` WHERE `account`='".$account['id']."'"),0)){
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `account` WHERE `party`='".$party['id']."'"),0)<5){
mysql_query("INSERT INTO `party_add` VALUES(
`id`,
'".$account['id']."',
'".$account['party']."',
'".$user['id']."',
'".time()."')");
echo '<div class="help">Приглашение отправлено!</div>';
}else{
echo '<div class="help">В группе недостаточно места!</div>';
}
}else{
echo '<div class="help">Приглашать игроков может только лидер!</div>';
}
}else{
mysql_query("INSERT INTO `party`(`account`)VALUES('".$account['id']."')");
$id=mysql_insert_id();
mysql_query("UPDATE `account` SET `party`='".$id."' WHERE `id`='".$account['id']."'");
mysql_query("INSERT INTO `party_add` VALUES(
`id`,
'".$account['id']."',
'".$id."',
'".$user['id']."',
'".time()."')");
$acount['party']=mysql_result(mysql_query("SELECT `party` FROM `account` WHERE `id`='".$account['id']."'"),0);
echo '<div class="help">Приглашение отправлено!</div>';
}
}else{
echo '<div class="help">Пользователь уже состоит в группе!</div>';
}
}else{
echo '<div class="help">Пользователя не существует или он оффлайн!</div>';
}
}
if ($account['party']){
echo '<div class="title">Отряд</div>';
echo '<div class="border-top"></div>';
//echo '<div class="title"><b>Состав:</b></div>';
$q=mysql_query("SELECT * FROM `account` WHERE `party`='".$account['party']."'");
while($result=mysql_fetch_assoc($q)){
if ($result['id']!=$account['id']){
echo '<div class="help">';
echo '<a href="char.php?id='.$result['id'].'">'.$result['name'].'</a> ';
echo $result['lvl'].' ур. ';
if ($result['race']=='ork' OR $result['race']=='work'){
echo 'Орк';
}else{
echo 'Человек';
}
if ($result['class']=='warrior'){
echo ' <b>Воин</b>';
}elseif ($result['class']=='mage'){
echo ' <b>Маг</b>';
}if ($result['class']=='rogue'){
echo ' <b>Разбойник</b>';
}
echo ' '.mysql_result(mysql_query("SELECT `name` FROM `location` WHERE `x`='".$result['x']."' AND `y`='".$result['y']."'"),0);
if ($party['account']==$account['id']){
echo ' <a href="?kick='.$result['id'].'">Исключить</a> <a href="?lid='.$result['id'].'">Дать лидера</a>';
}elseif($party['account']==$result['id']){
echo ' - Лидер группы</div>';
}
echo '</div>';
}
}
$q2=mysql_query("SELECT * FROM `party_add` WHERE `party`='".$account['party']."'");
while($result2=mysql_fetch_assoc($q2)){
echo '<div class="help">';
if (time()-$result2['time']>360 || mysql_result(mysql_query("SELECT COUNT(*) FROM `account` WHERE `id`='".$result2['user']."' AND '".time()."' - `last_active`>'360'"),0) || mysql_result(mysql_query("SELECT COUNT(*) FROM `account` WHERE `party`='".$party['id']."'"),0)==5){
mysql_query("DELETE FROM `party_add` WHERE `id`='".$result2['id']."'");
}else{
$acc=mysql_fetch_assoc(mysql_query("SELECT * FROM `account` WHERE `id`='".$result2['user']."'"));
echo '<a href="char.php?id='.$acc['id'].'">'.$acc['name'].'</a><font color="gray"> - Приглашение отправлено</font>';
}
echo '</div>';
}
echo '<div class="title"><b>Управление</b></div>';
echo '<a class="link" href="?out">Покинуть группу</a>';
if ($party['account']==$account['id']){
echo '<a class="link" href="?out_all">Расформировать группу</a>';
}
if ($party['account']==$account['id'] && mysql_result(mysql_query("SELECT COUNT(*) FROM `account` WHERE `party`='".$party['id']."'"),0)<5){
echo '<form method="post" action="?add" class="aut">';
echo 'Введите имя: <br />';
echo '<input name="account"><br /><input type="submit" class="submit" value="Пригласить">';
echo '</form>';
}
echo '<div class="title">';
echo 'Чат группы</div>';//chat
echo '
<form method="post" class="aut" action="?msg">
Сообщение [2-1024]:
';
if ($_GET['say']){
$say=mysql_result(mysql_query("SELECT `name` FROM `account` WHERE `id`='".intval($_GET['say'])."'"),0);
$say = str_replace("$say","$say, ",$say);
}else{
$say='';
}
echo '
<br>
<textarea name="msg" rows="2" cols="30">'.$say.'</textarea><br>
<input type="submit" class="submit" value="Отправить">
</form>
';
echo '</div>';
$cop=10;
$ca=mysql_result(mysql_query("SELECT COUNT(*) FROM `party_chat` WHERE `party`='".$party['id']."'"),0);
$cp=ceil($ca/$cop);
if(isset($_GET['page']) && is_numeric($_GET['page'])){
$page = $_GET['page'];
if($_GET['page']>$cp) $page=$cp;
if($_GET['page']<1)$page=1;
}else{
$page=1;
}
if ($ca==0){
echo '<div class="help">';
echo 'Нет сообщений';
echo '</div>';
}
$start=$page*$cop-$cop;
$dlist = 'list1';
$q=mysql_query("SELECT * FROM `party_chat` WHERE `party`='".$party['id']."' ORDER BY `id` DESC LIMIT $start,$cop");
while ($result=mysql_fetch_assoc($q)){
echo '<div class="'.$dlist.'">';
$_user = mysql_fetch_assoc(mysql_query("SELECT * FROM `account` WHERE `id`='".$result['account']."'"));
echo '<a href="char.php?id='.$_user['id'].'">'.$_user['name'].'</a><hr>';
echo smiles(htmlspecialchars(stripslashes($result['msg'])))."<hr>";
echo '
[<a href="?say='.$_user['id'].'">Отв</a>]';
echo '</div>';
if ($dlist == 'list1'){
$dlist = 'list2';
}else{
$dlist = 'list1';
}
}
echo '
<div class="nstr">
Страницы
';
if($page-1>0){
echo '<a href="?page='.($page-1).'"><</a> ';
}
if($page-1>0){
echo '<a href="?page='.($page-1).'">'.($page-1).'</a> ';
}
echo '<b>'.$page.'</b>';
if($page+1<=$cp){
echo ' <a href="?page='.($page+1).'">'.($page+1).'</a>';
}
if($page+1<=$cp){
echo ' <a href="?page='.($page+1).'">></a>';
}
echo '</div>';
//chat
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `account` WHERE `party`='".$account['party']."'"),0)+mysql_result(mysql_query("SELECT COUNT(*) FROM `party_add` WHERE `party`='".$account['party']."'"),0)==1){
mysql_query("UPDATE `account` SET `party`='' WHERE `id`='".$account['id']."'");
mysql_query("DELETE FROM `party` WHERE `id`='".$account['party']."'");
mysql_query("DELETE FROM `party_chat` WHERE `party`='".$party['id']."'");
header("Location: ?");
exit;
}
}else{
echo '<div class="title">Отряд</div>';
echo '<div class="border-top"></div>';
echo '<div class="help">Вы не состоите в группе</div>';
echo '<form method="post" action="?add" class="aut">';
echo 'Введите имя: <br />';
echo '<input name="account"><br /><input type="submit" class="submit" value="Пригласить">';
echo '</form>';
}
}
down();
?>