<?php

define('mysqli_host','localhost');  
define('mysqli_login','glarkru'); 
define('mysqli_db','glarkru');    
define('mysqli_ps','sA2jP0cW5oeP6gJ1tB7laN3qE2cA8k'); 
define("SERVER_LOGIN", "cm8w7p");
define("SERVER_PASSWD", "D5wp38b5FFii");
define("SERVER_TOKEN", SERVER_LOGIN.":".SERVER_PASSWD);
#########################


@$mysqli = mysqli_connect(mysqli_host,mysqli_login,mysqli_ps,mysqli_db);
if (!$mysqli) {
	die('<doc><error code="100">db access deny</error></doc>');
   #printf("Невозможно подключиться к базе данных. <br>Код ошибки: %s\n", mysqli_connect_error());
    exit;
}
mysqli_query($mysqli,"SET NAMES 'utf8'");

function antixs($data){
    global $mysqli;
    return trim(htmlspecialchars(mysqli_real_escape_string($mysqli,$data), ENT_QUOTES, 'UTF-8'));
}

function obj($sql){
    global $mysqli;
    return mysqli_fetch_object(mysqli_query($mysqli, $sql));
}

function log_file($msg){
	// Указываем путь к файлу логов
	$logFile = 'pisp.log';

	// Получаем текущую дату и время
	$dateTime = date('Y-m-d H:i:s');
	// Формируем строку для записи в лог
	$logEntry = "[$dateTime] ".$msg."\n";

	file_put_contents($logFile, $logEntry, FILE_APPEND);
}

function log_cmd($cmd){
	$c = './mgrctl ';
	foreach ($cmd as $key => $val){
		$c .= $key.'='.$val." ";
	}
	$c .= ' -o xml';
	log_file("[CMD] ".$c);
}

function hantixs($string,$hsc=true){
	return ($hsc?trim(htmlspecialchars(($string))):trim(($string)));
}

function error_auth(){
	die('<doc><error code="100">access deny</error></doc>');
}

function out_xml($xml){
	$x = '<?xml version="1.0" encoding="UTF-8"?>';
	die($x.$xml);
}

function out_elem($arr = []){
	$x = '<doc>';
	foreach ($arr as $k => $v){
		$x .= '<elem>';
		$x .= '</elem>';
	}
	$x .= '</doc>';
	out_xml($x);
}
$func = antixs($_POST["func"]);
if (!isset($_POST["authinfo"]) || SERVER_TOKEN != antixs($_POST["authinfo"])){
	log_file("AUTH ERROR ");
	log_file(($_POST["authinfo"]));
	error_auth();
}

if ($func == "iplist"){
	die('<doc><elem><stat>shared</stat><owner>root</owner><name>127.0.0.1</name><count>1</count></elem></doc>');
}

if ($func == "updatelist.settings"){
	die('<?xml version="1.0" encoding="UTF-8"?><doc><elid/><os>Linux (x86_64)</os><mgrver>gLark-Pro 4.4.10.30</mgrver><version>4.4.10.30</version><mgrbuild>Jan 03 2002</mgrbuild><vertype>current</vertype><mirror>http:/glark.ru/</mirror></doc>');
}
log_file(json_encode($_POST, JSON_PRETTY_PRINT));
log_cmd($_POST);
if ($func == "user.edit"){
	# passwd=mUZPcDxT preset=free10 owner=root email=admin@javaph.ru ip=127.0.0.1 force=on domain=pimnik98.h6m.ru
	$login          = isset($_POST["name"]) && !empty($_POST["name"])?antixs($_POST["name"]):"defaultname";
	$passwd         = isset($_POST["passwd"]) && !empty($_POST["passwd"])?antixs($_POST["passwd"]):"dpasswd";
	$preset         = isset($_POST["preset"]) && !empty($_POST["preset"])?antixs($_POST["preset"]):"preset";
	$email          = isset($_POST["email"]) && !empty($_POST["email"])?antixs($_POST["email"]):"email@default.ru";
	die('<xml><sok>ok</sok></xml>');
}


echo "<xml><sok>ok</sok></xml>";
?>