141 lines
5.3 KiB
HTML
141 lines
5.3 KiB
HTML
|
{{- partial "jumbotron.html" . }}
|
||
|
|
||
|
{{ if and (and (isset .Site.Params "show_next_upcoming") (eq .Site.Params.show_next_upcoming "true")) (ge (len (where ( where site.RegularPages "Type" "in" site.Params.mainSections) ".Params.upcoming" "==" true )) 1) }}
|
||
|
<div class="row up_next_container">
|
||
|
<div class="col-md-12">
|
||
|
{{ range first 1 (where ( where site.RegularPages "Type" "in" site.Params.mainSections).ByDate ".Params.upcoming" "==" true ) }}
|
||
|
Next Episode: <a href="{{ .Permalink }}">{{ .Title }}</a> - Scheduled for {{ dateFormat "Jan 2, 2006" .Date }}
|
||
|
{{ end }}
|
||
|
</div>
|
||
|
</div>
|
||
|
{{ end }}
|
||
|
|
||
|
<section class="episode-list">
|
||
|
|
||
|
<div class = "col episode-list-header">
|
||
|
<h2 class = "episode-list-header">All Episodes</h2>
|
||
|
</div>
|
||
|
|
||
|
<div class = "row">
|
||
|
|
||
|
{{ $paginator := .Paginate (where ( where site.RegularPages "Type" "in" site.Params.mainSections) ".Params.upcoming" "!=" true ) }}
|
||
|
|
||
|
{{ range $paginator.Pages }}
|
||
|
{{ $.Scratch.Set "episode" .File.BaseFileName }}
|
||
|
<div class="col-md-4 grid_episode_col">
|
||
|
<div class="episode-image-homepage">
|
||
|
<a href="{{ .Permalink }}">
|
||
|
<img src="{{ .Params.episode_image | absURL }}" class="img-fluid" alt="{{ .Title }}" />
|
||
|
|
||
|
|
||
|
|
||
|
</a>
|
||
|
</div>
|
||
|
<div class="grid_episode_detail">
|
||
|
{{ if and (isset .Site.Params "episode_number_style") (.Params.episode) }}
|
||
|
{{ if eq .Site.Params.episode_number_style "parens" }}
|
||
|
<h3><a href="{{ .Permalink }}" class= "grid_episode_title">{{ .Title }}</a> ({{ with .Site.Params.episode_number_prefix }}{{ . }}{{ end }}{{ .Params.episode }})</h3>
|
||
|
{{ else if eq .Site.Params.episode_number_style "brackets" }}
|
||
|
<h3><a href="{{ .Permalink }}" class= "grid_episode_title">{{ .Title }}</a> [{{ with .Site.Params.episode_number_prefix }}{{ . }}{{ end }}{{ .Params.episode }}]</h3>
|
||
|
{{ else if eq .Site.Params.episode_number_style "dash" }}
|
||
|
<h3><a href="{{ .Permalink }}" class= "grid_episode_title">{{ .Title }}</a> - {{ with .Site.Params.episode_number_prefix }}{{ . }}{{ end }}{{ .Params.episode }}</h3>
|
||
|
{{ else }}
|
||
|
<h3><a href="{{ .Permalink }}" class= "grid_episode_title">{{ .Title }}</a> ({{ with .Site.Params.episode_number_prefix }}{{ . }}{{ end }}{{ .Params.episode }})</h3>
|
||
|
{{ end }}
|
||
|
{{ else }}
|
||
|
<h3><a href="{{ .Permalink }}" class= "grid_episode_title">{{ .Title }}</a></h3>
|
||
|
{{ end }}
|
||
|
<small class = "grid_episode_title">Posted on {{ dateFormat "Monday, Jan 2, 2006" .Date }} {{ partial "episode-metadata.html" .}}</small>
|
||
|
</div>
|
||
|
|
||
|
</div>
|
||
|
{{ end }}
|
||
|
|
||
|
|
||
|
</div>
|
||
|
|
||
|
</section>
|
||
|
{{ if gt $paginator.TotalPages 1 }}
|
||
|
<div class = "row">
|
||
|
<div class = "col">
|
||
|
|
||
|
|
||
|
<nav class="pagination justify-content-center">
|
||
|
|
||
|
{{ $pag := $.Paginator }}
|
||
|
{{ $window := $.Site.Params.paginateWindow | default 1 }}
|
||
|
{{ if gt $pag.TotalPages 1 }}
|
||
|
{{ $total := $pag.TotalPages }}
|
||
|
{{ $size := add 5 (add $window $window) }}
|
||
|
{{ $cur := $pag.PageNumber }}
|
||
|
{{ if gt $total $size }}
|
||
|
{{ if lt $cur (sub $size (add $window 1)) }}
|
||
|
{{ $.Scratch.Set "show" (seq 1 (sub $size 2)) }}
|
||
|
{{ else if lt (sub $total $cur) (sub $size (add $window 2)) }}
|
||
|
{{ $.Scratch.Set "show" (seq (add (sub $total $size) 3) $total) }}
|
||
|
{{ else }}
|
||
|
{{ $.Scratch.Set "show" (seq (sub $cur $window) (add $cur $window)) }}
|
||
|
{{ end }}
|
||
|
{{ $.Scratch.Add "show" 1 }}
|
||
|
{{ $.Scratch.Add "show" $total }}
|
||
|
{{ else }}
|
||
|
{{ $.Scratch.Set "show" (seq 1 $total) }}
|
||
|
{{ end }}
|
||
|
|
||
|
<ul class="pagination pagination-lg">
|
||
|
<!-- first page button -->
|
||
|
{{if $paginator.HasPrev }}
|
||
|
{{ if gt $paginator.PageNumber 2 }}
|
||
|
{{- with $paginator.First -}}
|
||
|
{{- $url := trim (string .URL) "/" | absURL -}}
|
||
|
<li class="page-item">
|
||
|
<a href="{{ $url }}" aria-label="First" class="page-link"><span aria-hidden="true">««</span></a>
|
||
|
</li>
|
||
|
{{- end -}}
|
||
|
{{ end }}
|
||
|
{{ end }}
|
||
|
|
||
|
|
||
|
<!-- prev page button -->
|
||
|
{{- with $paginator.HasPrev -}}
|
||
|
<li class="page-item">
|
||
|
<a href="{{ $paginator.Prev.URL }}" class="page-link"> « </a>
|
||
|
</li>
|
||
|
{{ end }}
|
||
|
|
||
|
<!-- page # buttons -->
|
||
|
{{ range $pag.Pagers }}
|
||
|
{{ $cur := .PageNumber }}
|
||
|
{{ if in ($.Scratch.Get "show") $cur }}
|
||
|
<li class = "{{ if eq . $pag }}active{{ end }} page-item"><a href="{{ .URL }}" class="page-link hidden-md-down">{{ .PageNumber }}</a></li>
|
||
|
{{ else if in (slice 2 (sub $total 1)) $cur }}
|
||
|
<li class="disabled page-item"><a name="" class="page-link hidden-md-down">…</a></li>
|
||
|
{{ end }}
|
||
|
{{ end }}
|
||
|
|
||
|
<!-- next page button -->
|
||
|
{{- with $paginator.HasNext -}}
|
||
|
<li class="page-item">
|
||
|
<a href="{{ $paginator.Next.URL }}" class="page-link"> » </a>
|
||
|
</li>
|
||
|
{{ end }}
|
||
|
|
||
|
<!-- last page button -->
|
||
|
{{ if lt $paginator.PageNumber (sub $paginator.TotalPages 1) }}
|
||
|
{{- with $paginator.Last -}}
|
||
|
{{- $url := trim (string .URL) "/" | absURL -}}
|
||
|
<li class="page-item">
|
||
|
<a href="{{ $url }}" aria-label="Last" class="page-link"><span aria-hidden="true">»»</span></a>
|
||
|
</li>
|
||
|
{{- end -}}
|
||
|
{{ end }}
|
||
|
|
||
|
</ul>
|
||
|
{{ end }}
|
||
|
</nav>
|
||
|
</div>
|
||
|
</div>
|
||
|
{{ end }}
|
||
|
</div>
|
||
|
</div>
|