Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions assets/css/main.scss
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,20 @@ footer {
&:hover { color: $azul-accent-color;
}}}

.abstract-toggle {
background: none;
border: none;
padding: 0;
margin: 0;
font: inherit;
cursor: pointer;
color: darken($azul-accent-color, 22%);

&:hover {
color: $azul-accent-color;
}
}

/*----------------------------------------------------------------------------*/

.highlight {
Expand Down
2 changes: 1 addition & 1 deletion content/_index.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
---
title: /
title: Home
---
10 changes: 5 additions & 5 deletions content/contact/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,26 +2,26 @@
title: Contact/Operations
---

### Opportunities
## Opportunities

We welcome applications from qualified candidates at all levels. To ensure that we get to know you, [we have created a form with a few simple questions](https://forms.gle/JLt7gtaPHywepNvD8). Please note that we are unable to respond to individual email inquiries about positions.

### Operations
## Operations

[Our lab manual](https://docs.google.com/document/d/15Mbt8XmpchBY0foGIMyLk0-I3OKYF1tK7XOmuWQhk3o/edit?usp=sharing) contains instructions for getting started in the lab, expectations for members, and other resources such as protocols. [The lab meeting schedule](https://ucla.box.com/s/fhtn0311b1qmw0l73qz3ccbaacq22cqj) can be edited in lab's shared Box folder.

<br />

### Contact
## Contact

#### Packages/Lab
### Packages/Lab

Meyer Lab<br />
410 Westwood Plaza Room #5031<br />
Box 159910<br />
Los Angeles, CA 90095-1599

#### Mail/Office
### Mail/Office

Aaron Meyer<br />
410 Westwood Plaza Room #4121G<br />
Expand Down
4 changes: 2 additions & 2 deletions content/publications/examples.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@ url: /publications/examples.html

These are some especially representative publications of the lab's focus.

### Computational
## Computational

These publications have a stronger focus on computational analyses and methods.

{{< publist keyword="computational-example" >}}

### Experimental
## Experimental

These publications are focused on experimental observations.

Expand Down
4 changes: 2 additions & 2 deletions content/research/industry.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@ title: Industry Consulting & Collaboration

Working with UCLA's Institute for Commercialization & Industry Collaboration, our lab offers specialized skills to external parties through a fee-for-service model with greater flexibility as compared to traditional grant mechanisms.

### Multivalent Binding Modeling for Optimizing Therapeutic Designs
## Multivalent Binding Modeling for Optimizing Therapeutic Designs

<img src="/research/binding.svg" width="90%" />

Our lab provides advanced multivalent binding modeling services to optimize the design of multi-specific immunotherapeutic agents. Using a flexible framework (detailed in [relevant publications](../binding/)), we accurately model complex agent-target cell interactions, quantitatively characterize receptor engagement dynamics, and predict therapeutic windows. We analyze key design parameters to understand their impact on therapeutic activity and potential toxicity. Our services range from data fitting and analysis of _in vitro_ assays to modeling immune cell interactions _in vivo_. We can deliver comprehensive reports on parameter contributions and provide custom software for analysis reproduction. Working closely with clients from startups to large pharmaceutical organizations, either via grants or work-for-hire, we provide actionable insights to accelerate drug development and improve candidate selection.

### Tensor Modeling and Big Data Exploration
## Tensor Modeling and Big Data Exploration

<img src="/research/RISE.svg" width="100%" />

Expand Down
2 changes: 1 addition & 1 deletion data/links.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
- url: /
title: /
title: Home

- url: /team
title: Team
Expand Down
2 changes: 1 addition & 1 deletion layouts/404.html
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<!doctype html>
<html>
<html lang="en-US">
<head>
{{ partial "head.html" . }}
</head>
Expand Down
12 changes: 5 additions & 7 deletions layouts/_default/baseof.html
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
{{ partial "icons.html" . }}

<div class="container azul">
<header class="top row gutters{{ if eq .Title "/" }} fadeInLeft animated{{ end }}">
<header class="top row gutters{{ if .IsHome }} fadeInLeft animated{{ end }}">
<div class="col span_2 center">
<div id="logo"></div>
</div>
Expand All @@ -27,13 +27,11 @@
</div>

<script>
function toggle(key) {
function toggle(key, buttonEl) {
var element = document.getElementById(key)
if (element.style.display == 'block') {
element.style.display = 'none'
} else {
element.style.display = 'block'
}
var expanded = element.style.display == 'block'
element.style.display = expanded ? 'none' : 'block'
buttonEl.setAttribute('aria-expanded', expanded ? 'false' : 'true')
}
</script>
</body>
Expand Down
2 changes: 1 addition & 1 deletion layouts/_default/list.html
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{{ define "main" }}
<article class="single row gutters">
<h2>{{ .Title }}</h2>
<h1>{{ .Title }}</h1>
<dl>
{{ range .Pages }}
<dt><a href="{{ .RelPermalink }}">{{ .Title }}</a></dt>
Expand Down
2 changes: 1 addition & 1 deletion layouts/_default/page.html
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{{ define "main" }}
<article class="single row gutters">
<h2>{{ .Title }}</h2>
<h1>{{ .Title }}</h1>

{{ .Content }}
</article>
Expand Down
1 change: 1 addition & 0 deletions layouts/_default/single.html
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
{{ define "main" }}
<article class="single row gutters">
<h1>{{ .Title }}</h1>
{{ .Content }}
</article>
{{ end }}
2 changes: 1 addition & 1 deletion layouts/_default/taxonomy.html
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{{ define "main" }}
<article class="single row gutters">
<h2>{{ .Title }}</h2>
<h1>{{ .Title }}</h1>
<ul>
{{ range .Pages }}
<li><a href="{{ .RelPermalink }}">{{ .Title }}</a></li>
Expand Down
4 changes: 2 additions & 2 deletions layouts/index.html
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{{ define "main" }}
<article class="single row gutters">
<h2>Meyer Lab at UCLA</h2>
<h1>Meyer Lab at UCLA</h1>

<p>
We integrate experimental and computational strategies to measure, model,
Expand All @@ -11,7 +11,7 @@ <h2>Meyer Lab at UCLA</h2>
<br />
<br />

<h3>News</h3>
<h2>News</h2>

{{ range first 13 (where .Site.RegularPages "Section" "news") }}

Expand Down
2 changes: 1 addition & 1 deletion layouts/partials/head.html
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<!-- meta information -->
<meta charset="utf-8">
{{ if eq .Title "/" -}}
{{ if .IsHome -}}
<meta name="description" content="{{ .Site.Params.description }}">
{{- else -}}
<meta name="description" content="{{ .Content | plainify | truncate 120 }}">
Expand Down
5 changes: 5 additions & 0 deletions layouts/partials/icons.html
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
<svg style="display: none">
<defs>
<symbol id="fa-mastadon" viewBox="0 0 448 512">
<title>Mastodon</title>
<path d="M433 179.11c0-97.2-63.71-125.7-63.71-125.7-62.52-28.7-228.56-28.4-290.48 0 0 0-63.72 28.5-63.72 125.7 0 115.7-6.6 259.4 105.63 289.1 40.51 10.7 75.32 13 103.33 11.4 50.81-2.8 79.32-18.1 79.32-18.1l-1.7-36.9s-36.31 11.4-77.12 10.1c-40.41-1.4-83-4.4-89.63-54a102.54 102.54 0 0 1-.9-13.9c85.63 20.9 158.65 9.1 178.75 6.7 56.12-6.7 105-41.3 111.23-72.9 9.8-49.8 9-121.5 9-121.5zm-75.12 125.2h-46.63v-114.2c0-49.7-64-51.6-64 6.9v62.5h-46.33V197c0-58.5-64-56.6-64-6.9v114.2H90.19c0-122.1-5.2-147.9 18.41-175 25.9-28.9 79.82-30.8 103.83 6.1l11.6 19.5 11.6-19.5c24.11-37.1 78.12-34.8 103.83-6.1 23.71 27.3 18.4 53 18.4 175z"></path>
</symbol>
<symbol id="fa-orcid" viewBox="0 0 512 512">
<title>ORCID</title>
<path d="M294.8 188.2h-45.9V342h47.5c67.6 0 83.1-51.3 83.1-76.9 0-41.6-26.5-76.9-84.7-76.9zM256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm-80.8 360.8h-29.8v-207.5h29.8zm-14.9-231.1a19.6 19.6 0 1 1 19.6-19.6 19.6 19.6 0 0 1 -19.6 19.6zM300 369h-81V161.3h80.6c76.7 0 110.4 54.8 110.4 103.9C410 318.4 368.4 369 300 369z"/>
</symbol>
<symbol id="fa-envelope" viewBox="0 0 512 512">
Expand All @@ -15,12 +17,15 @@
<path d="M448 80v352c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V80c0-26.51 21.49-48 48-48h352c26.51 0 48 21.49 48 48zm-88 16H248.029c-21.313 0-32.08 25.861-16.971 40.971l31.984 31.987L67.515 364.485c-4.686 4.686-4.686 12.284 0 16.971l31.029 31.029c4.687 4.686 12.285 4.686 16.971 0l195.526-195.526 31.988 31.991C358.058 263.977 384 253.425 384 231.979V120c0-13.255-10.745-24-24-24z"></path>
</symbol>
<symbol id="fa-twitter" viewBox="0 0 512 512">
<title>Twitter</title>
<path d="M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"></path>
</symbol>
<symbol id="fa-github" viewBox="0 0 448 512">
<title>GitHub</title>
<path d="M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM277.3 415.7c-8.4 1.5-11.5-3.7-11.5-8 0-5.4.2-33 .2-55.3 0-15.6-5.2-25.5-11.3-30.7 37-4.1 76-9.2 76-73.1 0-18.2-6.5-27.3-17.1-39 1.7-4.3 7.4-22-1.7-45-13.9-4.3-45.7 17.9-45.7 17.9-13.2-3.7-27.5-5.6-41.6-5.6-14.1 0-28.4 1.9-41.6 5.6 0 0-31.8-22.2-45.7-17.9-9.1 22.9-3.5 40.6-1.7 45-10.6 11.7-15.6 20.8-15.6 39 0 63.6 37.3 69 74.3 73.1-4.8 4.3-9.1 11.7-10.6 22.3-9.5 4.3-33.8 11.7-48.3-13.9-9.1-15.8-25.5-17.1-25.5-17.1-16.2-.2-1.1 10.2-1.1 10.2 10.8 5 18.4 24.2 18.4 24.2 9.7 29.7 56.1 19.7 56.1 19.7 0 13.9.2 36.5.2 40.6 0 4.3-3 9.5-11.5 8-66-22.1-112.2-84.9-112.2-158.3 0-91.8 70.2-161.5 162-161.5S388 165.6 388 257.4c.1 73.4-44.7 136.3-110.7 158.3zm-98.1-61.1c-1.9.4-3.7-.4-3.9-1.7-.2-1.5 1.1-2.8 3-3.2 1.9-.2 3.7.6 3.9 1.9.3 1.3-1 2.6-3 3zm-9.5-.9c0 1.3-1.5 2.4-3.5 2.4-2.2.2-3.7-.9-3.7-2.4 0-1.3 1.5-2.4 3.5-2.4 1.9-.2 3.7.9 3.7 2.4zm-13.7-1.1c-.4 1.3-2.4 1.9-4.1 1.3-1.9-.4-3.2-1.9-2.8-3.2.4-1.3 2.4-1.9 4.1-1.5 2 .6 3.3 2.1 2.8 3.4zm-12.3-5.4c-.9 1.1-2.8.9-4.3-.6-1.5-1.3-1.9-3.2-.9-4.1.9-1.1 2.8-.9 4.3.6 1.3 1.3 1.8 3.3.9 4.1zm-9.1-9.1c-.9.6-2.6 0-3.7-1.5s-1.1-3.2 0-3.9c1.1-.9 2.8-.2 3.7 1.3 1.1 1.5 1.1 3.3 0 4.1zm-6.5-9.7c-.9.9-2.4.4-3.5-.6-1.1-1.3-1.3-2.8-.4-3.5.9-.9 2.4-.4 3.5.6 1.1 1.3 1.3 2.8.4 3.5zm-6.7-7.4c-.4.9-1.7 1.1-2.8.4-1.3-.6-1.9-1.7-1.5-2.6.4-.6 1.5-.9 2.8-.4 1.3.7 1.9 1.8 1.5 2.6z"></path>
</symbol>
<symbol id="fa-home" viewBox="0 0 576 512">
<title>Home</title>
<path d="M488 312.7V456c0 13.3-10.7 24-24 24H348c-6.6 0-12-5.4-12-12V356c0-6.6-5.4-12-12-12h-72c-6.6 0-12 5.4-12 12v112c0 6.6-5.4 12-12 12H112c-13.3 0-24-10.7-24-24V312.7c0-3.6 1.6-7 4.4-9.3l188-154.8c4.4-3.6 10.8-3.6 15.3 0l188 154.8c2.7 2.3 4.3 5.7 4.3 9.3zm83.6-60.9L488 182.9V44.4c0-6.6-5.4-12-12-12h-56c-6.6 0-12 5.4-12 12V117l-89.5-73.7c-17.7-14.6-43.3-14.6-61 0L4.4 251.8c-5.1 4.2-5.8 11.8-1.6 16.9l25.5 31c4.2 5.1 11.8 5.8 16.9 1.6l235.2-193.7c4.4-3.6 10.8-3.6 15.3 0l235.2 193.7c5.1 4.2 12.7 3.5 16.9-1.6l25.5-31c4.2-5.2 3.4-12.7-1.7-16.9z"></path>
</symbol>
<symbol id="scif-doi" viewBox="0 0 512 512">
Expand Down
5 changes: 3 additions & 2 deletions layouts/partials/navigation.html
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
<nav class="col span_10 top-navbar">
<nav class="col span_10 top-navbar" aria-label="Main">
{{ range hugo.Data.links }}
{{ $isCurrent := eq (strings.TrimSuffix "/" $.RelPermalink) (strings.TrimSuffix "/" .url) }}
<a href="{{ .url }}" title="{{ .title }}"
{{ if eq $.Title .title }}class="current-page"{{ end }}>{{ .title }}</a>
{{ if $isCurrent }}class="current-page" aria-current="page"{{ end }}>{{ .title }}</a>
{{ end }}
</nav>
2 changes: 1 addition & 1 deletion layouts/partials/pubentry.html
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
{{ if $ref.pmid }}<a title="pubmed" href="https://pubmed.ncbi.nlm.nih.gov/{{ $ref.pmid }}/"><svg class="svg-icon"><use href="#scif-pubmed"></use></svg></a>
{{ else if $ref.pmcid }}<a title="pubmed" href="https://www.ncbi.nlm.nih.gov/pmc/articles/{{ $ref.pmcid }}/"><svg class="svg-icon"><use href="#scif-pubmed"></use></svg></a>{{ end }}
{{ if $ref.doi }}<a title="doi" href="https://doi.org/{{ $ref.doi }}"><svg class="svg-icon"><use href="#scif-doi"></use></svg></a>{{ end }}
{{ if $ref.abstract }}<a href="#" onclick="toggle('{{ $ref.id }}_abstract'); return false;">[Abstract]</a>{{ end }}
{{ if $ref.abstract }}<button type="button" class="abstract-toggle" aria-expanded="false" aria-controls="{{ $ref.id }}_abstract" onclick="toggle('{{ $ref.id }}_abstract', this)">[Abstract]</button>{{ end }}
</span>

{{ if $ref.abstract }}<p class="abstract" id="{{ $ref.id }}_abstract" style="display:none"><b>Abstract:</b> {{ $ref.abstract }}</p>{{ end }}
Expand Down
4 changes: 2 additions & 2 deletions layouts/publications/single.html
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{{ define "main" }}
<article class="single row gutters">
<h2>{{ .Title }}</h2>
<h1>{{ .Title }}</h1>

{{ $refs := sort hugo.Data.pubs.references "issued" "desc" }}

Expand All @@ -16,7 +16,7 @@ <h2>{{ .Title }}</h2>

{{ range $years }}
{{ $year := . }}
<h3>{{ $year }}</h3>
<h2>{{ $year }}</h2>
<dl>
{{ range $refs }}
{{ $refYear := index (split (printf "%v" .issued) "-") 0 }}
Expand Down
2 changes: 1 addition & 1 deletion layouts/research/list.html
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{{ define "main" }}
<article class="single row gutters">
<h2>{{ .Title }}</h2>
<h1>{{ .Title }}</h1>

{{ .Content }}
</article>
Expand Down
2 changes: 1 addition & 1 deletion layouts/tag/term.html
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ <h1 class="category">Archive of items with tag '{{ .Title }}'</h1>

{{ range .Pages }}
<article class="single row gutters">
<h3><a href="{{ .RelPermalink }}" title="{{ .Title }}" class="col span_10">{{ .Title }}</a></h3>
<h2><a href="{{ .RelPermalink }}" title="{{ .Title }}" class="col span_10">{{ .Title }}</a></h2>
<div class="post-date col span_2">
<time datetime="{{ .Date.Format "2006-01-02" }}">{{ .Date.Format "January 2, 2006" }}</time>
</div>
Expand Down
35 changes: 21 additions & 14 deletions layouts/team/single.html
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
{{ define "main" }}
<article class="single row gutters">
<h2>{{ .Title }}</h2>
<h1>{{ .Title }}</h1>

<img src="/public/photos/group2023.webp" width="100%" alt="Group photo from Marc's defense celebration." class="center" />

<div class="span_3 right"><img src="/public/photos/ameyer.webp" width="150px" alt="Aaron's photo" /></div>

<h3>Aaron Meyer, Principal Investigator&nbsp;&nbsp;&nbsp;<a href="https://ameyer.me"><svg class="svg-icon"><use href="#fa-home"></use></svg></a> <a href="https://github.com/aarmey"><svg class="svg-icon"><use href="#fa-github"></use></svg></a> <a href="https://mstdn.science/@aarmey"><svg class="svg-icon"><use href="#fa-mastadon"></use></svg></a> <a href="https://orcid.org/0000-0003-4513-1840"><svg class="svg-icon"><use href="#fa-orcid"></use></svg></a> <a href="mailto:ameyer@ucla.edu"><svg class="svg-icon"><use href="#fa-envelope"></use></svg></a></h3>
<h2>Aaron Meyer, Principal Investigator&nbsp;&nbsp;&nbsp;<a href="https://ameyer.me"><svg class="svg-icon"><use href="#fa-home"></use></svg></a> <a href="https://github.com/aarmey"><svg class="svg-icon"><use href="#fa-github"></use></svg></a> <a href="https://mstdn.science/@aarmey"><svg class="svg-icon"><use href="#fa-mastadon"></use></svg></a> <a href="https://orcid.org/0000-0003-4513-1840"><svg class="svg-icon"><use href="#fa-orcid"></use></svg></a> <a href="mailto:ameyer@ucla.edu"><svg class="svg-icon"><use href="#fa-envelope"></use></svg></a></h2>
<p>Ph. D., Biological Engineering, MIT<br>
B.S., Bioengineering, University of California, Los Angeles</p>

Expand All @@ -17,7 +17,7 @@ <h3>Aaron Meyer, Principal Investigator&nbsp;&nbsp;&nbsp;<a href="https://ameyer
{{ range hugo.Data.team }}
{{ if .current }}
<div class="span_3 right"><img src="/public/photos/{{ .photo }}" alt="{{ .name }}'s photo" /></div>
<h3>{{ .name }}, {{ .position }}&nbsp;&nbsp;&nbsp;{{ if .homepage }}<a href="{{ .homepage }}"><svg class="svg-icon"><use href="#fa-home"></use></svg></a>{{ end }}{{ if .orcid }} <a href="https://orcid.org/{{ .orcid }}"><svg class="svg-icon"><use href="#fa-orcid"></use></svg></a>{{ end }}{{ if .github }} <a href="https://github.com/{{ .github }}"><svg class="svg-icon"><use href="#fa-github"></use></svg></a>{{ end }}</h3>
<h2>{{ .name }}, {{ .position }}&nbsp;&nbsp;&nbsp;{{ if .homepage }}<a href="{{ .homepage }}"><svg class="svg-icon"><use href="#fa-home"></use></svg></a>{{ end }}{{ if .orcid }} <a href="https://orcid.org/{{ .orcid }}"><svg class="svg-icon"><use href="#fa-orcid"></use></svg></a>{{ end }}{{ if .github }} <a href="https://github.com/{{ .github }}"><svg class="svg-icon"><use href="#fa-github"></use></svg></a>{{ end }}</h2>
{{ if .degrees }}
{{ range .degrees }}
<p>{{ . }}</p>
Expand All @@ -32,41 +32,48 @@ <h3>{{ .name }}, {{ .position }}&nbsp;&nbsp;&nbsp;{{ if .homepage }}<a href="{{
{{ end }}
{{ end }}

<h1>Former Members</h1>
<h2>Former Members</h2>

<div id="alumni-filter-buttons">
<button class="filter-btn" onclick="filterAlumni('Undergraduate Researcher', this)">Undergraduate Students</button>
<button class="filter-btn" onclick="filterAlumni(['Amgen Scholar', 'Bruins in Genomics Summer Research Program', 'NCI CSBC Summer Scholar', 'UCLA Transfer Student Summer Research Program'], this)">Summer Scholars</button>
<button class="filter-btn" onclick="filterAlumni(['Ph.D. Student', 'M.S. Student'], this)">Graduate Students</button>
<button class="filter-btn" onclick="filterAlumni(['Postdoctoral Associate', 'Postdoctoral Fellow'], this)">Postdoctoral Associates</button>
<button class="filter-btn" onclick="filterAlumni(['Development Engineer', 'Technical Assistant'], this)">Staff</button>
<div id="alumni-filter-buttons" role="group" aria-label="Filter former members by role">
<button class="filter-btn" aria-pressed="false" onclick="filterAlumni('Undergraduate Researcher', this)">Undergraduate Students</button>
<button class="filter-btn" aria-pressed="false" onclick="filterAlumni(['Amgen Scholar', 'Bruins in Genomics Summer Research Program', 'NCI CSBC Summer Scholar', 'UCLA Transfer Student Summer Research Program'], this)">Summer Scholars</button>
<button class="filter-btn" aria-pressed="false" onclick="filterAlumni(['Ph.D. Student', 'M.S. Student'], this)">Graduate Students</button>
<button class="filter-btn" aria-pressed="false" onclick="filterAlumni(['Postdoctoral Associate', 'Postdoctoral Fellow'], this)">Postdoctoral Associates</button>
<button class="filter-btn" aria-pressed="false" onclick="filterAlumni(['Development Engineer', 'Technical Assistant'], this)">Staff</button>
</div>

<div id="alumni-list">
{{ $sortedPeople := sort hugo.Data.team "joined" "desc" }}
{{ range $sortedPeople }}
{{ if not .current }}
<div class="alumni-member" data-position="{{ .position }}" style="display: none;">
<h4>{{ .name }}, {{ .position }}{{ if .postposition }} (currently {{ .postposition }}){{ end }}</h4>
<div class="alumni-member" data-position="{{ .position }}">
<h3>{{ .name }}, {{ .position }}{{ if .postposition }} (currently {{ .postposition }}){{ end }}</h3>
</div>
{{ end }}
{{ end }}
</div>

<script>
function filterAlumni(positions, buttonEl) {
const alreadyActive = buttonEl.classList.contains('active');

document.querySelectorAll('#alumni-filter-buttons .filter-btn').forEach(button => {
button.classList.remove('active');
button.setAttribute('aria-pressed', 'false');
});
buttonEl.classList.add('active');

const positionsToShow = Array.isArray(positions) ? positions : [positions];

document.querySelectorAll('#alumni-list .alumni-member').forEach(member => {
const memberPosition = member.dataset.position;
const shouldShow = positionsToShow.includes(memberPosition);
const shouldShow = alreadyActive || positionsToShow.includes(memberPosition);
member.style.display = shouldShow ? 'block' : 'none';
});

if (!alreadyActive) {
buttonEl.classList.add('active');
buttonEl.setAttribute('aria-pressed', 'true');
}
}
</script>

Expand Down
Loading