From 055f07a62015da916809c3feb836d5c3fe0a54ae Mon Sep 17 00:00:00 2001 From: Lars Gebhardt-Kusche Date: Thu, 20 Nov 2025 02:31:04 +0100 Subject: [PATCH] sitestructure --- lastchatgptmessage.txt | 6 + partials/landing/fakecheck/hero.php | 75 ++++++++ partials/landing/fakecheck/webcheck.php | 36 ++++ partials/landing/main/faq.php | 61 ++++++ partials/landing/main/features.php | 68 +++++++ partials/landing/main/hero.php | 105 +++++++++++ partials/landing/main/how.php | 72 ++++++++ partials/landing/main/problem.php | 39 ++++ partials/landing/main/security.php | 36 ++++ partials/structure/layout_end.php | 4 +- partials/structure/layout_start.php | 4 +- public/assets/js/fakecheck.js | 37 ++++ public/fakecheck/index.php | 168 ++--------------- public/index.php | 15 ++ public/index2.php | 234 ------------------------ src/functions.php | 44 +++++ 16 files changed, 617 insertions(+), 387 deletions(-) create mode 100644 lastchatgptmessage.txt create mode 100644 partials/landing/fakecheck/webcheck.php create mode 100644 partials/landing/main/faq.php create mode 100644 partials/landing/main/features.php create mode 100644 partials/landing/main/how.php create mode 100644 partials/landing/main/problem.php create mode 100644 partials/landing/main/security.php create mode 100644 public/assets/js/fakecheck.js delete mode 100644 public/index2.php create mode 100644 src/functions.php diff --git a/lastchatgptmessage.txt b/lastchatgptmessage.txt new file mode 100644 index 0000000..23e8901 --- /dev/null +++ b/lastchatgptmessage.txt @@ -0,0 +1,6 @@ +ich würde es noch flexibler bauen: +in der tpl-Funktion bauen wir die Pfade fix, aber aufgrund nachfolgender Struktur. + +tpl([dateiname],[type = structure, landing],[(optional)site=main, fakecheck) + +Weil dann kann ich im Hintergrund die Pfade ändern und muss das nur in der tpl-Funktion anpassen. Die Seiten bleiben wie sie sind. \ No newline at end of file diff --git a/partials/landing/fakecheck/hero.php b/partials/landing/fakecheck/hero.php index e69de29..c088782 100644 --- a/partials/landing/fakecheck/hero.php +++ b/partials/landing/fakecheck/hero.php @@ -0,0 +1,75 @@ +
+
+ +
+ +
+

+ FakeCheck – Browser-Modus +

+

+ Ist mein USB-Stick fake? +

+

+ Der FakeCheck hilft dir, typische Fake-Sticks aufzuspüren: Browser-basierte Schreib-/Lesetests und Plausibilitätsprüfungen der nutzbaren Kapazität – ohne Installation. +

+ +
+ + + + Zur Übersicht zurück + +
+ +

+ Der FakeCheck im Browser arbeitet mit Testdateien und Lese-/Schreibmustern, die du in einem ausgewählten Ordner anlegst. Deine echten Dateien bleiben unangetastet. +

+
+ + +
+
+

+ Was der Browser-Test leisten kann +

+
    +
  • + 1 +
    +

    Schreib-/Lesetest mit Testdateien

    +

    + Der Browser legt Testdateien im gewählten Ordner an, misst Schreib- und Leseraten und prüft, ob gelesene Daten mit den geschriebenen Mustern übereinstimmen. +

    +
    +
  • +
  • + 2 +
    +

    Plausibilitätscheck der Kapazität

    +

    + Aus der Menge der erfolgreich geschriebenen und verifizierten Daten ergibt sich ein realistischer Eindruck, wie viel Nutzkapazität tatsächlich stabil ankommt. +

    +
    +
  • +
  • + 3 +
    +

    JSON-Report für deine Dokumentation

    +

    + Alle Ergebnisse werden in einem strukturierten JSON-Report gesammelt, den du speichern, hochladen oder für spätere Vergleiche nutzen kannst. +

    +
    +
  • +
+
+
+
+
diff --git a/partials/landing/fakecheck/webcheck.php b/partials/landing/fakecheck/webcheck.php new file mode 100644 index 0000000..6350078 --- /dev/null +++ b/partials/landing/fakecheck/webcheck.php @@ -0,0 +1,36 @@ +
+
+ +
+
+

+ Browser-Testoberfläche (Preview) +

+

+ Hier entsteht die eigentliche FakeCheck-Web-App: Auswahl des Testordners, Konfiguration der Testmenge, Fortschrittsanzeige und Ergebnisübersicht. Aktuell zeigt der Button oben nur eine Demo-Ausgabe. +

+ +
    +
  • • Quick-Test mit kleiner Datenmenge.
  • +
  • • Light-Benchmark: Schreib-/Lesegeschwindigkeit über begrenzte Zeit.
  • +
  • • Write/Verify: Testdateien schreiben und direkt wieder verifizieren.
  • +
+
+
+ + +
+ +
+
+
diff --git a/partials/landing/main/faq.php b/partials/landing/main/faq.php new file mode 100644 index 0000000..a344857 --- /dev/null +++ b/partials/landing/main/faq.php @@ -0,0 +1,61 @@ +
+
+
+

+ FAQ +

+

+ Häufige Fragen zu USBCheck +

+

+ Hier findest du Antworten auf häufig gestellte Fragen. Der FAQ-Bereich kann jederzeit erweitert werden, wenn neue Anwendungsfälle hinzukommen oder du Feedback von Nutzern erhältst. +

+
+ +
+
+ + Ist der Schnelltest wirklich komplett im Browser? + + + + +
+ Ja. Der Schnelltest läuft vollständig im Browser und nutzt moderne Browser-APIs, um Testdateien auf deinem Stick zu schreiben und wieder auszulesen. Es wird nichts ohne deine Zustimmung hochgeladen. +
+
+ +
+ + Brauche ich ein Konto, um den Schnelltest zu benutzen? + + + + +
+ Nein. Der kostenlose Schnelltest ist ohne Registrierung nutzbar. Ein Login ist nur notwendig, wenn du Testberichte speichern, mehrere Sticks verwalten oder den Pro-Modus nutzen möchtest. +
+
+ +
+ + Kann USBCheck jeden Fake-Stick sicher erkennen? + + + + +
+ Kein Tool kann eine 100 %-Garantie geben. Der Pro-Modus mit Vollscan ist jedoch darauf ausgelegt, typische Fälschungsmuster (Manipulation der gemeldeten Kapazität, instabile Bereiche, Fehler ab einer bestimmten Füllmenge) sehr zuverlässig zu erkennen. +
+
+ +
+ + Wie fügt sich das Tool in mein bestehendes System ein? + + + + +
+ USBCheck ist von Anfang an für Automatisierung gedacht. Über den Pro-Modus und die geplante API kannst du Tests in bestehende Workflows integrieren – beispielsweise in Wareneingangsprüfungen oder Qualitätskontrollen. +
+
+
+
+
diff --git a/partials/landing/main/features.php b/partials/landing/main/features.php new file mode 100644 index 0000000..38aafde --- /dev/null +++ b/partials/landing/main/features.php @@ -0,0 +1,68 @@ +
+
+
+

+ Free & Pro features +

+

+ Starte mit dem kostenlosen Schnelltest – wechsle in den Pro-Modus, wenn du mehr brauchst. +

+

+ USBCheck wächst mit deinen Anforderungen: Private Nutzer brauchen oft nur eine schnelle Einschätzung. Profis möchten tiefer einsteigen, Kapazitäten verifizieren und Reports archivieren. Genau dafür ist der Pro-Modus gedacht. +

+
+ +
+ +
+
+

Free Quick Check

+ + Recommended for most users + +
+

+ Ideal für alle, die schnell prüfen möchten, ob ein USB-Stick zumindest grundlegend performant und stabil arbeitet – ganz ohne Installation. +

+
    +
  • • Browser-basierter Schnelltest direkt auf deinem Stick
  • +
  • • Schreib- und Lesegeschwindigkeit mit realen Testdaten
  • +
  • • Hash-basierte Integritätsprüfung einer Testmenge
  • +
  • • Auswahl verschiedener Teststufen (z. B. 200 MB, 2 GB)
  • +
  • • Keine Registrierung erforderlich
  • +
+ + Start free quick check + + + + +
+ + +
+
+

Pro Mode

+ + For power users & teams + +
+

+ Für alle, die volle Kontrolle brauchen: IT-Abteilungen, Techniker, Refurbisher, Labore oder Unternehmen, die regelmäßig größere Stick-Mengen testen. +

+
    +
  • • Tiefenscan der gesamten Kapazität (ähnlich F3 / badblocks)
  • +
  • • Erkennung von Kapazitäts-Fakes und defekten Bereichen
  • +
  • • Detaillierte, speicherbare Testberichte (JSON, PDF)
  • +
  • • Optional: API-Zugriff für automatisierte Testprozesse
  • +
  • • Multi-Device- und Multi-User-Support (über Login-Bereich)
  • +
+

+ Der Pro-Modus erfordert ein kleines Helfer-Tool auf deinem System. Dieses arbeitet lokal und kann bei Bedarf mit deinem Account auf USBCheck verbunden werden. +

+
+
+
+
diff --git a/partials/landing/main/hero.php b/partials/landing/main/hero.php index e69de29..8805e09 100644 --- a/partials/landing/main/hero.php +++ b/partials/landing/main/hero.php @@ -0,0 +1,105 @@ +
+
+ +
+ +
+

+ Detect fake USB sticks before you lose data +

+

+ Is my USB fake?
Find out in minutes. +

+

+ USBCheck kombiniert einen schnellen Browser-Test mit einem professionellen Pro-Modus. So erkennst du gefälschte USB-Sticks, zu kleine echte Kapazität und langsame Billig-Controller – bevor deine Dateien verschwinden. +

+ + + + + +
+
+

No install for quick check

+

Browser-basierter Test direkt auf deinem Stick.

+
+
+

Real write & read tests

+

Schreib-/Lesetests mit echten Daten – keine synthetische Theorie.

+
+
+

Privacy first

+

Deine Testdaten bleiben lokal – Reports nur auf Wunsch.

+
+
+
+ + +
+
+
+
+

+ QUICK CHECK PREVIEW +

+

+ Test a USB drive in under 2 minutes +

+
+ + Free + +
+ +
+

+ Der Schnelltest prüft eine definierte Datenmenge auf deinem Stick und misst: +

+
    +
  • Schreib- und Leserate
  • +
  • Datenintegrität (Hash-Vergleich)
  • +
  • Verdächtige Abbrüche oder Fehler
  • +
+
+ +
+
+ Write performance + ~ 75–120 MB/s* +
+
+
+
+
+ Integrity checks + 512 MB sample +
+

+ *Beispielwerte – deine Ergebnisse hängen von Stick, Port & System ab. +

+
+ + + Go to free quick check + +
+
+
+
diff --git a/partials/landing/main/how.php b/partials/landing/main/how.php new file mode 100644 index 0000000..db04910 --- /dev/null +++ b/partials/landing/main/how.php @@ -0,0 +1,72 @@ +
+
+
+

+ How USBCheck works +

+

+ Schnelltest im Browser, Pro-Modus mit Tiefenanalyse. +

+

+ USBCheck wurde entwickelt, um zwei Welten zu verbinden: einen einfachen Schnelltest für alle und einen tiefgehenden Pro-Modus für Power-User, Techniker und Admins. Der Schnelltest läuft direkt im Browser, ohne Installation. Für den Pro-Modus wird ein kleines Helfer-Tool verwendet, das auf Wunsch F3- / badblocks-ähnliche Tests ausführt und damit Kapazitäts-Fakes sicher enttarnt. +

+ +
    +
  1. + 01 +
    +

    Browser-Test starten

    +

    + Du öffnest den Schnelltest unter usbcheck.it/fakecheck/, wählst deinen USB-Stick bzw. einen Ordner darauf aus und definierst, wie viel Daten getestet werden sollen. +

    +
    +
  2. +
  3. + 02 +
    +

    Schreib-, Lese- und Integritätsprüfung

    +

    + Der Browser erstellt Testdateien, misst Schreib- und Leserate und vergleicht Hash-Werte, um Datenfehler zu erkennen – alles lokal und ohne Übertragung deiner Inhalte. +

    +
    +
  4. +
  5. + 03 +
    +

    Optional: Pro-Modus für Vollscan

    +

    + Wer mehr wissen will, installiert das optionale Helfer-Tool. Dieses kann die gesamte Kapazität des Sticks prüfen, Fakes identifizieren und detaillierte Reports erzeugen – ideal für Refurbisher, IT-Abteilungen oder Labore. +

    +
    +
  6. +
+
+ + +
+

+ Free vs Pro at a glance +

+
    +
  • + F +

    + Free Quick Check: Geschwindigkeit & Integritätstest im Browser – ideal für schnelle Einschätzungen. +

    +
  • +
  • + P +

    + Pro-Modus: Tiefenscan, Kapazitätsvalidierung, erweiterte Berichte und API-Integration für Unternehmen. +

    +
  • +
  • + A +

    + Account & Login: Nach dem Login kannst du Tests speichern, Berichte exportieren und mehrere Geräte verwalten. +

    +
  • +
+
+
+
diff --git a/partials/landing/main/problem.php b/partials/landing/main/problem.php new file mode 100644 index 0000000..48254e1 --- /dev/null +++ b/partials/landing/main/problem.php @@ -0,0 +1,39 @@ +
+
+
+

+ Why fake USB sticks are dangerous +

+

+ Gefälschte USB-Sticks kosten Geld – und im schlimmsten Fall deine Daten. +

+

+ Viele Billig-USB-Sticks werben mit unrealistisch hohen Kapazitäten. In Wahrheit wurde der Controller manipuliert: Der Stick meldet z. B. 256 GB, obwohl physisch nur 32 GB verbaut sind. Die Folge: Daten werden scheinbar korrekt kopiert, später aber stillschweigend überschrieben oder beschädigt. +

+

+ USBCheck hilft dir, solche Fakes zu erkennen, bevor du sie produktiv einsetzt – egal ob du einzelne Sticks privat nutzt oder größere Chargen für dein Unternehmen prüfst. +

+
+ +
+
+

Verlust wichtiger Dateien

+

+ Fotos, Projektdateien, Backups – alles kann betroffen sein, wenn der Stick weniger speichert als behauptet. Defekte Sektoren bleiben oft unbemerkt, bis es zu spät ist. +

+
+
+

Kosten durch defekte Chargen

+

+ Unternehmen, Reseller und Agenturen verteilen USB-Sticks oft in großer Stückzahl. Fakes bedeuten Reklamationen, Imageschaden und erneute Produktionskosten. +

+
+
+

Unsichere Performance

+

+ Langsame Controller, instabile Firmware und schwankende Schreibraten sind typisch für Fake-Sticks. Das erhöht das Risiko von Fehlern – besonders bei großen Dateien. +

+
+
+
+
diff --git a/partials/landing/main/security.php b/partials/landing/main/security.php new file mode 100644 index 0000000..df92796 --- /dev/null +++ b/partials/landing/main/security.php @@ -0,0 +1,36 @@ +
+
+
+

+ Security & privacy +

+

+ Privacy-first-Design: Deine Testdaten gehören dir. +

+

+ USBCheck wurde von Anfang an so konzipiert, dass deine Daten geschützt bleiben. Der Browser-Schnelltest arbeitet ausschließlich mit Testdateien. Deine eigenen Dokumente, Bilder oder Backups werden weder gelesen noch übertragen. Im Pro-Modus hast du volle Kontrolle, ob und welche Reports mit deinem Account synchronisiert werden. +

+
+ +
+
+

Local-only Tests

+

+ Alle Schreib- und Lesetests erfolgen lokal auf deinem USB-Stick. Der Browser greift nur auf die Testdateien zu – nicht auf deine privaten Inhalte. +

+
+
+

Transparente Reports

+

+ Wenn du dich einloggst, kannst du Testberichte in deinem Account speichern, exportieren oder wieder löschen. Du entscheidest, welche Daten im System bleiben. +

+
+
+

Schonend für deine Hardware

+

+ Der Schnelltest arbeitet mit moderaten Datenmengen, um unnötigen Verschleiß zu vermeiden. Der Pro-Modus warnt deutlich, wenn ein Vollscan mit hoher Schreiblast ausgeführt wird. +

+
+
+
+
diff --git a/partials/structure/layout_end.php b/partials/structure/layout_end.php index 6bcfcf6..a9d8b09 100644 --- a/partials/structure/layout_end.php +++ b/partials/structure/layout_end.php @@ -4,7 +4,9 @@ - + diff --git a/partials/structure/layout_start.php b/partials/structure/layout_start.php index 866f6d7..f0d6bf2 100644 --- a/partials/structure/layout_start.php +++ b/partials/structure/layout_start.php @@ -50,7 +50,9 @@ $host = $_SERVER['HTTP_HOST'] ?? '';
- +
diff --git a/public/assets/js/fakecheck.js b/public/assets/js/fakecheck.js new file mode 100644 index 0000000..c6692a7 --- /dev/null +++ b/public/assets/js/fakecheck.js @@ -0,0 +1,37 @@ +// /public/assets/js/fakecheck.js + +document.addEventListener("DOMContentLoaded", () => { + // Werte kommen aus globalen Variablen, die wir in PHP setzen: + const baseUrl = window.fakecheckBaseUrl || ""; + const locale = window.fakecheckLocale || "en"; + + const startButton = document.getElementById("startButton"); + const resultContainer = document.getElementById("resultContainer"); + const resultOutput = document.getElementById("resultOutput"); + + if (!startButton || !resultContainer || !resultOutput) return; + + startButton.addEventListener("click", () => { + const now = new Date().toISOString(); + + const demoReport = { + meta: { + tool: baseUrl, + mode: "browser-demo", + timestamp: now, + locale: locale + }, + tests: [ + { id: "quick_test", label: "Quick-Test (Demo)", status: "pending" }, + { id: "light_benchmark", label: "Light-Benchmark (Demo)", status: "pending" }, + { id: "write_verify", label: "Write/Verify (Demo)", status: "pending" } + ], + note: "Dies ist nur eine Platzhalter-Ausgabe. Die echte Web-Testlogik (File System Access, Fortschritt, realer JSON-Report) implementieren wir im nächsten Schritt." + }; + + resultOutput.textContent = JSON.stringify(demoReport, null, 2); + + resultContainer.classList.remove("hidden"); + resultContainer.scrollIntoView({ behavior: "smooth", block: "start" }); + }); +}); diff --git a/public/fakecheck/index.php b/public/fakecheck/index.php index 0f4dfdb..1562e06 100644 --- a/public/fakecheck/index.php +++ b/public/fakecheck/index.php @@ -20,159 +20,25 @@ $scheme = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off') ? 'https' $host = $_SERVER['HTTP_HOST'] ?? 'usbcheck.it'; $baseUrl = $scheme . '://' . $host; -// Layout-Start einbinden -require __DIR__ . '/../partials/layout_start.php'; -?> - - -
-
- -
- -
-

- FakeCheck – Browser-Modus -

-

- Ist mein USB-Stick fake? -

-

- Der FakeCheck hilft dir, typische Fake-Sticks aufzuspüren: Browser-basierte Schreib-/Lesetests und Plausibilitätsprüfungen der nutzbaren Kapazität – ohne Installation. -

- -
- - - - Zur Übersicht zurück - -
- -

- Der FakeCheck im Browser arbeitet mit Testdateien und Lese-/Schreibmustern, die du in einem ausgewählten Ordner anlegst. Deine echten Dateien bleiben unangetastet. -

-
- - -
-
-

- Was der Browser-Test leisten kann -

-
    -
  • - 1 -
    -

    Schreib-/Lesetest mit Testdateien

    -

    - Der Browser legt Testdateien im gewählten Ordner an, misst Schreib- und Leseraten und prüft, ob gelesene Daten mit den geschriebenen Mustern übereinstimmen. -

    -
    -
  • -
  • - 2 -
    -

    Plausibilitätscheck der Kapazität

    -

    - Aus der Menge der erfolgreich geschriebenen und verifizierten Daten ergibt sich ein realistischer Eindruck, wie viel Nutzkapazität tatsächlich stabil ankommt. -

    -
    -
  • -
  • - 3 -
    -

    JSON-Report für deine Dokumentation

    -

    - Alle Ergebnisse werden in einem strukturierten JSON-Report gesammelt, den du speichern, hochladen oder für spätere Vergleiche nutzen kannst. -

    -
    -
  • -
-
-
-
-
- - -
-
- -
-
-

- Browser-Testoberfläche (Preview) -

-

- Hier entsteht die eigentliche FakeCheck-Web-App: Auswahl des Testordners, Konfiguration der Testmenge, Fortschrittsanzeige und Ergebnisübersicht. Aktuell zeigt der Button oben nur eine Demo-Ausgabe. -

- -
    -
  • • Quick-Test mit kleiner Datenmenge.
  • -
  • • Light-Benchmark: Schreib-/Lesegeschwindigkeit über begrenzte Zeit.
  • -
  • • Write/Verify: Testdateien schreiben und direkt wieder verifizieren.
  • -
-
-
- - -
- -
-
-
- - + + + + + + + + + diff --git a/public/index.php b/public/index.php index d63152c..9cef19f 100644 --- a/public/index.php +++ b/public/index.php @@ -1,4 +1,6 @@ '#faq', 'key' => 'nav_faq' ], ]; +tpl('layout_start'); // structure/header.php +?> + + + + + + + +tpl('layout_end'); // structure/footer.php + + +/* // Layout-Start (Head, Body, Header,
) require __DIR__ . '/partials/layout_start.php'; ?> diff --git a/public/index2.php b/public/index2.php deleted file mode 100644 index e52dd90..0000000 --- a/public/index2.php +++ /dev/null @@ -1,234 +0,0 @@ - - - - - - USBCheck – Test your USB drives - - - - - - - - - - - - - - -
- -
-
-
-

-

-

- -
- - - -
- -
    -
  • -
  • -
  • -
-
- -
-
- -

-
-
- - 125 MB/s -
-
- - 99.98% -
-
- - -
-
-

-
-
- USB Stick Illustration -
-
-
-
- - -
-
-

-

- -
-
-
1
-

-

-
-
-
2
-

-

-
-
-
3
-

-

-
-
-
4
-

-

-
-
-
-
- - -
-
-

-

- -
-
-

-
    -
  • -
  • -
  • -
-
- -
-
-

-
    -
  • -
  • -
  • -
-
-
-
-
- - -
-
-

-

- -
-
-

-

-
    -
  • -
  • -
  • -
- -
- -
-

-

-
    -
  • -
  • -
  • -
- -
-
-
-
- - -
-
-

-

- -
-
- -

-
-
- -

-
-
- -

-
-
- -

-
-
-
-
-
- -
- -
- - - - diff --git a/src/functions.php b/src/functions.php new file mode 100644 index 0000000..f7cb601 --- /dev/null +++ b/src/functions.php @@ -0,0 +1,44 @@ + landing/{site}/{file}.php + $path = $base . "landing/$site/$file.php"; + } else { + // structure -> structure/{file}.php + $path = $base . "structure/$file.php"; + } + + // Datei laden + if (file_exists($path)) { + include $path; + } else { + echo ""; + } +}