diff --git a/submit.php b/submit.php index 1be7884..e061d97 100644 --- a/submit.php +++ b/submit.php @@ -3,103 +3,203 @@ include 'zefixAPI.php'; $taskDir = 'tasks'; +function renderPage(string $title, string $messageHtml, bool $isError = false): void +{ + $logoPath = "img/silias-logo.png"; + + $statusClass = $isError + ? "alert-danger border-0 shadow-sm" + : "alert-success border-0 shadow-sm"; + + $statusTitle = $isError ? "Fehler" : "Auftrag eingegangen"; + +echo ' + + + + + + + ' . htmlspecialchars($title) . ' + + + + + + + + +
+
+
+ +
+
+ +

+ ' . ($isError ? '' : '') . ' + ' . htmlspecialchars($statusTitle) . ' +

+ +
+ ' . $messageHtml . ' +
+ + + +
+ +
+ +
+ +
+ +
+ +
+
+ Ihr Partner für moderne IT-Infrastruktur & Automatisierung +
+
Silias KLG
+
+ IT, Automatisierung & individuelle Web-Lösungen +
+
+ +
+ +
+ Wir bauen schlanke Tools wie dieses, automatisieren Prozesse und integrieren Systeme sauber in bestehende Umgebungen + (Hosting, Mail, ERP/CRM, Schnittstellen).

+ + Als Managed Service Provider betreuen wir KMU ganzheitlich – von der Infrastruktur über Cloud, + Netzwerke und Telefonie bis zum laufenden Betrieb, Monitoring und persönlichen Support. +
+ + + +
+ +
+
+ +
+
+
+ + + + +'; +} + +/* ---------------- VALIDATION ---------------- */ -/** - * E-Mail aus dem Formular holen und serverseitig validieren - */ $email = isset($_POST['email']) ? trim($_POST['email']) : ''; if (empty($email) || !filter_var($email, FILTER_VALIDATE_EMAIL)) { - echo "Bitte geben Sie eine gültige E-Mail-Adresse an."; - echo '
Zurück zur Startseite'; - // WICHTIG: Script hier abbrechen, damit KEIN Task angelegt wird + renderPage("Ungültige E-Mail", "Bitte geben Sie eine gültige E-Mail-Adresse an.", true); exit; } +/* ---------------- TASK BUILD ---------------- */ -/* - * Request Types: - * Count - * List - * Export - */ -// Request data -$data = array(); +$data = []; $data["maxEntries"] = 50; $data["offset"] = 0; $data["languageKey"] = "de"; -$results = array(); -// Wenn Firmenname vorhanden -if(isset($_POST['firma']) && !empty($_POST['firma'])) { +if (!empty($_POST['firma'])) { $data["name"] = $_POST['firma']; } -// Wenn gelöschte auch gesucht werden sollen -if(isset($_POST['geloeschteRechtseinheiten'])) { - $data["deletedFirms"] = true; -} else { - $data["deletedFirms"] = false; -} - -//TODO get from Frontend +$data["deletedFirms"] = isset($_POST['geloeschteRechtseinheiten']); $data["searchType"] = "exact"; -$rechtsformen = array(); -if (isset($_POST['rechtsformen']) && is_array($_POST['rechtsformen']) && count($_POST['rechtsformen']) > 0) { - $rechtsformen = $_POST['rechtsformen']; -} else { - $legalFormArray = json_decode(sendAPILegalFormRequest($username, $password), true); - foreach ($legalFormArray as $rechtsform) { - $rechtsformen[] = $rechtsform["id"]; +$rechtsformen = $_POST['rechtsformen'] ?? []; +$sitze = $_POST['sitze'] ?? []; + +$requests_to_do = []; + +foreach ($rechtsformen as $rf) { + $data["legalForms"] = [(int)$rf]; + + foreach ($sitze as $s) { + $data["legalSeats"] = [(int)$s]; + $requests_to_do[] = $data; } } -$sitze = array(); -if (isset($_POST['sitze']) && is_array($_POST['sitze']) && count($_POST['sitze']) > 0) { - $sitze = $_POST['sitze']; -} else { - $communityArray = json_decode(sendAPICommunityRequest($username, $password), true); - foreach ($communityArray as $community) { - $sitze[] = $community["bfsId"]; - } -} +$taskdata = [ + 'requests' => $requests_to_do, + 'email' => $email +]; -$requests_to_do = Array(); -// Loop through the selected values - foreach ($rechtsformen as $rechtsform) { - $data["legalForms"] = Array(intval($rechtsform)); - - // Loop through the selected values - foreach ($sitze as $sitz) { - $data["legalSeats"] = Array(intval($sitz)); - $requests_to_do[] = $data; - } - - } -$taskdata = Array(); -$taskdata['requests'] = $requests_to_do; -$taskdata['email'] = $_POST['email']; -$taskString = json_encode($taskdata); -if(!is_dir($taskDir)){ +if (!is_dir($taskDir)) { mkdir($taskDir, 0755, true); } -$taskfilename = $taskDir.'/'.time().'-'.bin2hex(random_bytes(4)).'.json'; -$taskfile = fopen($taskfilename, 'w'); -if($taskfile){ - fwrite($taskfile, $taskString); - fclose($taskfile); - echo "Wir haben Ihren Auftrag erhalten. Sie erhalten von uns eine E-Mail, sobald die Daten zum Download bereit sind. Dies kann je nach Datenmenge lange dauern."; - echo '
Zurück zur Startseite'; + +$taskfilename = $taskDir . '/' . time() . '-' . bin2hex(random_bytes(4)) . '.json'; + +if (file_put_contents($taskfilename, json_encode($taskdata))) { + + renderPage( + "Auftrag eingegangen", + "Wir haben Ihren Auftrag erhalten. Sie erhalten von uns eine E-Mail, sobald die Daten zum Download bereit sind. Dies kann je nach Datenmenge lange dauern.", + false + ); + } else { - echo "Ein Fehler ist aufgetreten."; -} -//$constructed_response = $response; - -// Send the response back to the client -//header('Content-Type: application/json'); -//echo $constructed_response; - - -?> \ No newline at end of file + renderPage("Fehler", "Ein Fehler ist aufgetreten.", true); +} \ No newline at end of file