project widget: Enable changing default filter (#88)

Use `filter_default = 0` to specify index of default filter
This commit is contained in:
George Cushen 2017-09-19 20:24:24 +01:00
commit 3cb84281d8
3 changed files with 14 additions and 4 deletions

View file

@ -18,6 +18,10 @@ weight = 50
view = 1
# Filter toolbar.
# Default filter index (e.g. 0 corresponds to the first `[[filter]]` instance below).
filter_default = 0
# Add or remove as many filters (`[[filter]]` instances) as you like.
# Use "*" tag to show all projects or an existing tag prefixed with "." to filter by specific tag.
# To remove toolbar, delete/comment all instances of `[[filter]]` below.

View file

@ -10,13 +10,18 @@
<div class="col-xs-12 col-md-8">
{{ with $page.Content }}<p>{{ . | markdownify }}</p>{{ end }}
{{ $filter_default := default (int $page.Params.filter_default) 0 }}
{{ with $page.Params.filter }}
<span id="default-project-filter" class="hidden">{{ (index $page.Params.filter ($filter_default)).tag }}</span>
{{ end }}
<div class="project-toolbar">
<div id="filters">
<div class="btn-toolbar">
<div class="btn-group">
{{ range $page.Params.filter }}
<a href="#" data-filter="{{ .tag }}" class="btn btn-primary btn-large{{ if eq .tag "*" }} active{{ end }}">{{ .name }}</a>
{{ end }}
{{ range $idx, $item := $page.Params.filter }}
<a href="#" data-filter="{{ .tag }}" class="btn btn-primary btn-large{{ if eq $idx $filter_default }} active{{ end }}">{{ .name }}</a>
{{ end }}
</div>
</div>
</div>

View file

@ -106,7 +106,8 @@
// Initialize Isotope after all images have loaded.
$grid_projects.isotope({
itemSelector: '.isotope-item',
layoutMode: 'masonry'
layoutMode: 'masonry',
filter: $('#default-project-filter').text()
});
// Filter items when filter link is clicked.