1
0
Fork 0

Dateien hochladen nach „classen“

This commit is contained in:
Christopher 2021-11-27 19:46:11 +00:00
parent fe88130aaf
commit 76e0bb1099
1 changed files with 241 additions and 242 deletions

View File

@ -1,243 +1,242 @@
<?php <?php
function fillString($string, $targetlength) function fillString($string, $targetlength)
{ {
while(strlen($string) < $targetlength) while(strlen($string) < $targetlength)
{ {
$string = "0".$string; $string = "0".$string;
} }
return $string; return $string;
} }
function left($str, $length) function left($str, $length)
{ {
return substr($str, 0, $length); return substr($str, 0, $length);
} }
function right($str, $length) function right($str, $length)
{ {
return substr($str, -$length); return substr($str, -$length);
} }
function guidv4($data = null) { function guidv4($data = null) {
// Generate 16 bytes (128 bits) of random data or use the data passed into the function. // Generate 16 bytes (128 bits) of random data or use the data passed into the function.
$data = $data ?? random_bytes(16); $data = $data ?? random_bytes(16);
assert(strlen($data) == 16); assert(strlen($data) == 16);
// Set version to 0100 // Set version to 0100
$data[6] = chr(ord($data[6]) & 0x0f | 0x40); $data[6] = chr(ord($data[6]) & 0x0f | 0x40);
// Set bits 6-7 to 10 // Set bits 6-7 to 10
$data[8] = chr(ord($data[8]) & 0x3f | 0x80); $data[8] = chr(ord($data[8]) & 0x3f | 0x80);
// Output the 36 character UUID. // Output the 36 character UUID.
return vsprintf('%s%s-%s-%s-%s-%s%s%s', str_split(bin2hex($data), 4)); return vsprintf('%s%s-%s-%s-%s-%s%s%s', str_split(bin2hex($data), 4));
} }
function ping($host, $port) function ping($host, $port)
{ {
$waitTimeoutInSeconds = 2; $waitTimeoutInSeconds = 2;
if($fp = @fsockopen($host,$port,$errCode,$errStr,$waitTimeoutInSeconds)) if($fp = @fsockopen($host,$port,$errCode,$errStr,$waitTimeoutInSeconds))
{ {
fclose($fp); fclose($fp);
return true; return true;
} }
return false; return false;
} }
function getDataFromHTTP($URL, $contend = "", $requestTyp = "application/text") function getDataFromHTTP($URL, $contend = "", $requestTyp = "application/text")
{ {
try try
{ {
if($contend != "") if($contend != "")
{ {
return @file_get_contents($URL, true, stream_context_create(array('http' => array('header' => 'Content-type: '.$requestTyp, 'method' => 'POST', 'timeout' => 1.0, 'content' => $contend)))); return @file_get_contents($URL, true, stream_context_create(array('http' => array('header' => 'Content-type: '.$requestTyp, 'method' => 'POST', 'timeout' => 1.0, 'content' => $contend))));
}else{ }else{
return @file_get_contents($URL, true, stream_context_create(array('http' => array('timeout' => 1.0)))); return @file_get_contents($URL, true, stream_context_create(array('http' => array('timeout' => 1.0))));
} }
} catch (Exception $e) { } catch (Exception $e) {
echo "(HTTP REQUEST) error while conntect to remote server. : ".$URL; echo "(HTTP REQUEST) error while conntect to remote server. : ".$URL;
} }
} }
function sendInworldIM($fromUUID, $toUUID, $fromName, $targetURL, $text) function sendInworldIM($fromUUID, $toUUID, $fromName, $targetURL, $text)
{ {
$rawXML = "<?xml version=\"1.0\" encoding=\"utf-8\"?><methodCall><methodName>grid_instant_message</methodName><params><param><value><struct><member><name>position_x</name><value><string>0</string></value></member><member><name>position_y</name><value><string>0</string></value></member><member><name>position_z</name><value><string>0</string></value></member><member><name>to_agent_id</name><value><string>".$toUUID."</string></value></member><member><name>from_agent_session</name><value><string>00000000-0000-0000-0000-000000000000</string></value></member><member><name>im_session_id</name><value><string>".$fromUUID."</string></value></member><member><name>from_agent_name</name><value><string>".$fromName."</string></value></member><member><name>from_agent_id</name><value><string>".$fromUUID."</string></value></member><member><name>binary_bucket</name><value><string>AA==</string></value></member><member><name>region_handle</name><value><i4>0</i4></value></member><member><name>region_id</name><value><string>00000000-0000-0000-0000-000000000000</string></value></member><member><name>parent_estate_id</name><value><string>1</string></value></member><member><name>timestamp</name><value><string>".time()."</string></value></member><member><name>dialog</name><value><string>AA==</string></value></member><member><name>offline</name><value><string>AA==</string></value></member><member><name>from_group</name><value><string>FALSE</string></value></member><member><name>message</name><value><string>".$text."</string></value></member></struct></value></param></params></methodCall>"; $rawXML = "<?xml version=\"1.0\" encoding=\"utf-8\"?><methodCall><methodName>grid_instant_message</methodName><params><param><value><struct><member><name>position_x</name><value><string>0</string></value></member><member><name>position_y</name><value><string>0</string></value></member><member><name>position_z</name><value><string>0</string></value></member><member><name>to_agent_id</name><value><string>".$toUUID."</string></value></member><member><name>from_agent_session</name><value><string>00000000-0000-0000-0000-000000000000</string></value></member><member><name>im_session_id</name><value><string>".$fromUUID."</string></value></member><member><name>from_agent_name</name><value><string>".$fromName."</string></value></member><member><name>from_agent_id</name><value><string>".$fromUUID."</string></value></member><member><name>binary_bucket</name><value><string>AA==</string></value></member><member><name>region_handle</name><value><i4>0</i4></value></member><member><name>region_id</name><value><string>00000000-0000-0000-0000-000000000000</string></value></member><member><name>parent_estate_id</name><value><string>1</string></value></member><member><name>timestamp</name><value><string>".time()."</string></value></member><member><name>dialog</name><value><string>AA==</string></value></member><member><name>offline</name><value><string>AA==</string></value></member><member><name>from_group</name><value><string>FALSE</string></value></member><member><name>message</name><value><string>".$text."</string></value></member></struct></value></param></params></methodCall>";
getDataFromHTTP($targetURL, $rawXML, "text/xml"); getDataFromHTTP($targetURL, $rawXML, "text/xml");
} }
function getTopRegionHTML($row) function getTopRegionHTML($row)
{ {
if(!isset($row['Image'])) if(!isset($row['Image']))
return; return;
if(!file_exists("./data/RegionImages/".$row['Image'].".jpg")) if(!file_exists("./data/RegionImages/".$row['Image'].".jpg"))
$row['Image'] = "notFound"; $row['Image'] = "notFound";
if(!isset($row['Description']) || trim($row['Description']) == "") if(!isset($row['Description']) || trim($row['Description']) == "")
$row['Description'] = "(Es wurde noch keine Beschreibung hinterlegt.)"; $row['Description'] = "(Es wurde noch keine Beschreibung hinterlegt.)";
return '<section id="banner"><div class="content"><header><h1>'.substr($row['Name'], 0, 50).'</h1><p>Online: '.$row['OnlineCount'].'</p></header><p>'.substr($row['Description'], 0, 800).'</p><ul class="actions"><a href="region_-'.$row['UUID'].'.html" class="button big html5lightbox">Menr Infos</a></ul></div> return '<section id="banner"><div class="content"><header><h1>'.substr($row['Name'], 0, 50).'</h1><p>Online: '.$row['OnlineCount'].'</p></header><p>'.substr($row['Description'], 0, 800).'</p><ul class="actions"><a href="region_-'.$row['UUID'].'.html" class="button big html5lightbox">Menr Infos</a></ul></div>
<span class="image object"><img style="min-height: 450px; max-height: 450px;" src="./data/RegionImages/'.$row['Image'].'.jpg" alt="Region Image '.substr($row['Name'], 0, 50).'" /></span></section>'; <span class="image object"><img style="min-height: 450px; max-height: 450px;" src="./data/RegionImages/'.$row['Image'].'.jpg" alt="Region Image '.substr($row['Name'], 0, 50).'" /></span></section>';
} }
function getRegionHTML($row) function getRegionHTML($row)
{ {
if(!file_exists("./data/RegionImages/".$row['Image'].".jpg")) if(!file_exists("./data/RegionImages/".$row['Image'].".jpg"))
$row['Image'] = "notFound"; $row['Image'] = "notFound";
if(!isset($row['Description']) || trim($row['Description']) == "") if(!isset($row['Description']) || trim($row['Description']) == "")
$row['Description'] = "(Es wurde noch keine Beschreibung hinterlegt.)"; $row['Description'] = "(Es wurde noch keine Beschreibung hinterlegt.)";
return '<article><a href="index.php?page=regionInfo&id='.$row['UUID'].'" class="image"><img style="min-height: 250px; max-height: 250px;" src="./data/RegionImages/'.$row['Image'].'.jpg" alt="Region Image '.substr($row['Name'], 0, 50).'" /></a> return '<article><a href="index.php?page=regionInfo&id='.$row['UUID'].'" class="image"><img style="min-height: 250px; max-height: 250px;" src="./data/RegionImages/'.$row['Image'].'.jpg" alt="Region Image '.substr($row['Name'], 0, 50).'" /></a>
<h3>'.substr($row['Name'], 0, 50).'</h3><p>Online: '.$row['OnlineCount'].'</p><p>'.substr($row['Description'], 0, 300).'</p><ul class="actions"><li><a href="region_'.$row['UUID'].'.html" class="button html5lightbox">Menr Infos</a></li></ul></article>'; <h3>'.substr($row['Name'], 0, 50).'</h3><p>Online: '.$row['OnlineCount'].'</p><p>'.substr($row['Description'], 0, 300).'</p><ul class="actions"><li><a href="region_'.$row['UUID'].'.html" class="button html5lightbox">Menr Infos</a></li></ul></article>';
} }
function getGridInfo($homeURL) function getGridInfo($homeURL)
{ {
$optionen = stream_context_create(array('http' => array('timeout' => 2, 'method' => 'GET'))); $optionen = stream_context_create(array('http' => array('timeout' => 2, 'method' => 'GET')));
$result = file_get_contents($homeURL."/get_grid_info", false, $optionen); $result = file_get_contents($homeURL."/get_grid_info", false, $optionen);
$returnData = array(); $returnData = array();
$servers = new SimpleXMLElement($result); $servers = new SimpleXMLElement($result);
$returnData['platform'] = $servers->platform;
$returnData['platform'] = $servers['platform']; $returnData['gridname'] = $servers->gridname;
$returnData['gridname'] = $servers['gridname'];
return $returnData;
return $returnData; }
}
function getUserServiceURL($homeURL, $userID)
function getUserServiceURL($homeURL, $userID) {
{ $xml = '<?xml version="1.0" encoding="utf-8"?><methodCall><methodName>get_server_urls</methodName><params><param><value><struct><member><name>userID</name><value><string>'.$userID.'</string></value></member></struct></value></param></params></methodCall>';
$xml = '<?xml version="1.0" encoding="utf-8"?><methodCall><methodName>get_server_urls</methodName><params><param><value><struct><member><name>userID</name><value><string>'.$userID.'</string></value></member></struct></value></param></params></methodCall>'; $optionen = stream_context_create(array('http' => array('timeout' => 2, 'method' => 'POST', 'header' => 'Content-Type: application/xml', 'content' => $xml)));
$optionen = stream_context_create(array('http' => array('timeout' => 2, 'method' => 'POST', 'header' => 'Content-Type: application/xml', 'content' => $xml))); $result = file_get_contents($homeURL, false, $optionen);
$result = file_get_contents($homeURL, false, $optionen); $returnData = array();
$returnData = array();
$servers = new SimpleXMLElement($result);
$servers = new SimpleXMLElement($result);
foreach ($servers->params->param->value->struct[0] as $serverEntry)
foreach ($servers->params->param->value->struct[0] as $serverEntry) {
{ if($serverEntry->name == 'SRV_FriendsServerURI')
if($serverEntry->name == 'SRV_FriendsServerURI') $returnData['SRV_FriendsServerURI'] = $serverEntry->value->string->__toString();
$returnData['SRV_FriendsServerURI'] = $serverEntry->value->string->__toString();
if($serverEntry->name == 'SRV_AssetServerURI')
if($serverEntry->name == 'SRV_AssetServerURI') $returnData['SRV_AssetServerURI'] = $serverEntry->value->string->__toString();
$returnData['SRV_AssetServerURI'] = $serverEntry->value->string->__toString();
if($serverEntry->name == 'SRV_InventoryServerURI')
if($serverEntry->name == 'SRV_InventoryServerURI') $returnData['SRV_InventoryServerURI'] = $serverEntry->value->string->__toString();
$returnData['SRV_InventoryServerURI'] = $serverEntry->value->string->__toString();
if($serverEntry->name == 'SRV_ProfileServerURI')
if($serverEntry->name == 'SRV_ProfileServerURI') $returnData['SRV_ProfileServerURI'] = $serverEntry->value->string->__toString();
$returnData['SRV_ProfileServerURI'] = $serverEntry->value->string->__toString();
if($serverEntry->name == 'SRV_GroupsServerURI')
if($serverEntry->name == 'SRV_GroupsServerURI') $returnData['SRV_GroupsServerURI'] = $serverEntry->value->string->__toString();
$returnData['SRV_GroupsServerURI'] = $serverEntry->value->string->__toString();
if($serverEntry->name == 'SRV_IMServerURI')
if($serverEntry->name == 'SRV_IMServerURI') $returnData['SRV_IMServerURI'] = $serverEntry->value->string->__toString();
$returnData['SRV_IMServerURI'] = $serverEntry->value->string->__toString();
if($serverEntry->name == 'SRV_GatekeeperURI')
if($serverEntry->name == 'SRV_GatekeeperURI') $returnData['SRV_GatekeeperURI'] = $serverEntry->value->string->__toString();
$returnData['SRV_GatekeeperURI'] = $serverEntry->value->string->__toString();
if($serverEntry->name == 'SRV_HomeURI')
if($serverEntry->name == 'SRV_HomeURI') $returnData['SRV_HomeURI'] = $serverEntry->value->string->__toString();
$returnData['SRV_HomeURI'] = $serverEntry->value->string->__toString(); }
}
return $returnData;
return $returnData; }
}
function getUserInfo($homeURL, $userID)
function getUserInfo($homeURL, $userID) {
{ $xml = '<?xml version="1.0" encoding="utf-8"?><methodCall><methodName>get_user_info</methodName><params><param><value><struct><member><name>userID</name><value><string>'.$userID.'</string></value></member></struct></value></param></params></methodCall>';
$xml = '<?xml version="1.0" encoding="utf-8"?><methodCall><methodName>get_user_info</methodName><params><param><value><struct><member><name>userID</name><value><string>'.$userID.'</string></value></member></struct></value></param></params></methodCall>'; $optionen = stream_context_create(array('http' => array('timeout' => 2, 'method' => 'POST', 'header' => 'Content-Type: application/xml', 'content' => $xml)));
$optionen = stream_context_create(array('http' => array('timeout' => 2, 'method' => 'POST', 'header' => 'Content-Type: application/xml', 'content' => $xml))); $result = file_get_contents($homeURL, false, $optionen);
$result = file_get_contents($homeURL, false, $optionen); $returnData = array();
$returnData = array();
$servers = new SimpleXMLElement($result);
$servers = new SimpleXMLElement($result);
foreach ($servers->params->param->value->struct[0] as $serverEntry)
foreach ($servers->params->param->value->struct[0] as $serverEntry) {
{ if($serverEntry->name == 'user_firstname')
if($serverEntry->name == 'user_firstname') $returnData['user_firstname'] = $serverEntry->value->string->__toString();
$returnData['user_firstname'] = $serverEntry->value->string->__toString();
if($serverEntry->name == 'user_lastname')
if($serverEntry->name == 'user_lastname') $returnData['user_lastname'] = $serverEntry->value->string->__toString();
$returnData['user_lastname'] = $serverEntry->value->string->__toString();
if($serverEntry->name == 'result')
if($serverEntry->name == 'result') $returnData['result'] = $serverEntry->value->string->__toString();
$returnData['result'] = $serverEntry->value->string->__toString(); }
}
return $returnData;
return $returnData; }
}
function getRegionInfo($homeURL, $regionName)
function getRegionInfo($homeURL, $regionName) {
{ $xml = '<?xml version="1.0" encoding="utf-8"?><methodCall><methodName>link_region</methodName><params><param><value><struct><member><name>region_name</name><value><string>'.$regionName.'</string></value></member></struct></value></param></params></methodCall>';
$xml = '<?xml version="1.0" encoding="utf-8"?><methodCall><methodName>link_region</methodName><params><param><value><struct><member><name>region_name</name><value><string>'.$regionName.'</string></value></member></struct></value></param></params></methodCall>'; $optionen = stream_context_create(array('http' => array('timeout' => 2, 'method' => 'POST', 'header' => 'Content-Type: application/x-www-form-urlencoded', 'content' => $xml)));
$optionen = stream_context_create(array('http' => array('timeout' => 2, 'method' => 'POST', 'header' => 'Content-Type: application/x-www-form-urlencoded', 'content' => $xml))); $result = file_get_contents($homeURL, false, $optionen);
$result = file_get_contents($homeURL, false, $optionen); $returnData = array();
$returnData = array();
$servers = new SimpleXMLElement($result);
$servers = new SimpleXMLElement($result);
foreach ($servers->params->param->value->struct[0] as $serverEntry)
foreach ($servers->params->param->value->struct[0] as $serverEntry) {
{ if($serverEntry->name == 'external_name')
if($serverEntry->name == 'external_name') $returnData['external_name'] = $serverEntry->value->string->__toString();
$returnData['external_name'] = $serverEntry->value->string->__toString();
if($serverEntry->name == 'region_image')
if($serverEntry->name == 'region_image') $returnData['region_image'] = $serverEntry->value->string->__toString();
$returnData['region_image'] = $serverEntry->value->string->__toString();
if($serverEntry->name == 'uuid')
if($serverEntry->name == 'uuid') $returnData['uuid'] = $serverEntry->value->string->__toString();
$returnData['uuid'] = $serverEntry->value->string->__toString();
if($serverEntry->name == 'result')
if($serverEntry->name == 'result') $returnData['result'] = $serverEntry->value->string->__toString();
$returnData['result'] = $serverEntry->value->string->__toString(); }
}
return $returnData;
return $returnData; }
}
function getRegionData($homeURL, $uuid)
function getRegionData($homeURL, $uuid) {
{ $xml = '<?xml version="1.0" encoding="utf-8"?><methodCall><methodName>get_region</methodName><params><param><value><struct><member><name>region_uuid</name><value><string>'.$uuid.'</string></value></member></struct></value></param></params></methodCall>';
$xml = '<?xml version="1.0" encoding="utf-8"?><methodCall><methodName>get_region</methodName><params><param><value><struct><member><name>region_uuid</name><value><string>'.$uuid.'</string></value></member></struct></value></param></params></methodCall>'; $optionen = stream_context_create(array('http' => array('timeout' => 2, 'method' => 'POST', 'header' => 'Content-Type: application/x-www-form-urlencoded', 'content' => $xml)));
$optionen = stream_context_create(array('http' => array('timeout' => 2, 'method' => 'POST', 'header' => 'Content-Type: application/x-www-form-urlencoded', 'content' => $xml))); $result = file_get_contents($homeURL, false, $optionen);
$result = file_get_contents($homeURL, false, $optionen);
$returnData = array();
$returnData = array();
$servers = new SimpleXMLElement($result);
$servers = new SimpleXMLElement($result);
foreach ($servers->params->param->value->struct[0] as $serverEntry)
foreach ($servers->params->param->value->struct[0] as $serverEntry) {
{ if($serverEntry->name == 'http_port')
if($serverEntry->name == 'http_port') $returnData['http_port'] = $serverEntry->value->string->__toString();
$returnData['http_port'] = $serverEntry->value->string->__toString();
if($serverEntry->name == 'hostname')
if($serverEntry->name == 'hostname') $returnData['hostname'] = $serverEntry->value->string->__toString();
$returnData['hostname'] = $serverEntry->value->string->__toString();
if($serverEntry->name == 'server_uri')
if($serverEntry->name == 'server_uri') $returnData['server_uri'] = $serverEntry->value->string->__toString();
$returnData['server_uri'] = $serverEntry->value->string->__toString();
if($serverEntry->name == 'region_name')
if($serverEntry->name == 'region_name') $returnData['region_name'] = $serverEntry->value->string->__toString();
$returnData['region_name'] = $serverEntry->value->string->__toString();
if($serverEntry->name == 'result')
if($serverEntry->name == 'result') $returnData['result'] = $serverEntry->value->string->__toString();
$returnData['result'] = $serverEntry->value->string->__toString(); }
}
return $returnData;
return $returnData; }
}
function getRegionStats($regionHostName)
function getRegionStats($regionHostName) {
{ $optionen = stream_context_create(array('http' => array('timeout' => 1)));
$optionen = stream_context_create(array('http' => array('timeout' => 1))); $result = file_get_contents("http://".$regionHostName."/jsonSimStats", false, $optionen);
$result = file_get_contents("http://".$regionHostName."/jsonSimStats", false, $optionen);
if($result != "")
if($result != "") {
{ return json_decode($result);
return json_decode($result); }
} }
}
?> ?>