* @author Slawkens * @copyright 2017 MyAAC * @link http://my-aac.org */ defined('MYAAC') or die('Direct access not allowed!'); //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 leave guild."; } if(!Validator::guildName($guild_name)) { $errors[] = Validator::getLastError(); } if(empty($errors)) { $guild = new OTS_Guild(); $guild->find($guild_name); if(!$guild->isLoaded()) { $errors[] = "Guild with name " . $guild_name . " doesn't exist."; } } $array_of_player_ig = array(); if(empty($errors)) { $guild_owner_name = $guild->getOwner()->getName(); if(isset($_REQUEST['todo']) && $_REQUEST['todo'] == 'save') { if(!Validator::characterName($name)) { $errors[] = 'Invalid name format.'; } if(empty($errors)) { $player = new OTS_Player(); $player->find($name); if(!$player->isLoaded()) { $errors[] = "Character " . $name . " doesn't exist."; } else { if($player->getAccount()->getId() != $account_logged->getId()) { $errors[] = "Character " . $name . " isn't from your account!"; } } } if(empty($errors)) { $player_loaded_rank = $player->getRank(); if($player_loaded_rank->isLoaded()) { if($player_loaded_rank->getGuild()->getName() != $guild->getName()) { $errors[] = "Character " . $name . " isn't from guild " . $guild->getName() . "."; } } else { $errors[] = "Character " . $name . " isn't in any guild."; } } if(empty($errors)) { if($guild_owner_name == $player->getName()) { $errors[] = "You can't leave guild. You are an owner of guild."; } } } else { $account_players = $account_logged->getPlayers(); foreach($account_players as $player_fac) { $player_rank = $player_fac->getRank(); if($player_rank->isLoaded()) { if($player_rank->getGuild()->getId() == $guild->getId()) { if($guild_owner_name != $player_fac->getName()) { $array_of_player_ig[] = $player_fac->getName(); } } } } } } if(!empty($errors)) { echo $twig->render('error_box.html.twig', array('errors' => $errors)); echo $twig->render('guilds.back_button.html.twig', array( 'action' => getLink('guilds') . '/' . $guild_name )); } else { if(isset($_REQUEST['todo']) && $_REQUEST['todo'] == 'save') { $player->setRank(); echo $twig->render('success.html.twig', array( 'title' => 'Leave guild', 'description' => 'Player with name '.$player->getName().' leaved guild '.$guild->getName().'.', 'custom_buttons' => $twig->render('guilds.back_button.html.twig', array( 'action' => getLink('guilds') . '/' . $guild_name )) )); } else { sort($array_of_player_ig); echo $twig->render('guilds.leave_guild.html.twig', array( 'players' => $array_of_player_ig, 'guild_name' => $guild_name )); } } ?>