Файл: aliance.php
Строк: 688
<?php
require 'sys/sid.php';
require 'sys/config.php';
include 'sys/user.php';
include 'sys/head.php';
include 'sys/navigator.php';
visit(0, 'aliance');
$NOT = mysql_query("SELECT id FROM construct WHERE cid = '11' AND user = '$user[id]' LIMIT 1");
if (mysql_num_rows($NOT) == false)
{
err('Сначала построй Дипломатический центр!');
include 'sys/foot.php';
exit();
}
$cid = number($_REQUEST['cid']);
$q = isset($_GET['q']) ? $_GET['q'] : NULL;
switch($q)
{
default:
$dAliance = mysql_query("SELECT * FROM aliance WHERE id IN(SELECT uid FROM players_aliance WHERE player = '$user[id]') LIMIT 1");
if (mysql_num_rows($dAliance) == false)
{
$c = '→ <a href="create_aliance"><u>Создать альянс</u></a><br/>';
}
else
{
$c = '';
}
echo '<img src="images/building_group_11.png" alt=""/><br/>
<img src="images/building_group_11_small.png" alt=""/> <u>Дипломатический центр</u><br/>
Позволяет вступать в существующие альянсы и создавать свои.<br/>
→ <a href="list_aliance"><u>Список альянсов</u></a><br/>
→ <a href="search_aliance"><u>Найти альянс</u></a><br/>' . $c;
$myAliance = mysql_query("SELECT * FROM aliance WHERE id IN(SELECT uid FROM players_aliance WHERE moder = '0' AND player = '$user[id]') LIMIT 1");
if (mysql_num_rows($myAliance) != false)
{
$inAL = mysql_fetch_assoc($myAliance);
$LOGO = ($inAL['logo'] != '') ? '<img src="images/clan/'.$inAL['logo'].'" alt=""/>' : '';
echo '→ <a href="aliance'.$inAL['id'].'"><u>' . $inAL['name'] . '</u> ' . $LOGO . '</a><br/>';
}
break;
case 'list':
$Aliance = mysql_result(mysql_query("SELECT COUNT(*) FROM aliance"), 0);
if ($Aliance != 0)
{
$n = new navigator($Aliance, 10, 'list_aliance&');
$LIST = mysql_query("SELECT * FROM aliance ORDER BY id DESC {$n->limit}");
echo '<div style="padding:4px; margin:2px;">';
while($a = mysql_fetch_assoc($LIST))
{
echo '→ <a href="aliance'.$a['id'].'"><u>' . $a['name'] . '</u></a><br/>';
}
echo $n->navi() . '</div>';
} else echo 'Нет ни одного альянса.';
break;
case create:
$myAliance = mysql_query("SELECT * FROM aliance WHERE id IN(SELECT uid FROM players_aliance WHERE player = '$user[id]') LIMIT 1");
if (mysql_num_rows($myAliance) != false)
{
err('У тебя уже есть альянс!');
}
else
{
if (isset($_POST['ok']))
{
$name = trim(mysql_real_escape_string(char($_POST['name'], 0)));
$rools = trim(mysql_real_escape_string(char($_POST['rools'], 0)));
$rools = mb_substr($rools, 0, 1024, 'UTF8');
if (empty($name))
{
err('Необходимо заполнить имя!');
}
else
{
mysql_query("INSERT INTO aliance SET name = '$name', rools = '$rools', data = '$rtime'");
$lastID = mysql_insert_id();
mysql_query("INSERT INTO players_aliance SET player = '$user[id]', uid = '$lastID', level = '3'");
header('location: aliance' . $lastID);
}
}
echo '<form method="post" action="create_aliance">
Название:
<br/>
<input type="text" name="name" maxlength="30"/>
<br/>
Устав:
<br/>
<textarea name="rools" cols="20" rows="4" maxlength="1024"></textarea>
<br/>
<input type="submit" name="ok" value="Создать"/>
</form>';
}
break;
case aliance:
$id = number($_GET['id']);
$control = mysql_query("SELECT * FROM aliance WHERE id = '$id' LIMIT 1");
$w = mysql_query("SELECT level FROM players_aliance WHERE moder = '0' AND player = '$user[id]' LIMIT 1");
if (mysql_num_rows($control) == false)
{
err('Альянс не найден!');
include 'sys/foot.php';
exit();
}
if (mysql_num_rows($w) != false)
{
$quit = '<img src="images/logout.png" alt=""/> <a href="aliance_quit">Покинуть альянс</a><br/>';
}
else
{
$quit = '<img src="images/lvl.png" alt=""/> <a href="aliance_union'.$id.'">Вступить в альянс</a><br/>';
}
$a = mysql_fetch_assoc($control);
$who = mysql_fetch_assoc($w);
$LOGO = ($a['logo'] != '') ? '<img src="images/clan/'.$a['logo'].'" alt=""/>' : '';
echo 'Альянс: ' . $LOGO . ' <b>' . $a['name'] . '</b><br/>
' . $quit . '
<img src="images/palace_kazna.png" alt=""/> <a href="aliance_kazna">Казна</a>
' . separator . '
<img src="images/peoples.png" alt=""/> <a href="aliance_peoples">Члены альянса</a><br/>
<img src="images/scroll.png" alt=""/> <a href="aliance_rools">Устав</a><br/>
<img src="images/journal.png" alt=""/> <a href="aliance_journal">Журнал</a><br/>
<img src="images/forum.png" alt=""/> <a href="aliance_forum'.$id.'">Форум</a><br/>';
if ($who['level'] == 3)
{
echo '<img src="images/ranks.png" alt=""/> <a href="aliance_control">Управление</a><br/>';
}
break;
case journal:
$myAliance = mysql_query("SELECT * FROM aliance WHERE id IN(SELECT uid FROM players_aliance WHERE player = '$user[id]') LIMIT 1");
if (mysql_num_rows($myAliance) == false)
{
err('Ты не состоишь в альянсе!');
}
else
{
$i = mysql_fetch_assoc($myAliance);
}
$count = mysql_result(mysql_query("SELECT COUNT(*) FROM aliance_journal WHERE cid = '$i[id]'"), 0);
if ($count != false)
{
$n = new navigator($count, 10, 'aliance_journal&');
$select = mysql_query("SELECT * FROM aliance_journal WHERE cid = '$i[id]' ORDER BY id DESC {$n->limit}");
while($q = mysql_fetch_assoc($select))
{
echo '(' . timeAgo($q['date']) . ') ' . $q['msg'] . '<br/>';
}
echo $n->navi();
} else echo 'Журнал пуст...<br/>';
break;
case control:
$ml = mysql_fetch_assoc(mysql_query("SELECT id, level FROM players_aliance WHERE player = '$user[id]' LIMIT 1"));
if ($ml['level'] != 3)
{
header('location: aliance' . $ml['id']);
die();
}
else
{
echo '→ <a href="aliance_editor">Устав</a><br/>
→ <a href="aliance_logo">Логотип</a><br/>
→ <a href="aliance_into">Вступление</a><br/>
→ <a href="aliance_wait">Ожидающие игроки</a><br/>
<br/><a href="aliance'.$ml['id'].'">Вернуться</a>';
}
break;
case forum:
$f = mysql_result(mysql_query("SELECT COUNT(*) FROM players_aliance WHERE moder = '0' AND player = '$user[id]' LIMIT 1"), 0);
if ($f == false)
{
err('Форума несуществует!');
include 'sys/foot.php';
exit();
}
$cid = number($_GET['cid']);
echo '<img src="images/scroll.png" alt=""/> <a href="aliance_f_c'.$cid.'">Создать тему</a>' . separator;
$count = mysql_result(mysql_query("SELECT COUNT(*) FROM aliance_forum_t WHERE cid = '$cid'"), 0);
if ($count != false)
{
$n = new navigator($count, 10, 'aliance_forum'.$cid.'&');
$select = mysql_query("SELECT aliance_forum_t .*, (SELECT COUNT(*) FROM aliance_forum_m WHERE aliance_forum_t.id = aliance_forum_m.uid) AS count, (SELECT player FROM aliance_forum_m WHERE aliance_forum_t.id = aliance_forum_m.uid ORDER BY id DESC LIMIT 1) AS l, (SELECT player FROM aliance_forum_m WHERE aliance_forum_t.id = aliance_forum_m.uid ORDER BY id ASC LIMIT 1) AS f FROM aliance_forum_t WHERE cid = '$cid' ORDER BY last DESC {$n->limit}");
while($a = mysql_fetch_assoc($select))
{
$cl = ($a['close'] == 1) ? '#' : '•';
echo '<div style="padding:7px;margin:5px 5px 5px 5px;"><b>' . $cl . '</b> <a href="aliance_f_t'.$a['id'].'_'.$cid.'">' . $a['name'] . ' (' . $a['count'] . ')</a><br/>' . user($a['f'], 'nick') . ' / ' . user($a['l'], 'nick') . '</div>' . separator;
}
} else echo '<div style="padding: 10px;">Темы пока не созданы!</div>';
break;
case forum_c:
$cid = number($_GET['cid']);
if (isset($_POST['add']))
{
$name = trim(mysql_real_escape_string(char($_POST['name'], 0)));
$msg = trim(mysql_real_escape_string(char($_POST['msg'], 0)));
if (empty($name))
{
err('Не заполнено название темы!');
}
elseif (empty($msg))
{
err('Не заполнено сообщение!');
}
else
{
mysql_query("INSERT INTO aliance_forum_t SET cid = '$cid', name = '$name', last = '$rtime'");
$L_id = mysql_insert_id();
mysql_query("INSERT INTO aliance_forum_m SET id = '" . mt_rand(1000000, 9999999) . "', cid = '$cid', uid = '$L_id', msg = '$msg', player = '$user[id]', time = '$rtime'");
header('location: aliance_f_t' . $L_id . '_' . $cid);
}
}
echo '<form method="post" action="aliance_f_c'.$cid.'">
Тема:<br/>
<input type="text" name="name" maxlength="255"/>
<br/>
Сообщение:<br/>
<textarea name="msg" cols="20" rows="4" maxlength="1024"></textarea>
<br/>
<input type="submit" name="add" value="Создать"/>
</form>
<a href="aliance_forum'.$cid.'">Вернуться</a>';
break;
case forum_t:
$id = number($_GET['id']);
$cid = number($_GET['cid']);
$control = mysql_query("SELECT * FROM aliance_forum_t WHERE id = '$id' AND cid = '$cid' LIMIT 1");
if (mysql_num_rows($control) == false)
{
err('Темы не существует!');
}
else
{
if (isset($_GET['x']))
{
$x = number($_GET['x']);
$co = mysql_query("SELECT id, player FROM aliance_forum_m WHERE id = '$x' AND cid = '$cid' LIMIT 1");
$inCo = mysql_fetch_assoc($co);
if (mysql_num_rows($co) != false && $user['level'] == 2 || mysql_num_rows($co) != false && $user['id'] == $inCo['player'])
{
mysql_query("DELETE FROM aliance_forum_m WHERE id = '$x' AND cid = '$cid' LIMIT 1");
header('location: aliance_f_t' . $id . '_' . $cid);
}
else header('location: aliance_f_t' . $id . '_' . $cid);
}
$in = mysql_fetch_assoc($control);
if ($user['level'] == 2)
{
$upr = '<br/>
<a href="alxtheme'.$id.'_'.$cid.'">Удалить</a> |
<a href="alctheme'.$id.'_'.$cid.'">' . ($in['close'] == 0 ? 'Закрыть' : 'Открыть') . '</a><br/>';
}
echo '<u><a href="aliance_forum">Форумы</a> >
' . $in['name'] . '</u>
' . $upr . ($in['close'] == 0 ? '<br/><img src="images/scroll.png" alt=""/> <a href="aliance_f_w'.$id.'_'.$cid.'">Написать сообщение</a>' : '') . separator;
$count = mysql_result(mysql_query("SELECT COUNT(*) FROM aliance_forum_m WHERE uid = '$id' AND cid = '$cid'"), 0);
if ($count != false)
{
$n = new navigator($count, 10, 'aliance_f_t'.$id.'_'.$cid.'&');
$select = mysql_query("SELECT * FROM aliance_forum_m WHERE uid = '$id' AND cid = '$cid' ORDER BY time ASC {$n->limit}");
while($a = mysql_fetch_assoc($select))
{
$d = ($user['level'] == 2) ? '<a href="aldeltheforum'.$a['id'].'_'.$id.'_'.$cid.'"><span style="color:#FF3030;">[X]</span></a> ' : '';
$e = ($a['player'] == $user['id'])
? '<a href="aledit'.$id.'_'.$cid.'_'.$a['id'].'"><u>редактировать</u></a> | <a href="aldeltheforum'.$a['id'].'_'.$id.'_'.$cid.'"><u>удалить</u></a>'
: '<a href="alanswer'.$id.'_'.$cid.'_'.$a['id'].'"><u>ответить</u></a> | <a href="alcite'.$id.'_'.$cid.'_'.$a['id'].'"><u>цитировать</u></a>';
echo $d . 'От: <a href="userinfo_'.user($a['player'], 'nick').'">' . user($a['player'], 'nick') . ' (' . (user($a['player'], 'race') == 1 ? 'Люди' : 'Некроманты') . ')</a>
<img src="images/time.png" alt=""/> ' . timeAgo($a['time']) .'<br/>
<div style="border: #FFF 1px dotted;padding: 7px;margin: 5px 5px 5px 20px;">' . smiles($a['msg']) . '</div>
' . ($in['close'] == 0 ? $e : '') . separator;
}
echo $n->navi() . '<br/>';
} else echo 'Сообщений пока нет.<br/>';
}
if ($in['close'] == 1) err('Тема закрыта для обсуждения.');
echo '<a href="aliance">Вернуться</a>';
break;
case ctheme:
$id = number($_GET['id']);
$cid = number($_GET['cid']);
$control = mysql_query("SELECT * FROM aliance_forum_t WHERE id = '$id' AND cid = '$cid' LIMIT 1");
if ($user['level'] != 2)
{
header('location: aliance' . $cid);
die();
}
if (mysql_num_rows($control) == false)
{
err('Темы не существует!');
}
else
{
$is = mysql_fetch_assoc($control);
if ($is['close'] == 0)
{
mysql_query("UPDATE aliance_forum_t SET close = '1' WHERE id = '$id' AND cid = '$cid' LIMIT 1");
header('location: aliance_f_t' . $id . '_' . $cid);
}
else
{
mysql_query("UPDATE aliance_forum_t SET close = '0' WHERE id = '$id' AND cid = '$cid' LIMIT 1");
header('location: aliance_f_t' . $id . '_' . $cid);
}
}
break;
case xtheme:
$id = number($_GET['id']);
$cid = number($_GET['cid']);
$control = mysql_query("SELECT * FROM aliance_forum_t WHERE id = '$id' AND cid = '$cid' LIMIT 1");
if ($user['level'] != 2)
{
header('location: aliance' . $cid);
die();
}
if (mysql_num_rows($control) == false)
{
err('Темы не существует!');
}
else
{
$is = mysql_fetch_assoc($control);
mysql_query("DELETE FROM aliance_forum_m WHERE uid = '$id' AND cid = '$cid'");
mysql_query("DELETE FROM aliance_forum_t WHERE id = '$id' AND cid = '$cid' LIMIT 1");
msg('Тема удалена!');
echo '<a href="aliance'.$cid.'">Вернуться</a>';
}
break;
case answer:
$id = number($_GET['id']);
$cid = number($_GET['cid']);
$m = number($_GET['m']);
$control = mysql_query("SELECT * FROM aliance_forum_m WHERE id = '$m' AND cid = '$cid' AND uid = '$id' LIMIT 1");
$is = mysql_fetch_assoc($control);
$co = mysql_query("SELECT * FROM aliance_forum_t WHERE id = '$id' AND cid = '$cid' LIMIT 1");
$in = mysql_fetch_assoc($co);
if (mysql_num_rows($control) == false)
{
err('Сообщение не найдено!');
}
elseif ($in['close'] == 1)
{
err('Тема закрыта для обсуждения.');
}
elseif ($is['player'] == $user['id'])
{
header('location: aliance_f_t' . $id . '_' . $cid);
}
else
{
if (isset($_POST['add']))
{
$msg = trim(mysql_real_escape_string(char($_POST['msg'], 0)));
if (preg_match("/^".user($is['player'], 'nick').",$/si", $msg, $out) && empty($out[1])) $msg = NULL;
if (mb_strlen($msg, 'UTF8') > 1024) $msg = mb_substr($msg, 0, 1024, 'UTF8');
$inMsg = preg_replace('/^(.*),s(.*?)$/si', '2', $msg);
if (!empty($inMsg))
{
mysql_query("INSERT INTO aliance_forum_m SET id = '" . mt_rand(1000000, 9999999) . "', uid = '$in[id]', cid = '$cid', player = '$user[id]', time = '$rtime', msg = '$msg'");
mysql_query("UPDATE aliance_forum_t SET last = '$rtime' WHERE id = '$id' LIMIT 1");
}
header('location: aliance_f_t' . $id . '_' . $cid);
}
echo '<form method="post" action="alanswer'.$id.'_'.$cid.'_'.$m.'">
Сообщение:<br/>
<textarea name="msg" cols="20" rows="4" maxlength="1024">' . user($is['player'], 'nick') . ', </textarea>
<br/>
<input type="submit" name="add" value="Добавить"/>
</form>
<a href="aliance'.$id.'_'.$cid.'">Вернуться</a>';
}
break;
case edit:
$id = number($_GET['id']);
$cid = number($_GET['cid']);
$m = number($_GET['m']);
$control = mysql_query("SELECT * FROM aliance_forum_m WHERE id = '$m' AND uid = '$id' AND cid = '$cid' LIMIT 1");
$is = mysql_fetch_assoc($control);
$co = mysql_query("SELECT * FROM aliance_forum_t WHERE id = '$is[uid]' AND cid = '$cid' LIMIT 1");
$in = mysql_fetch_assoc($co);
if (mysql_num_rows($control) == false)
{
err('Сообщение не найдено!');
}
elseif ($in['close'] == 1)
{
err('Тема закрыта для обсуждения.');
}
elseif ($is['player'] != $user['id'])
{
err('Это не твое сообщение!');
}
else
{
if (isset($_POST['add']))
{
$msg = trim(mysql_real_escape_string(char($_POST['msg'], 0)));
if (mb_strlen($msg, 'UTF8') > 1024) $msg = mb_substr($msg, 0, 1024, 'UTF8');
if (!empty($msg))
{
if (stripos($is['msg'], '<div') !== false)
{
$cmsg = preg_replace('/<div style="background:#FF3370;">(.*)</div>(.*)/usi', '1', $is['msg']);
$msg = '<div style="background:#FF3370;">' . $cmsg . '</div>' . $msg;
}
mysql_query("UPDATE aliance_forum_m SET msg = '$msg' WHERE id = '$m' AND uid = '$id' AND cid = '$cid' LIMIT 1");
mysql_query("UPDATE aliance_forum_t SET last = '$rtime' WHERE id = '$in[id]' LIMIT 1");
}
header('location: aliance_f_t' . $id . '_' . $cid);
}
$imsg = preg_replace('/<div(.*)</div>(.*)/usi', '2', $is['msg']);
echo '<form method="post" action="aledit'.$id.'_'.$cid.'_'.$m.'">
Сообщение:<br/>
<textarea name="msg" cols="20" rows="4" maxlength="1024">' . str_replace('<br />', '', $imsg) . '</textarea>
<br/>
<input type="submit" name="add" value="Сохранить"/>
</form>
<a href="aliance_f_t'.$id.'_'.$cid.'">Вернуться</a>';
}
break;
case cite:
$id = number($_GET['id']);
$cid = number($_GET['cid']);
$m = number($_GET['m']);
$control = mysql_query("SELECT * FROM aliance_forum_m WHERE id = '$m' AND uid = '$id' AND cid = '$cid' LIMIT 1");
$is = mysql_fetch_assoc($control);
$co = mysql_query("SELECT * FROM aliance_forum_t WHERE id = '$is[uid]' AND cid = '$cid' LIMIT 1");
$in = mysql_fetch_assoc($co);
if (mysql_num_rows($control) == false)
{
err('Сообщение не найдено!');
}
elseif ($in['close'] == 1)
{
err('Тема закрыта для обсуждения.');
}
elseif ($is['player'] == $user['id'])
{
header('location: aliance_f_t' . $id . '_' . $cid);
}
else
{
if (isset($_POST['add']))
{
$msg = trim(mysql_real_escape_string(char($_POST['msg'], 0)));
if (mb_strlen($msg, 'UTF8') > 1024) $msg = mb_substr($msg, 0, 1024, 'UTF8');
if (!empty($msg))
{
$imsg = preg_replace('/<div(.*)</div>(.*)/usi', '2', $is['msg']);
$msg = '<div style="background:#FF3370;"><u>' . user($is['player'], 'nick') . '</u>:<br/>' . $imsg . '<div style="color:#484848;float:right;"><sub>цитата</sub></div></div>' . $msg;
mysql_query("INSERT INTO aliance_forum_m SET id = '" . mt_rand(1000000, 9999999) . "', uid = '$id', cid = '$cid', player = '$user[id]', time = '$rtime', msg = '$msg'");
mysql_query("UPDATE aliance_forum_t SET last = '$rtime' WHERE id = '$id' LIMIT 1");
}
header('location: aliance_f_t' . $id . '_' . $cid);
}
echo '<form method="post" action="alcite'.$id.'_'.$cid.'_'.$m.'">
Сообщение:<br/>
<textarea name="msg" cols="20" rows="4" maxlength="1024"></textarea>
<br/>
<input type="submit" name="add" value="Цитировать"/>
</form>
<a href="aliance_f_t'.$id.'_'.$cid.'_'.$m.'">Вернуться</a>';
}
break;
case forum_w:
$id = number($_GET['id']);
$cid = number($_GET['cid']);
$control = mysql_query("SELECT * FROM aliance_forum_t WHERE id = '$id' AND cid = '$cid' LIMIT 1");
$is = mysql_fetch_assoc($control);
if (mysql_num_rows($control) == false)
{
err('Темы не существует!');
}
elseif ($is['close'] == 1)
{
err('Тема закрыта для обсуждения.');
}
else
{
if (isset($_POST['add']))
{
$msg = trim(mysql_real_escape_string(char($_POST['msg'], 0)));
if (empty($msg))
{
err('Пустое сообщение не допустимо!');
}
else
{
mysql_query("INSERT INTO aliance_forum_m SET id = '" . mt_rand(1000000, 9999999) . "', cid = '$cid', uid = '$id', player = '$user[id]', time = '$rtime', msg = '$msg'");
mysql_query("UPDATE aliance_forum_t SET last = '$rtime' WHERE id = '$id' LIMIT 1");
header('location: aliance_f_t' . $id . '_' . $cid);
}
}
echo '<form method="post" action="aliance_f_w'.$id.'_'.$cid.'">
Сообщение:<br/>
<textarea name="msg" cols="20" rows="4" maxlength="1024"></textarea>
<br/>
<input type="submit" name="add" value="Добавить"/>
</form>
<a href="aliance_f_t'.$id.'_'.$cid.'">Вернуться</a>';
}
break;
case editor:
$ml = mysql_fetch_assoc(mysql_query("SELECT id, level FROM players_aliance WHERE player = '$user[id]' LIMIT 1"));
if ($ml['level'] != 3)
{
header('location: aliance' . $ml['id']);
die();
}
else
{
if (isset($_POST['save']))
{
$rools = trim(mysql_real_escape_string(char($_POST['rools'], 0)));
$rools = mb_substr($rools, 0, 1024, 'UTF8');
mysql_query("UPDATE aliance SET rools = '$rools' WHERE id = '$ml[id]' LIMIT 1");
msg('Изменено.');
}
$i = mysql_fetch_assoc(mysql_query("SELECT rools FROM aliance WHERE id = '$ml[id]' LIMIT 1"));
echo '<form method="post" action="aliance_editor">
Редактировать правила:
<br/>
<textarea name="rools" cols="20" rows="4">' . str_replace('<br />', "", $i['rools']) . '</textarea>
<br/>
<input type="submit" name="save" value="Принять изменения"/>
</form>
<br/><a href="aliance'.$ml['id'].'">Вернуться</a>';
}
break;
case into:
$ml = mysql_fetch_assoc(mysql_query("SELECT id, uid, level FROM players_aliance WHERE player = '$user[id]' LIMIT 1"));
if ($ml['level'] != 3)
{
header('location: aliance' . $ml['id']);
die();
}
else
{
if (isset($_POST['save']))
{
$m = number($_POST['m']);
mysql_query("UPDATE aliance SET moder = '$m' WHERE id = '$ml[uid]' LIMIT 1");
msg('Сохранено.');
}
$moder = mysql_fetch_assoc(mysql_query("SELECT moder FROM aliance WHERE id = '$ml[uid]' LIMIT 1"));
echo '<form method="post" action="aliance_into">
Модерация заявок:
<br/>
<select name="m">
<option ' . ($moder['moder'] == 0 ? 'selected' : '') . ' value="0">Выкл</option>
<option ' . ($moder['moder'] == 1 ? 'selected' : '') . ' value="1">Вкл</option>
</select>
<br/>
<input type="submit" name="save" value="Сохранить"/>
</form>
<br/>
<a href="aliance'.$ml['id'].'">Вернуться</a>';
}
break;
case wait:
$ml = mysql_fetch_assoc(mysql_query("SELECT id, uid, level FROM players_aliance WHERE player = '$user[id]' LIMIT 1"));
if ($ml['level'] != 3)
{
header('location: aliance' . $ml['id']);
die();
}
else
{
if (isset($_GET['ok']))
{
$ok = char($_GET['ok'], 0);
$control = mysql_query("SELECT id FROM players_aliance WHERE moder = '1' AND player = '" . user($ok, 'id') . "' LIMIT 1");
if (mysql_num_rows($control) != false)
{
mysql_query("UPDATE players_aliance SET moder = '0' WHERE player = '" . user($ok, 'id') . "' LIMIT 1");
header('location: aliance_wait');
}
else err('Ошибка!');
}
$num = mysql_result(mysql_query("SELECT COUNT(*) FROM players_aliance WHERE uid = '$ml[uid]' AND moder = '1'"), 0);
if ($num != 0)
{
$select = mysql_query("SELECT * FROM players_aliance WHERE uid = '$ml[uid]' AND moder = '1'");
while($a = mysql_fetch_assoc($select))
{
echo user($a['player'], 'nick') . ' <a href="aliance_wait&ok='.user($a['player'], 'nick').'">[Допустить]</a><br/>';
}
}
else echo 'Нет ожидающие игроков.<br/>';
echo '<br/><a href="aliance'.$ml['id'].'">Вернуться</a>';
}
break;
case logo:
$ml = mysql_fetch_assoc(mysql_query("SELECT id, level FROM players_aliance WHERE player = '$user[id]' LIMIT 1"));
if ($ml['level'] != 3)
{
header('location: aliance' . $ml['id']);
die();
}
else
{
if (isset($_GET['logo']))
{
$logo = char($_GET['logo'], 0);
if (!file_exists('images/clan/' . $logo))
{
err('Ошибка!');
}
else
{
mysql_query("UPDATE aliance SET logo = '$logo' WHERE id = '$ml[id]' LIMIT 1");
msg('Лого изменено.');
}
}
if ($handle = opendir('images/clan'))
{
while (false !== ($file = readdir($handle)))
{
if ($file != '.' && $file != '..')
{
$files[] = $file;
}
}
closedir($handle);
}
$COUNT_FILES_ON_PAGE = 10;
$COUNT_FIELES = count($files);
$COUNT_PAGES = intval($COUNT_FIELES / $COUNT_FILES_ON_PAGE);
if (empty($_GET['p']) || $_GET['p'] < 0 || $_GET['p'] > $COUNT_PAGES || !intval($_GET['p']))
$_GET['p'] = 0;
$START = intval($_GET['p']) * $COUNT_FILES_ON_PAGE;
$END = $START + $COUNT_FILES_ON_PAGE;
for($i = $START; $i < $END; ++$i)
{
if (key_exists($i, $files))
{
$name = mb_substr($files[$i], 0, -4, 'UTF8');
if (is_file('images/clan/' . $files[$i])) echo '<a href="aliance_logo&logo='.$files[$i].'"><img src="images/clan/'.$files[$i].'" alt="img"/> ' . $name . '<br/>';
}
}
echo '<br/>';
for($i = 0; $i <= $COUNT_PAGES; ++$i)
{
echo '<a href="aliance_logo&p='.$i.'">[' . ($i + 1) .']</a> ';
}
echo '<br/><br/>
<a href="aliance'.$ml['id'].'">Вернуться</a>';
}
break;
case search:
if (isset($_POST['ok']))
{
$s = trim(mysql_real_escape_string(char($_POST['s'], 1)));
if (!empty($s))
{
$num = mysql_result(mysql_query("SELECT COUNT(*) FROM aliance WHERE name LIKE '%$s%'"), 0);
if ($num != 0)
{
$n = new navigator($num, 10, 'search_aliance');
$sql = mysql_query("SELECT id, name FROM aliance WHERE name LIKE '%$s%' ORDER BY id DESC {$n->limit}");
while($q = mysql_fetch_assoc($sql))
{
echo '→ <a href="aliance'.$q['id'].'">' . $q['name'] . '</a><br/>';
}
} else err('Ничего не найдено.');
}
else header('location: search_aliance');
}
else
{
echo '<form method="post" action="search_aliance">
Название:
<br/>
<input type="text" name="s"/>
<br/>
<input type="submit" name="ok" value="OK"/>
</form>';
}
break;
case kazna:
$ct = mysql_query("SELECT * FROM players_aliance WHERE moder = '0' AND player = '$user[id]' LIMIT 1");
$i = mysql_fetch_assoc($ct);
$al = mysql_fetch_assoc(mysql_query("SELECT * FROM aliance WHERE id = '$i[uid]' LIMIT 1"));
if (mysql_num_rows($ct) == false)
{
err('Ты не состоишь в альянсе!');
}
else
{
echo '<img src="images/res.1.png" alt="" title="Еда"/> ' . $al['food'] . ' / 300,000<br/>
<img src="images/res.2.png" alt="" title="Дерево"/> ' . $al['tree'] . ' / 300,000<br/>
<img src="images/res.3.png" alt="" title="Камень"/> ' . $al['stone'] . ' / 300,000<br/>
<img src="images/res.4.png" alt="" title="Руда"/> ' . $al['ore'] . ' / 300,000<br/>
<img src="images/res.5.png" alt="" title="Золото"/> ' . $al['gold'] . ' / 300,000<br/>
' . separator . '
<a href="aliance_put_kazna"><u>Отправить ресурсы</u></a><br/>
<a href="aliance_take_kazna"><u>Взять ресурсы</u></a><br/>';
}
break;
case put:
$aliance = mysql_query("SELECT * FROM aliance WHERE id IN(SELECT uid FROM players_aliance WHERE moder = '0' AND player = '$user[id]') LIMIT 1");
if (mysql_num_rows($aliance) == false)
{
err('Ты не состоишь в альянсе!');
include 'sys/foot.php';
exit();
}
$al = mysql_fetch_assoc($aliance);
if (isset($_POST['ok']))
{
$res1 = number($_POST['res1']);
$res2 = number($_POST['res2']);
$res3 = number($_POST['res3']);
$res4 = number($_POST['res4']);
$res5 = number($_POST['res5']);
if (empty($res1) and empty($res2) and empty($res3) and empty($res4) and empty($res5))
{
err('Необходимо указать кол-во ресурсов!');
}
elseif (($al['food'] + $res1) > 300000 or ($al['tree'] + $res2) > 300000 or ($al['stone'] + $res3) > 300000 or ($al['ore'] + $res4) > 300000 or ($al['gold'] + $res5) > 300000)
{
err('В казне недостаточно свободного места!');
}
elseif ($res1 > $user['food'] or $res2 > $user['tree'] or $res3 > $user['stone'] or $res4 > $user['ore'] or $res5 > $user['gold'])
{
err('У тебя недостаточно ресурсов!');
}
else
{
if (isset($res1)) $r1 = 'food';
if (isset($res2)) $r2 = 'tree';
if (isset($res3)) $r3 = 'stone';
if (isset($res4)) $r4 = 'ore';
if (isset($res5)) $r5 = 'gold';
mysql_query("UPDATE users SET $r1 = $r1 - '$res1', $r2 = $r2 - '$res2', $r3 = $r3 - '$res3', $r4 = $r4 - '$res4', $r5 = $r5 - '$res5' WHERE id = '$user[id]' LIMIT 1");
mysql_query("UPDATE aliance SET $r1 = $r1 + '$res1', $r2 = $r2 + '$res2', $r3 = $r3 + '$res3', $r4 = $r4 + '$res4', $r5 = $r5 + '$res5' WHERE id = '$al[id]' LIMIT 1");
if (!empty($res1)) $result .= $res1 . ' еды ';
if (!empty($res2)) $result .= $res2 . ' дерева ';
if (!empty($res3)) $result .= $res3 . ' камня ';
if (!empty($res4)) $result .= $res4 . ' руды ';
if (!empty($res5)) $result .= $res5 . ' золота ';
$m = $user['nick'] . ' отправил в казну ' . $result;
mysql_query("INSERT INTO aliance_journal SET date = '$rtime', msg = '$m', cid = '$al[id]'");
msg('Ресурсы отправлены!');
}
}
echo '<img src="images/res.1.png" alt="" title="Еда"/> ' . number_format($al['food']) . ' / 300,000<br/>
<img src="images/res.2.png" alt="" title="Дерево"/> ' . number_format($al['tree']) . ' / 300,000<br/>
<img src="images/res.3.png" alt="" title="Камень"/> ' . number_format($al['stone']) . ' / 300,000<br/>
<img src="images/res.4.png" alt="" title="Руда"/> ' . number_format($al['ore']) . ' / 300,000<br/>
<img src="images/res.5.png" alt="" title="Золото"/> ' . number_format($al['gold']) . ' / 300,000<br/>
Можно мгновенно отправить некоторое количество ресурсов в казну альянса!<br/>
<form method="post" action="aliance_put_kazna">
<img src="images/res.1.png" alt="" title="Еда"/> <input type="text" name="res1" size="3"/><br/>
<img src="images/res.2.png" alt="" title="Дерево"/> <input type="text" name="res2" size="3"/><br/>
<img src="images/res.3.png" alt="" title="Камень"/> <input type="text" name="res3" size="3"/><br/>
<img src="images/res.4.png" alt="" title="Руда"/> <input type="text" name="res4" size="3"/><br/>
<img src="images/res.5.png" alt="" title="Золото"/> <input type="text" name="res5" size="3"/><br/>
<input type="submit" name="ok" value="Выслать"/>
</form>';
break;
case take:
$aliance = mysql_query("SELECT * FROM aliance WHERE id IN(SELECT uid FROM players_aliance WHERE moder = '0' AND player = '$user[id]') LIMIT 1");
if (mysql_num_rows($aliance) == false)
{
err('Ты не состоишь в альянсе!');
include 'sys/foot.php';
exit();
}
$al = mysql_fetch_assoc($aliance);
$skl = mysql_query("SELECT id, level FROM construct WHERE user = '$user[id]' AND cid = '8' AND timeleft < '$rtime' LIMIT 1");
$my_skl = mysql_fetch_assoc($skl);
$pl = mysql_fetch_assoc(mysql_query("SELECT level FROM players_aliance WHERE moder = '0' AND uid = '$al[id]' AND player = '$user[id]' LIMIT 1"));
if ($pl['level'] < 1)
{
err('Твое звание не позволяет брать что-либо из казны!');
include 'sys/foot.php';
exit();
}
if (isset($_POST['ok']))
{
$res1 = number($_POST['res1']);
$res2 = number($_POST['res2']);
$res3 = number($_POST['res3']);
$res4 = number($_POST['res4']);
$res5 = number($_POST['res5']);
if (empty($res1) and empty($res2) and empty($res3) and empty($res4) and empty($res5))
{
err('Необходимо указать кол-во ресурсов!');
}
elseif ($res1 > $al['food'] or $res2 > $al['tree'] or $res3 > $al['stone'] or $res4 > $al['ore'] or $res5 > $al['gold'])
{
err('В казне недостаточно ресурсов!');
}
else
{
if (isset($res1)) $r1 = 'food';
if (isset($res2)) $r2 = 'tree';
if (isset($res3)) $r3 = 'stone';
if (isset($res4)) $r4 = 'ore';
if (isset($res5)) $r5 = 'gold';
mysql_query("UPDATE users SET
$r1 = '" . plus($user[$r1], $al[$r1], (!isset($my_skl['id'])) ? 1000 : $STORAGE) . "',
$r2 = '" . plus($user[$r2], $al[$r2], (!isset($my_skl['id'])) ? 1000 : $STORAGE) . "',
$r3 = '" . plus($user[$r3], $al[$r3], (!isset($my_skl['id'])) ? 1000 : $STORAGE) . "',
$r4 = '" . plus($user[$r4], $al[$r4], (!isset($my_skl['id'])) ? 1000 : $STORAGE) . "',
$r5 = '" . plus($user[$r5], $al[$r5], (!isset($my_skl['id'])) ? 1000 : $STORAGE) . "'
WHERE id = '$user[id]' LIMIT 1");
if (!empty($res1)) $result .= $res1 . ' еды ';
if (!empty($res2)) $result .= $res2 . ' дерева ';
if (!empty($res3)) $result .= $res3 . ' камня ';
if (!empty($res4)) $result .= $res4 . ' руды ';
if (!empty($res5)) $result .= $res5 . ' золота ';
$m = $user['nick'] . ' взял из казны ' . $result;
mysql_query("INSERT INTO aliance_journal SET date = '$rtime', msg = '$m', cid = '$al[id]'");
mysql_query("UPDATE aliance SET $r1 = $r1 - '$res1', $r2 = $r2 - '$res2', $r3 = $r3 - '$res3', $r4 = $r4 - '$res4', $r5 = $r5 - '$res5' WHERE id = '$al[id]' LIMIT 1");
msg('Приказ выполнен, ресурсы получены.');
}
}
echo '<img src="images/res.1.png" alt="" title="Еда"/> ' . number_format($al['food']) . ' / 300,000<br/>
<img src="images/res.2.png" alt="" title="Дерево"/> ' . number_format($al['tree']) . ' / 300,000<br/>
<img src="images/res.3.png" alt="" title="Камень"/> ' . number_format($al['stone']) . ' / 300,000<br/>
<img src="images/res.4.png" alt="" title="Руда"/> ' . number_format($al['ore']) . ' / 300,000<br/>
<img src="images/res.5.png" alt="" title="Золото"/> ' . number_format($al['gold']) . ' / 300,000<br/>
Можно мгновенно взять некоторое количество ресурсов из казны альянса!<br/>
<form method="post" action="aliance_take_kazna">
<img src="images/res.1.png" alt="" title="Еда"/> <input type="text" name="res1" size="3"/><br/>
<img src="images/res.2.png" alt="" title="Дерево"/> <input type="text" name="res2" size="3"/><br/>
<img src="images/res.3.png" alt="" title="Камень"/> <input type="text" name="res3" size="3"/><br/>
<img src="images/res.4.png" alt="" title="Руда"/> <input type="text" name="res4" size="3"/><br/>
<img src="images/res.5.png" alt="" title="Золото"/> <input type="text" name="res5" size="3"/><br/>
<input type="submit" name="ok" value="Взять"/>
</form>';
break;
case peoples:
$ct = mysql_query("SELECT * FROM players_aliance WHERE moder = '0' AND player = '$user[id]' LIMIT 1");
if (mysql_num_rows($ct) == false)
{
err('Ты не состоишь в альянсе!');
include 'sys/foot.php';
exit();
}
if (isset($_GET['id']))
{
$p = mysql_fetch_assoc(mysql_query("SELECT level FROM players_aliance WHERE moder = '0' AND player = '$user[id]' AND uid IN(SELECT id FROM aliance)"));
if ($p['level'] != 3)
{
err('Нет прав доступа!');
include 'sys/foot.php';
exit();
}
$id = trim(mysql_real_escape_string(char($_GET['id'], 0)));
$ctrl = mysql_query("SELECT id FROM users WHERE nick = '$id' LIMIT 1");
if (mysql_num_rows($ctrl) == false)
{
err('Игрок не найден!');
include 'sys/foot.php';
exit();
}
if (isset($_POST['ok']))
{
$lvl = number($_POST['lvl']);
if (user($id, 'id') == $user['id'])
{
err('Себе нельзя изменять права!');
}
else
{
mysql_query("UPDATE players_aliance SET level = '$lvl' WHERE player = '" . user($id, 'id') . "' LIMIT 1");
msg('Права были изменены.');
}
}
$ml = mysql_fetch_assoc(mysql_query("SELECT level FROM players_aliance WHERE player = '".user($id, 'id')."' LIMIT 1"));
echo '<form method="post" action="aliance_uscontrol_'.$id.'">
Изменить права для ' . $id . ':<br/>
<select name="lvl">
<option ' . ($ml['level'] == 0 ? 'selected' : '') . ' value="0">Только что пришел</option>
<option ' . ($ml['level'] == 1 ? 'selected' : '') . ' value="1">Чисто прокачка</option>
<option ' . ($ml['level'] == 2 ? 'selected' : '') . ' value="2">Новобранец</option>
</select>
<br/>
<input type="submit" name="ok" value="Изменить"/>
</form>';
}
else
{
$Num = mysql_result(mysql_query("SELECT COUNT(*) FROM players_aliance WHERE moder = '0' AND uid IN(SELECT id FROM aliance)"), 0);
$n = new navigator($Num, 10, 'aliance_peoples&');
$al = mysql_query("SELECT * FROM players_aliance WHERE moder = '0' AND uid IN(SELECT id FROM aliance) ORDER BY id DESC {$n->limit}");
if (mysql_num_rows($al) == false)
{
err('Ты не состоишь в альянсе!');
include 'sys/foot.php';
exit();
}
while($a = mysql_fetch_assoc($al))
{
$ml = mysql_fetch_assoc(mysql_query("SELECT level FROM players_aliance WHERE player = '$user[id]' LIMIT 1"));
if ($ml['level'] == 3 && $a['player'] != $user['id']) $c = '<a href="aliance_uscontrol_'.user($a['player'], 'nick').'"><span style="color:#00AA00;">[изм]</span></a>';
else $c = '';
echo '→ <a href="userinfo_'.user($a['player'], 'nick').'">' . user($a['player'], 'nick') . '</a> ' . $c . '<br/>';
}
echo $n->navi();
}
break;
case rools:
$al = mysql_query("SELECT * FROM players_aliance WHERE moder = '0' AND uid IN(SELECT id FROM aliance) ORDER BY id DESC {$n->limit}");
if (mysql_num_rows($al) == false)
{
err('Ты не состоишь в альянсе!');
include 'sys/foot.php';
exit();
}
$sql = mysql_fetch_assoc($al);
$r = mysql_query("SELECT id, rools FROM aliance WHERE id = '$sql[uid]' LIMIT 1");
$s = mysql_fetch_assoc($r);
echo '<b>Устав альянса:</b>
<br/>
<div style="padding:5px;"><span style="color:#CCFFFF;">' . $s['rools'] . '</span>
</div><br/><a href="aliance'.$s['id'].'">Вернуться</a>';
break;
case union:
$id = number($_GET['id']);
$control = mysql_query("SELECT moder FROM aliance WHERE id = '$id' LIMIT 1");
$who = mysql_query("SELECT level, uid FROM players_aliance WHERE player = '$user[id]' LIMIT 1");
$i = mysql_fetch_assoc($who);
if (mysql_num_rows($control) == false)
{
err('Альянс не найден!');
}
elseif (mysql_num_rows($who) != false)
{
err('Ты уже состоишь в альянсе!');
}
else
{
$m = mysql_fetch_assoc($control);
if ($m['moder'] == 1)
{
mysql_query("INSERT INTO players_aliance SET moder = '1', player = '$user[id]', uid = '$id'");
msg('Ожидай одобрения вступления в альянс.');
}
else
{
mysql_query("INSERT INTO players_aliance SET moder = '0', player = '$user[id]', uid = '$id'");
msg('Успешно.');
}
echo '<a href="aliance' . $id . '">Продолжить</a>';
}
break;
case quit:
$who = mysql_query("SELECT level, uid FROM players_aliance WHERE moder = '0' AND player = '$user[id]' LIMIT 1");
$i = mysql_fetch_assoc($who);
if (mysql_num_rows($who) == false)
{
err('Ты не состоишь в альянсе, выход невозможен!');
}
elseif ($i['level'] == 3 && !isset($_GET['surequit']))
{
echo 'Это твой альянс, при выходе он удалится. Выйти?<br/>
<a href="surequit"><u>Да</u></a> | <a href="aliance'.$i['uid'].'"><u>Нет</u></a><br/>';
}
elseif ($i['level'] == 3 && isset($_GET['surequit']))
{
mysql_query("DELETE FROM players_aliance WHERE uid = '$i[uid]'");
mysql_query("DELETE FROM aliance_forum_t WHERE uid = '$i[uid]'");
mysql_query("DELETE FROM aliance_forum_m WHERE uid = '$i[uid]'");
mysql_query("DELETE FROM aliance WHERE id = '$i[uid]' LIMIT 1");
msg('Твой альянс удален.');
}
else
{
mysql_query("DELETE FROM players_aliance WHERE player = '$user[id]' LIMIT 1");
msg('Выход из альянса выполнен.');
}
break;
}
echo '<br/><a href="/">На главную</a>';
include 'sys/foot.php';
?>