Files
web/themes/minimal-black/layouts/_default/about-alternative.html
2026-03-23 18:35:59 +01:00

157 lines
5.6 KiB
HTML

{{ define "main" }}
<section class="layout-page">
<article class="about-alt-page">
<div class="about-alt-layout">
<!-- Left Sidebar - Profile Card -->
<aside class="about-alt-sidebar">
<div class="about-alt-profile-card">
{{ with .Site.Params.hero.avatar }}
<div class="about-alt-avatar">
<img src="{{ . | relURL }}" alt="{{ $.Site.Params.brand }}" />
</div>
{{ else }}
<div class="about-alt-avatar-placeholder">
<i class="fas fa-code"></i>
</div>
{{ end }}
<h1 class="about-alt-name">{{ $.Site.Params.brand }}</h1>
{{ with .Params.subtitle }}
<p class="about-alt-role">{{ . }}</p>
{{ end }}
{{ with .Site.Params.hero.location }}
<div class="about-alt-meta">
<i class="fas fa-map-marker-alt"></i>
<span>{{ . }}</span>
</div>
{{ end }}
<!-- Quick Stats -->
{{ with $.Site.Params.about.alt.stats }}
<div class="about-alt-stats">
{{ range . }}
<div class="about-alt-stat">
<div class="about-alt-stat-value">{{ .value }}</div>
<div class="about-alt-stat-label">{{ .label }}</div>
</div>
{{ end }}
</div>
{{ end }}
<!-- Social Links -->
{{ with .Site.Params.social }}
<div class="about-alt-social">
{{ range . }}
<a
href="{{ .url }}"
class="about-alt-social-icon"
target="_blank"
rel="noopener noreferrer"
aria-label="{{ .label }}"
>
<i class="{{ .icon }}"></i>
</a>
{{ end }}
</div>
{{ end }}
</div>
</aside>
<!-- Right Content Area -->
<div class="about-alt-content">
<!-- Introduction -->
<div class="about-alt-section">
<div class="markdown-body">
{{ $content := .Content }}
{{ $content = replace $content "<hr>" "|||SPLIT|||" }}
{{ $content = replace $content "<hr />" "|||SPLIT|||" }}
{{ $content = replace $content "<hr/>" "|||SPLIT|||" }}
{{ $parts := split $content "|||SPLIT|||" }}
{{ index $parts 0 | safeHTML }}
</div>
</div>
<!-- Experience Cards -->
{{ if gt (len $parts) 1 }}
{{- $experienceParts := slice -}}
{{- $additionalContent := "" -}}
{{- $foundNonExperience := false -}}
{{- range $index, $part := after 1 $parts -}}
{{- $trimmed := trim $part " \n\t" -}}
{{- if $trimmed -}}
{{- /* Check if this looks like an experience card (starts with <p><strong>) or is additional content (starts with <h) */ -}}
{{- if or (hasPrefix $trimmed "<p><strong>") (hasPrefix $trimmed "<p><strong ") (hasPrefix $trimmed "<p>\n<strong") (hasPrefix $trimmed "<p> <strong") -}}
{{- if not $foundNonExperience -}}
{{- $experienceParts = $experienceParts | append $part -}}
{{- else -}}
{{- $additionalContent = printf "%s|||SPLIT|||%s" $additionalContent $part -}}
{{- end -}}
{{- else -}}
{{- $foundNonExperience = true -}}
{{- $additionalContent = printf "%s|||SPLIT|||%s" $additionalContent $part -}}
{{- end -}}
{{- end -}}
{{- end -}}
{{- if gt (len $experienceParts) 0 -}}
<div class="about-alt-section">
<h2 class="about-alt-section-title">
<i class="fas fa-briefcase"></i>
<span>Experience</span>
</h2>
<div class="about-alt-experience-grid">
{{- range $experienceParts -}}
<div class="about-alt-experience-card">
{{ . | safeHTML }}
</div>
{{- end -}}
</div>
</div>
{{- end -}}
{{- /* Render additional content sections */ -}}
{{- if $additionalContent -}}
{{- $additionalParts := split $additionalContent "|||SPLIT|||" -}}
{{- range $additionalParts -}}
{{- $trimmed := trim . " \n\t" -}}
{{- if $trimmed -}}
<div class="about-alt-section">
<div class="markdown-body">
{{ . | safeHTML }}
</div>
</div>
{{- end -}}
{{- end -}}
{{- end -}}
{{ end }}
<!-- Skills Badge Cloud -->
{{ with $.Site.Params.about.alt.skills }}
<div class="about-alt-section">
<h2 class="about-alt-section-title">
<i class="fas fa-code"></i>
<span>Tech Stack</span>
</h2>
<div class="about-alt-skills">
{{ range . }}
<span class="about-alt-skill">
{{ with .icon }}<i class="{{ . }}"></i>{{ end }}
{{ .label }}
</span>
{{ end }}
</div>
</div>
{{ end }}
</div>
</div>
</article>
</section>
{{ end }}