www.trr379.de/layouts/publications/list.html

98 lines
4.2 KiB
HTML

{{ define "main" }}
<style>body { height: auto !important; min-height: 100vh !important; }</style>
<link rel="stylesheet" href="/css/projects.css">
<link rel="stylesheet" href="/css/contributors.css">
<link rel="stylesheet" href="/css/publications.css">
<div class="publications-page">
<h1 class="projects-title">Publications</h1>
<p class="projects-subtitle">Neuropsychobiology of Aggression</p>
<div class="area-bar" style="margin-bottom:2rem">
<div class="area-bar-a" style="flex:8"></div>
<div class="area-bar-b" style="flex:5"></div>
<div class="area-bar-c" style="flex:7"></div>
<div class="area-bar-q" style="flex:3"></div>
</div>
{{/* ── Intro + figure ── */}}
<div class="projects-intro-row" style="margin-bottom:2rem">
<div class="projects-intro-text">
{{ .Content }}
<div class="area-buttons">
<a href="/topics/research-area-a/" class="area-btn area-btn-a">Area A: Negative valence system (NVS)<span></span></a>
<a href="/topics/research-area-b/" class="area-btn area-btn-b">Area B: Cognitive system (CS)<span></span></a>
<a href="/topics/research-area-c/" class="area-btn area-btn-c">Area C: Interaction of NVS and CS<span></span></a>
</div>
</div>
<div class="projects-intro-figure">
<img src="/publications.png" alt="">
</div>
</div>
{{/* ── Area filter ── */}}
<div class="role-filters" style="margin-bottom:2rem">
<button class="role-btn active" data-filter="all">All</button>
<button class="role-btn" data-filter="research-area-a">Area A: NVS</button>
<button class="role-btn" data-filter="research-area-b">Area B: CS</button>
<button class="role-btn" data-filter="research-area-c">Area C: Interaction</button>
</div>
{{/* ── Year groups ── */}}
{{ range .Pages.GroupByDate "2006" }}
<div class="pub-year-group">
<h3 class="pub-year">{{ .Key }}</h3>
<div class="pub-grid">
{{ range .Pages }}
{{ $topics := delimit (.Params.topics | default slice) " " }}
{{ $url := .Params.external_url }}
<article class="pub-card" data-topics="{{ $topics }}">
<div class="pub-card-inner">
<div class="pub-meta-top">
<span class="pub-date">{{ .Date.Format "Jan 2006" }}</span>
{{ range .GetTerms "topics" }}
{{ if or (eq .Slug "research-area-a") (eq .Slug "research-area-b") (eq .Slug "research-area-c") }}
<span class="pub-area-dot pub-area-{{ substr .Slug -1 }}"></span>
{{ end }}
{{ end }}
</div>
<p class="pub-title-text">
<a href="{{ .Permalink }}" class="pub-card-link">{{ .Title }}</a>
</p>
<div class="pub-contributors">
{{ range .GetTerms "contributors" }}
<a class="project-tag" href="{{ .Permalink }}">{{ .Title }}</a>
{{ end }}
</div>
{{ with $url }}
<a class="pub-doi" href="{{ . }}" target="_blank" rel="noopener">→ DOI</a>
{{ end }}
</div>
</article>
{{ end }}
</div>
</div>
{{ end }}
</div>
<script>
document.querySelectorAll('.role-btn').forEach(btn => {
btn.addEventListener('click', () => {
document.querySelectorAll('.role-btn').forEach(b => b.classList.remove('active'));
btn.classList.add('active');
const filter = btn.dataset.filter;
document.querySelectorAll('.pub-card').forEach(card => {
card.style.display = (filter === 'all' || card.dataset.topics.includes(filter)) ? '' : 'none';
});
document.querySelectorAll('.pub-year-group').forEach(group => {
const visible = [...group.querySelectorAll('.pub-card')].some(c => c.style.display !== 'none');
group.style.display = visible ? '' : 'none';
});
});
});
</script>
{{ end }}