/** * @param Request $request */ protected function renderHelp(Request $request) { $modules = $this->getModuleCommands(); $request->reply($request->renderTemplate('@Core/help/main.twig'))->then(function () use($modules, $request) { return $this->renderNextHelp($request, $modules); }); }
/** * @param Request $request */ protected function renderStats(Request $request) { $users = $this->getUsers(); $data = ['servers' => count($request->getDiscord()->client->guilds), 'channels' => $this->getChannelCount(), 'users' => $users->count(), 'online' => count($users->filter(function (Member $user) { return $user->status !== 'offline'; })), 'channel' => $request->isPrivateMessage() ? [] : ['channels' => count($request->getServer()->channels), 'users' => count($request->getServer()->members), 'online' => count($request->getServer()->getMembersAttribute()->filter(function (Member $user) { return $user->status !== 'offline'; }))]]; $request->reply($request->renderTemplate('@Core/stats.twig', $data)); }
/** * @param Request $request */ protected function renderIgnoreList(Request $request) { $ignores = $this->getManager()->getRepository('App:Ignored')->findBy(['ignored' => true]); foreach ($ignores as &$ignored) { if ($ignored instanceof IgnoredChannel) { $ignored->name = $this->getChannelName($ignored->getIdentifier()); } if ($ignored instanceof IgnoredServer) { $ignored->name = $this->getServerName($ignored->getIdentifier()); } if ($ignored instanceof IgnoredUser) { $ignored->name = $this->getUserName($ignored->getIdentifier()); } } $request->reply($request->renderTemplate('@Core/ignore/list.twig', ['ignores' => $ignores])); }
/** * @param Request $request */ protected function renderModuleList(Request $request) { $request->reply($request->renderTemplate('@Core/module/list.twig', ['server' => $request->getServerManager()->getDatabaseServer()])); }