Merge branch 'dev'
Merge branch 'dev' - v1.2.0 - CATEGORIES rozšířeny: fediverse, cestovani, priroda, jidlo - Limit featured_tags zvýšen na 6, zobrazení na 4 - Klikací hashtagy u kartiček – filtrování na stránce - Odkaz na about.mamutovo.cz v hero sekci start.html - Přidáni noví účty: mirek@rodina-sucha.cz, michal@vltava.cloud, sesivany@social.vivaldi.net, jimmac@mastodon.social, Oskar456@mastodon.social, jmlich@fosstodon.org, ronny@metalhead.club, vancura@mastodon.design
This commit is contained in:
@@ -384,6 +384,15 @@ select:focus { border-color: var(--accent); }
|
||||
border: 1px solid rgba(0,200,150,0.15);
|
||||
border-radius: 999px;
|
||||
padding: 0.15rem 0.5rem;
|
||||
cursor: pointer;
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
transition: background 0.15s, border-color 0.15s;
|
||||
}
|
||||
|
||||
.card-tag:hover {
|
||||
background: rgba(0,200,150,0.22);
|
||||
border-color: var(--accent);
|
||||
}
|
||||
|
||||
.card-stats {
|
||||
@@ -731,6 +740,28 @@ let viewMode = 'grid'; // 'grid' | 'list'
|
||||
// ────────────────────────────────
|
||||
// FILTER + SORT
|
||||
// ────────────────────────────────
|
||||
function filterByTag(tag) {
|
||||
const wrap = document.getElementById('filterTags');
|
||||
const existing = wrap.querySelector(`.ftag[data-tag="${CSS.escape(tag)}"]`);
|
||||
if (existing) {
|
||||
wrap.querySelectorAll('.ftag').forEach(b => b.classList.remove('active'));
|
||||
existing.classList.add('active');
|
||||
} else {
|
||||
const btn = document.createElement('button');
|
||||
btn.className = 'ftag active';
|
||||
btn.dataset.tag = tag;
|
||||
btn.textContent = '#' + tag;
|
||||
btn.addEventListener('click', () => {
|
||||
wrap.querySelectorAll('.ftag').forEach(b => b.classList.remove('active'));
|
||||
btn.classList.add('active');
|
||||
applyFilters();
|
||||
});
|
||||
wrap.querySelectorAll('.ftag').forEach(b => b.classList.remove('active'));
|
||||
wrap.appendChild(btn);
|
||||
}
|
||||
applyFilters();
|
||||
}
|
||||
|
||||
function applyFilters() {
|
||||
const q = document.getElementById('searchInput').value.toLowerCase().trim();
|
||||
const cat = document.getElementById('categoryFilter').value;
|
||||
@@ -793,7 +824,7 @@ function avatarFallback(name) {
|
||||
function cardHTML(a, idx) {
|
||||
const av = a.avatar || avatarFallback(a.name);
|
||||
const tags = (a.tags || []).slice(0, 4).map(t =>
|
||||
`<span class="card-tag">#${t}</span>`).join('');
|
||||
`<span class="card-tag" onclick="event.stopPropagation();filterByTag('${t.replace(/'/g, "\\'")}')">#${t}</span>`).join('');
|
||||
|
||||
if (viewMode === 'list') {
|
||||
return `
|
||||
|
||||
13
start.html
13
start.html
@@ -76,6 +76,16 @@
|
||||
|
||||
.tagline strong { color: var(--text); }
|
||||
|
||||
.about-link {
|
||||
color: var(--accent);
|
||||
text-decoration: none;
|
||||
font-size: 0.92rem;
|
||||
opacity: 0.75;
|
||||
transition: opacity 0.15s;
|
||||
}
|
||||
|
||||
.about-link:hover { opacity: 1; text-decoration: underline; }
|
||||
|
||||
/* --- CARDS GRID --- */
|
||||
.cards {
|
||||
display: grid;
|
||||
@@ -378,7 +388,8 @@
|
||||
<h1>🦣 Mamutovo za 3 minuty.</h1>
|
||||
<p class="tagline">
|
||||
Žádné algoritmy. Žádné reklamy. <strong>Patří komunitě.</strong><br>
|
||||
Tyhle 4 kroky ti zaplní feed a pomůžou udělat první post.
|
||||
Tyhle 4 kroky ti zaplní feed a pomůžou udělat první post.<br>
|
||||
<a href="https://about.mamutovo.cz" target="_blank" class="about-link">Co je Mamutovo.cz?</a>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user