<?php /* * WolfPanel (c) 2015 by Fursystems.de (Marcel Kallen) * * WolfPanel is licensed under a * Creative Commons Attribution-NonCommercial 4.0 International License. * * You should have received a copy of the license along with this * work. If not, see <http://creativecommons.org/licenses/by-nc/4.0/>. */ include "../core.php"; // Admin Check $user = UserManager::getLocalUser(); if (!$user->isAdmin()) { PageManager::displayErrorPage("access"); return; } $page = new Page($smarty, "modals/AdminGameserverControl.tpl"); $gsID = isset($_GET['gameserver']) ? $_GET['gameserver'] : null; if (GameserverManager::existsById($gsID)) { $gs = new Gameserver($gsID); $page->assign("gs", $gs); $page->assign("controllable", $gs->isControlable()); if (!$gs->isControlable()) { $page->assign("t_Report", Reporting::error("This Gameserver is not availabe for control at the moment.")); } } else { $page->assign("t_Report", Reporting::error("This Gameserver isnt available.")); } $page->display();
$username = $user->getData("username"); $userID = $user->getData("id"); $serverPort = $gameserver->getData("port"); Core::addToAdminLog("Admin {$localUsername} ({$localID}) has disabled a gameserver ({$gameName} [{$ip}:{$serverPort}]) (Owner: {$username} #{$userID})"); } else { $page->assign("t_Report", Reporting::error(Utils::buildErrorString($error))); } } else { if ("EnableGameserver" == $do) { $error = array(); // Serverid $err = @Utils::checkInput($_POST['gameserverid'], "Gameserver ID", 1, 64, INPUT_TYPE_NUMERIC); if (strlen($err) != 0) { $error[] = $err; } else { if (!GameserverManager::existsById($_POST['gameserverid'])) { $error[] = "The given gameserver id doesn't exists."; } else { $gameserver = new Gameserver($_POST['gameserverid']); if ($gameserver->getData("status") != GAMESERVER_STATUS_DISABLED) { $error[] = "The given gameserver isn't disabled."; } } } if (count($error) == 0) { $page->assign("t_Report", Reporting::success("The gameserver will be enabled soon.")); $gameserver->enable(); // Log $local = UserManager::getLocalUser(); $localUsername = $local->getData("username"); $localID = $local->getData("id");
* WolfPanel (c) 2015 by Fursystems.de (Marcel Kallen) * * WolfPanel is licensed under a * Creative Commons Attribution-NonCommercial 4.0 International License. * * You should have received a copy of the license along with this * work. If not, see <http://creativecommons.org/licenses/by-nc/4.0/>. */ include "../core.php"; if (isset($_GET["id"])) { // Gameserver ID $err = @Utils::checkInput($_GET['id'], "Gameserver ID", 1, 64, INPUT_TYPE_NUMERIC); if (strlen($err) != 0) { $error[] = $err; } else { if (!GameserverManager::existsById($_GET['id'])) { $error[] = "The given Gameserver doesnt exist."; } else { $gameserver = new Gameserver($_GET['id']); if ($gameserver->getOwnerId() != UserManager::GetLocalUser()->getData("id")) { $error[] = "You dont have permission to perform this command"; } else { $smarty->assign("ip", $gameserver->getPrintIP()); $smarty->assign("status", $gameserver->getStatusString()); $smarty->assign("iconFile", $gameserver->getTemplate()->getIconFileURI()); $smarty->assign("gameName", $gameserver->getTemplate()->getData("gameName")); } } } $smarty->display("ajax/getGameserverStatus.tpl"); }
* work. If not, see <http://creativecommons.org/licenses/by-nc/4.0/>. */ include "assets/core.php"; $smarty->assign("page", "Dashboard"); $smarty->assign("pageActive", "userdashboard"); $page = new Page($smarty, "pages/userDashboard.tpl"); if (isset($_GET['do']) || isset($_POST['do'])) { $do = isset($_GET['do']) ? $_GET['do'] : $_POST['do']; if ("select" == $do) { $error = array(); // Gameserver ID $err = @Utils::checkInput($_REQUEST['id'], "Gameserver ID", 1, 64, INPUT_TYPE_NUMERIC); if (strlen($err) != 0) { $error[] = $err; } else { if (!GameserverManager::existsById($_REQUEST['id'])) { $error[] = "The given Gameserver doesnt exist."; } else { $gameserver = new Gameserver($_REQUEST['id']); if ($gameserver->getOwnerId() != UserManager::GetLocalUser()->getData("id")) { $error[] = "You dont have permission to perform this command"; } else { UserManager::GetLocalUser()->setSelectedGameserver($gameserver); } } } if (count($error) == 0) { $page->assign("t_Report", Reporting::Success("The server has been selected.")); UserManager::GetLocalUser()->setSelectedGameserver($gameserver); } else { $page->assign("t_Report", Reporting::error(Utils::buildErrorString($error)));
public function execute() { $done = true; if (!$this->_validate()) { return $this->delete(); } try { switch ($this->getData("type")) { case TASK_SERVER_INIT: $err = $this->server->initializeForUse(); if (strlen($err) == 0) { Core::addToTaskLog("Server " . $this->getData("serverID") . " has been initialized."); } else { Core::addToTaskLog("Server " . $this->getData("serverID") . " could not be initialized. Reason: {$err}."); } break; case TASK_SERVER_UPDATE: $server = new PhysicalServer($this->getData('serverID')); $server->updateServer(); Core::addToTaskLog("Server " . $this->getData("serverID") . " has been updated"); break; case TASK_SERVER_INSTALL_TEMPLATE: if (!PhysicalServerManager::existsById($this->getData("serverID"))) { $this->delete(); } if (!TemplateManager::existsById($this->getData("addInfo"))) { $this->delete(); } $server = new PhysicalServer($this->getData("serverID")); $template = new Template($this->getData("addInfo")); $template->installOnServer($server); Core::addToTaskLog("Template (" . $template->getData("id") . ", " . $template->getData("gameName") . ") installed on server " . $server->getData("id") . " (" . $server->getData("name") . ")"); break; case TASK_TEMPLATES_INSTALL_FROM_REMOTE: $template = TemplateManager::loadTemplateByRemote($this->getData("addInfo")); Core::addToTaskLog("Gameserver templated downloaded. (" . $template->getData("gameName") . ")"); break; case TASK_GAMESERVER_UPDATESETTINGS: if (GameserverManager::existsById($this->getData("addInfo"))) { echo "Updating Config."; $gameserver = new Gameserver($this->getData("addInfo")); $gameserver->settingsUpdateOnServer(); $id = $gameserver->getData("id"); Core::addToTaskLog("Gameserver settings saved. (ID: {$id})"); } else { $id = $this->getData("addInfo"); Core::addToTaskLog("Gameserver Install Task couldnt be executed. Gameserver doesnt exist (ID: {$id})", LOGLEVEL_WARNING); } break; case TASK_GAMESERVER_INSTALL: if (GameserverManager::existsById($this->getData("addInfo"))) { $gameserver = new Gameserver($this->getData("addInfo")); $gameserver->install(); $id = $gameserver->getData("id"); Core::addToTaskLog("Gameserver installed. (ID: {$id})"); } else { $id = $this->getData("addInfo"); Core::addToTaskLog("Gameserver Install Task couldnt be executed. Gameserver doesnt exist (ID: {$id})", LOGLEVEL_WARNING); } break; case TASK_GAMESERVER_UNINSTALL: if (GameserverManager::existsById($this->getData("addInfo"))) { $gameserver = new Gameserver($this->getData("addInfo")); $done = $gameserver->delete(); $id = $gameserver->getData("id"); if ($done) { Core::addToTaskLog("Gameserver deleted. (ID: {$id})"); } } else { $id = $this->getData("addInfo"); Core::addToTaskLog("Gameserver Install Task couldnt be executed. Gameserver doesnt exist (ID: {$id})", LOGLEVEL_WARNING); } break; case TASK_GAMESERVER_START: if (GameserverManager::existsById($this->getData("addInfo"))) { $gameserver = new Gameserver($this->getData("addInfo")); $gameserver->start(); $id = $gameserver->getData("id"); Core::addToTaskLog("Gameserver started. (ID: {$id})"); } else { $id = $this->getData("addInfo"); Core::addToTaskLog("Gameserver Install Task couldnt be executed. Gameserver doesnt exist (ID: {$id})", LOGLEVEL_WARNING); } break; case TASK_GAMESERVER_STOP: if (GameserverManager::existsById($this->getData("addInfo"))) { $gameserver = new Gameserver($this->getData("addInfo")); $gameserver->stop(); $id = $gameserver->getData("id"); Core::addToTaskLog("Gameserver stopped. (ID: {$id})"); } else { $id = $this->getData("addInfo"); Core::addToTaskLog("Gameserver Install Task couldnt be executed. Gameserver doesnt exist (ID: {$id})", LOGLEVEL_WARNING); } break; case TASK_GAMESERVER_DISABLE: if (GameserverManager::existsById($this->getData("addInfo"))) { $gameserver = new Gameserver($this->getData("addInfo")); $gameserver->disable(); $id = $gameserver->getData("id"); Core::addToTaskLog("Gameserver disabled. (ID: {$id})"); } else { $id = $this->getData("addInfo"); Core::addToTaskLog("Gameserver Install Task couldnt be executed. Gameserver doesnt exist (ID: {$id})", LOGLEVEL_WARNING); } break; default: $id = $this->getData("id"); Core::addToTaskLog("Task couldnt be executed. Unknown Job. (ID: {$id})", LOGLEVEL_WARNING); $this->delete(); return; } if ($done) { $con = Database::getCon(); $con->query("UPDATE tasks SET done = 1 WHERE id = " . $this->getData("id")); } } catch (Exception $e) { echo "Task couldnt be executed. (ID: " . $this->getData("id") . ") Message: " . $e->getMessage(); Core::addToTaskLog("Task couldnt be executed. (ID: " . $this->getData("id") . ") Message: " . $e->getMessage(), LOGLEVEL_ERROR); } }