public function punish(User $user) { $this->log(sprintf('Punish player %s', $user->getUsernameWithElo())); $games = $this->gameRepository->findCancelableByUser($user); foreach ($games as $game) { $loser = $game->getLoser(); if ($eloDiff = $loser->getEloDiff()) { if ($loserUser = $loser->getUser()) { $this->log(sprintf('Restitute %d elo to %s for game %s', -$eloDiff, $loserUser->getUsername(), $game->getId())); $this->eloUpdater->adjustElo($loserUser, $loserUser->getElo() - $eloDiff); $game->setIsEloCanceled(true); } } } $this->log(sprintf('Reset %s elo to %d', $user->getUsername(), User::STARTING_ELO)); $this->eloUpdater->adjustElo($user, User::STARTING_ELO); }
public function linkUser(User $user, $class = null) { $url = $this->getRouterGenerator()->generate('fos_user_user_show', array('username' => $user->getUsername())); return sprintf('<a class="user_link%s" href="%s"%s>%s</a>', $user->getIsOnline() ? ' online' : '', $url, null === $class ? '' : ' class="' . $class . '"', $user->getUsernameWithElo()); }
public function linkUser(User $user, $class = null, $withElo = false) { $username = $withElo ? $user->getUsernameWithElo() : $user->getUsername(); $url = $this->getUrlGenerator()->generate('fos_user_user_show', array('username' => $user->getUsername())); return sprintf('<a class="user_link%s%s" href="%s">%s</a>', $user->getIsOnline() ? ' online' : '', null === $class ? '' : ' ' . $class, $url, $username); }