2 Commits

Author SHA1 Message Date
61b52d8427 troys issues funktion 2025-02-15 21:02:11 +01:00
b475672eac erster versuch 2025-02-15 20:32:58 +01:00
3 changed files with 225 additions and 261 deletions

View File

@@ -8,11 +8,10 @@ $_m['data'] = '';
$_m['pre'] = '';
$_m['salt'] = '';
$_m['issuedata'] = ['domain'=>'','secret'=>''];
$_sendermail = 'noreply@.de';
$_smtp['srv'] = 'mail.seemsleg.it';
$_smtp['user'] = 'noreply@.de';
$_smtp['pw'] = '';
$_i['host'] = '';
$_i['secret'] = '';
?>

View File

@@ -1,21 +1,18 @@
<?php
$__idata = [];
class SQL {
private $h;
private $res = false;
private $m;
public $salt;
public $issuedata;
public $pre;
public $cnt_get = 0;
public $cnt_set = 0;
public function __construct() {
global $__idata;
require_once ('secret.php');
$__idata = $_i;
$this->m = $_m;
$this->issuedata = $_m['issuedata'];
$this->pre = $_m ['pre'];
$this->salt = $_m ['salt'];
if (SQL_LOG)

View File

@@ -14,69 +14,37 @@
return file_get_contents ( $url, false, $context );
}
function sendIssue($service, $text, $data = []) {
global $__idata;
function troysIssue($ident, $typ, $text = null, $data = [], $reaction = []) {
global $sql;
$url = "https://issues.troy-grunt.de/api/input";
$url = 'https://issues.troy-grunt.de/api';
// Basisdaten für den POST-Request
$postData = [
'host' => $__idata['host'],
'secret' => $__idata['secret'],
'typ' => $service,
'text' => $text,
'data' => json_encode($data) // Falls 'data' ein Array ist, wird es als JSON gesendet
$payload = [
"domain" => $sql->issuedata['domain'],
"secret" => $sql->issuedata['secret'],
"ident" => $ident,
"typ" => $typ,
"text" => $text,
"data" => $data,
"reaction" => $reaction
];
// cURL initialisieren
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/x-www-form-urlencoded']);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postData));
// Anfrage senden & Antwort erhalten
$response = curl_exec($ch);
curl_close($ch);
return $response;
}
//TODO
function sendSimpleIssue($text,$url){
$apiUrl = 'https://issues.troy-grunt.de/api/simple';
// Die notwendigen Daten
$data = [
'domain' => 'example.com', // Ersetze mit deiner registrierten Domain
'secret' => 'geheimes-passwort', // Ersetze mit deinem Secret
'text' => $text,
'url' => $url
];
// Entferne null-Werte aus dem Array
$payload = array_filter($payload, function ($value) {
return $value !== null;
});
$options = [
'http' => [
'header' => "Content-Type: application/json\r\n",
'method' => 'POST',
'content' => json_encode($data)
"http" => [
"header" => "Content-Type: application/json\r\n",
"method" => "POST",
"content" => json_encode($payload),
"ignore_errors" => true
]
];
$context = stream_context_create($options);
$response = file_get_contents($apiUrl, false, $context);
$result = file_get_contents($url, false, $context);
if ($response === FALSE) {
die('Fehler bei der API-Anfrage');
return json_decode($result, true);
}
// Antwort dekodieren
$result = json_decode($response, true);
if (isset($result['success']) && $result['success']) {
echo "Issue erfolgreich erstellt. ID: " . $result['issue_id'];
} else {
echo "Fehler: " . ($result['error'] ?? 'Unbekannter Fehler');
}
}//TODO nutzen
?>