Initial commit

This commit is contained in:
2026-01-02 20:52:43 +01:00
commit e9d2257d73
854 changed files with 164132 additions and 0 deletions

24
alt/pagecontent/index.php Normal file
View File

@@ -0,0 +1,24 @@
<?php
session_start();
header('Content-Type: text/plain');
header('Cache-Control: no-cache');
ob_implicit_flush(true);
ob_end_flush();
$view = $_GET["view"];
$meta = $_GET["meta"];
$_SESSION["meta"]=$meta;
?>
<div class="content-header">Federleiste prüfen</div>
<hr />
<p>Automatische Erkennung</p>
<i>Verbinden Sie den zu messenden Stecker mit dem Gerät. Vermeiden Sie Bewegungen während der Messung.</i>
<div class="save-button" onclick="window.location.href='#start';$('.save-button').html('<img src=\'/vendor/icons/load.gif\' \>Initialisieren...'); "><img src="/vendor/icons/play.svg" \>Jetzt prüfen</div>

339
alt/pagecontent/start.php Normal file
View File

@@ -0,0 +1,339 @@
<?php
session_start();
header('Content-Type: text/plain');
header('Cache-Control: no-cache');
ob_implicit_flush(true);
ob_end_flush();
$translationMap = [
"A" => "30",
"B" => "20",
"C" => "10",
"D" => "39",
"E" => "29",
"F" => "19",
"G" => "38",
"H" => "28",
"I" => "18",
"J" => "37",
"K" => "27",
"L" => "17",
"M" => "36",
"N" => "26",
"O" => "16",
"P" => "35",
"Q" => "25",
"R" => "15",
"S" => "34",
"T" => "24",
"U" => "14",
"V" => "33",
"W" => "23",
"X" => "13",
"Y" => "32",
"Z" => "22",
"AA" => "12",
"AB" => "31",
"AC" => "21",
"AD" => "11"
];
function translateArray($inputArray, $translationMap) {
return array_map(function($subArray) use ($translationMap) {
return array_map(function($item) use ($translationMap) {
return $translationMap[$item] ?? $item; // Falls kein Mapping existiert, bleibt das Original erhalten
}, $subArray);
}, $inputArray);
}
flush();
?>
<style>
div.check-loading-screen {
width: 250px;
height: auto;
background-color: #ebebeb;
margin: 0 auto;
text-align: left;
padding: 5px;
border-radius: 25px;
}
div.check-loading-screen div {
padding: 5px;
margin: 10px;
line-height: 30px;
transition-duration: .4s;
cursor: pointer;
border-radius: 10px;
}
div.check-loading-screen div img {
width: 30px;
margin-right: 20px;
vertical-align: middle;
filter: contrast(0.3);
line-height: 30px;
cursor: pointer;
display: inline-block;
}
</style>
<div class="check-loading-screen" id="_1">
<div>
<img src="/vendor/icons/load.gif">Initialisieren
</div>
<div>
<img src="/vendor/icons/clock-rotate-right.svg">Prüfung 1/2
</div>
<div>
<img src="/vendor/icons/clock-rotate-right.svg">Prüfung 2/2
</div>
</div>
<?php
flush();
// To Run the Python program
$command = escapeshellcmd('python3 /var/www/html/alt/python/plug-check.py');
// Use shell_exec to execute the command and capture the output
$output0 = shell_exec($command);
?>
<style>
#_1 {
display: none;
}
</style>
<div class="check-loading-screen" id="_2">
<div>
<img src="/vendor/icons/check.svg">Initialisieren
</div>
<div>
<img src="/vendor/icons/load.gif">Prüfung 1/2
</div>
<div>
<img src="/vendor/icons/clock-rotate-right.svg">Prüfung 2/2
</div>
</div>
<?php
$command = escapeshellcmd('python3 /var/www/html/alt/python/plug-check.py');
// Use shell_exec to execute the command and capture the output
$bridges1 = shell_exec($command);
$number_bridges1 = count(json_decode($bridges1, true));
?>
<style>
#_2 {
display: none;
}
</style>
<div class="check-loading-screen" id="_3">
<div>
<img src="/vendor/icons/check.svg">Initialisieren
</div>
<div>
<img src="/vendor/icons/check.svg">Prüfung 1/2 (<?php echo $number_bridges1; ?>x)
</div>
<div>
<img src="/vendor/icons/load.gif">Prüfung 2/2
</div>
</div>
<?php
$command = escapeshellcmd('python3 /var/www/html/alt/python/plug-check.py');
// Use shell_exec to execute the command and capture the output
$bridges2 = shell_exec($command);
?>
<style>
#_3 {
display: none;
}
</style>
<?php
$bridges1 = $bridges2;
if($bridges1 == $bridges2) {
$output = translateArray(json_decode($bridges1, true), $translationMap);
if($output == "error") {
die("Fehler");
}
//$output = [ ["16", "30"], ["30", "16"]];
$array = $output;
$doubles = []; // Array zur Verfolgung von Doppelungen
$errors = []; // Array für fehlende Doppelungen
// Schritt 1: Prüfung auf Doppelungen
foreach ($array as $pair) {
// Sortiere die Paare, um `[23,14]` und `[14,23]` gleich zu behandeln
sort($pair);
$key = implode("-", $pair);
if (isset($doubles[$key])) {
$doubles[$key]++; // Verbindung erneut gefunden
} else {
$doubles[$key] = 1; // Erstmaliges Auftreten
}
}
// Schritt 2: Bereinigung der doppelten Einträge
$unique = []; // Array für eindeutige Verbindungen
$seen = []; // Array zur Verfolgung bereits bearbeiteter Verbindungen
foreach ($array as $pair) {
// Sortiere das Paar
sort($pair);
$key = implode("-", $pair);
// Füge nur ein Exemplar hinzu
if (!isset($seen[$key])) {
$unique[] = $pair;
$seen[$key] = true; // Markiere als verarbeitet
}
}
$cleaned_output = json_encode($unique);
$url = '../stecker.php?data=' . urlencode($cleaned_output); // Kodiert es für die URL
?>
<div class="content-header">Ergebnis</div>
<hr />
<div class="toggle-switch">
<div align="right"><p>Gesamtergebnis</p></div>
<div><label class="switch"><input type="checkbox" onchange='$("#op-1").toggle(this.unchecked);$("#op-2").toggle(this.checked);'><span class="slider"></span></label></div>
<div align="left"><p>Einzelbrücken</p></div>
</div>
<div id="op-1">
<img src="<?php echo $url; ?>" />
</div>
<div id="op-2" style="display: none;">
<?php
foreach($unique as $unique_element) {
$cleaned_output = "[" . json_encode($unique_element) . "]";
$url = 'stecker.php?data=' . urlencode($cleaned_output); // Kodiert es für die URL
?>
<img style="margin-bottom: 5px;" src="<?php echo $url; ?>" />
<?php
}
?>
</div>
<hr />
<?php
}
else {
$output = "error";
/*
$url1 = 'stecker.php?data=' . urlencode(translateArray($bridges1, $translationMap)); // Kodiert es für die URL
$url2 = 'stecker.php?data=' . urlencode(translateArray($bridges2, $translationMap)); // Kodiert es für die URL
*/
?>
<style>
#_3 {
display: none;
}
</style>
<div class="check-loading-screen" id="_4">
<div>
<img src="/vendor/icons/check.svg">Initialisieren
</div>
<div>
<img src="/vendor/icons/xmark.svg">Prüfung 1/2
</div>
<div>
<img src="/vendor/icons/xmark.svg">Prüfung 2/2
</div>
</div>
<p>Es gab einen Fehler bei der Messung!</br>Messung 1 und Messung 2 lieferten keine übereinstimmenden Ergebnisse.<br>Bitte prüfen Sie, ob alle Steckverbindungen fest sitzen und vermeiden Sie Bewegungen, welche die Messung beeinträchtigen können.</br>Stellen Sie sicher, dass keine der Verbindungen gegen Erde kurzgeschlossen ist, da dies die Messung beeinträchtigt.<br>Erwägen Sie, eine erneute Messung zurchzuführen.</p>
<br>
<p>Ergebnis Messung 1:</p>
<i><?php echo $bridges1; ?><i>
<img src="<?php echo $url1; ?>" />
<p>Ergebnis Messung 2:</p>
<i><?php echo $bridges2; ?><i>
<img src="<?php echo $url2; ?>" />
<div class="save-button" onclick="window.location.href='#index'; pageload();$('.save-button').html('<img src=\'load.gif\' \>Bitte warten...');"><img src="/vendor/icons/nav-arrow-left.svg" \>Zurück</div>
<?php
}
?>