tabs in beiträgen gemerget

This commit is contained in:
2025-11-21 13:57:07 +01:00
parent e55f17f0c8
commit 23a5714119
3 changed files with 26 additions and 5 deletions

View File

@@ -18,7 +18,7 @@ let focusTabAdjusted = null;
let currentProfile = 1; let currentProfile = 1;
let currentTab = 'pending'; let currentTab = 'pending';
let posts = []; let posts = [];
let includeExpiredPosts = loadIncludeExpiredPreference(); let includeExpiredPosts = false;
let profilePollTimer = null; let profilePollTimer = null;
const UPDATES_RECONNECT_DELAY = 5000; const UPDATES_RECONNECT_DELAY = 5000;
let updatesEventSource = null; let updatesEventSource = null;
@@ -280,6 +280,19 @@ function updateIncludeExpiredToggleUI() {
includeExpiredToggle.checked = includeExpiredPosts; includeExpiredToggle.checked = includeExpiredPosts;
} }
includeExpiredPosts = loadIncludeExpiredPreference();
function updateIncludeExpiredToggleVisibility() {
if (!includeExpiredToggle) {
return;
}
const wrapper = includeExpiredToggle.closest('.search-filter-toggle');
if (!wrapper) {
return;
}
wrapper.style.display = currentTab === 'all' ? 'inline-flex' : 'none';
}
function initializeFocusParams() { function initializeFocusParams() {
try { try {
const params = new URLSearchParams(window.location.search); const params = new URLSearchParams(window.location.search);
@@ -2793,6 +2806,7 @@ if (profileSelectElement) {
if (includeExpiredToggle) { if (includeExpiredToggle) {
updateIncludeExpiredToggleUI(); updateIncludeExpiredToggleUI();
updateIncludeExpiredToggleVisibility();
includeExpiredToggle.addEventListener('change', () => { includeExpiredToggle.addEventListener('change', () => {
includeExpiredPosts = includeExpiredToggle.checked; includeExpiredPosts = includeExpiredToggle.checked;
persistIncludeExpiredPreference(includeExpiredPosts); persistIncludeExpiredPreference(includeExpiredPosts);
@@ -3097,6 +3111,7 @@ function renderPosts() {
return; return;
} }
updateIncludeExpiredToggleVisibility();
closeActiveDeadlinePicker(); closeActiveDeadlinePicker();
updateTabButtons(); updateTabButtons();
cleanupLoadMoreObserver(); cleanupLoadMoreObserver();

View File

@@ -85,11 +85,11 @@
<button class="tab-btn" data-tab="all">Alle Beiträge</button> <button class="tab-btn" data-tab="all">Alle Beiträge</button>
</div> </div>
<div class="search-container"> <div class="search-container">
<input type="text" id="searchInput" class="search-input" placeholder="Beiträge durchsuchen...">
<label class="search-filter-toggle" for="includeExpiredToggle"> <label class="search-filter-toggle" for="includeExpiredToggle">
<input type="checkbox" id="includeExpiredToggle"> <input type="checkbox" id="includeExpiredToggle">
<span>Abgelaufene/abgeschlossene anzeigen</span> <span>Abgelaufene/abgeschlossene anzeigen</span>
</label> </label>
<input type="text" id="searchInput" class="search-input" placeholder="Beiträge durchsuchen...">
</div> </div>
</div> </div>

View File

@@ -455,15 +455,21 @@ h1 {
.search-filter-toggle { .search-filter-toggle {
display: inline-flex; display: inline-flex;
align-items: center; align-items: center;
gap: 6px; gap: 8px;
font-size: 13px; font-size: 13px;
font-weight: 600; font-weight: 700;
color: #1f2937; color: #0f172a;
padding: 7px 12px;
border-radius: 10px;
background: linear-gradient(135deg, #eef2ff 0%, #e0f2fe 100%);
border: 1px solid #d0d7ff;
box-shadow: 0 4px 10px rgba(15, 23, 42, 0.06);
} }
.search-filter-toggle input { .search-filter-toggle input {
width: 16px; width: 16px;
height: 16px; height: 16px;
accent-color: #2563eb;
} }
.tab-btn { .tab-btn {