Fixes regarding csrf + refactor some parts of AAC (guilds + forum)

Replace $account_logged->getPlayers() with getPlayersList()
$_REQUEST['todo'] -> $_REQUEST['post']
$guild_errors -> $errors
This commit is contained in:
slawkens
2025-05-24 11:42:42 +02:00
parent e776bd52be
commit 84d502bf10
42 changed files with 301 additions and 272 deletions

View File

@@ -12,11 +12,11 @@ defined('MYAAC') or die('Direct access not allowed!');
require __DIR__ . '/base.php';
//set rights in guild
// set rights in guild
$guild_name = isset($_REQUEST['guild']) ? urldecode($_REQUEST['guild']) : null;
$name = isset($_REQUEST['name']) ? stripslashes($_REQUEST['name']) : null;
if(!$logged) {
$errors[] = 'You are not logged in. You can\'t accept invitations.';
$errors[] = "You are not logged in. You can't accept invitations.";
}
if(!Validator::guildName($guild_name)) {
@@ -27,11 +27,11 @@ if(empty($errors)) {
$guild = new OTS_Guild();
$guild->find($guild_name);
if(!$guild->isLoaded()) {
$errors[] = 'Guild with name <b>'.$guild_name.'</b> doesn\'t exist.';
$errors[] = "Guild with name <b>$guild_name</b> doesn't exist.";
}
}
if(isset($_REQUEST['todo']) && $_REQUEST['todo'] == 'save') {
if(isset($_POST['todo']) && $_POST['todo'] == 'save') {
if(!Validator::characterName($name)) {
$errors[] = 'Invalid name format.';
}
@@ -51,7 +51,7 @@ if(isset($_REQUEST['todo']) && $_REQUEST['todo'] == 'save') {
}
}
if(isset($_REQUEST['todo']) && $_REQUEST['todo'] == 'save') {
if(isset($_POST['todo']) && $_POST['todo'] == 'save') {
if(empty($errors)) {
$is_invited = false;
include(SYSTEM . 'libs/pot/InvitesDriver.php');
@@ -104,7 +104,7 @@ if(!empty($errors)) {
));
}
else {
if(isset($_REQUEST['todo']) && $_REQUEST['todo'] == 'save') {
if(isset($_POST['todo']) && $_POST['todo'] == 'save') {
$guild->acceptInvite($player);
$twig->display('success.html.twig', array(
'title' => 'Accept invitation',

View File

@@ -13,7 +13,7 @@ defined('MYAAC') or die('Direct access not allowed!');
require __DIR__ . '/base.php';
$guild_name = isset($_REQUEST['guild']) ? urldecode($_REQUEST['guild']) : null;
$rank_name = isset($_REQUEST['rank_name']) ? $_REQUEST['rank_name'] : null;
$rank_name = $_POST['rank_name'] ?? null;
if(!Validator::guildName($guild_name)) {
$errors[] = Validator::getLastError();
}
@@ -35,7 +35,7 @@ if(empty($errors)) {
$rank_list = $guild->getGuildRanksList();
$rank_list->orderBy('level', POT::ORDER_DESC);
$guild_leader = false;
$account_players = $account_logged->getPlayers();
$account_players = $account_logged->getPlayersList();
foreach($account_players as $player) {
if($guild_leader_char->getId() == $player->getId()) {
$guild_vice = true;

View File

@@ -31,7 +31,7 @@ if(empty($errors)) {
$rank_list = $guild->getGuildRanksList();
$rank_list->orderBy('level', POT::ORDER_DESC);
$guild_leader = false;
$account_players = $account_logged->getPlayers();
$account_players = $account_logged->getPlayersList();
foreach($account_players as $player) {
if($guild->getOwner()->getId() == $player->getId()) {
$guild_vice = true;
@@ -42,8 +42,8 @@ if(empty($errors)) {
$saved = false;
if($guild_leader) {
if(isset($_REQUEST['todo']) && $_REQUEST['todo'] == 'save') {
$description = htmlspecialchars(stripslashes(substr(trim($_REQUEST['description']),0, setting('core.guild_description_chars_limit'))));
if(isset($_POST['todo']) && $_POST['todo'] == 'save') {
$description = htmlspecialchars(stripslashes(substr(trim($_POST['description']),0, setting('core.guild_description_chars_limit'))));
$guild->setCustomField('description', $description);
$saved = true;
}

View File

@@ -30,7 +30,7 @@ if(empty($errors)) {
if($logged) {
$guild_leader_char = $guild->getOwner();
$guild_leader = false;
$account_players = $account_logged->getPlayers();
$account_players = $account_logged->getPlayersList();
foreach($account_players as $player) {
if($guild_leader_char->getId() == $player->getId()) {
@@ -40,14 +40,13 @@ if(empty($errors)) {
}
}
if($guild_leader)
{
if($guild_leader) {
$max_image_size_b = setting('core.guild_image_size_kb') * 1024;
$allowed_ext = array('image/gif', 'image/jpg', 'image/pjpeg', 'image/jpeg', 'image/bmp', 'image/png', 'image/x-png');
$ext_name = array('image/gif' => 'gif', 'image/jpg' => 'jpg', 'image/jpeg' => 'jpg', 'image/pjpeg' => 'jpg', 'image/bmp' => 'bmp', 'image/png' => 'png', 'image/x-png' => 'png');
$save_file_name = str_replace(' ', '_', strtolower($guild->getName()));
$save_path = GUILD_IMAGES_DIR . $save_file_name;
if(isset($_REQUEST['todo']) && $_REQUEST['todo'] == 'save')
if(isset($_POST['todo']) && $_POST['todo'] == 'save')
{
$file = $_FILES['newlogo'];
if(is_uploaded_file($file['tmp_name']))
@@ -97,13 +96,13 @@ if(empty($errors)) {
$guild_logo = $guild->getCustomField('logo_name');
if(empty($guild_logo) || !file_exists(GUILD_IMAGES_DIR . $guild_logo)) {
$guild_logo = "default.gif";
$guild_logo = 'default.gif';
}
$twig->display('guilds.change_logo.html.twig', array(
'guild_logo' => $guild_logo,
'guild' => $guild,
'max_image_size_b' => $max_image_size_b
//'max_image_size_b' => $max_image_size_b
));
}

View File

@@ -34,7 +34,7 @@ if(empty($errors)) {
$rank_list = $guild->getGuildRanksList();
$rank_list->orderBy('level', POT::ORDER_DESC);
$guild_leader = false;
$account_players = $account_logged->getPlayers();
$account_players = $account_logged->getPlayersList();
foreach($account_players as $player) {
if($guild->getOwner()->getId() == $player->getId()) {
$guild_vice = true;
@@ -45,8 +45,8 @@ if(empty($errors)) {
$saved = false;
if($guild_leader) {
if(isset($_REQUEST['todo']) && $_REQUEST['todo'] == 'save') {
$motd = htmlspecialchars(stripslashes(substr($_REQUEST['motd'],0, setting('core.guild_motd_chars_limit'))));
if(isset($_POST['todo']) && $_POST['todo'] == 'save') {
$motd = htmlspecialchars(stripslashes(substr($_POST['motd'],0, setting('core.guild_motd_chars_limit'))));
$guild->setCustomField('motd', $motd);
$saved = true;
}

View File

@@ -20,17 +20,15 @@ if(!$logged) {
}
$name = isset($_REQUEST['name']) ? stripslashes($_REQUEST['name']) : null;
$new_nick = isset($_REQUEST['nick']) ? stripslashes($_REQUEST['nick']) : null;
$new_nick = isset($_POST['nick']) ? stripslashes($_POST['nick']) : null;
$guild_name = isset($_REQUEST['guild']) ? urldecode($_REQUEST['guild']) : null;
if(!$name) {
$errors[] = 'Please enter new name.';
return;
}
if(!$new_nick) {
$errors[] = 'Please enter new nick.';
return;
}
if(empty($errors))

View File

@@ -17,8 +17,9 @@ if(!$logged) {
}
else {
$guild_name = isset($_REQUEST['guild']) ? urldecode($_REQUEST['guild']) : null;
if(!Validator::guildName($guild_name))
if(!Validator::guildName($guild_name)) {
$errors[] = Validator::getLastError();
}
}
if(empty($errors))
@@ -42,7 +43,7 @@ $rank_list = $guild->getGuildRanksList();
$rank_list->orderBy('level', POT::ORDER_DESC);
$guild_leader = false;
$guild_vice = false;
$account_players = $account_logged->getPlayers();
$account_players = $account_logged->getPlayersList();
foreach($account_players as $player)
{
$player_rank = $player->getRank();
@@ -65,22 +66,23 @@ foreach($account_players as $player)
}
}
if($guild_vice)
{
if(isset($_REQUEST['todo']) && $_REQUEST['todo'] === 'save')
{
if($guild_vice) {
if(isset($_POST['todo']) && $_POST['todo'] === 'save') {
$player_name = stripslashes($_REQUEST['name']);
$new_rank = (int) $_REQUEST['rankid'];
if(!Validator::characterName($player_name))
$new_rank = (int) $_POST['rankid'];
if(!Validator::characterName($player_name)) {
$errors[] = 'Invalid player name format.';
}
$rank = new OTS_GuildRank();
$rank->load($new_rank);
if(!$rank->isLoaded())
$errors[] = "Rank with this ID doesn't exist.";
if($level_in_guild <= $rank->getLevel() && !$guild_leader)
$errors[] = "You can't set ranks with equal or higher level than your.";
if(empty($errors))
{
if(empty($errors)) {
$player_to_change = new OTS_Player();
$player_to_change->find($player_name);
if(!$player_to_change->isLoaded())
@@ -108,8 +110,7 @@ if($guild_vice)
$errors[] = 'This player has higher rank in guild than you. You can\'t change his/her rank.';
}
if(empty($errors))
{
if(empty($errors)) {
$player_to_change->setRank($rank);
$twig->display('success.html.twig', array(
'title' => 'Rank Changed',
@@ -125,7 +126,7 @@ if($guild_vice)
$result = getPlayersWithLowerRank($rank_list, $guild_leader, $db, $level_in_guild, $guild);
$twig->display('guilds.change_rank.html.twig', array(
'players' => isset($result['players']) ? $result['players'] : array(),
'players' => $result['players'] ?? [],
'guild_name' => $guild->getName(),
'ranks' => $result['ranks']
));

View File

@@ -12,33 +12,27 @@ defined('MYAAC') or die('Direct access not allowed!');
require __DIR__ . '/base.php';
if(!$logged)
{
if(!$logged) {
echo "You are not logged in.";
$twig->display('guilds.back_button.html.twig');
return;
}
if(admin())
{
if(admin()) {
$players_list = new OTS_Players_List();
$players_list->init();
}
else
else {
$players_list = $account_logged->getPlayersList();
}
if(count($players_list) > 0)
{
foreach($players_list as $player)
{
if(count($players_list) > 0) {
foreach($players_list as $player) {
$player_rank = $player->getRank();
if($player_rank->isLoaded())
{
if($player_rank->isLoaded())
{
if($player_rank->isLoaded()) {
if($player_rank->isLoaded()) {
$rank_guild = $player_rank->getGuild();
if(!$rank_guild->isLoaded())
{
if(!$rank_guild->isLoaded()) {
$player->setRank();
$player->setGuildNick('');
$changed_ranks_of[] = $player->getName();
@@ -46,8 +40,7 @@ if(count($players_list) > 0)
$player_rank->delete();
}
}
else
{
else {
$player->setRank();
$player->setGuildNick('');
$changed_ranks_of[] = $player->getName();
@@ -55,14 +48,20 @@ if(count($players_list) > 0)
}
}
echo "<b>Deleted ranks (this ranks guilds doesn't exist [bug fix]):</b>";
if(!empty($deleted_ranks))
foreach($deleted_ranks as $rank)
echo "<li>".$rank;
if(!empty($deleted_ranks)) {
foreach ($deleted_ranks as $rank) {
echo "<li>" . $rank;
}
}
echo "<BR /><BR /><b>Changed ranks of players (rank or guild of rank doesn't exist [bug fix]):</b>";
if(!empty($changed_ranks_of))
foreach($changed_ranks_of as $name)
echo "<li>".$name;
if(!empty($changed_ranks_of)) {
foreach ($changed_ranks_of as $name) {
echo "<li>" . $name;
}
}
}
else
echo "0 players found.";

View File

@@ -14,15 +14,15 @@ use MyAAC\Models\GuildRank;
require __DIR__ . '/base.php';
$guild_name = isset($_REQUEST['guild']) ? urldecode($_REQUEST['guild']) : NULL;
$name = isset($_REQUEST['name']) ? stripslashes($_REQUEST['name']) : NULL;
$todo = isset($_REQUEST['todo']) ? $_REQUEST['todo'] : NULL;
$guild_name = isset($_POST['guild']) ? urldecode($_POST['guild']) : NULL;
$name = isset($_POST['name']) ? stripslashes($_POST['name']) : NULL;
$todo = isset($_POST['todo']) ? $_POST['todo'] : NULL;
if(!$logged) {
$guild_errors[] = 'You are not logged in. You can\'t create guild.';
$errors[] = 'You are not logged in. You can\'t create guild.';
}
$array_of_player_nig = array();
if(empty($guild_errors))
if(empty($errors))
{
$account_players = $account_logged->getPlayersList(false);
foreach($account_players as $player)
@@ -41,45 +41,44 @@ if(empty($guild_errors))
if(empty($todo)) {
if(count($array_of_player_nig) == 0) {
$guild_errors[] = 'On your account all characters are in guilds, have too low level to create new guild' . (setting('core.guild_need_premium') ? ' or you don\' have a premium account' : '') . '.';
$errors[] = 'On your account all characters are in guilds, have too low level to create new guild' . (setting('core.guild_need_premium') ? ' or you don\' have a premium account' : '') . '.';
}
}
if($todo == 'save')
{
if(!Validator::guildName($guild_name)) {
$guild_errors[] = Validator::getLastError();
$errors[] = Validator::getLastError();
$guild_name = '';
}
if(!Validator::characterName($name)) {
$guild_errors[] = 'Invalid character name format.';
$errors[] = 'Invalid character name format.';
$name = '';
}
if(empty($guild_errors)) {
if(empty($errors)) {
$player = new OTS_Player();
$player->find($name);
if(!$player->isLoaded()) {
$guild_errors[] = 'Character <b>'.$name.'</b> doesn\'t exist.';
$errors[] = 'Character <b>'.$name.'</b> doesn\'t exist.';
}
}
if(empty($guild_errors))
if(empty($errors))
{
$guild = new OTS_Guild();
$guild->find($guild_name);
if($guild->isLoaded()) {
$guild_errors[] = 'Guild <b>'.$guild_name.'</b> already exist. Select other name.';
$errors[] = 'Guild <b>'.$guild_name.'</b> already exist. Select other name.';
}
}
if(empty($guild_errors) && $player->isDeleted()) {
$guild_errors[] = "Character <b>$name</b> has been deleted.";
if(empty($errors) && $player->isDeleted()) {
$errors[] = "Character <b>$name</b> has been deleted.";
}
if(empty($guild_errors))
if(empty($errors))
{
$bad_char = true;
foreach($array_of_player_nig as $nick_from_list) {
@@ -88,22 +87,22 @@ if($todo == 'save')
}
}
if($bad_char) {
$guild_errors[] = 'Character <b>'.$name.'</b> isn\'t on your account or is already in guild.';
$errors[] = 'Character <b>'.$name.'</b> isn\'t on your account or is already in guild.';
}
}
if(empty($guild_errors)) {
if(empty($errors)) {
if($player->getLevel() < setting('core.guild_need_level')) {
$guild_errors[] = 'Character <b>'.$name.'</b> has too low level. To create guild you need character with level <b>' . setting('core.guild_need_level') . '</b>.';
$errors[] = 'Character <b>'.$name.'</b> has too low level. To create guild you need character with level <b>' . setting('core.guild_need_level') . '</b>.';
}
if(setting('core.guild_need_premium') && !$account_logged->isPremium()) {
$guild_errors[] = 'Character <b>'.$name.'</b> is on FREE account. To create guild you need PREMIUM account.';
$errors[] = 'Character <b>'.$name.'</b> is on FREE account. To create guild you need PREMIUM account.';
}
}
}
if(!empty($guild_errors)) {
$twig->display('error_box.html.twig', array('errors' => $guild_errors));
if(!empty($errors)) {
$twig->display('error_box.html.twig', array('errors' => $errors));
unset($todo);
}

View File

@@ -45,7 +45,10 @@ if(empty($errors)) {
$twig->display('success.html.twig', array(
'title' => 'Delete Guild',
'description' => 'Are you sure you want delete guild <b>' . $guild_name . '</b>?<br/>
<form action="' . getLink('guilds') . '?guild=' . $guild->getName() . '&action=delete_by_admin" METHOD="post"><input type="hidden" name="todo" value="save"><input type="submit" value="Yes, delete"></form>',
<form action="' . getLink('guilds') . '?guild=' . $guild->getName() . '&action=delete_by_admin" METHOD="post">
' . csrf(true) . '
<input type="hidden" name="todo" value="save"><input type="submit" value="Yes, delete">
</form>',
'custom_buttons' => $twig->render('guilds.back_button.html.twig')
));
}

View File

@@ -21,7 +21,7 @@ if(empty($errors)) {
$guild = new OTS_Guild();
$guild->find($guild_name);
if(!$guild->isLoaded()) {
$errors[] = 'Guild with name <b>'.$guild_name.'</b> doesn\'t exist.';
$errors[] = "Guild with name <b>$guild_name</b> doesn't exist.";
}
}
@@ -31,7 +31,7 @@ if(empty($errors)) {
$rank_list = $guild->getGuildRanksList();
$rank_list->orderBy('level', POT::ORDER_DESC);
$guild_leader = false;
$account_players = $account_logged->getPlayers();
$account_players = $account_logged->getPlayersList();
foreach($account_players as $player) {
if($guild->getOwner()->getId() == $player->getId()) {

View File

@@ -15,47 +15,43 @@ require __DIR__ . '/base.php';
$guild_name = isset($_REQUEST['guild']) ? urldecode($_REQUEST['guild']) : null;
$name = stripslashes($_REQUEST['name']);
if(!$logged)
if(!$logged) {
$errors[] = 'You are not logged in. You can\'t delete invitations.';
}
if(!Validator::guildName($guild_name))
if(!Validator::guildName($guild_name)) {
$errors[] = Validator::getLastError();
}
if(!Validator::characterName($name))
if(!Validator::characterName($name)) {
$errors[] = 'Invalid name format.';
}
if(empty($errors))
{
if(empty($errors)) {
$guild = new OTS_Guild();
$guild->find($guild_name);
if(!$guild->isLoaded())
$errors[] = "Guild with name <b>" . $guild_name . "</b> doesn't exist.";
}
if(empty($errors))
{
if(empty($errors)) {
$rank_list = $guild->getGuildRanksList();
$rank_list->orderBy('level', POT::ORDER_DESC);
$guild_leader = false;
$guild_vice = false;
$account_players = $account_logged->getPlayers();
foreach($account_players as $player)
{
$account_players = $account_logged->getPlayersList();
foreach($account_players as $player) {
$player_rank = $player->getRank();
if($player_rank->isLoaded())
{
foreach($rank_list as $rank_in_guild)
{
if($rank_in_guild->getId() == $player_rank->getId())
{
if($player_rank->isLoaded()) {
foreach($rank_list as $rank_in_guild) {
if($rank_in_guild->getId() == $player_rank->getId()) {
$players_from_account_in_guild[] = $player->getName();
if($player_rank->getLevel() > 1)
{
if($player_rank->getLevel() > 1) {
$guild_vice = true;
$level_in_guild = $player_rank->getLevel();
}
if($guild->getOwner()->getId() == $player->getId())
{
if($guild->getOwner()->getId() == $player->getId()) {
$guild_vice = true;
$guild_leader = true;
}
@@ -64,44 +60,46 @@ if(empty($errors))
}
}
if(!$guild_vice)
if(!$guild_vice) {
$errors[] = 'You are not a leader or vice leader of guild <b>' . $guild_name . '</b>.';
}
if(empty($errors))
{
$player = new OTS_Player();
$player->find($name);
if(!$player->isLoaded())
$errors[] = 'Player with name <b>' . $name . '</b> doesn\'t exist.';
}
}
if(empty($errors))
{
if(empty($errors)) {
$player = new OTS_Player();
$player->find($name);
if(!$player->isLoaded()) {
$errors[] = "Player with name <b>$name</b> doesn't exist.";
}
}
if(empty($errors)) {
include(SYSTEM . 'libs/pot/InvitesDriver.php');
new InvitesDriver($guild);
$invited_list = $guild->listInvites();
if(count($invited_list) > 0)
{
if(count($invited_list) > 0) {
$is_invited = false;
foreach($invited_list as $invited)
if($invited->getName() == $player->getName())
foreach($invited_list as $invited) {
if ($invited->getName() == $player->getName()) {
$is_invited = true;
if(!$is_invited)
$errors[] = '<b>'.$player->getName().'</b> isn\'t invited to your guild.';
}
}
if(!$is_invited) {
$errors[] = '<b>' . $player->getName() . '</b> isn\'t invited to your guild.';
}
}
else
else {
$errors[] = 'No one is invited to your guild.';
}
}
if(!empty($errors))
{
if(!empty($errors)) {
$twig->display('error_box.html.twig', array('errors' => $errors));
$twig->display('guilds.back_button.html.twig', array('action' => getLink('guilds') . '?action=show&guild=' . $guild_name));
}
else
{
if(isset($_REQUEST['todo']) && $_REQUEST['todo'] == 'save')
{
else {
if(isset($_POST['todo']) && $_POST['todo'] == 'save') {
$guild->deleteInvite($player);
$twig->display('success.html.twig', array(
'title' => 'Deleted player invitation',

View File

@@ -13,25 +13,27 @@ defined('MYAAC') or die('Direct access not allowed!');
require __DIR__ . '/base.php';
$guild_name = isset($_REQUEST['guild']) ? urldecode($_REQUEST['guild']) : null;
$rank_to_delete = isset($_REQUEST['rankid']) ? (int) $_REQUEST['rankid'] : null;
$rank_to_delete = isset($_POST['rankid']) ? (int) $_POST['rankid'] : null;
if(!Validator::guildName($guild_name)) {
$guild_errors[] = Validator::getLastError();
$errors[] = Validator::getLastError();
}
if(empty($guild_errors)) {
if(empty($errors)) {
$guild = new OTS_Guild();
$guild->find($guild_name);
if(!$guild->isLoaded()) {
$guild_errors[] = 'Guild with name <b>'.$guild_name.'</b> doesn\'t exist.';
$errors[] = 'Guild with name <b>'.$guild_name.'</b> doesn\'t exist.';
}
}
if(empty($guild_errors)) {
if(empty($errors)) {
if($logged) {
$guild_leader_char = $guild->getOwner();
$rank_list = $guild->getGuildRanksList();
$rank_list->orderBy('level', POT::ORDER_DESC);
$guild_leader = false;
$account_players = $account_logged->getPlayers();
$account_players = $account_logged->getPlayersList();
foreach($account_players as $player) {
if($guild->getOwner()->getId() == $player->getId()) {
$guild_vice = true;
@@ -39,21 +41,21 @@ if(empty($guild_errors)) {
$level_in_guild = 3;
}
}
if($guild_leader) {
$rank = new OTS_GuildRank();
$rank->load($rank_to_delete);
if(!$rank->isLoaded()) {
$guild_errors2[] = 'Rank with ID '.$rank_to_delete.' doesn\'t exist.';
$errors2[] = 'Rank with ID '.$rank_to_delete.' doesn\'t exist.';
}
else
{
else {
if($rank->getGuild()->getId() != $guild->getId()) {
$guild_errors2[] = 'Rank with ID '.$rank_to_delete.' isn\'t from your guild.';
$errors2[] = 'Rank with ID '.$rank_to_delete.' isn\'t from your guild.';
}
else
{
if(count($rank_list) < 2) {
$guild_errors2[] = 'You have only 1 rank in your guild. You can\'t delete this rank.';
$errors2[] = 'You have only 1 rank in your guild. You can\'t delete this rank.';
}
else
{
@@ -87,19 +89,21 @@ if(empty($guild_errors)) {
$player->setRank($new_rank);
}
}
$rank->delete();
$saved = true;
}
}
}
if($saved) {
if(isset($saved) && $saved) {
$twig->display('success.html.twig', array(
'title' => 'Rank Deleted',
'description' => 'Rank <b>'.$rank->getName().'</b> has been deleted. Players with this rank has now other rank.',
'custom_buttons' => ''
));
} else {
$twig->display('error_box.html.twig', array('errors' => $guild_errors2));
$twig->display('error_box.html.twig', array('errors' => $errors2));
}
$twig->display('guilds.back_button.html.twig', array(
@@ -107,18 +111,16 @@ if(empty($guild_errors)) {
'action' => getLink('guilds') . '?guild='.$guild->getName().'&action=manager'
));
}
else
{
$guild_errors[] = 'You are not a leader of guild!';
else {
$errors[] = 'You are not a leader of guild!';
}
}
else
{
$guild_errors[] = 'You are not logged. You can\'t manage guild.';
else {
$errors[] = 'You are not logged. You can\'t manage guild.';
}
}
if(!empty($guild_errors)) {
$twig->display('error_box.html.twig', array('errors' => $guild_errors));
if(!empty($errors)) {
$twig->display('error_box.html.twig', array('errors' => $errors));
$twig->display('guilds.back_button.html.twig', array(
'new_line' => true,

View File

@@ -36,7 +36,7 @@ if(empty($errors)) {
$rank_list->orderBy('level', POT::ORDER_DESC);
$guild_leader = false;
$guild_vice = false;
$account_players = $account_logged->getPlayers();
$account_players = $account_logged->getPlayersList();
foreach($account_players as $player) {
$player_rank = $player->getRank();
if($player_rank->isLoaded()) {
@@ -62,7 +62,7 @@ if(!$guild_vice) {
$errors[] = 'You are not a leader or vice leader of guild <b>'.$guild_name.'</b>.'.$level_in_guild;
}
if(isset($_REQUEST['todo']) && $_REQUEST['todo'] == 'save') {
if(isset($_POST['todo']) && $_POST['todo'] == 'save') {
if(!Validator::characterName($name)) {
$errors[] = 'Invalid name format.';
}
@@ -71,7 +71,7 @@ if(isset($_REQUEST['todo']) && $_REQUEST['todo'] == 'save') {
$player = new OTS_Player();
$player->find($name);
if(!$player->isLoaded()) {
$errors[] = 'Player with name <b>' . $name . '</b> doesn\'t exist.';
$errors[] = "Player with name <b>$name</b> doesn't exist.";
} else if ($player->isDeleted()) {
$errors[] = "Character with name <b>$name</b> has been deleted.";
}
@@ -102,7 +102,7 @@ if(!empty($errors)) {
$twig->display('error_box.html.twig', array('errors' => $errors));
}
else {
if(isset($_REQUEST['todo']) && $_REQUEST['todo'] == 'save') {
if(isset($_POST['todo']) && $_POST['todo'] == 'save') {
$guild->invite($player);
$twig->display('success.html.twig', array(
'title' => 'Invite player',

View File

@@ -41,7 +41,7 @@ if(empty($errors)) {
$rank_list->orderBy('level', POT::ORDER_DESC);
$guild_leader = false;
$guild_vice = false;
$account_players = $account_logged->getPlayers();
$account_players = $account_logged->getPlayersList();
foreach($account_players as $player) {
$player_rank = $player->getRank();
if($player_rank->isLoaded()) {
@@ -102,7 +102,7 @@ if(!empty($errors)) {
}
else
{
if(isset($_REQUEST['todo']) && $_REQUEST['todo'] == 'save') {
if(isset($_POST['todo']) && $_POST['todo'] == 'save') {
$player->setRank();
$twig->display('success.html.twig', array(

View File

@@ -34,7 +34,7 @@ if(empty($errors)) {
$array_of_player_ig = array();
if(empty($errors)) {
$guild_owner_name = $guild->getOwner()->getName();
if(isset($_REQUEST['todo']) && $_REQUEST['todo'] == 'save') {
if(isset($_POST['todo']) && $_POST['todo'] == 'save') {
if(!Validator::characterName($name)) {
$errors[] = 'Invalid name format.';
}
@@ -72,7 +72,7 @@ if(empty($errors)) {
}
else
{
$account_players = $account_logged->getPlayers();
$account_players = $account_logged->getPlayersList();
foreach($account_players as $player_fac) {
$player_rank = $player_fac->getRank();
if($player_rank->isLoaded()) {
@@ -94,7 +94,7 @@ if(!empty($errors)) {
}
else
{
if(isset($_REQUEST['todo']) && $_REQUEST['todo'] == 'save') {
if(isset($_POST['todo']) && $_POST['todo'] == 'save') {
$player->setRank();
$twig->display('success.html.twig', array(
'title' => 'Leave guild',

View File

@@ -14,23 +14,24 @@ defined('MYAAC') or die('Direct access not allowed!');
require __DIR__ . '/base.php';
$guilds_list = new OTS_Guilds_List();
$guilds_list->orderBy("name");
$guilds_list->orderBy('name');
$guilds = array();
if(count($guilds_list) > 0)
{
if(count($guilds_list) > 0) {
/**
* @var OTS_Guild $guild
*/
foreach ($guilds_list as $guild) {
$guild_logo = $guild->getCustomField('logo_name');
if (empty($guild_logo) || !file_exists(GUILD_IMAGES_DIR . $guild_logo))
$guild_logo = "default.gif";
if (empty($guild_logo) || !file_exists(GUILD_IMAGES_DIR . $guild_logo)) {
$guild_logo = 'default.gif';
}
$description = $guild->getCustomField('description');
$description_with_lines = str_replace(array("\r\n", "\n", "\r"), '<br />', $description, $count);
if ($count < setting('core.guild_description_lines_limit'))
if ($count < setting('core.guild_description_lines_limit')) {
$description = nl2br($description);
}
$guildName = $guild->getName();
$guilds[] = array('name' => $guildName, 'logo' => $guild_logo, 'link' => getGuildLink($guildName, false), 'description' => $description);
@@ -39,6 +40,6 @@ if(count($guilds_list) > 0)
$twig->display('guilds.list.html.twig', array(
'guilds' => $guilds,
'logged' => isset($logged) ? $logged : false,
'logged' => $logged ?? false,
'isAdmin' => admin(),
));

View File

@@ -21,7 +21,7 @@ if(empty($errors)) {
$guild = new OTS_Guild();
$guild->find($guild_name);
if(!$guild->isLoaded()) {
$errors[] = 'Guild with name <b>'.$guild_name.'</b> doesn\'t exist.';
$errors[] = "Guild with name <b>$guild_name</b> doesn't exist.";
}
}
@@ -31,7 +31,7 @@ if(empty($errors)) {
$rank_list = $guild->getGuildRanksList();
$rank_list->orderBy('level', POT::ORDER_DESC);
$guild_leader = false;
$account_players = $account_logged->getPlayers();
$account_players = $account_logged->getPlayersList();
foreach($account_players as $player) {
if($guild_leader_char->getId() == $player->getId()) {
$guild_vice = true;
@@ -39,22 +39,22 @@ if(empty($errors)) {
$level_in_guild = 3;
}
}
if($guild_leader) {
$twig->display('guilds.manager.html.twig', array(
'guild' => $guild,
'rank_list' => $rank_list
));
}
else
{
else {
$errors[] = 'You are not a leader of guild!';
}
}
else
{
$errors[] = 'You are not logged. You can\'t manage guild.';
else {
$errors[] = "You are not logged. You can't manage guild.";
}
}
if(!empty($errors)) {
$twig->display('error_box.html.twig', array('errors' => $errors));
}

View File

@@ -15,51 +15,52 @@ require __DIR__ . '/base.php';
$guild_name = isset($_REQUEST['guild']) ? urldecode($_REQUEST['guild']) : NULL;
$pass_to = isset($_REQUEST['player']) ? stripslashes($_REQUEST['player']) : NULL;
if(!Validator::guildName($guild_name)) {
$guild_errors[] = Validator::getLastError();
$errors[] = Validator::getLastError();
}
if(empty($guild_errors)) {
if(empty($errors)) {
$guild = new OTS_Guild();
$guild->find($guild_name);
if(!$guild->isLoaded()) {
$guild_errors[] = "Guild with name <b>" . $guild_name . "</b> doesn't exist.";
$errors[] = "Guild with name <b>" . $guild_name . "</b> doesn't exist.";
}
}
if(empty($guild_errors)) {
if(empty($errors)) {
if(isset($_POST['todo']) && $_POST['todo'] == 'save') {
if(!Validator::characterName($pass_to)) {
$guild_errors2[] = 'Invalid player name format.';
$errors2[] = 'Invalid player name format.';
}
if(empty($guild_errors2)) {
if(empty($errors2)) {
$to_player = new OTS_Player();
$to_player->find($pass_to);
if(!$to_player->isLoaded()) {
$guild_errors2[] = 'Player with name <b>'.$pass_to.'</b> doesn\'t exist.';
$errors2[] = 'Player with name <b>'.$pass_to.'</b> doesn\'t exist.';
} else if ($to_player->isDeleted()) {
$guild_errors2[] = "Character with name <b>$pass_to</b> has been deleted.";
$errors2[] = "Character with name <b>$pass_to</b> has been deleted.";
}
if(empty($guild_errors2)) {
if(empty($errors2)) {
$to_player_rank = $to_player->getRank();
if($to_player_rank->isLoaded()) {
$to_player_guild = $to_player_rank->getGuild();
if($to_player_guild->getId() != $guild->getId()) {
$guild_errors2[] = 'Player with name <b>'.$to_player->getName().'</b> isn\'t from your guild.';
$errors2[] = 'Player with name <b>'.$to_player->getName().'</b> isn\'t from your guild.';
}
}
else {
$guild_errors2[] = 'Player with name <b>'.$to_player->getName().'</b> isn\'t from your guild.';
$errors2[] = 'Player with name <b>'.$to_player->getName().'</b> isn\'t from your guild.';
}
}
}
}
}
if(empty($guild_errors) && empty($guild_errors2)) {
if(empty($errors) && empty($errors2)) {
if($logged) {
$guild_leader_char = $guild->getOwner();
$guild_leader = false;
$account_players = $account_logged->getPlayers();
$account_players = $account_logged->getPlayersList();
foreach($account_players as $player) {
if($guild_leader_char->getId() == $player->getId()) {
$guild_vice = true;
@@ -99,23 +100,23 @@ if(empty($guild_errors) && empty($guild_errors2)) {
}
}
else {
$guild_errors[] = 'You are not a leader of guild!';
$errors[] = 'You are not a leader of guild!';
}
}
else {
$guild_errors[] = "You are not logged. You can't manage guild.";
$errors[] = "You are not logged. You can't manage guild.";
}
}
if(empty($guild_errors) && !empty($guild_errors2)) {
$twig->display('error_box.html.twig', array('errors' => $guild_errors2));
if(empty($errors) && !empty($errors2)) {
$twig->display('error_box.html.twig', array('errors' => $errors2));
echo '<br/><div style="text-align:center"><form action="' . getLink('guilds') . '?guild='.$guild->getName().'&action=pass_leadership" method="post">' . $twig->render('buttons.back.html.twig') . '</form></div>';
}
if(!empty($guild_errors)) {
if(!empty($guild_errors2)) {
$guild_errors = array_merge($guild_errors, $guild_errors2);
if(!empty($errors)) {
if(!empty($errors2)) {
$errors = array_merge($errors, $errors2);
}
$twig->display('error_box.html.twig', array('errors' => $guild_errors));
$twig->display('error_box.html.twig', array('errors' => $errors));
echo '<br/><div style="text-align:center"><form action="' . getLink('guilds') . '" method="post">' . $twig->render('buttons.back.html.twig') . '</form></div>';
}

View File

@@ -31,7 +31,7 @@ if(empty($errors)) {
$rank_list = $guild->getGuildRanksList();
$rank_list->orderBy('level', POT::ORDER_DESC);
$guild_leader = false;
$account_players = $account_logged->getPlayers();
$account_players = $account_logged->getPlayersList();
foreach($account_players as $player) {
if($guild_leader_char->getId() == $player->getId()) {
@@ -61,6 +61,7 @@ if(empty($errors)) {
$rank->save();
}
//show errors or redirect
if(empty($errors)) {
header("Location: " . getLink('guilds') . "?action=manager&guild=".$guild->getName());
@@ -73,10 +74,10 @@ if(empty($errors)) {
}
else
{
$errors[] = 'You are not logged. You can\'t manage guild.';
$errors[] = "You are not logged. You can't manage guild.";
}
}
if(!empty($errors)) {
$twig->display('error_box.html.twig', array('errors' => $errors));
$twig->display('error_box.html.twig', ['errors' => $errors]);
}

View File

@@ -16,19 +16,18 @@ $title = 'Guilds';
require __DIR__ . '/base.php';
$guild_name = isset($_REQUEST['guild']) ? urldecode($_REQUEST['guild']) : null;
if(!Validator::guildName($guild_name))
if(!Validator::guildName($guild_name)) {
$errors[] = Validator::getLastError();
}
if(empty($errors))
{
if(empty($errors)) {
$guild = new OTS_Guild();
$guild->find($guild_name);
if(!$guild->isLoaded())
$errors[] = 'Guild with name <b>'.$guild_name.'</b> doesn\'t exist.';
}
if(!empty($errors))
{
if(!empty($errors)) {
$twig->display('error_box.html.twig', array('errors' => $errors));
$twig->display('guilds.back_button.html.twig');
return;
@@ -47,9 +46,8 @@ $level_in_guild = 0;
$players_from_account_in_guild = array();
$players_from_account_ids = array();
if($logged)
{
$account_players = $account_logged->getPlayers();
if($logged) {
$account_players = $account_logged->getPlayersList();
foreach($account_players as $player)
{
$players_from_account_ids[] = $player->getId();