76 lines
1.9 KiB
PHP
76 lines
1.9 KiB
PHP
<?php
|
|
|
|
/*
|
|
Finobe 2021
|
|
Report Data
|
|
*/
|
|
|
|
use Finobe\Web\WebContextManager;
|
|
|
|
header("Access-Control-Allow-Origin: https://www.idk16.xyz");
|
|
header("access-control-allow-credentials: true");
|
|
header('Content-Type: application/json');
|
|
|
|
$id = (int)$_GET['id'];
|
|
|
|
if(!$user->IsStaff() || !$id) {
|
|
WebContextManager::Redirect("/");
|
|
}
|
|
|
|
$xml = "";
|
|
|
|
$report = $GLOBALS['pdo']->prepare("SELECT * FROM user_reports WHERE id = :id");
|
|
$report->bindParam(":id", $id, PDO::PARAM_INT);
|
|
$report->execute();
|
|
if ($report->rowCount() > 0) {
|
|
$xml = $report->fetch(PDO::FETCH_OBJ)->report;
|
|
} else {
|
|
die(json_encode(["alert"=>"Report not found"]));
|
|
}
|
|
|
|
$validXML = true;
|
|
try {
|
|
$ParsedXML = new SimpleXMLElement($xml);
|
|
} catch (Exception $e) {
|
|
$validXML = false;
|
|
}
|
|
|
|
if ($validXML) {
|
|
$reporteruserid = (int)$ParsedXML->attributes()->userID;
|
|
$placeid = (int)$ParsedXML->attributes()->placeID;
|
|
$jobid = (string)$ParsedXML->attributes()->gameJobID;
|
|
|
|
$commentdata = explode(";", $ParsedXML->comment);
|
|
|
|
$abuserid = (int)filter_var($commentdata[0], FILTER_SANITIZE_NUMBER_INT);
|
|
$reportreason = (string)cleanOutputNoFilter(trim($commentdata[1]));
|
|
$reportdescription = (string)cleanOutputNoFilter($commentdata[2]);
|
|
|
|
$chats = $ParsedXML->xpath('//message');
|
|
|
|
$jsonData = array(
|
|
"ReporterUid" => $reporteruserid,
|
|
"PlaceId" => $placeid,
|
|
"JobId" => $jobid,
|
|
"AbuserUid" => $abuserid,
|
|
"Reason" => $reportreason,
|
|
"Description" => $reportdescription
|
|
);
|
|
|
|
foreach($chats as $chat) {
|
|
$userid = (int)$chat['userID'];
|
|
$username = (string)getUsername($userid);
|
|
$userchat = (string)cleanOutputNoFilter($chat);
|
|
|
|
$chatData = array(
|
|
"username" => $username,
|
|
"userid" => $userid,
|
|
"chat" => $userchat
|
|
);
|
|
|
|
array_push($jsonData, $chatData);
|
|
}
|
|
|
|
die(json_encode($jsonData));
|
|
}
|
|
die(json_encode(["alert"=>"Error Occurred"])); |