Create an account if you do not have one yet.

Account Login
Account Number:
Password:

'; } else { $main_content .= '

Now you are logged. Redirecting...

'; if($redirect == 'guilds') header("Location: ?subtopic=guilds"); elseif($redirect == 'guild') header("Location: ?subtopic=guilds&action=show&guild=".urlencode($guild)); else $main_content .= 'Wrong address to redirect!'; } } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //show list of guilds if($action == '') { $world_name = $config['server']['serverName']; $guilds_list = new DatabaseList('Guild'); $guilds_list->addOrder(new SQL_Order(new SQL_Field('name'), SQL_Order::ASC)); $main_content .= '

Guilds on '.htmlspecialchars($world_name).'

'; $showed_guilds = 1; if(count($guilds_list) > 0) { foreach($guilds_list as $guild) { if(is_int($showed_guilds / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $showed_guilds++; $description = $guild->getDescription(); $newlines = array("\r\n", "\n", "\r"); $description_with_lines = str_replace($newlines, '
', $description, $count); if($count < $config['site']['guild_description_lines_limit']) $description = $description_with_lines; $main_content .= ''; } } else $main_content .= ''; $main_content .= '
Guilds on '.htmlspecialchars($world_name).'
Logo Description  
'.htmlspecialchars($guild->getName()).'
'.$description.''; if($group_id_of_acc_logged >= $config['site']['access_admin_panel']) $main_content .= '
Delete this guild (for ADMIN only!)'; $main_content .= '
Create guild
Currently there is no guild on server. Create first! Press button "Create Guild".


'; if($logged) $main_content .= '

If you have any problem with guilds try:
Cleanup players - can\'t join guild/be invited? Can\'t create guild? Try cleanup players.'; else $main_content .= 'Before you can create guild you must login.
'; } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //show guild page if($action == 'show') { $guild_id = (int) $_REQUEST['guild']; $guild = new Guild(); $guild->load($guild_id); if(!$guild->isLoaded()) $guild_errors[] = 'Guild with ID '.$guild_id.' doesn\'t exist.'; if(!empty($guild_errors)) { //show errors $main_content .= '
The Following Errors Have Occurred:
'; foreach($guild_errors as $guild_error) $main_content .= '
  • '.$guild_error; //errors and back button $main_content .= '

  • '; } else { //check is it vice or/and leader account (leader has vice + leader rights) $guild_leader_char = $guild->getOwner(); $rank_list = $guild->getGuildRanksList(); $guild_leader = FALSE; $guild_vice = FALSE; if($logged) { $account_players = $account_logged->getPlayers(); foreach($account_players as $player) { $players_from_account_ids[] = $player->getId(); $player_rank = $player->getRank(); if(!empty($player_rank)) 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; } } } } //show guild page $description = $guild->getDescription(); $newlines = array("\r\n", "\n", "\r"); $description_with_lines = str_replace($newlines, '
    ', $description, $count); if($count < $config['site']['guild_description_lines_limit']) $description = $description_with_lines; $guild_owner = $guild->getOwner(); if($guild_owner->isLoaded()) $guild_owner = $guild_owner->getName(); $main_content .= '

    '.htmlspecialchars($guild->getName()).'


    '.$description.'

    '.htmlspecialchars($guild_owner).' is guild leader of '.htmlspecialchars($guild->getName()).'.
    The guild was founded on '.htmlspecialchars($config['server']['serverName']).' on '.date("j F Y", $guild->getCreationData()).'.'; if($guild_leader) $main_content .= '   Manage Guild'; $main_content .= '

    '; $showed_players = 1; foreach($rank_list as $rank) { $players_with_rank = $rank->getPlayersList(); $players_with_rank_number = count($players_with_rank); if($players_with_rank_number > 0) { if(is_int($showed_players / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $showed_players++; $main_content .= ''; } } $main_content .= '
    Guild Members
    Rank Name and Title
    '.htmlspecialchars($rank->getName()).' '; foreach($players_with_rank as $player) { $main_content .= ''; } $main_content .= '
    '.($player->isOnline() ? "".htmlspecialchars($player->getName())."" : "".htmlspecialchars($player->getName())."").''; $guild_nick = $player->getGuildNick(); if($logged) if(in_array($player->getId(), $players_from_account_ids)) $main_content .= '()'; else if(!empty($guild_nick)) $main_content .= ' ('.htmlspecialchars($player->getGuildNick()).')'; else if(!empty($guild_nick)) $main_content .= ' ('.htmlspecialchars($player->getGuildNick()).')'; if($level_in_guild > $rank->getLevel() || $guild_leader) if($guild_leader_char->getName() != $player->getName()) $main_content .= ' {KICK}'; $main_content .= '
    '; $invited_list = $guild->listInvites(); if(count($invited_list) == 0) $main_content .= '

    Invited Characters
    No invited characters found.
    '; else { $main_content .= '

    '; $show_accept_invite = 0; $showed_invited = 1; foreach($invited_list as $invited_player) { if(count($account_players) > 0) foreach($account_players as $player_from_acc) if($player_from_acc->getName() == $invited_player->getName()) $show_accept_invite++; if(is_int($showed_invited / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $showed_invited++; $main_content .= ''; } $main_content .= '
    Invited Characters
    '.htmlspecialchars($invited_player->getName()).''; if($guild_vice) $main_content .= ' (Cancel Invitation)'; $main_content .= '
    '; } $main_content .= "

    Guild Wars

    "; if($logged) { $main_content .= 'Click here to start new war - only guild leader can invite other guild to war.

    '; } $main_content .= " "; $warFrags = array(); foreach($SQL->query('SELECT * FROM `guildwar_kills` WHERE `killerguild` = ' . $guild_id . ' OR `targetguild` = ' . $guild_id . ' ORDER BY `time` DESC')->fetchAll() as $frag) { $warFrags[$frag['warid']][] = $frag; } $count = 0; foreach($SQL->query('SELECT `guild_wars`.`id`, `guild_wars`.`guild1`, `guild_wars`.`guild2`, `guild_wars`.`name1`, `guild_wars`.`name2`, `guild_wars`.`status`, `guild_wars`.`started`, `guild_wars`.`ended`, (SELECT COUNT(1) FROM `guildwar_kills` WHERE `guildwar_kills`.`warid` = `guild_wars`.`id` AND `guildwar_kills`.`killerguild` = `guild_wars`.`guild1`) guild1_kills, (SELECT COUNT(1) FROM `guildwar_kills` WHERE `guildwar_kills`.`warid` = `guild_wars`.`id` AND `guildwar_kills`.`killerguild` = `guild_wars`.`guild2`) guild2_kills FROM `guild_wars` WHERE `guild1` = ' . $guild_id . ' OR `guild2` = ' . $guild_id . ' ORDER BY CASE `status` WHEN 0 THEN 2 WHEN 1 THEN 1 WHEN 4 THEN 3 WHEN 3 THEN 4 WHEN 2 THEN 5 END, `started` DESC') as $war) { $count++; $main_content .= ""; } if($count == 0) $main_content .= ""; $main_content .= "
    Aggressor Information Enemy

    ".htmlspecialchars($war['name1'])."
    "; switch($war['status']) { case 0: { $main_content .= "Pending acceptation
    Invited on " . date("M d Y, H:i:s", $war['started']) . " for 7 days war.
    "; if($guild_leader && $war['guild2'] == $guild->getID()) { $main_content .= '
    » Click here to accept invitation to war «'; $main_content .= '

    » Click here to reject invitation to war «'; } if($guild_leader && $war['guild1'] == $guild->getID()) { $main_content .= '

    » Click here to cancel invitation to war «'; } $main_content .= '
    '; break; } case 1: { $main_content .= "" . $war['guild1_kills'] . " : " . $war['guild2_kills'] . "

    On a brutal war
    Began on " . date("M d Y, H:i:s", $war['started']) . ", will end up after server restart after " . date("M d Y, H:i:s", $war['started'] + (7*86400)) . ".
    "; $main_content .= "

    "; if(in_array($war['status'], array(1,4))) { $main_content .= "» Details «"; } break; } case 2: { $main_content .= "Rejected invitation
    Invited on " . date("M d Y, H:i:s", $war['started']) . ", rejected on " . date("M d Y, H:i:s", $war['ended']) . ".
    "; break; } case 3: { $main_content .= "Canceled invitation
    Sent invite on " . date("M d Y, H:i:s", $war['started']) . ", canceled on " . date("M d Y, H:i:s", $war['ended']) . ".
    "; break; } case 4: { $main_content .= "Ended
    Began on " . date("M d Y, H:i:s", $war['started']) . ", ended on " . date("M d Y, H:i:s", $war['ended']) . ". Frag statistics: " . $war['guild1_kills'] . " to " . $war['guild2_kills'] . "."; $main_content .= "

    "; if(in_array($war['status'], array(1,4))) { $main_content .= "» Details «"; } $main_content .= "
    "; break; } default: { $main_content .= "Unknown, please contact with gamemaster."; break; } } $main_content .= "

    ".htmlspecialchars($war['name2'])."
    "; if(in_array($war['status'], array(1,4))) { if(isset($warFrags[$war['id']])) { foreach($warFrags[$war['id']] as $frag) { $main_content .= date("j M Y, H:i", $frag['time']) . " +".htmlspecialchars($frag['killer'])." killed " . htmlspecialchars($frag['target']) . ""; } } else $main_content .= "
    There were no frags on this war so far.
    "; } else $main_content .= "
    Currently there are no active wars.
    "; $main_content .= '

    '; if(!$logged) $main_content .= ''; else { if($show_accept_invite > 0) $main_content .= ''; if($guild_vice) { $main_content .= ''; $main_content .= ''; } if($players_from_account_in_guild > 0) $main_content .= ''; } $main_content .= '
    '; } } //-------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------- //change rank of player in guild if($action == 'changerank') { $guild_id = (int) $_REQUEST['guild']; if(!$logged) $guild_errors[] = 'You are not logged in. You can\'t change rank.'; if(empty($guild_errors)) { $guild = new Guild(); $guild->load($guild_id); if(!$guild->isLoaded()) $guild_errors[] = 'Guild with ID '.$guild_id.' doesn\'t exist.'; } if(!empty($guild_errors)) { //show errors $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors as $guild_error) $main_content .= '
  • '.$guild_error; //errors and back button $main_content .= '

  • '; } else { //check is it vice or/and leader account (leader has vice + leader rights) $rank_list = $guild->getGuildRanksList(); $guild_leader = FALSE; $guild_vice = FALSE; $account_players = $account_logged->getPlayers(); foreach($account_players as $player) { $player_rank = $player->getRank(); if(!empty($player_rank)) 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($guild_vice) { foreach($rank_list as $rank) { if($guild_leader || $rank->getLevel() < $level_in_guild) { $ranks[$rid]['0'] = $rank->getId(); $ranks[$rid]['1'] = $rank->getName(); $rid++; $players_with_rank = $rank->getPlayersList(); if(count($players_with_rank) > 0) { foreach($players_with_rank as $player) { if($guild->getOwner()->getId() != $player->getId() || $guild_leader) { $players_with_lower_rank[$sid]['0'] = htmlspecialchars($player->getName()); $players_with_lower_rank[$sid]['1'] = htmlspecialchars($player->getName()).' ('.htmlspecialchars($rank->getName()).')'; $sid++; } } } } } if($_REQUEST['todo'] == 'save') { $player_name = $_REQUEST['name']; $new_rank = (int) $_REQUEST['rankid']; if(!check_name($player_name)) $change_errors[] = 'Invalid player name format.'; $rank = new GuildRank(); $rank->load($new_rank); if(!$rank->isLoaded()) $change_errors[] = 'Rank with this ID doesn\'t exist.'; if($level_in_guild <= $rank->getLevel() && !$guild_leader) $change_errors[] = 'You can\'t set ranks with equal or higher level than your.'; if(empty($change_errors)) { $player_to_change = new Player(); $player_to_change->find($player_name); if(!$player_to_change->isLoaded()) $change_errors[] = 'Player with name '.htmlspecialchars($player_name).' doesn\'t exist.'; else { $player_in_guild = FALSE; if($guild->getName() == $player_to_change->getRank()->getGuild()->getName() || $guild_leader) { $player_in_guild = TRUE; $player_has_lower_rank = FALSE; if($player_to_change->getRank()->getLevel() < $level_in_guild || $guild_leader) $player_has_lower_rank = TRUE; } } $rank_in_guild = FALSE; foreach($rank_list as $rank_from_guild) if($rank_from_guild->getId() == $rank->getId()) $rank_in_guild = TRUE; if(!$player_in_guild) $change_errors[] = 'This player isn\'t in your guild.'; if(!$rank_in_guild) $change_errors[] = 'This rank isn\'t in your guild.'; if(!$player_has_lower_rank) $change_errors[] = 'This player has higher rank in guild than you. You can\'t change his/her rank.'; } if(empty($change_errors)) { $player_to_change->setRank($rank); $player_to_change->save(); $main_content .= '
    Guild Deleted
    Rank of player '.htmlspecialchars($player_to_change->getName()).' has been changed to '.htmlspecialchars($rank->getName()).'.

    '; unset($players_with_lower_rank); unset($ranks); $rid = 0; $sid= 0; foreach($rank_list as $rank) { if($guild_leader || $rank->getLevel() < $level_in_guild) { $ranks[$rid]['0'] = $rank->getId(); $ranks[$rid]['1'] = $rank->getName(); $rid++; $players_with_rank = $rank->getPlayersList(); if(count($players_with_rank) > 0) { foreach($players_with_rank as $player) { if($guild->getOwner()->getId() != $player->getId() || $guild_leader) { $players_with_lower_rank[$sid]['0'] = htmlspecialchars($player->getName()); $players_with_lower_rank[$sid]['1'] = htmlspecialchars($player->getName()).' ('.htmlspecialchars($rank->getName()).')'; $sid++; } } } } } } else { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($change_errors as $change_error) $main_content .= '
  • '.$change_error; $main_content .= '

  • '; } } $main_content .= '
    Change Rank
    Name:  Rank:    
    '; } else $main_content .= 'Error. You are not a leader or vice leader in guild '.htmlspecialchars($guild->getName()).'.
    '; } } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //show guild page if($action == 'deleteinvite') { //set rights in guild $guild_id = (int) $_REQUEST['guild']; $name = $_REQUEST['name']; if(!$logged) $guild_errors[] = 'You are not logged in. You can\'t delete invitations.'; if(!check_name($name)) $guild_errors[] = 'Invalid name format.'; if(empty($guild_errors)) { $guild = new Guild(); $guild->load($guild_id); if(!$guild->isLoaded()) $guild_errors[] = 'Guild with ID '.$guild_id.' doesn\'t exist.'; } if(empty($guild_errors)) { $rank_list = $guild->getGuildRanksList(); $guild_leader = FALSE; $guild_vice = FALSE; $account_players = $account_logged->getPlayers(); foreach($account_players as $player) { $player_rank = $player->getRank(); if(!empty($player_rank)) { 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($guild_errors)) { $player = new Player(); $player->find($name); if(!$player->isLoaded()) $guild_errors[] = 'Player with name '.htmlspecialchars($name).' doesn\'t exist.'; } if(!$guild_vice) $guild_errors[] = 'You are not a leader or vice leader of guild '.htmlspecialchars($guild->getName()).'.'; if(empty($guild_errors)) { $invited_list = $guild->listInvites(); if(count($invited_list) > 0) { $is_invited = FALSE; foreach($invited_list as $invited) if($invited->getName() == $player->getName()) $is_invited = TRUE; if(!$is_invited) $guild_errors[] = ''.htmlspecialchars($player->getName()).' isn\'t invited to your guild.'; } else $guild_errors[] = 'No one is invited to your guild.'; } if(!empty($guild_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors as $guild_error) $main_content .= '
  • '.$guild_error; $main_content .= '

  • '; } else { if($_REQUEST['todo'] == 'save') { $guild->deleteInvite($player); $main_content .= '
    Delete player invitation
    Player with name '.htmlspecialchars($player->getName()).' has been deleted from "invites list".

    '; } else $main_content .= '
    Delete player invitation
    Are you sure you want to delete player with name '.htmlspecialchars($player->getName()).' from "invites list"?

      
      
    '; } } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //show guild page if($action == 'invite') { //set rights in guild $guild_id = (int) $_REQUEST['guild']; $name = $_REQUEST['name']; if(!$logged) $guild_errors[] = 'You are not logged in. You can\'t invite players.'; if(empty($guild_errors)) { $guild = new Guild(); $guild->load($guild_id); if(!$guild->isLoaded()) $guild_errors[] = 'Guild with ID '.$guild_id.' doesn\'t exist.'; } if(empty($guild_errors)) { $rank_list = $guild->getGuildRanksList(); $guild_leader = FALSE; $guild_vice = FALSE; $account_players = $account_logged->getPlayers(); foreach($account_players as $player) { $player_rank = $player->getRank(); if(!empty($player_rank)) 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(!$guild_vice) $guild_errors[] = 'You are not a leader or vice leader of guild ID '.$guild_id.'.'; if($_REQUEST['todo'] == 'save') { if(!check_name($name)) $guild_errors[] = 'Invalid name format.'; if(empty($guild_errors)) { $player = new Player(); $player->find($name); if(!$player->isLoaded()) $guild_errors[] = 'Player with name '.htmlspecialchars($name).' doesn\'t exist.'; else { $rank_of_player = $player->getRank(); if(!empty($rank_of_player)) $guild_errors[] = 'Player with name '.htmlspecialchars($name).' is already in guild. He must leave guild before you can invite him.'; } } if(empty($guild_errors)) { $invited_list = $guild->listInvites(); if(count($invited_list) > 0) foreach($invited_list as $invited) if($invited->getName() == $player->getName()) $guild_errors[] = ''.htmlspecialchars($player->getName()).' is already invited to your guild.'; } } if(!empty($guild_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors as $guild_error) $main_content .= '
  • '.$guild_error; $main_content .= '

  • '; } else if($_REQUEST['todo'] == 'save') { $guild->invite($player); $main_content .= '
    Invite player
    Player with name '.htmlspecialchars($player->getName()).' has been invited to your guild.

    '; } else $main_content .= '
    Invite player
    Invite player with name:      

    '; } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //show guild page if($action == 'acceptinvite') { //set rights in guild $guild_id = (int) $_REQUEST['guild']; $name = $_REQUEST['name']; if(!$logged) $guild_errors[] = 'You are not logged in. You can\'t accept invitations.'; if(empty($guild_errors)) { $guild = new Guild(); $guild->load($guild_id); if(!$guild->isLoaded()) $guild_errors[] = 'Guild with ID '.$guild_id.' doesn\'t exist.'; } if($_REQUEST['todo'] == 'save') { if(!check_name($name)) $guild_errors[] = 'Invalid name format.'; if(empty($guild_errors)) { $player = new Player(); $player->find($name); if(!$player->isLoaded()) { $guild_errors[] = 'Player with name '.htmlspecialchars($name).' doesn\'t exist.'; } else { $rank_of_player = $player->getRank(); if(!empty($rank_of_player)) { $guild_errors[] = 'Character with name '.htmlspecialchars($name).' is already in guild. You must leave guild before you join other guild.'; } } } } if($_REQUEST['todo'] == 'save') { if(empty($guild_errors)) { $is_invited = FALSE; $invited_list = $guild->listInvites(); if(count($invited_list) > 0) { foreach($invited_list as $invited) { if($invited->getName() == $player->getName()) { $is_invited = TRUE; } } } if(!$is_invited) { $guild_errors[] = 'Character '.htmlspecialchars($player->getName()).' isn\'t invited to guild '.htmlspecialchars($guild->getName()).'.'; } } } else { if(empty($guild_errors)) { $acc_invited = FALSE; $account_players = $account_logged->getPlayers(); $invited_list = $guild->listInvites(); if(count($invited_list) > 0) { foreach($invited_list as $invited) { foreach($account_players as $player_from_acc) { if($invited->getName() == $player_from_acc->getName()) { $acc_invited = TRUE; $list_of_invited_players[] = $player_from_acc->getName(); } } } } } if(!$acc_invited) { $guild_errors[] = 'Any character from your account isn\'t invited to '.htmlspecialchars($guild->getName()).'.'; } } if(!empty($guild_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors as $guild_error) { $main_content .= '
  • '.$guild_error; } $main_content .= '

  • '; } else { if($_REQUEST['todo'] == 'save') { $guild->acceptInvite($player); $main_content .= '
    Accept invitation
    Player with name '.htmlspecialchars($player->getName()).' has been added to guild '.htmlspecialchars($guild->getName()).'.

    '; } else { $main_content .= ''; $main_content .= ''; $main_content .= '
    Accept invitation
    Select character to join guild:
    '; sort($list_of_invited_players); foreach($list_of_invited_players as $invited_player_from_list) { $main_content .= ''.htmlspecialchars($invited_player_from_list).'
    '; } $main_content .= '

    '; } } } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //show guild page if($action == 'kickplayer') { //set rights in guild $guild_id = (int) $_REQUEST['guild']; $name = $_REQUEST['name']; if(!$logged) $guild_errors[] = 'You are not logged in. You can\'t kick characters.'; if(!check_name($name)) $guild_errors[] = 'Invalid name format.'; if(empty($guild_errors)) { $guild = new Guild(); $guild->load($guild_id); if(!$guild->isLoaded()) $guild_errors[] = 'Guild with ID '.$guild_id.' doesn\'t exist.'; } if(empty($guild_errors)) { $rank_list = $guild->getGuildRanksList(); $guild_leader = FALSE; $guild_vice = FALSE; $account_players = $account_logged->getPlayers(); foreach($account_players as $player) { $player_rank = $player->getRank(); if(!empty($player_rank)) { 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($guild_errors)) { if(!$guild_leader && $level_in_guild < 3) { $guild_errors[] = 'You are not a leader of guild '.htmlspecialchars($guild->getName()).'. You can\'t kick players.'; } } if(empty($guild_errors)) { $player = new Player(); $player->find($name); if(!$player->isLoaded()) { $guild_errors[] = 'Character '.htmlspecialchars($name).' doesn\'t exist.'; } else { if($player->getRank()->getGuild()->getName() != $guild->getName()) { $guild_errors[] = 'Character '.htmlspecialchars($name).' isn\'t from your guild.'; } } } if(empty($guild_errors)) { if($player->getRank()->getLevel() >= $level_in_guild && !$guild_leader) { $guild_errors[] = 'You can\'t kick character '.htmlspecialchars($name).'. Too high access level.'; } } if(empty($guild_errors)) { if($guild->getOwner()->getName() == $player->getName()) { $guild_errors[] = 'It\'s not possible to kick guild owner!'; } } if(!empty($guild_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors as $guild_error) { $main_content .= '
  • '.$guild_error; } $main_content .= '

  • '; } else if($_REQUEST['todo'] == 'save') { $player->setRank(); $player->save(); $main_content .= '
    Kick player
    Player with name '.htmlspecialchars($player->getName()).' has been kicked from your guild.

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

      
      
    '; } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //show guild page if($action == 'leaveguild') { //set rights in guild $guild_id = (int) $_REQUEST['guild']; $name = $_REQUEST['name']; if(!$logged) $guild_errors[] = 'You are not logged in. You can\'t leave guild.'; if(empty($guild_errors)) { $guild = new Guild(); $guild->load($guild_id); if(!$guild->isLoaded()) $guild_errors[] = 'Guild with ID '.$guild_id.' doesn\'t exist.'; } if(empty($guild_errors)) { $guild_owner_id = $guild->getOwner()->getId(); if($_REQUEST['todo'] == 'save') { if(!check_name($name)) $guild_errors[] = 'Invalid name format.'; if(empty($guild_errors)) { $player = new Player(); $player->find($name); if(!$player->isLoaded()) $guild_errors[] = 'Character '.htmlspecialchars($name).' doesn\'t exist.'; else if($player->getAccount()->getId() != $account_logged->getId()) $guild_errors[] = 'Character '.htmlspecialchars($name).' isn\'t from your account!'; } if(empty($guild_errors)) { $player_loaded_rank = $player->getRank(); if(!empty($player_loaded_rank) && $player_loaded_rank->isLoaded()) { if($player_loaded_rank->getGuild()->getId() != $guild->getId()) $guild_errors[] = 'Character '.htmlspecialchars($name).' isn\'t from guild '.htmlspecialchars($guild->getName()).'.'; } else $guild_errors[] = 'Character '.htmlspecialchars($name).' isn\'t in any guild.'; } if(empty($guild_errors)) if($guild_owner_id == $player->getId()) $guild_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(!empty($player_rank)) if($player_rank->getGuild()->getId() == $guild->getId()) if($guild_owner_id != $player_fac->getId()) $array_of_player_ig[] = $player_fac->getName(); } } } if(!empty($guild_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors as $guild_error) $main_content .= '
  • '.$guild_error.'
  • '; $main_content .= '

    '; } else { if($_REQUEST['todo'] == 'save') { $player->setRank(); $player->save(); $main_content .= '
    Leave guild
    Player with name '.htmlspecialchars($player->getName()).' leaved guild '.htmlspecialchars($guild->getName()).'.

    '; } else { $main_content .= ''; if(count($array_of_player_ig) > 0) { $main_content .= ''; $main_content .= '
    Leave guild
    Select character to leave guild:
    '; sort($array_of_player_ig); foreach($array_of_player_ig as $player_to_leave) $main_content .= ''.htmlspecialchars($player_to_leave).'
    '; $main_content .= '
    '; } else $main_content .= 'Any of your characters can\'t leave guild.'; $main_content .= ''; if(count($array_of_player_ig) > 0) $main_content .= ''; $main_content .= '
    '; } } } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //create guild if($action == 'createguild') { $new_guild_name = trim($_REQUEST['guild']); $name = $_REQUEST['name']; $todo = $_REQUEST['todo']; if(!$logged) $guild_errors[] = 'You are not logged in. You can\'t create guild.'; if(empty($guild_errors)) { $account_players = $account_logged->getPlayers(); foreach($account_players as $player) { $player_rank = $player->getRank(); if(empty($player_rank)) if($player->getLevel() >= $config['site']['guild_need_level']) if(!$config['site']['guild_need_pacc'] || $account_logged->isPremium()) $array_of_player_nig[] = $player->getName(); } } if(count($array_of_player_nig) == 0) $guild_errors[] = 'On your account all characters are in guilds or have too low level to create new guild.'; if($todo == 'save') { if(!check_guild_name($new_guild_name)) { $guild_errors[] = 'Invalid guild name format.'; } if(!check_name($name)) { $guild_errors[] = 'Invalid character name format.'; } if(empty($guild_errors)) { $player = new Player(); $player->find($name); if(!$player->isLoaded()) $guild_errors[] = 'Character '.htmlspecialchars($name).' doesn\'t exist.'; } if(empty($guild_errors)) { $guild = new Guild(); $guild->find($new_guild_name); if($guild->isLoaded()) $guild_errors[] = 'Guild '.htmlspecialchars($new_guild_name).' already exist. Select other name.'; } if(empty($guild_errors)) { $bad_char = TRUE; foreach($array_of_player_nig as $nick_from_list) if($nick_from_list == $player->getName()) $bad_char = FALSE; if($bad_char) $guild_errors[] = 'Character '.htmlspecialchars($name).' isn\'t on your account or is already in guild.'; } if(empty($guild_errors)) { if($player->getLevel() < $config['site']['guild_need_level']) $guild_errors[] = 'Character '.htmlspecialchars($name).' has too low level. To create guild you need character with level '.$config['site']['guild_need_level'].'.'; if($config['site']['guild_need_pacc'] && !$account_logged->isPremium()) $guild_errors[] = 'Character '.htmlspecialchars($name).' is on FREE account. To create guild you need PREMIUM account.'; } } if(!empty($guild_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors as $guild_error) $main_content .= '
  • '.$guild_error.'
  • '; $main_content .= '

    '; unset($todo); } if($todo == 'save') { $new_guild = new Guild(); $new_guild->setCreationData(time()); $new_guild->setName($new_guild_name); $new_guild->setOwner($player); $new_guild->setDescription('New guild. Leader must edit this text :)'); $new_guild->setGuildLogo('image/gif', Website::getFileContents('./images/default_guild_logo.gif')); $new_guild->save(); $ranks = $new_guild->getGuildRanksList(true); foreach($ranks as $rank) if($rank->getLevel() == 3) { $player->setRank($rank); $player->save(); } $main_content .= '
    Create guild
    Congratulations!
    You have created guild '.htmlspecialchars($new_guild_name).'. '.htmlspecialchars($player->getName()).' is leader of this guild. Now you can invite players, change picture, description and motd of guild. Press submit to open guild manager.

    '; } else { $main_content .= 'To play on '.$config['server']['serverName'].' you need an account. All you have to do to create your new account is to enter your email address, password to new account, verification code from picture and to agree to the terms presented below. If you have done so, your account number, password and e-mail address will be shown on the following page and your account and password will be sent to your email address along with further instructions.

    Create an '.htmlspecialchars($config['server']['serverName']).' Account
    '; $main_content .= '
    Leader:
    (Name of leader of new guild.)
    Guild name:
    (Here write name of your new guild.)



    '; } } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- if($action == 'manager') { $guild_id = (int) $_REQUEST['guild']; if(empty($guild_errors)) { $guild = new Guild(); $guild->load($guild_id); if(!$guild->isLoaded()) $guild_errors[] = 'Guild with ID '.$guild_id.' doesn\'t exist.'; } if(empty($guild_errors)) { if($logged) { $guild_leader_char = $guild->getOwner(); $rank_list = $guild->getGuildRanksList(); $guild_leader = FALSE; $account_players = $account_logged->getPlayers(); foreach($account_players as $player) if($guild_leader_char->getId() == $player->getId()) { $guild_vice = TRUE; $guild_leader = TRUE; $level_in_guild = 3; } if($guild_leader) { $main_content .= '

    Welcome to guild manager!

    Here you can change names of ranks, delete and add ranks, pass leadership to other guild member and delete guild.'; $main_content .= '

    OptionDescription
    Pass LeadershipPass leadership of guild to other guild member.
    Delete GuildDelete guild, kick all members.
    Change DescriptionChange description of guild.
    Change MOTDChange MOTD of guild.
    Change guild logoUpload new guild logo.
    '; $main_content .= '
    Add new rank
    New rank name:
    '; $main_content .= '

    Change rank names and levels

    '; foreach($rank_list as $rank) { if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++; $main_content .= ''; } $main_content .= '
    Delete Rank     NameLevel of RANK in guild
    Leader (3)Vice (2)Member (1)
    Delete RankgetLevel() == 3) $main_content .= ' checked="checked"'; $main_content .= ' />getLevel() == 2) $main_content .= ' checked="checked"'; $main_content .= ' />getLevel() == 1) $main_content .= ' checked="checked"'; $main_content .= ' />
      
    '; $main_content .= '

    Ranks info:

    0. Owner of guild - it\'s highest rank, only one player in guild may has this rank. Player with this rank can:
  • Invite/Cancel Invitation/Kick Player from guild
  • Change ranks of all players in guild
  • Delete guild or pass leadership to other guild member
  • Change names, levels(leader,vice,member), add and delete ranks
  • Change MOTD, logo and description of guild
    3. Leader - it\'s second rank in guild. Player with this rank can:
  • Invite/Cancel Invitation/Kick Player from guild (only with lower rank than his)
  • Change ranks of players with lower rank level ("vice leader", "member") in guild
    2. Vice Leader - it\'s third rank in guild. Player with this rank can:
  • Invite/Cancel Invitation
  • Change ranks of players with lower rank level ("member") in guild
    1. Member - it\'s lowest rank in guild. Player with this rank can:
  • Be a member of guild'; $main_content .= '
    '; } else $guild_errors[] = 'You are not a leader of guild!'; } else $guild_errors[] = 'You are not logged. You can\'t manage guild.'; } if(!empty($guild_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors as $guild_error) $main_content .= '
  • '.$guild_error.'
  • '; $main_content .= '

    '; } } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- if($action == 'changelogo') { $guild_id = (int) $_REQUEST['guild']; $guild = new Guild(); $guild->load($guild_id); if(!$guild->isLoaded()) $guild_errors[] = 'Guild with ID '.$guild_id.' doesn\'t exist.'; if(empty($guild_errors)) { if($logged) { $guild_leader_char = $guild->getOwner(); $guild_leader = FALSE; $account_players = $account_logged->getPlayers(); foreach($account_players as $player) if($guild_leader_char->getId() == $player->getId()) { $guild_vice = TRUE; $guild_leader = TRUE; $level_in_guild = 3; } if($guild_leader) { $max_image_size_b = $config['site']['guild_image_size_kb'] * 1024; if($_REQUEST['todo'] == 'save') { $file = $_FILES['newlogo']; switch($file['error']) { case UPLOAD_ERR_OK: break; // all ok case UPLOAD_ERR_INI_SIZE: case UPLOAD_ERR_FORM_SIZE: $upload_errors[] = 'Image is too large'; break; case UPLOAD_ERR_PARTIAL: $upload_errors[] = 'Image was only partially uploaded'; break; case UPLOAD_ERR_NO_FILE: $upload_errors[] = 'No image was uploaded'; break; case UPLOAD_ERR_NO_TMP_DIR: $upload_errors[] = 'Upload folder not found'; break; case UPLOAD_ERR_CANT_WRITE: $upload_errors[] = 'Unable to write uploaded file'; break; case UPLOAD_ERR_EXTENSION: $upload_errors[] = 'Upload failed due to extension'; break; default: $upload_errors[] = 'Unknown error'; } if(is_uploaded_file($file['tmp_name'])) { if($file['size'] > $max_image_size_b) $upload_errors[] = 'Uploaded image is too big. Size: '.$file['size'].' bytes, Max. size: '.$max_image_size_b.' bytes.'; $info = getimagesize($file['tmp_name']); if(!$info) $upload_errors[] = 'Uploaded file is not an image!'; } else $upload_errors[] = 'You didn\'t send file or file is too big. Limit: '.$config['site']['guild_image_size_kb'].' KB.'; //show errors or save file if(!empty($upload_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($upload_errors as $guild_error) $main_content .= '
  • '.$guild_error; $main_content .= '

  • '; } else { $guild->setGuildLogo($info['mime'], file_get_contents($file['tmp_name'])); $guild->save(); } } $main_content .= '

    Change guild logo

    Here you can change logo of your guild.
    Current logo:

    '; $main_content .= '
    Select new logo:
    Only jpg, gif, png, bmp pictures. Max. size: '.$config['site']['guild_image_size_kb'].' KB
    '; $main_content .= '
    '; } else $guild_errors[] = 'You are not a leader of guild!'; } else $guild_errors[] = 'You are not logged. You can\'t manage guild.'; } if(!empty($guild_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors as $guild_error) $main_content .= '
  • '.$guild_error.'
  • '; $main_content .= '

    '; $main_content .= '
    '; } } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- if($action == 'deleterank') { $guild_id = (int) $_REQUEST['guild']; $rank_to_delete = (int) $_REQUEST['rankid']; if(empty($guild_errors)) { $guild = new Guild(); $guild->load($guild_id); if(!$guild->isLoaded()) $guild_errors[] = 'Guild with ID '.$guild_id.' doesn\'t exist.'; } if(empty($guild_errors)) { if($logged) { $guild_leader_char = $guild->getOwner(); $rank_list = $guild->getGuildRanksList(); $guild_leader = FALSE; $account_players = $account_logged->getPlayers(); foreach($account_players as $player) if($guild->getOwner()->getId() == $player->getId()) { $guild_leader = TRUE; $level_in_guild = 3; } if($guild_leader) { $rank = new GuildRank(); $rank->load($rank_to_delete); if(!$rank->isLoaded()) $guild_errors2[] = 'Rank with ID '.$rank_to_delete.' doesn\'t exist.'; else { if($rank->getGuild()->getId() != $guild->getId()) $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.'; else { $players_with_rank = $rank->getPlayersList(); $players_with_rank_number = count($players_with_rank); if($players_with_rank_number > 0) { foreach($rank_list as $checkrank) if($checkrank->getId() != $rank->getId()) if($checkrank->getLevel() <= $rank->getLevel()) $new_rank = $checkrank; if(empty($new_rank)) { $new_rank = new GuildRank(); $new_rank->setGuild($guild); $new_rank->setLevel($rank->getLevel()); $new_rank->setName('New Rank level '.$rank->getLevel()); $new_rank->save(); } foreach($players_with_rank as $player_in_guild) { $player_in_guild->setRank($new_rank); $player_in_guild->save(); } } $rank->delete(); $saved = TRUE; } } } if($saved) $main_content .= '
    Rank Deleted
    Rank '.htmlspecialchars($rank->getName()).' has been deleted. Players with this rank has now other rank.
    '; else { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors2 as $guild_error) $main_content .= '
  • '.$guild_error.'
  • '; $main_content .= '

    '; } //back button $main_content .= '
    '; } else $guild_errors[] = 'You are not a leader of guild!'; } else $guild_errors[] = 'You are not logged. You can\'t manage guild.'; } if(!empty($guild_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors as $guild_error) $main_content .= '
  • '.$guild_error.'
  • '; $main_content .= '

    '; $main_content .= '
    '; } } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- if($action == 'addrank') { $guild_id = (int) $_REQUEST['guild']; $ranknew = $_REQUEST['rank_name']; if(empty($guild_errors)) { if(!check_rank_name($ranknew)) $guild_errors[] = 'Invalid rank name format.'; if(!$logged) $guild_errors[] = 'You are not logged.'; $guild = new Guild(); $guild->load($guild_id); if(!$guild->isLoaded()) $guild_errors[] = 'Guild with ID '.$guild_id.' doesn\'t exist.'; if(empty($guild_errors)) { $guild_leader_char = $guild->getOwner(); $rank_list = $guild->getGuildRanksList(); $guild_leader = FALSE; $account_players = $account_logged->getPlayers(); foreach($account_players as $player) if($guild_leader_char->getId() == $player->getId()) { $guild_vice = TRUE; $guild_leader = TRUE; $level_in_guild = 3; } if($guild_leader) { $new_rank = new GuildRank(); $new_rank->setGuild($guild); $new_rank->setLevel(1); $new_rank->setName($ranknew); $new_rank->save(); header("Location: ?subtopic=guilds&guild=".$guild_id."&action=manager"); $main_content .= 'New rank added. Redirecting...'; } else $guild_errors[] = 'You are not a leader of guild!'; } if(!empty($guild_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors as $guild_error) $main_content .= '
  • '.$guild_error; $main_content .= '

  • '; $main_content .= '
    '; } } else if(!empty($guild_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors as $guild_error) $main_content .= '
  • '.$guild_error; $main_content .= '

  • '; $main_content .= '
    '; } } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- if($action == 'changedescription') { $guild_id = (int) $_REQUEST['guild']; if(empty($guild_errors)) { $guild = new Guild(); $guild->load($guild_id); if(!$guild->isLoaded()) $guild_errors[] = 'Guild with ID '.$guild_id.' doesn\'t exist.'; } if(empty($guild_errors)) { if($logged) { $guild_leader_char = $guild->getOwner(); $rank_list = $guild->getGuildRanksList(); $guild_leader = FALSE; $account_players = $account_logged->getPlayers(); foreach($account_players as $player) if($guild->getOwner()->getId() == $player->getId()) { $guild_vice = TRUE; $guild_leader = TRUE; $level_in_guild = 3; } if($guild_leader) { if($_REQUEST['todo'] == 'save') { $description = htmlspecialchars(substr(trim($_REQUEST['description']),0,$config['site']['guild_description_chars_limit'])); $guild->set('description', $description); $guild->save(); $saved = TRUE; } $main_content .= '

    Change guild description

    '; if($saved) $main_content .= '
    CHANGES HAS BEEN SAVED!

    '; $main_content .= 'Here you can change description of your guild.
    '; $main_content .= '

    (max. '.$config['site']['guild_description_lines_limit'].' lines, max. '.$config['site']['guild_description_chars_limit'].' chars)

    '; $main_content .= '
    '; } else $guild_errors[] = 'You are not a leader of guild!'; } else $guild_errors[] = 'You are not logged. You can\'t manage guild.'; } if(!empty($guild_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors as $guild_error) $main_content .= '
  • '.$guild_error.'
  • '; $main_content .= '

    '; $main_content .= '
    '; } } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- if($action == 'passleadership') { $guild_id = (int) $_REQUEST['guild']; $pass_to = trim($_REQUEST['player']); if(empty($guild_errors)) { $guild = new Guild(); $guild->load($guild_id); if(!$guild->isLoaded()) $guild_errors[] = 'Guild with ID '.$guild_id.' doesn\'t exist.'; } if(empty($guild_errors)) { if($_POST['todo'] == 'save') { if(!check_name($pass_to)) $guild_errors2[] = 'Invalid player name format.'; if(empty($guild_errors2)) { $to_player = new Player(); $to_player->find($pass_to); if(!$to_player->isLoaded()) $guild_errors2[] = 'Player with name '.htmlspecialchars($pass_to).' doesn\'t exist.'; if(empty($guild_errors2)) { $to_player_rank = $to_player->getRank(); if(!empty($to_player_rank)) { $to_player_guild = $to_player_rank->getGuild(); if($to_player_guild->getId() != $guild->getId()) $guild_errors2[] = 'Player with name '.htmlspecialchars($to_player->getName()).' isn\'t from your guild.'; } else $guild_errors2[] = 'Player with name '.htmlspecialchars($to_player->getName()).' isn\'t from your guild.'; } } } } if(empty($guild_errors) && empty($guild_errors2)) { if($logged) { $guild_leader_char = $guild->getOwner(); $guild_leader = FALSE; $account_players = $account_logged->getPlayers(); foreach($account_players as $player) if($guild_leader_char->getId() == $player->getId()) { $guild_vice = TRUE; $guild_leader = TRUE; $level_in_guild = 3; } if($guild_leader) { if($_POST['todo'] == 'save') { $guild->setOwner($to_player); $guild->save(); $saved = TRUE; $main_content .= '
    Guild Deleted
    '.htmlspecialchars($to_player->getName()).' is now a Leader of '.htmlspecialchars($guild->getName()).'.

    '; } else $main_content .= '
    Guild Deleted
    Pass leadership to:

    '; } else $guild_errors[] = 'You are not a leader of guild!'; } else $guild_errors[] = 'You are not logged. You can\'t manage guild.'; } if(empty($guild_errors) && !empty($guild_errors2)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors2 as $guild_error2) $main_content .= '
  • '.$guild_error2; $main_content .= '

  • '; $main_content .= '
    '; } if(!empty($guild_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors as $guild_error) $main_content .= '
  • '.$guild_error; if(!empty($guild_errors2)) foreach($guild_errors2 as $guild_error2) $main_content .= '
  • '.$guild_error2; $main_content .= '


  • '; } } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- if($action == 'deleteguild') { $guild_id = (int) $_REQUEST['guild']; if(empty($guild_errors)) { $guild = new Guild(); $guild->load($guild_id); if(!$guild->isLoaded()) $guild_errors[] = 'Guild with ID '.$guild_id.' doesn\'t exist.'; } if(empty($guild_errors)) { if($logged) { $guild_leader_char = $guild->getOwner(); $rank_list = $guild->getGuildRanksList(); $guild_leader = FALSE; $account_players = $account_logged->getPlayers(); foreach($account_players as $player) if($guild->getOwner()->getId() == $player->getId()) { $guild_vice = TRUE; $guild_leader = TRUE; $level_in_guild = 3; } if($guild_leader) { if($_POST['todo'] == 'save') { $guild->delete(); $saved = TRUE; } if($saved) { $main_content .= '
    Guild Deleted
    Guild with ID '.$guild_id.' has been deleted.
    '; $main_content .= '
    '; } else { $main_content .= '
    Guild Deleted
    Are you sure you want delete guild with ID '.$guild_id.'?
    '; $main_content .= '
    '; } } else $guild_errors[] = 'You are not a leader of guild!'; } else $guild_errors[] = 'You are not logged. You can\'t manage guild.'; } if(!empty($guild_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors as $guild_error) $main_content .= '
  • '.$guild_error.'
  • '; $main_content .= '

    '; $main_content .= '
    '; } } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- if($action == 'deletebyadmin') { $guild_id = (int) $_REQUEST['guild']; if(empty($guild_errors)) { $guild = new Guild(); $guild->load($guild_id); if(!$guild->isLoaded()) $guild_errors[] = 'Guild with ID '.$guild_id.' doesn\'t exist.'; } if(empty($guild_errors)) { if($logged) { if($group_id_of_acc_logged >= $config['site']['access_admin_panel']) { if($_POST['todo'] == 'save') { $guild->delete(); $main_content .= '
    Guild Deleted
    Guild with ID '.$guild_id.' has been deleted.

    '; } else $main_content .= '
    Guild Deleted
    Are you sure you want delete guild '.htmlspecialchars($guild->getName()).'?

    '; } else $guild_errors[] = 'You are not an admin!'; } else $guild_errors[] = 'You are not logged. You can\'t delete guild.'; } if(!empty($guild_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors as $guild_error) $main_content .= '
  • '.$guild_error.'
  • '; $main_content .= '

    '; $main_content .= '
    '; } } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- if($action == 'changemotd') { $guild_id = (int) $_REQUEST['guild']; if(empty($guild_errors)) { $guild = new Guild(); $guild->load($guild_id); if(!$guild->isLoaded()) $guild_errors[] = 'Guild with ID '.$guild_id.' doesn\'t exist.'; } if(empty($guild_errors)) { if($logged) { $guild_leader_char = $guild->getOwner(); $rank_list = $guild->getGuildRanksList(); $guild_leader = FALSE; $account_players = $account_logged->getPlayers(); foreach($account_players as $player) if($guild->getOwner()->getId() == $player->getId()) { $guild_vice = TRUE; $guild_leader = TRUE; $level_in_guild = 3; } if($guild_leader) { if($_REQUEST['todo'] == 'save') { $motd = htmlspecialchars(substr(trim($_REQUEST['motd']),0,$config['site']['guild_motd_chars_limit'])); $guild->set('motd', $motd); $guild->save(); $saved = TRUE; } $main_content .= '

    Change guild MOTD

    '; if($saved) $main_content .= '
    CHANGES HAS BEEN SAVED!

    '; $main_content .= 'Here you can change MOTD (Message of the Day, showed in game!) of your guild.
    '; $main_content .= '

    (max. '.$config['site']['guild_motd_chars_limit'].' chars)

    '; $main_content .= '
    '; } else $guild_errors[] = 'You are not a leader of guild!'; } else $guild_errors[] = 'You are not logged. You can\'t manage guild.'; } if(!empty($guild_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors as $guild_error) $main_content .= '
  • '.$guild_error; $main_content .= '

  • '; $main_content .= '
    '; } } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- if($action == 'saveranks') { $guild_id = (int) $_REQUEST['guild']; if(empty($guild_errors)) { $guild = new Guild(); $guild->load($guild_id); if(!$guild->isLoaded()) $guild_errors[] = 'Guild with ID '.$guild_id.' doesn\'t exist.'; } if(empty($guild_errors)) { if($logged) { $guild_leader_char = $guild->getOwner(); $rank_list = $guild->getGuildRanksList(); $guild_leader = FALSE; $account_players = $account_logged->getPlayers(); foreach($account_players as $player) if($guild_leader_char->getId() == $player->getId()) { $guild_vice = TRUE; $guild_leader = TRUE; $level_in_guild = 3; } if($guild_leader) { foreach($rank_list as $rank) { $rank_id = $rank->getId(); $name = $_REQUEST[$rank_id.'_name']; $level = (int) $_REQUEST[$rank_id.'_level']; if(check_rank_name($name)) $rank->setName($name); else $ranks_errors[] = 'Invalid rank name. Please use only a-Z, 0-9 and spaces. Rank ID '.$rank_id.'.'; if($level > 0 && $level < 4) $rank->setLevel($level); else $ranks_errors[] = 'Invalid rank level. Contact with admin. Rank ID '.$rank_id.'.'; $rank->save(); } if(!empty($ranks_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($ranks_errors as $guild_error) $main_content .= '
  • '.$guild_error.'
  • '; $main_content .= '

    '; } else header("Location: ?subtopic=guilds&action=manager&guild=".$guild_id); } else $guild_errors[] = 'You are not a leader of guild!'; } else $guild_errors[] = 'You are not logged. You can\'t manage guild.'; } if(!empty($guild_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors as $guild_error) { $main_content .= '
  • '.$guild_error.'
  • '; } $main_content .= '

    '; } } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- if($action == 'cleanup_players') { if($logged) { if($group_id_of_acc_logged >= $config['site']['access_admin_panel']) { $players_list = new DatabaseList('Player'); } else $players_list = $account_logged->getPlayersList(); if(count($players_list) > 0) { foreach($players_list as $player) { $player_rank = $player->getRank(); if(!empty($player_rank)) { if($player_rank->isLoaded()) { $rank_guild = $player_rank->getGuild(); if(!$rank_guild->isLoaded()) { $player->setRank(); $player->setGuildNick(); $player->save(); $changed_ranks_of[] = $player->getName(); $deleted_ranks[] = 'ID: '.$player_rank->getId().' - '.$player_rank->getName(); $player_rank->delete(); } } else { $player->setRank(); $player->setGuildNick(''); $player->save(); $changed_ranks_of[] = $player->getName(); } } } $main_content .= "Deleted ranks (this ranks guilds doesn't exist [bug fix]):"; if(!empty($deleted_ranks)) foreach($deleted_ranks as $rank) $main_content .= "
  • ".htmlspecialchars($rank); $main_content .= "

    Changed ranks of players (rank or guild of rank doesn't exist [bug fix]):"; if(!empty($changed_ranks_of)) foreach($changed_ranks_of as $name) $main_content .= "
  • ".htmlspecialchars($name); } else $main_content .= "0 players found."; } else $main_content .= "You are not logged in."; $main_content .= "

    BACK

    "; } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- if($action == 'change_nick') { if($logged) { $player_n = $_REQUEST['name']; $new_nick = $_REQUEST['nick']; $player = new Player(); $player->find($player_n); $player_from_account = FALSE; if(strlen($new_nick) <= 30) { if($player->isLoaded()) { $account_players = $account_logged->getPlayersList(); if(count($account_players)) { foreach($account_players as $acc_player) { if($acc_player->getId() == $player->getId()) $player_from_account = TRUE; } if($player_from_account) { $player->setGuildNick($new_nick); $player->save(); $main_content .= 'Guild nick of player '.htmlspecialchars($player->getName()).' changed to '.htmlspecialchars($new_nick).'.'; $addtolink = '&action=show&guild='.$player->getRank()->getGuildId(); } else $main_content .= 'This player is not from your account.'; } else $main_content .= 'This player is not from your account.'; } else $main_content .= 'Unknow error occured.'; } else $main_content .= 'Too long guild nick. Max. 30 chars, your: '.strlen($new_nick); } else $main_content .= 'You are not logged.'; $main_content .= '

    BACK

    '; } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- if($action == 'guildwar_invitation_accept') { $guild_id = (int) $_REQUEST['guild']; $war_id = (int) $_REQUEST['war']; if(!$logged) $guild_errors[] = 'You are not logged.'; if(empty($guild_errors)) { $guild = new Guild($guild_id); if(!$guild->isLoaded()) $guild_errors[] = 'Guild with ID '.$guild_id.' doesn\'t exist.'; if(empty($guild_errors)) { $guild_leader_char = $guild->getOwner(); $guild_leader = FALSE; $account_players = $account_logged->getPlayers(); foreach($account_players as $player) { if($guild_leader_char->getId() == $player->getId()) { $guild_leader = TRUE; } } if($guild_leader) { $war = new GuildWar($war_id); if(!$war->isLoaded()) $guild_errors[] = 'War with ID '.$war_id.' doesn\'t exist.'; if(empty($guild_errors)) { if($war->getGuild2ID() != $guild->getID() || $war->getStatus() != GuildWar::STATE_INVITED) { $guild_errors[] = 'Your guild is not invited to that war.'; } if(empty($guild_errors)) { $war->setStatus(GuildWar::STATE_ON_WAR); $war->setStarted(time()); $war->setEnded(0); $war->save(); header("Location: ?subtopic=guilds&action=show&guild=".$guild_id.""); $main_content .= 'War invitation accepted. Redirecting...'; } } } else $guild_errors[] = 'You are not a leader of guild!'; } } if(!empty($guild_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors as $guild_error) $main_content .= '
  • '.$guild_error.'
  • '; $main_content .= '

    '; $main_content .= '
    '; } } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- if($action == 'guildwar_invitation_reject') { $guild_id = (int) $_REQUEST['guild']; $war_id = (int) $_REQUEST['war']; if(!$logged) $guild_errors[] = 'You are not logged.'; if(empty($guild_errors)) { $guild = new Guild($guild_id); if(!$guild->isLoaded()) $guild_errors[] = 'Guild with ID '.$guild_id.' doesn\'t exist.'; if(empty($guild_errors)) { $guild_leader_char = $guild->getOwner(); $guild_leader = FALSE; $account_players = $account_logged->getPlayers(); foreach($account_players as $player) { if($guild_leader_char->getId() == $player->getId()) { $guild_leader = TRUE; } } if($guild_leader) { $war = new GuildWar($war_id); if(!$war->isLoaded()) $guild_errors[] = 'War with ID '.$war_id.' doesn\'t exist.'; if(empty($guild_errors)) { if($war->getGuild2ID() != $guild->getID() || $war->getStatus() != GuildWar::STATE_INVITED) { $guild_errors[] = 'Your guild is not invited to that war.'; } if(empty($guild_errors)) { $war->setStatus(GuildWar::STATE_REJECTED); $war->setEnded(time()); $war->save(); header("Location: ?subtopic=guilds&action=show&guild=".$guild_id.""); $main_content .= 'War invitation rejected. Redirecting...'; } } } else $guild_errors[] = 'You are not a leader of guild!'; } } if(!empty($guild_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors as $guild_error) $main_content .= '
  • '.$guild_error.'
  • '; $main_content .= '

    '; $main_content .= '
    '; } } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- if($action == 'guildwar_invitation_cancel') { $guild_id = (int) $_REQUEST['guild']; $war_id = (int) $_REQUEST['war']; if(!$logged) $guild_errors[] = 'You are not logged.'; if(empty($guild_errors)) { $guild = new Guild($guild_id); if(!$guild->isLoaded()) $guild_errors[] = 'Guild with ID '.$guild_id.' doesn\'t exist.'; if(empty($guild_errors)) { $guild_leader_char = $guild->getOwner(); $guild_leader = FALSE; $account_players = $account_logged->getPlayers(); foreach($account_players as $player) { if($guild_leader_char->getId() == $player->getId()) { $guild_leader = TRUE; } } if($guild_leader) { $war = new GuildWar($war_id); if(!$war->isLoaded()) $guild_errors[] = 'War with ID '.$war_id.' doesn\'t exist.'; if(empty($guild_errors)) { if($war->getGuild1ID() != $guild->getID() || $war->getStatus() != GuildWar::STATE_INVITED) { $guild_errors[] = 'Your guild did not invite to that war.'; } if(empty($guild_errors)) { $war->setStatus(GuildWar::STATE_CANCELED); $war->setEnded(time()); $war->save(); header("Location: ?subtopic=guilds&action=show&guild=".$guild_id.""); $main_content .= 'War invitation rejected. Redirecting...'; } } } else $guild_errors[] = 'You are not a leader of guild!'; } } if(!empty($guild_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors as $guild_error) $main_content .= '
  • '.$guild_error.'
  • '; $main_content .= '

    '; $main_content .= '
    '; } } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- if($action == 'guildwar_choose_enemy') { $guild_id = (int) $_REQUEST['guild']; if(!$logged) $guild_errors[] = 'You are not logged.'; if(empty($guild_errors)) { $guild = new Guild($guild_id); if(!$guild->isLoaded()) $guild_errors[] = 'Guild with ID '.$guild_id.' doesn\'t exist.'; if(empty($guild_errors)) { $guild_leader_char = $guild->getOwner(); $guild_leader = FALSE; $account_players = $account_logged->getPlayers(); foreach($account_players as $player) { if($guild_leader_char->getId() == $player->getId()) { $guild_leader = TRUE; } } if($guild_leader) { $currentWars = array(); $wars = new DatabaseList('GuildWar'); foreach($wars as $war) { if($war->getStatus() == GuildWar::STATE_INVITED || $war->getStatus() == GuildWar::STATE_ON_WAR) { if($war->getGuild1ID() == $guild->getID()) $currentWars[$war->getGuild2ID()] = $war->getStatus(); elseif($war->getGuild2ID() == $guild->getID()) $currentWars[$war->getGuild1ID()] = $war->getStatus(); } } $main_content .= '

    ' . htmlspecialchars($guild->getName()) . ' vs. ???


    Choose your enemy!


    '; $guildsList = new DatabaseList('Guild'); $guildsList->addOrder(new SQL_Order(new SQL_Field('name'), SQL_Order::ASC)); $shown_guilds = 0; foreach($guildsList as $enemyGuild) { if(is_int($shown_guilds / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $shown_guilds++; $main_content .= ''; } $main_content .= '
    '.htmlspecialchars($enemyGuild->getName()).''; if($enemyGuild->getID() != $guild->getID()) { if(isset($currentWars[$enemyGuild->getID()])) { // in war or invited if($currentWars[$enemyGuild->getID()] == GuildWar::STATE_INVITED) { // guild already invited you or you invited that guild $main_content .= 'There is already invitation between your and this guild.'; } else { // you are on war with this guild $main_content .= 'There is already war between your and this guild.'; } } else { // can invite $main_content .= 'INVITE FOR WAR'; } } else { // your own guild $main_content .= 'YOUR GUILD'; } $main_content .= '
    '; } else $guild_errors[] = 'You are not a leader of guild!'; } } if(!empty($guild_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors as $guild_error) $main_content .= '
  • '.$guild_error.'
  • '; $main_content .= '

    '; $main_content .= '
    '; } } //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------//----------------------------------------------------------------------------- if($action == 'guildwar_invite_guild') { $guild_id = (int) $_REQUEST['guild']; $enemy_id = (int) $_REQUEST['enemy']; if(!$logged) $guild_errors[] = 'You are not logged.'; if(empty($guild_errors)) { $guild = new Guild($guild_id); $enemyGuild = new Guild($enemy_id); if(!$guild->isLoaded() || !$enemyGuild->isLoaded()) $guild_errors[] = 'Guild with ID '.$guild_id.' or ID'.$enemy_id.' doesn\'t exist.'; if(empty($guild_errors)) { $guild_leader_char = $guild->getOwner(); $guild_leader = FALSE; $account_players = $account_logged->getPlayers(); foreach($account_players as $player) { if($guild_leader_char->getId() == $player->getId()) { $guild_leader = TRUE; } } if($guild_leader) { if($enemyGuild->getID() != $guild->getID()) { $currentWars = array(); $wars = new DatabaseList('GuildWar'); foreach($wars as $war) { if($war->getStatus() == GuildWar::STATE_INVITED || $war->getStatus() == GuildWar::STATE_ON_WAR) { if($war->getGuild1ID() == $guild->getID()) $currentWars[$war->getGuild2ID()] = $war->getStatus(); elseif($war->getGuild2ID() == $guild->getID()) $currentWars[$war->getGuild1ID()] = $war->getStatus(); } } if(isset($currentWars[$enemyGuild->getID()])) { // in war or invited if($currentWars[$enemyGuild->getID()] == GuildWar::STATE_INVITED) { // guild already invited you or you invited that guild $guild_errors[] = 'There is already invitation between your and this guild.'; } else { // you are on war with this guild $guild_errors[] = 'There is already war between your and this guild.'; } } else { // can invite $war = new GuildWar(); $war->setGuild1ID($guild->getID()); $war->setGuild2ID($enemyGuild->getID()); $war->setGuild1Name($guild->getName()); $war->setGuild2Name($enemyGuild->getName()); $war->setStatus(GuildWar::STATE_INVITED); $war->setStarted(time()); $war->setEnded(0); $war->save(); header("Location: ?subtopic=guilds&action=show&guild=".$guild_id.""); $main_content .= 'War invitation sent. Redirecting...'; } } else { $guild_errors[] = 'You cannot invite same guild!'; } } else $guild_errors[] = 'You are not a leader of guild!'; } } if(!empty($guild_errors)) { $main_content .= '
    The Following Errors Have Occurred:
    '; foreach($guild_errors as $guild_error) $main_content .= '
  • '.$guild_error.'
  • '; $main_content .= '

    '; $main_content .= '
    '; } }