false, "debugServer" => "127.0.0.1", "port" => 5500); protected function doPreprocess() { User::load(); if (!User::hasPermission('superadmin')) { Message::addError('main.no-permission'); Util::redirect('?do=Main'); } if (Request::post('action') === 'debugconf') { $this->setConfig(); } elseif (Request::post("action") === "clearRelay") { $this->clearRelay(); } elseif (Request::post("action") === "refreshList") { $this->getActiveRelays(); } } protected function doRender() { $debug_config = $this->getConfig(); Render::addTemplate('debugconfig', array("debugEnabled" => $debug_config["enabled"], "debugServer" => $debug_config["debugServer"], "port" => $debug_config["port"])); $relays = $this->getActiveRelays(); Render::addTemplate('relaystatus', array("activeRelays" => $relays)); } private function getConfig() { if (Property::getRemoteDebugConfig() == Null) { Property::setRemoteDebugConfig(self::DEFAULT_CONFIG); } return Property::getRemoteDebugConfig(); } private function setConfig() { $enabled = isset($_POST['toggleDebug']) ? true : false; Property::setRemoteDebugConfig(array('enabled' => $enabled, 'debugServer' => Request::post('debugServer'), 'port' => Request::post('port'))); } private function getActiveRelays() { $relays = Property::getList("DispatchedRelay"); foreach ($relays as $key => $value) { $task = Taskmanager::status($value); $finished = Taskmanager::isFinished($task); $endpoints = $task["data"]["endpoints"]; if ($task["statusCode"] == "NO_SUCH_INSTANCE" || $finished) { Property::removeFromList("DispatchedRelay", $value); unset($relays[$key]); } $relays[$key] = array("id" => $value, "bwlpclient" => $endpoints[0], "debugserver" => $endpoints[1]); } return $relays; } private function clearRelay() { Property::removeFromList("DispatchedRelay", Request::post("relayid")); } }