Fixing container disaster.
This commit is contained in:
80
patches/02_decode_html_date_field.patch
Normal file
80
patches/02_decode_html_date_field.patch
Normal file
@@ -0,0 +1,80 @@
|
||||
--- a/frontends/web/templates/decode.html
|
||||
+++ b/frontends/web/templates/decode.html
|
||||
@@ -35,6 +35,9 @@
|
||||
{% else %}
|
||||
<!-- Decode Form -->
|
||||
<form method="POST" enctype="multipart/form-data" id="decodeForm">
|
||||
+ <!-- Hidden field for encoding date (detected from filename) -->
|
||||
+ <input type="hidden" name="stego_date" id="stegoDate" value="">
|
||||
+
|
||||
<div class="row">
|
||||
<div class="col-md-6 mb-3">
|
||||
<label class="form-label">
|
||||
@@ -171,10 +174,20 @@ document.getElementById('togglePin')?.addEventListener('click', function() {
|
||||
// Detect day from filename
|
||||
function detectDayFromFilename(filename) {
|
||||
const dateMatch = filename.match(/_(\d{4})[-]?(\d{2})[-]?(\d{2})/);
|
||||
-
|
||||
if (dateMatch) {
|
||||
const [, year, month, day] = dateMatch;
|
||||
const date = new Date(year, month - 1, day);
|
||||
+ return {
|
||||
+ dayName: dayNames[date.getDay()],
|
||||
+ dateStr: `${year}-${month}-${day}`
|
||||
+ };
|
||||
+ }
|
||||
+ return null;
|
||||
+}
|
||||
+
|
||||
+// Legacy function for day name only
|
||||
+function detectDayFromFilenameOld(filename) {
|
||||
+ const result = detectDayFromFilename(filename);
|
||||
+ if (result) {
|
||||
- return dayNames[date.getDay()];
|
||||
+ return result.dayName;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
@@ -182,8 +195,14 @@ function detectDayFromFilename(filename) {
|
||||
// Update day phrase label
|
||||
-function updateDayLabel(dayName) {
|
||||
+function updateDayLabel(dayName, dateStr) {
|
||||
const label = document.getElementById('dayPhraseLabel');
|
||||
if (label && dayName) {
|
||||
label.innerHTML = `<i class="bi bi-chat-quote me-1"></i>Provide <span class="day-of-week-highlight">${dayName}</span>'s Phrase`;
|
||||
}
|
||||
+
|
||||
+ // Set the hidden date field
|
||||
+ const dateField = document.getElementById('stegoDate');
|
||||
+ if (dateField && dateStr) {
|
||||
+ dateField.value = dateStr;
|
||||
+ console.log('Set stego date to:', dateStr);
|
||||
+ }
|
||||
}
|
||||
|
||||
@@ -232,8 +251,10 @@ document.querySelectorAll('.drop-zone').forEach(zone => {
|
||||
showPreview(file);
|
||||
|
||||
if (isStegoZone) {
|
||||
- const dayName = detectDayFromFilename(file.name);
|
||||
- updateDayLabel(dayName);
|
||||
+ const detected = detectDayFromFilename(file.name);
|
||||
+ if (detected) {
|
||||
+ updateDayLabel(detected.dayName, detected.dateStr);
|
||||
+ }
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -244,8 +265,10 @@ document.querySelectorAll('.drop-zone').forEach(zone => {
|
||||
showPreview(file);
|
||||
|
||||
if (isStegoZone) {
|
||||
- const dayName = detectDayFromFilename(file.name);
|
||||
- updateDayLabel(dayName);
|
||||
+ const detected = detectDayFromFilename(file.name);
|
||||
+ if (detected) {
|
||||
+ updateDayLabel(detected.dayName, detected.dateStr);
|
||||
+ }
|
||||
}
|
||||
}
|
||||
});
|
||||
Reference in New Issue
Block a user