From 8047fac2c1890aab369c8e43c36ed569f610a459 Mon Sep 17 00:00:00 2001 From: George Cushen Date: Fri, 13 Nov 2020 11:30:08 +0000 Subject: [PATCH] refactor: make Portfolio widget use new 1-2 column wrapper (it already supported the logic but didn't use the new wrapper) --- wowchemy/layouts/partials/widget_page.html | 2 +- .../layouts/partials/widgets/portfolio.html | 118 +++++++----------- 2 files changed, 49 insertions(+), 71 deletions(-) diff --git a/wowchemy/layouts/partials/widget_page.html b/wowchemy/layouts/partials/widget_page.html index 192f6775..8bb3a874 100644 --- a/wowchemy/layouts/partials/widget_page.html +++ b/wowchemy/layouts/partials/widget_page.html @@ -100,7 +100,7 @@ {{end}} {{ $columns := $st.Params.design.columns | default "2" }} - {{ $use_cols := in (slice "pages" "featured" "experience" "accomplishments" "contact" "blank" "tag_cloud") $widget }} + {{ $use_cols := in (slice "pages" "featured" "experience" "accomplishments" "contact" "blank" "tag_cloud" "portfolio") $widget }} {{/* Dedicated child div for bg prevents parallax 100% height issue within new CSS grid page wrapper. */}}
diff --git a/wowchemy/layouts/partials/widgets/portfolio.html b/wowchemy/layouts/partials/widgets/portfolio.html index a5839dd7..9eb8cb59 100644 --- a/wowchemy/layouts/partials/widgets/portfolio.html +++ b/wowchemy/layouts/partials/widgets/portfolio.html @@ -6,88 +6,66 @@ {{ $items_type := $st.Params.content.page_type | default "project" }} {{ $columns := $st.Params.design.columns | default "2" }} -{{ if ne $columns "1" }} -{{/* Standard dual-column layout. */}} +{{ $columns := $st.Params.design.columns | default "2" }} -
-
+
- {{ with $st.Title }}

{{ . | markdownify | emojify }}

{{ end }} - {{ with $st.Params.subtitle }}

{{ . | markdownify | emojify }}

{{ end }} + {{ with $st.Content }}{{ . }}{{ end }} -
-
+ {{ if $st.Params.content.filter_button }} -{{ else }} -{{/* Single column layout. */}} + {{ $filter_default := default (int $st.Params.content.filter_default) 0 }} -
+ {{/* Parse default filter tag from front matter in the form of either tag name or CSS class name. */}} + {{ $default_filter_tag_raw := (index $st.Params.content.filter_button ($filter_default)).tag }} + {{ $default_filter_tag := printf ".js-id-%s" (replace $default_filter_tag_raw " " "-") }} + {{ if or (eq (substr $default_filter_tag_raw 0 1) "*") (eq (substr $default_filter_tag_raw 0 1) ".") }} + {{ $default_filter_tag = $default_filter_tag_raw }} + {{ end }} -
- {{ with $st.Title }}

{{ . | markdownify | emojify }}

{{ end }} - {{ with $st.Params.subtitle }}

{{ . | markdownify | emojify }}

{{ end }} -
-
-{{ end }} + {{ $default_filter_tag }} - {{ with $st.Content }}{{ . }}{{ end }} - - {{ if $st.Params.content.filter_button }} - - {{ $filter_default := default (int $st.Params.content.filter_default) 0 }} - - {{/* Parse default filter tag from front matter in the form of either tag name or CSS class name. */}} - {{ $default_filter_tag_raw := (index $st.Params.content.filter_button ($filter_default)).tag }} - {{ $default_filter_tag := printf ".js-id-%s" (replace $default_filter_tag_raw " " "-") }} - {{ if or (eq (substr $default_filter_tag_raw 0 1) "*") (eq (substr $default_filter_tag_raw 0 1) ".") }} - {{ $default_filter_tag = $default_filter_tag_raw }} - {{ end }} - - {{ $default_filter_tag }} - - {{/* Only show filter buttons if there are multiple filters. */}} - {{ if gt (len $st.Params.content.filter_button) 1 }} -
-
-
-
- {{ range $idx, $item := $st.Params.content.filter_button }} - {{/* Parse filter tag from front matter in the form of either tag name or CSS class name. */}} - {{ $data_filter := printf ".js-id-%s" (replace .tag " " "-") }} - {{ if or (eq (substr .tag 0 1) "*") (eq (substr .tag 0 1) ".") }} - {{ $data_filter = .tag }} - {{ end }} - {{ .name }} + {{/* Only show filter buttons if there are multiple filters. */}} + {{ if gt (len $st.Params.content.filter_button) 1 }} +
+
+
+
+ {{ range $idx, $item := $st.Params.content.filter_button }} + {{/* Parse filter tag from front matter in the form of either tag name or CSS class name. */}} + {{ $data_filter := printf ".js-id-%s" (replace .tag " " "-") }} + {{ if or (eq (substr .tag 0 1) "*") (eq (substr .tag 0 1) ".") }} + {{ $data_filter = .tag }} {{ end }} -
+ {{ .name }} + {{ end }}
- {{ end }} - {{ end }} - -
- {{ range $idx, $item := where site.RegularPages "Type" $items_type }} - - {{ $link := $item.RelPermalink }} - {{ $target := "" }} - {{ if $item.Params.external_link }} - {{ $link = $item.Params.external_link }} - {{ $target = "target=\"_blank\" rel=\"noopener\"" }} - {{ end }} - - {{ if eq $st.Params.design.view 1 }} - {{ partial "portfolio_li_list" (dict "item" $item) }} - {{ else if eq $st.Params.design.view 2 }} - {{ partial "portfolio_li_compact" (dict "item" $item) }} - {{ else if eq $st.Params.design.view 3 }} - {{ partial "portfolio_li_card" (dict "widget" $st "index" $idx "item" $item "link" $link "target" $target) }} - {{ else }} - {{ partial "portfolio_li_showcase" (dict "widget" $st "index" $idx "item" $item "link" $link "target" $target) }} - {{ end }} - - {{ end }}
+ {{ end }} + {{ end }} +
+ {{ range $idx, $item := where site.RegularPages "Type" $items_type }} + + {{ $link := $item.RelPermalink }} + {{ $target := "" }} + {{ if $item.Params.external_link }} + {{ $link = $item.Params.external_link }} + {{ $target = "target=\"_blank\" rel=\"noopener\"" }} + {{ end }} + + {{ if eq $st.Params.design.view 1 }} + {{ partial "portfolio_li_list" (dict "item" $item) }} + {{ else if eq $st.Params.design.view 2 }} + {{ partial "portfolio_li_compact" (dict "item" $item) }} + {{ else if eq $st.Params.design.view 3 }} + {{ partial "portfolio_li_card" (dict "widget" $st "index" $idx "item" $item "link" $link "target" $target) }} + {{ else }} + {{ partial "portfolio_li_showcase" (dict "widget" $st "index" $idx "item" $item "link" $link "target" $target) }} + {{ end }} + + {{ end }}