function render_clan_join($process = null, $username, $clan_name) { $sql = new DBAccess(); if ($process == 1) { $confirm = $sql->QueryItem("SELECT confirm FROM players WHERE uname = '{$username}'"); $url = message_url("clan_confirm.php?clan_joiner=" . rawurlencode($username) . "&confirm={$confirm}&clan_name=" . rawurlencode($clan_name), 'Confirm Request'); $join_request_message = "CLAN JOIN REQUEST: {$username} has sent you a clan request.\n If you wish to allow this ninja into your clan click the following link:\n {$url}"; send_message(get_user_id($username), get_user_id($clan_name), $join_request_message); echo "<div>***Your request to join this clan has been sent to {$clan_name}***</div>\n"; } else { //Clan Join list of available Clans $clan_leaders = $sql->FetchAll("SELECT uname,level,clan,clan_long_name FROM players\n WHERE lower(uname) = lower(clan) AND clan_long_name != '' AND confirmed = 1"); echo "<p>Clans Available to Join</p>\n <p>To send a clan request click on that clan leader's name.</p>\n <ul>"; foreach ($clan_leaders as $leader) { echo "<li><a href=\"clan.php?command=join&clan_name={$leader['clan']}&process=1\">\n Join {$leader['clan_long_name']}</a>.\n Its leader is <a href=\"player.php?player=" . rawurlencode($leader['uname']) . "\">\n {$leader['uname']}</a>, level {$leader['level']}.\n <a href=\"clan.php?command=view&clan_name={$leader['clan']}\">View This Clan</a>\n </li>\n"; } echo "</ul>"; } }
function send_clan_join_request($user_id, $clan_id) { DatabaseConnection::getInstance(); $clan_obj = new Clan($clan_id); $leader = $clan_obj->getLeaderInfo(); $leader_id = $leader['player_id']; $username = get_username($user_id); $confirmStatement = DatabaseConnection::$pdo->prepare('SELECT verification_number FROM players WHERE player_id = :user'); $confirmStatement->bindValue(':user', $user_id); $confirmStatement->execute(); $confirm = $confirmStatement->fetchColumn(); // These ampersands get encoded later. $url = message_url("clan.php?joiner={$user_id}&command=review&confirmation={$confirm}", 'Confirm Request'); $join_request_message = 'CLAN JOIN REQUEST: ' . htmlentities($username) . " has sent a request to join your clan.\n\t\tIf you wish to allow this ninja into your clan click the following link:\n\t\t{$url}"; send_message($user_id, $leader_id, $join_request_message); }
/** * Passively invite a character to a clan with a message and link. * @return string **/ public function invite(Player $p_target, Player $p_inviter) { $failure_reason = null; if (!$p_target || empty($p_target)) { return $failure_reason = 'No such ninja.'; } $active = $p_target->isActive(); if (!$active) { $failure_error = 'That ninja is not active.'; } else { $invite_msg = $p_inviter->name() . ' has invited you into their clan, ' . $this->getName() . '. ' . 'To accept, choose their clan ' . $this->getName() . ' on the ' . message_url('clan.php?command=view&clan_id=' . $this->getID(), 'clan joining page') . '.'; send_message($p_inviter->id(), $p_target->id(), $invite_msg); $failure_error = null; } return $failure_error; }