@@ -1,21 +1,20 @@ | |||||
{{ define "main" }} | {{ define "main" }} | ||||
{{$currentNode := . }} | {{$currentNode := . }} | ||||
{{ $graphOptions := newScratch }} | |||||
{{ range $k, $v := $.Site.Data.sandpointsnamegraph }} | {{ range $k, $v := $.Site.Data.sandpointsnamegraph }} | ||||
{{ if eq (substr $currentNode.File.Dir 0 -1) $k }} | {{ if eq (substr $currentNode.File.Dir 0 -1) $k }} | ||||
{{ $graphOptions.Set "plural" (index $v "plural") }} | |||||
{{ $graphOptions.Set "depth" (index $v "depth") }} | |||||
{{ $.Scratch.Set "plural" (index $v "plural") }} | |||||
{{ $.Scratch.Set "depth" (index $v "depth") }} | |||||
{{ with index $v "in" }} | {{ with index $v "in" }} | ||||
{{ $graphOptions.Set "in" (index $v "in") }} | |||||
{{ $.Scratch.Set "in" (index $v "in") }} | |||||
{{ end }} | {{ end }} | ||||
{{ with index $v "has" }} | {{ with index $v "has" }} | ||||
{{ $graphOptions.Set "has" (index $v "has") }} | |||||
{{ $.Scratch.Set "has" (index $v "has") }} | |||||
{{ end }} | {{ end }} | ||||
{{ end }} | {{ end }} | ||||
{{ end }} | {{ end }} | ||||
<div class="{{ $graphOptions.Get "depth" }}title"><span class="sup">{{ substr .File.Dir 0 -1 }}⁄{{ substr .Title 0 1 }}</span>{{ substr .Title 1 }}</div></div> | |||||
<div class="{{ $.Scratch.Get "depth" }}title"><span class="sup">{{ substr .File.Dir 0 -1 }}⁄{{ substr .Title 0 1 }}</span>{{ substr .Title 1 }}</div></div> | |||||
<div class="grid"> | <div class="grid"> | ||||
<div class="leftcolumn"> | <div class="leftcolumn"> | ||||
@@ -24,26 +23,27 @@ | |||||
{{ end }} | {{ end }} | ||||
</div> | </div> | ||||
<div class="rightcolumn"> | <div class="rightcolumn"> | ||||
{{ if (not (eq ($graphOptions.Get "depth") "crust")) }} | |||||
{{ if (not (eq ($.Scratch.Get "depth") "crust")) }} | |||||
<div class="has"> | <div class="has"> | ||||
<span class="sup">has {{ index ($graphOptions.Get "has") 1 }}⁄</span> | |||||
<span class="sup">has {{ index ($.Scratch.Get "has") 1 }}⁄</span> | |||||
</div> | </div> | ||||
<div class="afterhas"> | <div class="afterhas"> | ||||
{{ range index $currentNode.Params (printf "has_%s" (index ($graphOptions.Get "has") 1) )}} | |||||
{{ with $.GetPage (printf "%s%s" (printf "/%s/" (index ($graphOptions.Get "has") 0)) . ) }} | |||||
<div class="{{ index $.Site.Data.sandpointsnamegraph (index ($graphOptions.Get "has") 0) "depth" }}"> | |||||
{{ range index $currentNode.Params (printf "has_%s" (index ($.Scratch.Get "has") 1) )}} | |||||
{{ with $.GetPage (printf "%s%s" (printf "/%s/" (index ($.Scratch.Get "has") 0)) . ) }} | |||||
<div class="{{ index $.Site.Data.sandpointsnamegraph (index ($.Scratch.Get "has") 0) "depth" }}"> | |||||
<a href="{{ .RelPermalink }}{{ if eq hugo.Environment "offline" }}index.html{{ end }}">{{ .Title }}</a> | <a href="{{ .RelPermalink }}{{ if eq hugo.Environment "offline" }}index.html{{ end }}">{{ .Title }}</a> | ||||
</div> | </div> | ||||
{{ end }} | {{ end }} | ||||
{{ end }} | {{ end }} | ||||
{{ end }} | {{ end }} | ||||
{{ if eq ($graphOptions.Get "depth") "crust" }} | |||||
{{ if eq ($.Scratch.Get "depth") "crust" }} | |||||
<div class="has"> | <div class="has"> | ||||
<span class="sup">in {{ index ($graphOptions.Get "in") 1 }}⁄</span> | |||||
<span class="sup">in {{ index ($.Scratch.Get "in") 1 }}⁄</span> | |||||
</div> | </div> | ||||
{{ range where $.Site.RegularPages ".Section" (index ($graphOptions.Get "in") 0) }} | |||||
{{ if in (index .Params (printf "has_%s" ($graphOptions.Get "plural"))) $currentNode.File.LogicalName }} | |||||
<div class="afterhas"> | |||||
{{ range where $.Site.RegularPages ".Section" (index ($.Scratch.Get "in") 0) }} | |||||
{{ if in (index .Params (printf "has_%s" ($.Scratch.Get "plural"))) $currentNode.File.LogicalName }} | |||||
<div class="{{ substr .File.Dir 0 -1 }}"> | <div class="{{ substr .File.Dir 0 -1 }}"> | ||||
<a href="{{ .RelPermalink }}{{ if eq hugo.Environment "offline" }}index.html{{ end }}">{{ .Title }}</a> | <a href="{{ .RelPermalink }}{{ if eq hugo.Environment "offline" }}index.html{{ end }}">{{ .Title }}</a> | ||||
</div> | </div> | ||||
@@ -1,44 +1,36 @@ | |||||
{{ $currentSession := . }} | {{ $currentSession := . }} | ||||
{{ $_ := newScratch }} | |||||
{{- range $k, $v := .Page.Site.Data.sandpointsnamegraph -}} | {{- range $k, $v := .Page.Site.Data.sandpointsnamegraph -}} | ||||
{{ if eq $currentSession.File.Dir (printf "%s/" $k) }} | {{ if eq $currentSession.File.Dir (printf "%s/" $k) }} | ||||
{{ $_.Add "depth" (index $v "depth") }} | |||||
{{ $.Scratch.Add "depth" (index $v "depth") }} | |||||
{{ if eq (index $v "depth") "mantle" }} | {{ if eq (index $v "depth") "mantle" }} | ||||
{{ $_.Add "home" (index $v "in" 0) }} | |||||
{{ $.Scratch.Add "home" (index $v "in" 0) }} | |||||
{{ end }} | {{ end }} | ||||
{{ if eq (index $v "depth") "crust" }} | {{ if eq (index $v "depth") "crust" }} | ||||
{{ $_.Add "home" (index (index $currentSession.Site.Data.sandpointsnamegraph (index $v "in" 0)) "in" 0) }} | |||||
{{ $_.Add "mantle" (index $v "in" 0) }} | |||||
{{ $_.Add "mantle_has" (index (index $currentSession.Site.Data.sandpointsnamegraph (index $v "in" 0)) "has" 1) }} | |||||
{{ $.Scratch.Add "home" (index (index $currentSession.Site.Data.sandpointsnamegraph (index $v "in" 0)) "in" 0) }} | |||||
{{ $.Scratch.Add "mantle" (index $v "in" 0) }} | |||||
{{ $.Scratch.Add "mantle_has" (index (index $currentSession.Site.Data.sandpointsnamegraph (index $v "in" 0)) "has" 1) }} | |||||
{{ end }} | {{ end }} | ||||
{{ end }} | {{ end }} | ||||
{{- end -}} | {{- end -}} | ||||
<div class="header"> | <div class="header"> | ||||
<a title="{{ $.Site.Home.Title }}'s Bibliotheke" href="/library/BROWSE_LIBRARY.html" class="bibliotheke" target="_blank"> | <a title="{{ $.Site.Home.Title }}'s Bibliotheke" href="/library/BROWSE_LIBRARY.html" class="bibliotheke" target="_blank"> | ||||
<img src="/images/bibliotheke.svg" /> | <img src="/images/bibliotheke.svg" /> | ||||
</a> | </a> | ||||
<div class="breadcrumbs"> | <div class="breadcrumbs"> | ||||
{{ if ne ($_.Get "depth") "core" }} | |||||
<a href="{{ with $currentSession.Site.GetPage (printf "/%s/index.md" ($_.Get "home")) }}{{ .RelPermalink }}{{ end }}{{ if eq hugo.Environment "offline" }}index.html{{ end }}"><span class="sup">{{ with $currentSession.Site.GetPage (printf "/%s/index.md" ($_.Get "home")) }}{{ substr .Title 0 1 }}</span><i>{{ substr .Title 1 }}</i></a>{{ end }} | |||||
{{ if ne ($.Scratch.Get "depth") "core" }} | |||||
<a href="{{ with $currentSession.Site.GetPage (printf "/%s/index.md" ($.Scratch.Get "home")) }}{{ .RelPermalink }}{{ end }}{{ if eq hugo.Environment "offline" }}index.html{{ end }}"><span class="sup">{{ with $currentSession.Site.GetPage (printf "/%s/index.md" ($.Scratch.Get "home")) }}{{ substr .Title 0 1 }}</span><i>{{ substr .Title 1 }}</i></a>{{ end }} | |||||
{{ end }} | {{ end }} | ||||
{{ if eq ($_.Get "depth") "mantle" }} | |||||
{{ if eq ($.Scratch.Get "depth") "mantle" }} | |||||
<span class="mantlebar"><i> » <a href="{{ .RelPermalink }}{{ if eq hugo.Environment "offline" }}index.html{{ end }}">{{ .Title }}</a></i></span> | <span class="mantlebar"><i> » <a href="{{ .RelPermalink }}{{ if eq hugo.Environment "offline" }}index.html{{ end }}">{{ .Title }}</a></i></span> | ||||
{{ end }} | {{ end }} | ||||
{{ if eq ($_.Get "depth") "crust" }} | |||||
{{ $.Scratch.Set "counter" 0 }} | |||||
{{ range where $.Site.RegularPages ".Section" ($_.Get "mantle") }} | |||||
{{ if in (index .Params (printf "has_%s" ($_.Get "mantle_has"))) $currentSession.File.LogicalName }} | |||||
{{ $.Scratch.Set "counter" (add ($.Scratch.Get "counter") 1) }} | |||||
{{ if lt ($.Scratch.Get "counter") 2 }} | |||||
<span><i> » <a href="{{ .RelPermalink }}{{ if eq hugo.Environment "offline" }}index.html{{ end }}">{{ .Title }}</a></i></span> | |||||
{{ end }} | |||||
{{ end }} | |||||
{{ end }} | |||||
{{ if eq ($.Scratch.Get "depth") "crust" }} | |||||
{{ range first 1 (where (where $.Site.RegularPages ".Section" ($.Scratch.Get "mantle")) (printf ".Params.has_%s" ($.Scratch.Get "mantle_has")) "intersect" (slice $currentSession.File.LogicalName)) }} | |||||
<span><i> » <a href="{{ .RelPermalink }}{{ if eq hugo.Environment "offline" }}index.html{{ end }}">{{ .Title }}</a></i></span> | |||||
{{ end }} | |||||
<span class="mantlebar"><i> » <a href="{{ $currentSession.RelPermalink }}{{ if eq hugo.Environment "offline" }}index.html{{ end }}">{{ $currentSession.Title }}</a></i></span> | <span class="mantlebar"><i> » <a href="{{ $currentSession.RelPermalink }}{{ if eq hugo.Environment "offline" }}index.html{{ end }}">{{ $currentSession.Title }}</a></i></span> | ||||
{{ end }} | {{ end }} | ||||
</div> | </div> | ||||
@@ -0,0 +1,84 @@ | |||||
/* soundcite - v0.5.1 - 2017-07-10 | |||||
* Copyright (c) 2017 Tyler J. Fisher and Northwestern University Knight Lab | |||||
*/ | |||||
/*PLAYER CHROME*/ | |||||
@-webkit-keyframes spin { | |||||
from { -webkit-transform: rotate(0deg); opacity: 0.4; } | |||||
50% { -webkit-transform: rotate(180deg); opacity: 1; } | |||||
to { -webkit-transform: rotate(360deg); opacity: 0.4; } | |||||
} | |||||
@-moz-keyframes spin { | |||||
from { -moz-transform: rotate(0deg); opacity: 0.4; } | |||||
50% { -moz-transform: rotate(180deg); opacity: 1; } | |||||
to { -moz-transform: rotate(360deg); opacity: 0.4; } | |||||
} | |||||
@-ms-keyframes spin { | |||||
from { -ms-transform: rotate(0deg); opacity: 0.4; } | |||||
50% { -ms-transform: rotate(180deg); opacity: 1; } | |||||
to { -ms-transform: rotate(360deg); opacity: 0.4; } | |||||
} | |||||
@-o-keyframes spin { | |||||
from { -o-transform: rotate(0deg); opacity: 0.4; } | |||||
50% { -o-transform: rotate(180deg); opacity: 1; } | |||||
to { -o-transform: rotate(360deg); opacity: 0.4; } | |||||
} | |||||
@keyframes spin { | |||||
from { transform: rotate(0deg); opacity: 0.2; } | |||||
50% { transform: rotate(180deg); opacity: 1; } | |||||
to { transform: rotate(360deg); opacity: 0.2; } | |||||
} | |||||
.soundcite-loaded { | |||||
border-radius: 6px; | |||||
padding: 0 5px 0 5px; | |||||
display: inline-block; | |||||
cursor: pointer; | |||||
} | |||||
.soundcite-loaded:before { | |||||
display: inline-block; | |||||
content: ""; | |||||
vertical-align: -10%; | |||||
margin-right: 0.25em; | |||||
} | |||||
.soundcite-loading:before { | |||||
margin-right: 0.5em; | |||||
font-size: 0.9em; | |||||
position: relative; | |||||
top: -.05em; | |||||
height: 0.75em; | |||||
width: 0.75em; | |||||
border: 2px solid #000; | |||||
border-right-color: transparent; | |||||
border-radius: 50%; | |||||
-webkit-animation: spin 1s linear infinite; | |||||
-moz-animation: spin 1s linear infinite; | |||||
-ms-animation: spin 1s linear infinite; | |||||
-o-animation: spin 1s linear infinite; | |||||
animation: spin 1s linear infinite; | |||||
} | |||||
.soundcite-play:before { | |||||
font-size: 0.9em; | |||||
position: relative; | |||||
top: -.05em; | |||||
border: 0.5em solid transparent; | |||||
border-left: 0.75em solid black; | |||||
} | |||||
.soundcite-pause:before { | |||||
font-size: 0.9em; | |||||
position: relative; | |||||
top: -.05em; | |||||
height: 1em; | |||||
border-left: .75em double black; | |||||
border-right: .5em solid transparent; | |||||
} | |||||