Weiter am Chastity Game gebastelt

This commit is contained in:
2026-03-17 23:01:14 +01:00
parent aafc203407
commit d22b87a79b
234 changed files with 3465 additions and 12528 deletions

View File

@@ -6,7 +6,6 @@
label: 'Vanilla Game',
icon: '♡',
items: [
{ href: '/infovanilla.html', icon: '', label: 'Info' },
{ href: '/sessionvanilla.html', icon: '▷', label: 'Neue Session' },
]
},
@@ -14,7 +13,6 @@
label: 'BDSM Game',
icon: '◆',
items: [
{ href: '/infobdsm.html', icon: '', label: 'Info' },
{ href: '/sessionbdsm.html', icon: '▷', label: 'Neue Session', id: 'navBdsmNeu' },
{ href: '/sessionbdsmingame.html', icon: '▶', label: 'Im Spiel', id: 'navBdsmImSpiel' },
{ href: '/aufgaben.html', icon: '✓', label: 'Aufgaben' },
@@ -26,13 +24,12 @@
label: 'Chastity Game',
icon: '⊗',
items: [
{ href: '/infochastity.html', icon: '', label: 'Info' },
{ href: '/neulock.html', icon: '', label: 'Neues Lock', id: 'navChastityNeu' },
{ href: '#', icon: '▶', label: 'Aktives Lock', id: 'navChastityAktiv' },
{ href: '/neulock.html', icon: '🆕', label: 'Neues Lock', id: 'navChastityNeu' },
{ href: '#', icon: '▶️', label: 'Aktives Lock', id: 'navChastityAktiv' },
{ href: '/communityvotes.html', icon: '🗳️', label: 'Community Votes' },
{ href: '/meine-locks.html', icon: '🔒', label: 'Meine Locks' },
{ href: '/keyholder.html', icon: '🔑', label: 'Keyholder' },
{ href: '/unlock-history.html', icon: '🗝️', label: 'Code-Historie' },
{ href: '/unlock-history.html', icon: '🔙', label: 'Code-Historie' },
]
},
];
@@ -66,16 +63,12 @@
<span class="burger-icon"><span></span><span></span><span></span></span>
</button>
<aside class="sidebar" id="sidebar">
<div class="sidebar-icon-area">
<a href="/userhome.html"><img src="/icon.png" alt="Home"></a>
<div class="sidebar-logo-area">
<a href="/userhome.html"><img src="/img/logo.png" alt="Logo"></a>
</div>
<ul>
${homeItem}
${nav}
<li><hr style="border:none; border-top:1px solid var(--color-secondary); margin:0.4rem 1rem;"></li>
<li>
<a href="/login/logout"><span class="icon">⏏</span> Abmelden</a>
</li>
</ul>
</aside>
`);
@@ -155,7 +148,7 @@
sidebar.classList.contains('open') ? closeMenu() : openMenu()
);
overlay.addEventListener('click', closeMenu);
sidebar.querySelectorAll('a:not([href="/login/logout"]):not(.sidebar-group-toggle)').forEach(l =>
sidebar.querySelectorAll('a:not(.sidebar-group-toggle)').forEach(l =>
l.addEventListener('click', () => { if (window.innerWidth <= (parseInt(getComputedStyle(document.documentElement).getPropertyValue('--breakpoint-mobile').trim()) || 768)) closeMenu(); })
);

View File

@@ -6,12 +6,12 @@
const links = [
{ href: '/feed.html', icon: '📰', label: 'Feed', badgeId: null, mobileBadgeId: null },
{ href: '/personen-suchen.html', icon: '', label: 'Personen suchen', badgeId: null, mobileBadgeId: null },
{ href: '/freunde.html', icon: '', label: 'Freunde', badgeId: 'socialFriendsBadge', mobileBadgeId: 'socialMobileFriendsBadge' },
{ href: '/nachrichten.html', icon: '', label: 'Nachrichten', badgeId: 'socialMsgBadge', mobileBadgeId: 'socialMobileMsgBadge' },
{ href: '/personen-suchen.html', icon: '🔍', label: 'Personen suchen', badgeId: null, mobileBadgeId: null },
{ href: '/freunde.html', icon: '❤️', label: 'Freunde', badgeId: 'socialFriendsBadge', mobileBadgeId: 'socialMobileFriendsBadge' },
{ href: '/nachrichten.html', icon: '📩', label: 'Nachrichten', badgeId: 'socialMsgBadge', mobileBadgeId: 'socialMobileMsgBadge' },
{ href: '/benachrichtigungen.html', icon: '🔔', label: 'Benachrichtigungen', badgeId: 'socialNotifBadge', mobileBadgeId: 'socialMobileNotifBadge' },
{ href: '/gruppen.html', icon: '👥', label: 'Gruppen', badgeId: 'socialGruppenBadge', mobileBadgeId: 'socialMobileGruppenBadge' },
{ href: '/einladungen.html', icon: '', label: 'Einladungen', badgeId: 'socialInvBadge', mobileBadgeId: 'socialMobileInvBadge' },
{ href: '/einladungen.html', icon: '', label: 'Einladungen', badgeId: 'socialInvBadge', mobileBadgeId: 'socialMobileInvBadge' },
];
const profileActive = (path === '/benutzer.html' || path === '/profile.html') ? ' class="active"' : '';
@@ -26,6 +26,9 @@
const aside = document.createElement('aside');
aside.className = 'social-sidebar';
aside.innerHTML = `
<div class="social-sidebar-logo-area">
<a href="/feed.html"><img src="/img/logo_community.png" alt="Logo"></a>
</div>
<ul>
<li id="socialProfileItem">
<a href="/benutzer.html"${profileActive}>
@@ -35,6 +38,8 @@
</li>
<li><hr style="border:none;border-top:1px solid var(--color-secondary);margin:0.4rem 1rem;"></li>
${desktopItems}
<li style="margin-top:auto;"><hr style="border:none;border-top:1px solid var(--color-secondary);margin:0.4rem 1rem;"></li>
<li><a href="/login/logout"><span class="icon">⏏</span> Abmelden</a></li>
</ul>`;
const appWrapper = document.querySelector('.app-wrapper');