* @author Slawkens * @copyright 2017 MyAAC * @version 0.6.1 * @link http://my-aac.org */ defined('MYAAC') or die('Direct access not allowed!'); //set rights in guild $guild_name = $_REQUEST['guild']; $name = stripslashes($_REQUEST['name']); if(!$logged) { $errors[] = 'You are not logged in. You can\'t kick characters.'; } if(!Validator::guildName($guild_name)) { $errors[] = Validator::getLastError(); } if(!Validator::characterName($name)) { $errors[] = 'Invalid name format.'; } if(empty($errors)) { $guild = $ots->createObject('Guild'); $guild->find($guild_name); if(!$guild->isLoaded()) { $errors[] = 'Guild with name '.$guild_name.' doesn\'t exist.'; } } 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) { $player_rank = $player->getRank(); 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) { $guild_vice = true; $level_in_guild = $player_rank->getLevel(); } if($guild->getOwner()->getId() == $player->getId()) { $guild_vice = true; $guild_leader = true; } } } } } } if(empty($errors)) { if(!$guild_leader && $level_in_guild < 3) { $errors[] = 'You are not a leader of guild '.$guild_name.'. You can\'t kick players.'; } } if(empty($errors)) { $player = new OTS_Player(); $player->find($name); if(!$player->isLoaded()) { $errors[] = 'Character '.$name.' doesn\'t exist.'; } else { if($player->getRank()->isLoaded() && $player->getRank()->getGuild()->isLoaded() && $player->getRank()->getGuild()->getName() != $guild->getName()) { $errors[] = 'Character '.$name.' isn\'t from your guild.'; } } } if(empty($errors)) { if($player->getRank()->isLoaded() && $player->getRank()->getLevel() >= $level_in_guild && !$guild_leader) { $errors[] = 'You can\'t kick character '.$name.'. Too high access level.'; } } if(empty($errors)) { if($guild->getOwner()->getName() == $player->getName()) { $errors[] = 'It\'s not possible to kick guild owner!'; } } if(!empty($errors)) { echo $twig->render('error_box.html.twig', array('errors' => $errors)); echo '
'; } else { if(isset($_REQUEST['todo']) && $_REQUEST['todo'] == 'save') { $player->setRank(); echo '
Kick player
Player with name '.$player->getName().' has been kicked from your guild.

'; } else { echo '
Kick player
Are you sure you want to kick player with name '.$player->getName().' from your guild?

  
  
'; } } ?>