battles/klan.php
2019-06-21 00:48:46 +03:00

260 lines
15 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
ob_start("ob_gzhandler");
session_start();
if ($_SESSION['uid'] == null) header("Location: index.php");
include_once 'config.php';
include_once 'functions.php';
$status = null;
if (!$user['klan']) {
die(err('Вы не состоите в клане!'));
}
$klan = db::c()->query('SELECT * FROM `clans` WHERE `id` = ?i', $user['klan'])->fetch_assoc();
$polno = [];
$polno = unserialize($klan['vozm']);
if (isset($_POST['zamok'])) {
db::c()->query('UPDATE `clans` SET `zamok` = 1 WHERE `glava` = ?i', $_SESSION['uid']);
$status = "Начат сбор средств на строительство Кланового Замка.";
header("Location: klan.php");
}
if (isset($_POST['kr']) && ($_POST['kolv'] > 0)) {
if ($user['money'] >= $_POST['kolv']) {
db::c()->query('UPDATE `clans` SET `zbor` = `zbor` + ?i WHERE `id` = ?i', $_POST['kolv'], $user['klan']);
db::c()->query('UPDATE `users` SET `money` = `money` - ?i WHERE `id` = ?i', $_POST['kolv'], $user['id']);
header("Location: klan.php");
} else $status = 'Не хватает денег!';
}
?>
<!doctype html>
<html>
<head>
<link rel=stylesheet href="css/main.css">
<meta charset="utf-8">
</head>
<body>
<div id=hint3 class=ahint><?php if (!empty($status)) err($status); ?></div>
<table style="width: 100%">
<tr>
<td style="width: 50%; vertical-align: top;" rowspan=2>
<h3><img src="./i/klan/<?= $klan['short'] ?>.gif"><?= $klan['name'] ?></h3>
Количество рейтинговых очков клана: <b><?= $klan['rating'] ?></b><br>
<?php
if ($klan['zamok'] == 2) echo 'У Вашего клана есть Замок<br><br>';
else echo 'У клана пока нет Замка<br><br>';
?>
<span id="add_member"><input type="submit" onclick="use('add_member')" value="Принять в клан"></span>
<?php
if (!empty($_POST['login'])) echo 'Это успех, $login!';
if ($klan['glava'] == $user['id'] OR $polno[$user['id']][0] == 1 OR $polno[$user['id']][1] == 1) {
echo "<form method=post>";
if ($polno[$user['id']][0] == 1) echo '<INPUT TYPE="button" onclick="findlogin(\'Принять в клан\', \'login2\');" value="Принять в клан" title="Принять в клан"> (это вам обойдется в <B>100</B> кр.)<BR>
<INPUT TYPE="button" onclick="findlogin(\'Выгнать из клана\', \'login1\');" value="Выгнать из клана" title="Выгнать из клана"> (это вам обойдется в <B>30</B> кр.)<BR>';
if ($klan['glava'] == $user['id']) echo '<INPUT TYPE="button" onclick="findlogin(\'Сменить главу клана\', \'login3\');" value="Сменить главу клана" title="Сменить главу клана"> (<b>Вы</b> вправе сложить с себя полномочия, назначив <b>Главой Клана</b> другого персонажа)<BR>';
if ($polno[$user['id']][1] == 1 OR $klan['glava'] == $user['id']) echo '<INPUT TYPE="button" onclick="findlogin(\'Редактировать статус соклановца\', \'login\');" value="Редактировать статус соклановца" title="Редактировать статус соклановца"><BR>';
if (($klan['glava'] == $user['id']) AND ($klan['zamok'] == '0')) {
if ($klan['rating'] < '1000000') {
echo sprintf('[%s/1000000] Недостаточно рейтинга для постройки кланового замка.', $klan['rating']);
} else {
echo '
<form method="post">
<button type="submit" name="zamok" value="zamok">Сбор средств на постройку Замка</button>
(25000 кр.)<BR>
</FORM>';
}
}
if (($klan['zbor'] >= '25000') AND ($klan['zamok'] == '1') AND ($klan['glava'] == $user['id'])) {
err('Сумма собрана, но замки ещё не введены в игру. 🙁');
}
if ($klan['rating'] >= '1000000' AND $klan['zamok'] == 1 AND $klan['zbor'] < '25000') {
$ex = $klan['zbor'];
echo "Сбор средств на постройку кланового замка: $ex кр./25000 кр.<BR>";
echo '
<FORM method="post">
<input name="kolv" size="10">
<button type="submit" name="kr" value="kr">Пожертвовать</button>
</FORM>';
}
if ($_POST['login']) {
$sok = mysql_fetch_array(mysql_query('SELECT * FROM `users` WHERE `klan` = \'' . $klan['id'] . '\' AND `login` = \'' . $_POST['login'] . '\' LIMIT 1;'));
$st = strip_tags(str_replace("&lt;", "<", str_replace("&gt;", ">", $_POST['status'])), "<B><I><U>");
if ($klan['glava'] == $sok['id']) {
$st = "<font color=#008080><b>Глава клана</b></font>";
}
if ($sok) {
if ($_POST['save']) {
if ($_POST['vin'] == 'on') {
$polno[$sok['id']][0] = 1;
} else {
$polno[$sok['id']][0] = 0;
}
if ($_POST['tus'] == 'on') {
$polno[$sok['id']][1] = 1;
} else {
$polno[$sok['id']][1] = 0;
}
$id_checked = mysql_real_escape_string($sok['id']);
if (!mysql_query("UPDATE `users` SET `status` = '{$st}' WHERE `id` = '{$id_checked}';")) echo(mysql_error());
if ($klan['glava'] == $user['id']) {
mysql_query('UPDATE `clans` SET `vozm` = \'' . serialize($polno) . '\' WHERE `id` = \'' . $klan['id'] . '\';');
}
$sok['status'] = $st;
}
echo '<BR><fieldset ><legend>Редактирование статуса "', $sok['login'], '"</legend>
Звание в клане <input type=text value="', $sok['status'], '" name=status><BR>';
if ($klan['glava'] == $user['id']) {
echo '<input type=checkbox name=vin ';
if ($polno[$sok['id']][0] == 1) {
echo ' checked ';
}
echo '>Может принимать/выгонять членов клана<BR>
<input type=checkbox name=tus ';
if ($polno[$sok['id']][1] == 1) {
echo ' checked ';
}
echo '>Может менять статус членов клана<BR>';
}
echo '<input type=hidden value="', $sok['login'], '" name=login><input type=submit value="Сохранить" name=save></fieldset>';
}
}
if ($_POST['login3'] && $klan['glava'] == $user['id']) {
$sok = mysql_fetch_array(mysql_query('SELECT * FROM `users` WHERE `klan` = \'' . $klan['id'] . '\' AND `login` = \'' . $_POST['login3'] . '\' LIMIT 1;'));
//mysql_query('update `users` set `money` = `money` - 30 WHERE `id` = '.$_SESSION['uid'].';');
//mysql_query('update `users` set `klan` = \'\', `align` = 0 WHERE `id` = '.$sok['id'].';');
mysql_query('update `clans` set `glava` = \'' . $sok['id'] . '\' WHERE `id` = ' . $klan['id'] . ';');
mysql_query('update `users` set `status` = \'<font color=#008080><b>Глава клана</b></font>\' WHERE `id` = ' . $sok['id'] . ';');
mysql_query('update `users` set `status` = \'боец\' WHERE `id` = ' . $user['id'] . ';');
$klan['glava'] = $sok['id'];
}
if ($_POST['login2'] && $polno[$user['id']][0] == 1) {
$sok = mysql_fetch_array(mysql_query('SELECT * FROM `users` WHERE `klan` = \'\' AND `align` = \'0\' AND `login` = \'' . $_POST['login2'] . '\' LIMIT 1;'));
$eff = mysql_fetch_array(mysql_query("SELECT * FROM `effects` WHERE `owner` = '" . $sok['id'] . "' AND `type` = 20 LIMIT 1;"));
if (!$eff) {
echo "Нет проверки!";
} elseif ($sok['level'] > 0 && $user['money'] >= 100) {
echo 'Персонаж "', $sok['login'], '" успешно принят в клан.';
mysql_query('update `users` set `money` = `money` - 100 WHERE `id` = ' . $_SESSION['uid'] . ';');
mysql_query('update `users` set `status`= \'боец\', `klan` = \'' . $klan['id'] . '\', `align` = \'' . $klan['align'] . '\' WHERE `id` = ' . $sok['id'] . ';');
} else {
echo "Не хватает денег, или его попросту не существует.";
}
}
if ($_POST['login1'] && $polno[$user['id']][0] == 1) {
$sok = mysql_fetch_array(mysql_query('SELECT * FROM `users` WHERE `klan` = \'' . $klan['id'] . '\' AND `login` = \'' . $_POST['login1'] . '\' LIMIT 1;'));
if ($sok && $user['money'] >= 30 && $klan['glava'] != $sok['id']) {
echo 'Персонаж "', $sok['login'], '" покинул клан.';
mysql_query('update `users` set `money` = `money` - 30 WHERE `id` = ' . $_SESSION['uid'] . ';');
mysql_query('update `users` set `klan` = \'\', `align` = 0 WHERE `id` = ' . $sok['id'] . ';');
}
}
} else {
echo 'У вашего клана нет реликтов, или глава клана вам их не предоставил. ;)';
}
?>
</td>
<td align=right>
<INPUT TYPE="button" onClick="location.href='main.php';" value="Вернуться" title="Вернуться">
</td>
</tr>
<tr>
<td valign=top>
<h3><a href="javascript:top.AddToPrivate('klan', top.CtrlPress)" target=refreshed><img src="i/lock.gif"></a>
Соклановцы
</h3>
<table bgcolor=#eeeeee>
<tr>
<td>
<?php
$data = db::c()->query('SELECT `id`, `login`, `status`, `level`, `room`, `align`, (select `id` from `online` WHERE `date` >= ?i AND `id` = users.`id`) AS `online` FROM `users` WHERE `klan` = ?i ORDER BY `online` DESC , `login` ASC', (time()-60), $klan['id']);
while ($row = $data->fetch_assoc()) {
if ($row['online'] > 0) {
echo '💡 <A HREF="javascript:top.AddToPrivate(\'', nick::id($row['id'])->short(), '\', top.CtrlPress)" target=refreshed><img src="i/lock.gif" width=20 height=15></A>';
echo nick::id($row['id'])->full();
if ($row['id'] == $klan['glava']) {
echo ' - <b style="color: #008080;">Глава клана</b>';
} else {
echo ' - ', $row['status'], '';
}
if ($row['room'] > 500 && $row['room'] < 561) {
$rrm = 'Башня смерти, участвует в турнире';
} else {
$rrm = $rooms[$row['room']];
}
echo ' - <i>', $rrm, '</i><BR>';
} else if ($row['online'] < 1) {
echo '<img src="i/lock1.gif" width=20 height=15>';
echo nick::id($row['id'])->full();
if ($row['id'] == $klan['glava']) {
echo ' - <b style="color: #008080;">Глава клана</b>';
} else {
echo ' - ', $row['status'], '';
}
}
}
?>
</td>
</tr>
</table>
</td>
</tr>
</table>
<script type="text/javascript">
function show(ele) {
var srcElement = document.getElementById(ele);
if (srcElement != null) {
if (srcElement.style.display == "block") {
srcElement.style.display = 'none';
}
else {
srcElement.style.display = 'block';
}
}
}
var Hint3Name = '';
// Заголовок, название скрипта, имя поля с логином
function findlogin(title, name) {
document.all("hint3").innerHTML = '<table><tr><td align=center><B>' + title + '</td><td width=20 align=right valign=top style="cursor: pointer" onclick="closehint3();"><BIG><B>x</td></tr><tr><td colspan=2>' +
'<form method=POST><table width=100% cellspacing=0 cellpadding=2 bgcolor=FFF6DD><tr><INPUT TYPE=hidden name=sd4 value="6"><td colspan=2>' +
'Укажите логин персонажа:<small></TD></TR><TR><TD width=50% align=right><INPUT TYPE=text NAME="' + name + '"></TD><TD width=50%><INPUT TYPE="submit" value=" »» "></TD></TR></TABLE></FORM></td></tr></table>';
document.all("hint3").style.visibility = "visible";
document.all("hint3").style.left = 100;
document.all("hint3").style.top = 100;
document.all(name).focus();
Hint3Name = name;
}
function returned2(s) {
if (top.oldlocation != '') {
top.frames['main'].location = top.oldlocation + '?' + s + 'tmp=' + Math.random();
top.oldlocation = '';
}
else {
top.frames['main'].location = 'main.php?edit=' + Math.random()
}
}
function closehint3() {
document.all("hint3").style.visibility = "hidden";
Hint3Name = '';
}
function use(option) {
document.getElementById(option).innerHTML = "<form method='post'><input placeholder='Имя персонажа' name='login'><button name='"+option+"' type='submit'>Ок</button></form>";
}
</script>
</body>
</html>