summaryrefslogtreecommitdiffstats
path: root/modules-available/debugconfig/page.inc.php
blob: 09ae0d7df6d38ed0bbde9eb0c5913daac353a92d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<?php

class Page_debugConfig extends Page
{

	const DEFAULT_CONFIG = array("enabled" => 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') {
			/*if (!filter_var(Request::get('debugServer'), FILTER_VALIDATE_IP)) {
				return;
			}*/
			$this->setConfig();
		}
	}

	protected function doRender()
	{
		$debug_config = $this->getConfig();
		Render::addTemplate('debugconfig', array("debugEnabled" => $debug_config["enabled"], "debugServer" => $debug_config["debugServer"], "port" => $debug_config["port"]));
		
		$task = Property::getDebugTaskStruct();
		$taskid = $task['id'];
		$taskstatus = Taskmanager::status($task);
		error_log(print_r($taskstatus, true));

		Render::addTemplate('relaystatus', array("taskid" => $taskid, "taskstatus" => $taskstatus));
	}
	
	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')));
	}	
}