various fixes
This commit is contained in:
parent
1fd9adcb52
commit
46bd223627
29 changed files with 6093 additions and 152 deletions
40
css/leaflet-fullscreen/leaflet.fullscreen.css
Normal file
40
css/leaflet-fullscreen/leaflet.fullscreen.css
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
.leaflet-control-fullscreen a {
|
||||||
|
background:#fff url(fullscreen.png) no-repeat 0 0;
|
||||||
|
background-size:26px 52px;
|
||||||
|
}
|
||||||
|
.leaflet-touch .leaflet-control-fullscreen a {
|
||||||
|
background-position: 2px 2px;
|
||||||
|
}
|
||||||
|
.leaflet-fullscreen-on .leaflet-control-fullscreen a {
|
||||||
|
background-position:0 -26px;
|
||||||
|
}
|
||||||
|
.leaflet-touch.leaflet-fullscreen-on .leaflet-control-fullscreen a {
|
||||||
|
background-position: 2px -24px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Do not combine these two rules; IE will break. */
|
||||||
|
.leaflet-container:-webkit-full-screen {
|
||||||
|
width:100%!important;
|
||||||
|
height:100%!important;
|
||||||
|
}
|
||||||
|
.leaflet-container.leaflet-fullscreen-on {
|
||||||
|
width:100%!important;
|
||||||
|
height:100%!important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.leaflet-pseudo-fullscreen {
|
||||||
|
position:fixed!important;
|
||||||
|
width:100%!important;
|
||||||
|
height:100%!important;
|
||||||
|
top:0!important;
|
||||||
|
left:0!important;
|
||||||
|
z-index:99999;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media
|
||||||
|
(-webkit-min-device-pixel-ratio:2),
|
||||||
|
(min-resolution:192dpi) {
|
||||||
|
.leaflet-control-fullscreen a {
|
||||||
|
background-image:url(fullscreen@2x.png);
|
||||||
|
}
|
||||||
|
}
|
656
css/leaflet/leaflet.css
Normal file
656
css/leaflet/leaflet.css
Normal file
|
@ -0,0 +1,656 @@
|
||||||
|
/* required styles */
|
||||||
|
|
||||||
|
.leaflet-pane,
|
||||||
|
.leaflet-tile,
|
||||||
|
.leaflet-marker-icon,
|
||||||
|
.leaflet-marker-shadow,
|
||||||
|
.leaflet-tile-container,
|
||||||
|
.leaflet-pane > svg,
|
||||||
|
.leaflet-pane > canvas,
|
||||||
|
.leaflet-zoom-box,
|
||||||
|
.leaflet-image-layer,
|
||||||
|
.leaflet-layer {
|
||||||
|
position: absolute;
|
||||||
|
left: 0;
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
.leaflet-container {
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
.leaflet-tile,
|
||||||
|
.leaflet-marker-icon,
|
||||||
|
.leaflet-marker-shadow {
|
||||||
|
-webkit-user-select: none;
|
||||||
|
-moz-user-select: none;
|
||||||
|
user-select: none;
|
||||||
|
-webkit-user-drag: none;
|
||||||
|
}
|
||||||
|
/* Prevents IE11 from highlighting tiles in blue */
|
||||||
|
.leaflet-tile::selection {
|
||||||
|
background: transparent;
|
||||||
|
}
|
||||||
|
/* Safari renders non-retina tile on retina better with this, but Chrome is worse */
|
||||||
|
.leaflet-safari .leaflet-tile {
|
||||||
|
image-rendering: -webkit-optimize-contrast;
|
||||||
|
}
|
||||||
|
/* hack that prevents hw layers "stretching" when loading new tiles */
|
||||||
|
.leaflet-safari .leaflet-tile-container {
|
||||||
|
width: 1600px;
|
||||||
|
height: 1600px;
|
||||||
|
-webkit-transform-origin: 0 0;
|
||||||
|
}
|
||||||
|
.leaflet-marker-icon,
|
||||||
|
.leaflet-marker-shadow {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
/* .leaflet-container svg: reset svg max-width decleration shipped in Joomla! (joomla.org) 3.x */
|
||||||
|
/* .leaflet-container img: map is broken in FF if you have max-width: 100% on tiles */
|
||||||
|
.leaflet-container .leaflet-overlay-pane svg {
|
||||||
|
max-width: none !important;
|
||||||
|
max-height: none !important;
|
||||||
|
}
|
||||||
|
.leaflet-container .leaflet-marker-pane img,
|
||||||
|
.leaflet-container .leaflet-shadow-pane img,
|
||||||
|
.leaflet-container .leaflet-tile-pane img,
|
||||||
|
.leaflet-container img.leaflet-image-layer,
|
||||||
|
.leaflet-container .leaflet-tile {
|
||||||
|
max-width: none !important;
|
||||||
|
max-height: none !important;
|
||||||
|
width: auto;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.leaflet-container.leaflet-touch-zoom {
|
||||||
|
-ms-touch-action: pan-x pan-y;
|
||||||
|
touch-action: pan-x pan-y;
|
||||||
|
}
|
||||||
|
.leaflet-container.leaflet-touch-drag {
|
||||||
|
-ms-touch-action: pinch-zoom;
|
||||||
|
/* Fallback for FF which doesn't support pinch-zoom */
|
||||||
|
touch-action: none;
|
||||||
|
touch-action: pinch-zoom;
|
||||||
|
}
|
||||||
|
.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {
|
||||||
|
-ms-touch-action: none;
|
||||||
|
touch-action: none;
|
||||||
|
}
|
||||||
|
.leaflet-container {
|
||||||
|
-webkit-tap-highlight-color: transparent;
|
||||||
|
}
|
||||||
|
.leaflet-container a {
|
||||||
|
-webkit-tap-highlight-color: rgba(51, 181, 229, 0.4);
|
||||||
|
}
|
||||||
|
.leaflet-tile {
|
||||||
|
filter: inherit;
|
||||||
|
visibility: hidden;
|
||||||
|
}
|
||||||
|
.leaflet-tile-loaded {
|
||||||
|
visibility: inherit;
|
||||||
|
}
|
||||||
|
.leaflet-zoom-box {
|
||||||
|
width: 0;
|
||||||
|
height: 0;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
z-index: 800;
|
||||||
|
}
|
||||||
|
/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */
|
||||||
|
.leaflet-overlay-pane svg {
|
||||||
|
-moz-user-select: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.leaflet-pane { z-index: 400; }
|
||||||
|
|
||||||
|
.leaflet-tile-pane { z-index: 200; }
|
||||||
|
.leaflet-overlay-pane { z-index: 400; }
|
||||||
|
.leaflet-shadow-pane { z-index: 500; }
|
||||||
|
.leaflet-marker-pane { z-index: 600; }
|
||||||
|
.leaflet-tooltip-pane { z-index: 650; }
|
||||||
|
.leaflet-popup-pane { z-index: 700; }
|
||||||
|
|
||||||
|
.leaflet-map-pane canvas { z-index: 100; }
|
||||||
|
.leaflet-map-pane svg { z-index: 200; }
|
||||||
|
|
||||||
|
.leaflet-vml-shape {
|
||||||
|
width: 1px;
|
||||||
|
height: 1px;
|
||||||
|
}
|
||||||
|
.lvml {
|
||||||
|
behavior: url(#default#VML);
|
||||||
|
display: inline-block;
|
||||||
|
position: absolute;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* control positioning */
|
||||||
|
|
||||||
|
.leaflet-control {
|
||||||
|
position: relative;
|
||||||
|
z-index: 800;
|
||||||
|
pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
|
||||||
|
pointer-events: auto;
|
||||||
|
}
|
||||||
|
.leaflet-top,
|
||||||
|
.leaflet-bottom {
|
||||||
|
position: absolute;
|
||||||
|
z-index: 1000;
|
||||||
|
pointer-events: none;
|
||||||
|
}
|
||||||
|
.leaflet-top {
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
.leaflet-right {
|
||||||
|
right: 0;
|
||||||
|
}
|
||||||
|
.leaflet-bottom {
|
||||||
|
bottom: 0;
|
||||||
|
}
|
||||||
|
.leaflet-left {
|
||||||
|
left: 0;
|
||||||
|
}
|
||||||
|
.leaflet-control {
|
||||||
|
float: left;
|
||||||
|
clear: both;
|
||||||
|
}
|
||||||
|
.leaflet-right .leaflet-control {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
.leaflet-top .leaflet-control {
|
||||||
|
margin-top: 10px;
|
||||||
|
}
|
||||||
|
.leaflet-bottom .leaflet-control {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
.leaflet-left .leaflet-control {
|
||||||
|
margin-left: 10px;
|
||||||
|
}
|
||||||
|
.leaflet-right .leaflet-control {
|
||||||
|
margin-right: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* zoom and fade animations */
|
||||||
|
|
||||||
|
.leaflet-fade-anim .leaflet-popup {
|
||||||
|
opacity: 0;
|
||||||
|
-webkit-transition: opacity 0.2s linear;
|
||||||
|
-moz-transition: opacity 0.2s linear;
|
||||||
|
transition: opacity 0.2s linear;
|
||||||
|
}
|
||||||
|
.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
.leaflet-zoom-animated {
|
||||||
|
-webkit-transform-origin: 0 0;
|
||||||
|
-ms-transform-origin: 0 0;
|
||||||
|
transform-origin: 0 0;
|
||||||
|
}
|
||||||
|
svg.leaflet-zoom-animated {
|
||||||
|
will-change: transform;
|
||||||
|
}
|
||||||
|
|
||||||
|
.leaflet-zoom-anim .leaflet-zoom-animated {
|
||||||
|
-webkit-transition: -webkit-transform 0.25s cubic-bezier(0,0,0.25,1);
|
||||||
|
-moz-transition: -moz-transform 0.25s cubic-bezier(0,0,0.25,1);
|
||||||
|
transition: transform 0.25s cubic-bezier(0,0,0.25,1);
|
||||||
|
}
|
||||||
|
.leaflet-zoom-anim .leaflet-tile,
|
||||||
|
.leaflet-pan-anim .leaflet-tile {
|
||||||
|
-webkit-transition: none;
|
||||||
|
-moz-transition: none;
|
||||||
|
transition: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.leaflet-zoom-anim .leaflet-zoom-hide {
|
||||||
|
visibility: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* cursors */
|
||||||
|
|
||||||
|
.leaflet-interactive {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.leaflet-grab {
|
||||||
|
cursor: -webkit-grab;
|
||||||
|
cursor: -moz-grab;
|
||||||
|
cursor: grab;
|
||||||
|
}
|
||||||
|
.leaflet-crosshair,
|
||||||
|
.leaflet-crosshair .leaflet-interactive {
|
||||||
|
cursor: crosshair;
|
||||||
|
}
|
||||||
|
.leaflet-popup-pane,
|
||||||
|
.leaflet-control {
|
||||||
|
cursor: auto;
|
||||||
|
}
|
||||||
|
.leaflet-dragging .leaflet-grab,
|
||||||
|
.leaflet-dragging .leaflet-grab .leaflet-interactive,
|
||||||
|
.leaflet-dragging .leaflet-marker-draggable {
|
||||||
|
cursor: move;
|
||||||
|
cursor: -webkit-grabbing;
|
||||||
|
cursor: -moz-grabbing;
|
||||||
|
cursor: grabbing;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* marker & overlays interactivity */
|
||||||
|
.leaflet-marker-icon,
|
||||||
|
.leaflet-marker-shadow,
|
||||||
|
.leaflet-image-layer,
|
||||||
|
.leaflet-pane > svg path,
|
||||||
|
.leaflet-tile-container {
|
||||||
|
pointer-events: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.leaflet-marker-icon.leaflet-interactive,
|
||||||
|
.leaflet-image-layer.leaflet-interactive,
|
||||||
|
.leaflet-pane > svg path.leaflet-interactive,
|
||||||
|
svg.leaflet-image-layer.leaflet-interactive path {
|
||||||
|
pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
|
||||||
|
pointer-events: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* visual tweaks */
|
||||||
|
|
||||||
|
.leaflet-container {
|
||||||
|
background: #ddd;
|
||||||
|
outline-offset: 1px;
|
||||||
|
}
|
||||||
|
.leaflet-container a {
|
||||||
|
color: #0078A8;
|
||||||
|
}
|
||||||
|
.leaflet-zoom-box {
|
||||||
|
border: 2px dotted #38f;
|
||||||
|
background: rgba(255,255,255,0.5);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* general typography */
|
||||||
|
.leaflet-container {
|
||||||
|
font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
|
||||||
|
font-size: 12px;
|
||||||
|
font-size: 0.75rem;
|
||||||
|
line-height: 1.5;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* general toolbar styles */
|
||||||
|
|
||||||
|
.leaflet-bar {
|
||||||
|
box-shadow: 0 1px 5px rgba(0,0,0,0.65);
|
||||||
|
border-radius: 4px;
|
||||||
|
}
|
||||||
|
.leaflet-bar a {
|
||||||
|
background-color: #fff;
|
||||||
|
border-bottom: 1px solid #ccc;
|
||||||
|
width: 26px;
|
||||||
|
height: 26px;
|
||||||
|
line-height: 26px;
|
||||||
|
display: block;
|
||||||
|
text-align: center;
|
||||||
|
text-decoration: none;
|
||||||
|
color: black;
|
||||||
|
}
|
||||||
|
.leaflet-bar a,
|
||||||
|
.leaflet-control-layers-toggle {
|
||||||
|
background-position: 50% 50%;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
.leaflet-bar a:hover,
|
||||||
|
.leaflet-bar a:focus {
|
||||||
|
background-color: #f4f4f4;
|
||||||
|
}
|
||||||
|
.leaflet-bar a:first-child {
|
||||||
|
border-top-left-radius: 4px;
|
||||||
|
border-top-right-radius: 4px;
|
||||||
|
}
|
||||||
|
.leaflet-bar a:last-child {
|
||||||
|
border-bottom-left-radius: 4px;
|
||||||
|
border-bottom-right-radius: 4px;
|
||||||
|
border-bottom: none;
|
||||||
|
}
|
||||||
|
.leaflet-bar a.leaflet-disabled {
|
||||||
|
cursor: default;
|
||||||
|
background-color: #f4f4f4;
|
||||||
|
color: #bbb;
|
||||||
|
}
|
||||||
|
|
||||||
|
.leaflet-touch .leaflet-bar a {
|
||||||
|
width: 30px;
|
||||||
|
height: 30px;
|
||||||
|
line-height: 30px;
|
||||||
|
}
|
||||||
|
.leaflet-touch .leaflet-bar a:first-child {
|
||||||
|
border-top-left-radius: 2px;
|
||||||
|
border-top-right-radius: 2px;
|
||||||
|
}
|
||||||
|
.leaflet-touch .leaflet-bar a:last-child {
|
||||||
|
border-bottom-left-radius: 2px;
|
||||||
|
border-bottom-right-radius: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* zoom control */
|
||||||
|
|
||||||
|
.leaflet-control-zoom-in,
|
||||||
|
.leaflet-control-zoom-out {
|
||||||
|
font: bold 18px 'Lucida Console', Monaco, monospace;
|
||||||
|
text-indent: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.leaflet-touch .leaflet-control-zoom-in, .leaflet-touch .leaflet-control-zoom-out {
|
||||||
|
font-size: 22px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* layers control */
|
||||||
|
|
||||||
|
.leaflet-control-layers {
|
||||||
|
box-shadow: 0 1px 5px rgba(0,0,0,0.4);
|
||||||
|
background: #fff;
|
||||||
|
border-radius: 5px;
|
||||||
|
}
|
||||||
|
.leaflet-control-layers-toggle {
|
||||||
|
background-image: url(/images/layers.png);
|
||||||
|
width: 36px;
|
||||||
|
height: 36px;
|
||||||
|
}
|
||||||
|
.leaflet-retina .leaflet-control-layers-toggle {
|
||||||
|
background-image: url(/images/layers-2x.png);
|
||||||
|
background-size: 26px 26px;
|
||||||
|
}
|
||||||
|
.leaflet-touch .leaflet-control-layers-toggle {
|
||||||
|
width: 44px;
|
||||||
|
height: 44px;
|
||||||
|
}
|
||||||
|
.leaflet-control-layers .leaflet-control-layers-list,
|
||||||
|
.leaflet-control-layers-expanded .leaflet-control-layers-toggle {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.leaflet-control-layers-expanded .leaflet-control-layers-list {
|
||||||
|
display: block;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
.leaflet-control-layers-expanded {
|
||||||
|
padding: 6px 10px 6px 6px;
|
||||||
|
color: #333;
|
||||||
|
background: #fff;
|
||||||
|
}
|
||||||
|
.leaflet-control-layers-scrollbar {
|
||||||
|
overflow-y: scroll;
|
||||||
|
overflow-x: hidden;
|
||||||
|
padding-right: 5px;
|
||||||
|
}
|
||||||
|
.leaflet-control-layers-selector {
|
||||||
|
margin-top: 2px;
|
||||||
|
position: relative;
|
||||||
|
top: 1px;
|
||||||
|
}
|
||||||
|
.leaflet-control-layers label {
|
||||||
|
display: block;
|
||||||
|
font-size: 13px;
|
||||||
|
font-size: 1.08333em;
|
||||||
|
}
|
||||||
|
.leaflet-control-layers-separator {
|
||||||
|
height: 0;
|
||||||
|
border-top: 1px solid #ddd;
|
||||||
|
margin: 5px -10px 5px -6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Default icon URLs */
|
||||||
|
.leaflet-default-icon-path { /* used only in path-guessing heuristic, see L.Icon.Default */
|
||||||
|
background-image: url(/images/marker-icon.png);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* attribution and scale controls */
|
||||||
|
|
||||||
|
.leaflet-container .leaflet-control-attribution {
|
||||||
|
background: #fff;
|
||||||
|
background: rgba(255, 255, 255, 0.8);
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
.leaflet-control-attribution,
|
||||||
|
.leaflet-control-scale-line {
|
||||||
|
padding: 0 5px;
|
||||||
|
color: #333;
|
||||||
|
line-height: 1.4;
|
||||||
|
}
|
||||||
|
.leaflet-control-attribution a {
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
.leaflet-control-attribution a:hover,
|
||||||
|
.leaflet-control-attribution a:focus {
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
.leaflet-attribution-flag {
|
||||||
|
display: inline !important;
|
||||||
|
vertical-align: baseline !important;
|
||||||
|
width: 1em;
|
||||||
|
height: 0.6669em;
|
||||||
|
}
|
||||||
|
.leaflet-left .leaflet-control-scale {
|
||||||
|
margin-left: 5px;
|
||||||
|
}
|
||||||
|
.leaflet-bottom .leaflet-control-scale {
|
||||||
|
margin-bottom: 5px;
|
||||||
|
}
|
||||||
|
.leaflet-control-scale-line {
|
||||||
|
border: 2px solid #777;
|
||||||
|
border-top: none;
|
||||||
|
line-height: 1.1;
|
||||||
|
padding: 2px 5px 1px;
|
||||||
|
white-space: nowrap;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
background: rgba(255, 255, 255, 0.8);
|
||||||
|
text-shadow: 1px 1px #fff;
|
||||||
|
}
|
||||||
|
.leaflet-control-scale-line:not(:first-child) {
|
||||||
|
border-top: 2px solid #777;
|
||||||
|
border-bottom: none;
|
||||||
|
margin-top: -2px;
|
||||||
|
}
|
||||||
|
.leaflet-control-scale-line:not(:first-child):not(:last-child) {
|
||||||
|
border-bottom: 2px solid #777;
|
||||||
|
}
|
||||||
|
|
||||||
|
.leaflet-touch .leaflet-control-attribution,
|
||||||
|
.leaflet-touch .leaflet-control-layers,
|
||||||
|
.leaflet-touch .leaflet-bar {
|
||||||
|
box-shadow: none;
|
||||||
|
}
|
||||||
|
.leaflet-touch .leaflet-control-layers,
|
||||||
|
.leaflet-touch .leaflet-bar {
|
||||||
|
border: 2px solid rgba(0,0,0,0.2);
|
||||||
|
background-clip: padding-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* popup */
|
||||||
|
|
||||||
|
.leaflet-popup {
|
||||||
|
position: absolute;
|
||||||
|
text-align: center;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
}
|
||||||
|
.leaflet-popup-content-wrapper {
|
||||||
|
padding: 1px;
|
||||||
|
text-align: left;
|
||||||
|
border-radius: 12px;
|
||||||
|
}
|
||||||
|
.leaflet-popup-content {
|
||||||
|
margin: 13px 24px 13px 20px;
|
||||||
|
line-height: 1.3;
|
||||||
|
font-size: 13px;
|
||||||
|
font-size: 1.08333em;
|
||||||
|
min-height: 1px;
|
||||||
|
}
|
||||||
|
.leaflet-popup-content p {
|
||||||
|
margin: 17px 0;
|
||||||
|
margin: 1.3em 0;
|
||||||
|
}
|
||||||
|
.leaflet-popup-tip-container {
|
||||||
|
width: 40px;
|
||||||
|
height: 20px;
|
||||||
|
position: absolute;
|
||||||
|
left: 50%;
|
||||||
|
margin-top: -1px;
|
||||||
|
margin-left: -20px;
|
||||||
|
overflow: hidden;
|
||||||
|
pointer-events: none;
|
||||||
|
}
|
||||||
|
.leaflet-popup-tip {
|
||||||
|
width: 17px;
|
||||||
|
height: 17px;
|
||||||
|
padding: 1px;
|
||||||
|
|
||||||
|
margin: -10px auto 0;
|
||||||
|
pointer-events: auto;
|
||||||
|
|
||||||
|
-webkit-transform: rotate(45deg);
|
||||||
|
-moz-transform: rotate(45deg);
|
||||||
|
-ms-transform: rotate(45deg);
|
||||||
|
transform: rotate(45deg);
|
||||||
|
}
|
||||||
|
.leaflet-popup-content-wrapper,
|
||||||
|
.leaflet-popup-tip {
|
||||||
|
background: white;
|
||||||
|
color: #333;
|
||||||
|
box-shadow: 0 3px 14px rgba(0,0,0,0.4);
|
||||||
|
}
|
||||||
|
.leaflet-container a.leaflet-popup-close-button {
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 0;
|
||||||
|
border: none;
|
||||||
|
text-align: center;
|
||||||
|
width: 24px;
|
||||||
|
height: 24px;
|
||||||
|
font: 16px/24px Tahoma, Verdana, sans-serif;
|
||||||
|
color: #757575;
|
||||||
|
text-decoration: none;
|
||||||
|
background: transparent;
|
||||||
|
}
|
||||||
|
.leaflet-container a.leaflet-popup-close-button:hover,
|
||||||
|
.leaflet-container a.leaflet-popup-close-button:focus {
|
||||||
|
color: #585858;
|
||||||
|
}
|
||||||
|
.leaflet-popup-scrolled {
|
||||||
|
overflow: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.leaflet-oldie .leaflet-popup-content-wrapper {
|
||||||
|
-ms-zoom: 1;
|
||||||
|
}
|
||||||
|
.leaflet-oldie .leaflet-popup-tip {
|
||||||
|
width: 24px;
|
||||||
|
margin: 0 auto;
|
||||||
|
|
||||||
|
-ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
|
||||||
|
filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);
|
||||||
|
}
|
||||||
|
|
||||||
|
.leaflet-oldie .leaflet-control-zoom,
|
||||||
|
.leaflet-oldie .leaflet-control-layers,
|
||||||
|
.leaflet-oldie .leaflet-popup-content-wrapper,
|
||||||
|
.leaflet-oldie .leaflet-popup-tip {
|
||||||
|
border: 1px solid #999;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* div icon */
|
||||||
|
|
||||||
|
.leaflet-div-icon {
|
||||||
|
background: #fff;
|
||||||
|
border: 1px solid #666;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Tooltip */
|
||||||
|
/* Base styles for the element that has a tooltip */
|
||||||
|
.leaflet-tooltip {
|
||||||
|
position: absolute;
|
||||||
|
padding: 6px;
|
||||||
|
background-color: #fff;
|
||||||
|
border: 1px solid #fff;
|
||||||
|
border-radius: 3px;
|
||||||
|
color: #222;
|
||||||
|
white-space: nowrap;
|
||||||
|
-webkit-user-select: none;
|
||||||
|
-moz-user-select: none;
|
||||||
|
-ms-user-select: none;
|
||||||
|
user-select: none;
|
||||||
|
pointer-events: none;
|
||||||
|
box-shadow: 0 1px 3px rgba(0,0,0,0.4);
|
||||||
|
}
|
||||||
|
.leaflet-tooltip.leaflet-interactive {
|
||||||
|
cursor: pointer;
|
||||||
|
pointer-events: auto;
|
||||||
|
}
|
||||||
|
.leaflet-tooltip-top:before,
|
||||||
|
.leaflet-tooltip-bottom:before,
|
||||||
|
.leaflet-tooltip-left:before,
|
||||||
|
.leaflet-tooltip-right:before {
|
||||||
|
position: absolute;
|
||||||
|
pointer-events: none;
|
||||||
|
border: 6px solid transparent;
|
||||||
|
background: transparent;
|
||||||
|
content: "";
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Directions */
|
||||||
|
|
||||||
|
.leaflet-tooltip-bottom {
|
||||||
|
margin-top: 6px;
|
||||||
|
}
|
||||||
|
.leaflet-tooltip-top {
|
||||||
|
margin-top: -6px;
|
||||||
|
}
|
||||||
|
.leaflet-tooltip-bottom:before,
|
||||||
|
.leaflet-tooltip-top:before {
|
||||||
|
left: 50%;
|
||||||
|
margin-left: -6px;
|
||||||
|
}
|
||||||
|
.leaflet-tooltip-top:before {
|
||||||
|
bottom: 0;
|
||||||
|
margin-bottom: -12px;
|
||||||
|
border-top-color: #fff;
|
||||||
|
}
|
||||||
|
.leaflet-tooltip-bottom:before {
|
||||||
|
top: 0;
|
||||||
|
margin-top: -12px;
|
||||||
|
margin-left: -6px;
|
||||||
|
border-bottom-color: #fff;
|
||||||
|
}
|
||||||
|
.leaflet-tooltip-left {
|
||||||
|
margin-left: -6px;
|
||||||
|
}
|
||||||
|
.leaflet-tooltip-right {
|
||||||
|
margin-left: 6px;
|
||||||
|
}
|
||||||
|
.leaflet-tooltip-left:before,
|
||||||
|
.leaflet-tooltip-right:before {
|
||||||
|
top: 50%;
|
||||||
|
margin-top: -6px;
|
||||||
|
}
|
||||||
|
.leaflet-tooltip-left:before {
|
||||||
|
right: 0;
|
||||||
|
margin-right: -12px;
|
||||||
|
border-left-color: #fff;
|
||||||
|
}
|
||||||
|
.leaflet-tooltip-right:before {
|
||||||
|
left: 0;
|
||||||
|
margin-left: -12px;
|
||||||
|
border-right-color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Printing */
|
||||||
|
|
||||||
|
@media print {
|
||||||
|
/* Prevent printers from removing background-images of controls. */
|
||||||
|
.leaflet-control {
|
||||||
|
-webkit-print-color-adjust: exact;
|
||||||
|
print-color-adjust: exact;
|
||||||
|
}
|
||||||
|
}
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -34,6 +34,10 @@
|
||||||
{{- $printStylesheet := resources.Get "css/print.scss" }}
|
{{- $printStylesheet := resources.Get "css/print.scss" }}
|
||||||
{{- $printStylesheet := $printStylesheet | resources.ToCSS | resources.Fingerprint }}
|
{{- $printStylesheet := $printStylesheet | resources.ToCSS | resources.Fingerprint }}
|
||||||
<link rel="stylesheet" media="print" href="{{ $printStylesheet.Permalink }}" integrity="{{ $printStylesheet.Data.Integrity | html }}">
|
<link rel="stylesheet" media="print" href="{{ $printStylesheet.Permalink }}" integrity="{{ $printStylesheet.Data.Integrity | html }}">
|
||||||
|
|
||||||
|
{{- if .Param "math" -}}
|
||||||
|
{{- partialCached "math.html" . -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
{{- block "header-scripts" . -}}<!-- -->{{- end -}}
|
{{- block "header-scripts" . -}}<!-- -->{{- end -}}
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
|
|
||||||
{{ define "header-scripts" }}
|
{{ define "header-scripts" }}
|
||||||
{{ with .Params.locations }}
|
{{ with .Params.locations }}
|
||||||
<script id="Map-script" src="/js/leaflet.js"></script>
|
<script id="Map-script" src="/js/leaflet/leaflet.js"></script>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@
|
||||||
<link rel="stylesheet" type="text/css" href="{{ ( $.Page.Resources.GetMatch "style").RelPermalink }}">
|
<link rel="stylesheet" type="text/css" href="{{ ( $.Page.Resources.GetMatch "style").RelPermalink }}">
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ with .Params.locations }}
|
{{ with .Params.locations }}
|
||||||
<link rel="stylesheet" href="/css/leaflet.css">
|
<link rel="stylesheet" href="/css/leaflet/leaflet.css">
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
|
@ -44,14 +44,9 @@
|
||||||
</script>
|
</script>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ with .Params.scripts }}
|
{{ with .Params.scripts }}
|
||||||
{{ if in . "mathjax" }}
|
|
||||||
<script src="/js/polyfill.js"></script>
|
|
||||||
<script id="MathJax-script" async src="/js/mathjax/tex-chtml.js"></script>
|
|
||||||
<script src="/js/mathjax/config.js"></script>
|
|
||||||
{{ end }}
|
|
||||||
{{ if in . "charts" }}
|
{{ if in . "charts" }}
|
||||||
{{ $chartsConfigJS := $.Page.Resources.GetMatch "charts-init" | fingerprint }}
|
{{ $chartsConfigJS := $.Page.Resources.GetMatch "charts-init" | fingerprint }}
|
||||||
<script id="Charts-script" src="/js/chart.js"></script>
|
<script id="Charts-script" src="/js/chart/chart.js"></script>
|
||||||
<script id="Charts-config-script" src="{{ $chartsConfigJS.Permalink }}" integrity="{{ $chartsConfigJS.Data.Integrity }}"></script>
|
<script id="Charts-config-script" src="{{ $chartsConfigJS.Permalink }}" integrity="{{ $chartsConfigJS.Data.Integrity }}"></script>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
@ -94,9 +89,9 @@
|
||||||
{{ end }}
|
{{ end }}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p class="article-header__word-count">~<span itemprop="wordCount">{{ .FuzzyWordCount | lang.NumFmt 0 }}</span> words</p>
|
<p class="article-header__word-count">~<span itemprop="wordCount">{{ .FuzzyWordCount | lang.FormatNumberCustom 0 }}</span> words</p>
|
||||||
<p class="article-header__publish-date">Published: <span itemprop="datePublished" datetime="{{ .PublishDate }}">{{ .PublishDate.Format "January 2" }}<sup>{{ if in (slice 1 21 31) .PublishDate.Day}}st{{ else if in (slice 2 22) .PublishDate.Day}}nd{{ else if in (slice 3 23) .PublishDate.Day}}rd{{ else }}th{{ end }}</sup>, 1{{ .PublishDate.Format "2006" | lang.NumFmt 0 }} <abbr style="text-transform: small-caps; font-size: 0.8em;" title="Holocene Era">HE</abbr></span></p>
|
<p class="article-header__publish-date">Published: <span itemprop="datePublished" datetime="{{ .PublishDate }}">{{ .PublishDate.Format "January 2" }}<sup>{{ if in (slice 1 21 31) .PublishDate.Day}}st{{ else if in (slice 2 22) .PublishDate.Day}}nd{{ else if in (slice 3 23) .PublishDate.Day}}rd{{ else }}th{{ end }}</sup>, 1{{ .PublishDate.Format "2006" | lang.FormatNumberCustom 0 }} <abbr style="text-transform: small-caps; font-size: 0.8em;" title="Holocene Era">HE</abbr></span></p>
|
||||||
<p class="article-header__modified-date">Last modified: <span itemprop="dateModified" datetime="{{ .Lastmod }}">{{ .Lastmod.Format "January 2" }}<sup>{{ if in (slice 1 21 31) .Lastmod.Day}}st{{ else if in (slice 2 22) .Lastmod.Day}}nd{{ else if in (slice 3 23) .Lastmod.Day}}rd{{ else }}th{{ end }}</sup>, 1{{ .Lastmod.Format "2006" | lang.NumFmt 0 }} <abbr style="text-transform: small-caps; font-size: 0.8em;" title="Holocene Era">HE</abbr></span></p>
|
<p class="article-header__modified-date">Last modified: <span itemprop="dateModified" datetime="{{ .Lastmod }}">{{ .Lastmod.Format "January 2" }}<sup>{{ if in (slice 1 21 31) .Lastmod.Day}}st{{ else if in (slice 2 22) .Lastmod.Day}}nd{{ else if in (slice 3 23) .Lastmod.Day}}rd{{ else }}th{{ end }}</sup>, 1{{ .Lastmod.Format "2006" | lang.FormatNumberCustom 0 }} <abbr style="text-transform: small-caps; font-size: 0.8em;" title="Holocene Era">HE</abbr></span></p>
|
||||||
|
|
||||||
{{ $post_age_in_years := math.Round ( div ( div ( now.Sub .PublishDate ).Hours 24 ) 365 ) }}
|
{{ $post_age_in_years := math.Round ( div ( div ( now.Sub .PublishDate ).Hours 24 ) 365 ) }}
|
||||||
{{ if ( or .Params.site .Params.controversial ( gt $post_age_in_years 2 ) ) }}
|
{{ if ( or .Params.site .Params.controversial ( gt $post_age_in_years 2 ) ) }}
|
||||||
|
|
|
@ -7,58 +7,7 @@
|
||||||
{{ define "main-type" }}{{ .Params.mainType }}{{ end }}
|
{{ define "main-type" }}{{ .Params.mainType }}{{ end }}
|
||||||
|
|
||||||
{{ define "footer-scripts" }}
|
{{ define "footer-scripts" }}
|
||||||
<script>
|
<script src="/js/lazy-images.js"></script>
|
||||||
// Source: https://css-tricks.com/the-complete-guide-to-lazy-loading-images/
|
|
||||||
document.addEventListener("DOMContentLoaded", function() {
|
|
||||||
var lazyloadImages;
|
|
||||||
|
|
||||||
if ("IntersectionObserver" in window) {
|
|
||||||
lazyloadImages = document.querySelectorAll(".lazy");
|
|
||||||
var imageObserver = new IntersectionObserver(function(entries, observer) {
|
|
||||||
entries.forEach(function(entry) {
|
|
||||||
if (entry.isIntersecting) {
|
|
||||||
console.log("Ding");
|
|
||||||
var image = entry.target;
|
|
||||||
image.classList.remove("lazy");
|
|
||||||
imageObserver.unobserve(image);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
lazyloadImages.forEach(function(image) {
|
|
||||||
imageObserver.observe(image);
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
var lazyloadThrottleTimeout;
|
|
||||||
lazyloadImages = document.querySelectorAll(".lazy");
|
|
||||||
|
|
||||||
function lazyload () {
|
|
||||||
if(lazyloadThrottleTimeout) {
|
|
||||||
clearTimeout(lazyloadThrottleTimeout);
|
|
||||||
}
|
|
||||||
|
|
||||||
lazyloadThrottleTimeout = setTimeout(function() {
|
|
||||||
var scrollTop = window.pageYOffset;
|
|
||||||
lazyloadImages.forEach(function(img) {
|
|
||||||
if(img.offsetTop < (window.innerHeight + scrollTop)) {
|
|
||||||
img.src = img.dataset.src;
|
|
||||||
img.classList.remove('lazy');
|
|
||||||
}
|
|
||||||
});
|
|
||||||
if(lazyloadImages.length == 0) {
|
|
||||||
document.removeEventListener("scroll", lazyload);
|
|
||||||
window.removeEventListener("resize", lazyload);
|
|
||||||
window.removeEventListener("orientationChange", lazyload);
|
|
||||||
}
|
|
||||||
}, 20);
|
|
||||||
}
|
|
||||||
|
|
||||||
document.addEventListener("scroll", lazyload);
|
|
||||||
window.addEventListener("resize", lazyload);
|
|
||||||
window.addEventListener("orientationChange", lazyload);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
{{ define "main-header" }}
|
{{ define "main-header" }}
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
|
|
||||||
{{ define "header-scripts" }}
|
{{ define "header-scripts" }}
|
||||||
{{ with .Params.locations }}
|
{{ with .Params.locations }}
|
||||||
<script id="Map-script" src="/js/leaflet.js"></script>
|
<script id="Map-script" src="/js/leaflet/leaflet.js"></script>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@
|
||||||
<link rel="stylesheet" type="text/css" href="{{ ( $.Page.Resources.GetMatch "style").RelPermalink }}">
|
<link rel="stylesheet" type="text/css" href="{{ ( $.Page.Resources.GetMatch "style").RelPermalink }}">
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ with .Params.locations }}
|
{{ with .Params.locations }}
|
||||||
<link rel="stylesheet" href="/css/leaflet.css">
|
<link rel="stylesheet" href="/css/leaflet/leaflet.css">
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
|
@ -44,16 +44,9 @@
|
||||||
if (map.getZoom() < 10) map.setZoom(10);
|
if (map.getZoom() < 10) map.setZoom(10);
|
||||||
</script>
|
</script>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ with .Params.scripts }}
|
|
||||||
{{ if in . "mathjax" }}
|
|
||||||
<script src="/js/polyfill.js"></script>
|
|
||||||
<script id="MathJax-script" async src="/js/mathjax/tex-chtml.js"></script>
|
|
||||||
<script src="/js/mathjax/config.js"></script>
|
|
||||||
{{ end }}
|
|
||||||
{{ end }}
|
|
||||||
{{ if $.HasShortcode "chart" }}
|
{{ if $.HasShortcode "chart" }}
|
||||||
{{ $chartsConfigJS := $.Page.Resources.GetMatch "charts-init" | fingerprint }}
|
{{ $chartsConfigJS := $.Page.Resources.GetMatch "charts-init" | fingerprint }}
|
||||||
<script id="Charts-script" src="/js/chart.js"></script>
|
<script id="Charts-script" src="/js/chart/chart.js"></script>
|
||||||
<script id="Charts-config-script" src="{{ $chartsConfigJS.Permalink }}" integrity="{{ $chartsConfigJS.Data.Integrity }}"></script>
|
<script id="Charts-config-script" src="{{ $chartsConfigJS.Permalink }}" integrity="{{ $chartsConfigJS.Data.Integrity }}"></script>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
@ -130,11 +123,11 @@
|
||||||
{{ end }}
|
{{ end }}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p class="article-header__word-count">~<span itemprop="wordCount">{{ .FuzzyWordCount | lang.NumFmt 0 }}</span> words</p>
|
<p class="article-header__word-count">~<span itemprop="wordCount">{{ .FuzzyWordCount | lang.FormatNumberCustom 0 }}</span> words</p>
|
||||||
|
|
||||||
<p class="article-header__publish-date">Published: <time class="dt-published" datetime="{{ .PublishDate | time.Format "2006-01-02T15:04:05-07:00" }}" itemprop="datePublished">{{ .PublishDate.Format "January 2" }}<sup>{{ if in (slice 1 21 31) .PublishDate.Day}}st{{ else if in (slice 2 22) .PublishDate.Day}}nd{{ else if in (slice 3 23) .PublishDate.Day}}rd{{ else }}th{{ end }}</sup>, 1{{ .PublishDate.Format "2006" | lang.NumFmt 0 }} <abbr style="font-variant: small-caps; font-size: 0.8em;" title="Holocene Era">HE</abbr></time></p>
|
<p class="article-header__publish-date">Published: <time class="dt-published" datetime="{{ .PublishDate | time.Format "2006-01-02T15:04:05-07:00" }}" itemprop="datePublished">{{ .PublishDate.Format "January 2" }}<sup>{{ if in (slice 1 21 31) .PublishDate.Day}}st{{ else if in (slice 2 22) .PublishDate.Day}}nd{{ else if in (slice 3 23) .PublishDate.Day}}rd{{ else }}th{{ end }}</sup>, 1{{ .PublishDate.Format "2006" | lang.FormatNumberCustom 0 }} <abbr style="font-variant: small-caps; font-size: 0.8em;" title="Holocene Era">HE</abbr></time></p>
|
||||||
|
|
||||||
<p class="article-header__modified-date">Last modified: <time class="dt-updated" datetime="{{ .Lastmod | time.Format "2006-01-02T15:04:05-07:00" }}" itemprop="dateModified">{{ .Lastmod.Format "January 2" }}<sup>{{ if in (slice 1 21 31) .Lastmod.Day}}st{{ else if in (slice 2 22) .Lastmod.Day}}nd{{ else if in (slice 3 23) .Lastmod.Day}}rd{{ else }}th{{ end }}</sup>, 1{{ .Lastmod.Format "2006" | lang.NumFmt 0 }} <abbr style="font-variant: small-caps; font-size: 0.8em;" title="Holocene Era">HE</abbr></time></p>
|
<p class="article-header__modified-date">Last modified: <time class="dt-updated" datetime="{{ .Lastmod | time.Format "2006-01-02T15:04:05-07:00" }}" itemprop="dateModified">{{ .Lastmod.Format "January 2" }}<sup>{{ if in (slice 1 21 31) .Lastmod.Day}}st{{ else if in (slice 2 22) .Lastmod.Day}}nd{{ else if in (slice 3 23) .Lastmod.Day}}rd{{ else }}th{{ end }}</sup>, 1{{ .Lastmod.Format "2006" | lang.FormatNumberCustom 0 }} <abbr style="font-variant: small-caps; font-size: 0.8em;" title="Holocene Era">HE</abbr></time></p>
|
||||||
|
|
||||||
<p style="display: none">Author{{ with .Params.authors }}s{{ end }}:
|
<p style="display: none">Author{{ with .Params.authors }}s{{ end }}:
|
||||||
{{- with .Params.authors -}}
|
{{- with .Params.authors -}}
|
||||||
|
@ -216,9 +209,9 @@
|
||||||
<ul>
|
<ul>
|
||||||
{{- range . -}}
|
{{- range . -}}
|
||||||
{{ if eq ( printf "%T" . ) "map[string]interface {}" }}
|
{{ if eq ( printf "%T" . ) "map[string]interface {}" }}
|
||||||
<li><a class="button" href="{{ .link }}">{{ .title | safeHTML }}</a></li>
|
<li><a href="{{ .link }}">{{ .title | safeHTML }}</a></li>
|
||||||
{{ else }}
|
{{ else }}
|
||||||
<li><a class="button" href="{{ . }}">Link</a></li>
|
<li><a href="{{ . }}">Link</a></li>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
</ul>
|
</ul>
|
||||||
|
@ -229,9 +222,9 @@
|
||||||
<ul>
|
<ul>
|
||||||
{{- range . -}}
|
{{- range . -}}
|
||||||
{{ if eq ( printf "%T" . ) "map[string]interface {}" }}
|
{{ if eq ( printf "%T" . ) "map[string]interface {}" }}
|
||||||
<li><a class="button" href="{{ .link }}">{{ .title | safeHTML }}</a></li>
|
<li><a href="{{ .link }}">{{ .title | safeHTML }}</a></li>
|
||||||
{{ else }}
|
{{ else }}
|
||||||
<li><a class="button" href="{{ . }}">Link</a></li>
|
<li><a href="{{ . }}">Link</a></li>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
</ul>
|
</ul>
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
|
|
||||||
{{ define "header-scripts" }}
|
{{ define "header-scripts" }}
|
||||||
{{ if ( or ( eq .Type "cv" ) ( .IsDescendant ( .GetPage "/cv/organisations" ) ) ) }}
|
{{ if ( or ( eq .Type "cv" ) ( .IsDescendant ( .GetPage "/cv/organisations" ) ) ) }}
|
||||||
<script id="Google-Charts-script" src="/js/google-charts.js"></script>
|
<script id="Google-Charts-script" src="/js/google-charts/google-charts.js"></script>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
|
|
|
@ -5,26 +5,45 @@
|
||||||
{{ define "main-class" }}--section location-map{{ end }}
|
{{ define "main-class" }}--section location-map{{ end }}
|
||||||
|
|
||||||
{{ define "header-scripts" }}
|
{{ define "header-scripts" }}
|
||||||
<link rel="stylesheet" href="/css/leaflet.css"/>
|
<!-- Leaflet -->
|
||||||
|
<link rel="stylesheet" href="/css/leaflet/leaflet.css" />
|
||||||
|
<link rel="stylesheet" href="/js/leaflet-fullscreen/leaflet.fullscreen.css" />
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
||||||
{{ define "footer-scripts" }}
|
{{ define "footer-scripts" }}
|
||||||
<script src="/js/leaflet.js"></script>
|
<!-- Leaflet -->
|
||||||
<script src="/js/leaflet-heat.js"></script>
|
<script src="/js/leaflet/leaflet.js"></script>
|
||||||
|
|
||||||
|
<!-- Leaflet Heat -->
|
||||||
|
<script src="/js/leaflet-heat/leaflet-heat.js"></script>
|
||||||
|
|
||||||
|
<!-- Leaflet Fullscreen -->
|
||||||
|
<script src="/js/leaflet-fullscreen/leaflet.fullscreen.min.js"></script>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
var map = L.map('map').setView([55, -3], 3);
|
var map = L.map('map', {
|
||||||
|
fullscreenControl: true
|
||||||
|
}).setView([55, -3], 3);
|
||||||
|
|
||||||
L.tileLayer('https://tile.openstreetmap.org/{z}/{x}/{y}.png', {
|
L.tileLayer('https://tile.openstreetmap.org/{z}/{x}/{y}.png', {
|
||||||
maxZoom: 19,
|
maxZoom: 19,
|
||||||
attribution: '© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a>'
|
attribution: '© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a>'
|
||||||
}).addTo(map);
|
}).addTo(map);
|
||||||
|
|
||||||
{{- range $.Site.Data.locations -}}
|
|
||||||
/* L.marker([{{ .lat }}, {{ .lon }}]).addTo(map); */
|
|
||||||
{{- end -}}
|
|
||||||
|
|
||||||
{{- $locations := partialCached "util/get_location_leaf_nodes.html.tmpl" $.Site.Data.locations -}}
|
{{- $locations := partialCached "util/get_location_leaf_nodes.html.tmpl" $.Site.Data.locations -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
{{- range .Site.AllPages -}}
|
||||||
|
{{- with .Params.locations -}}
|
||||||
|
{{- range . -}}
|
||||||
|
{{- with ( index $locations ( replaceRE `, [A-Z]+` "" . ) ) -}}
|
||||||
|
L.marker([{{ .lat }}, {{ .lon }}]).addTo(map);
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
|
*/}}
|
||||||
|
|
||||||
L.heatLayer(
|
L.heatLayer(
|
||||||
[
|
[
|
||||||
{{- range .Site.AllPages -}}
|
{{- range .Site.AllPages -}}
|
||||||
|
@ -39,7 +58,7 @@
|
||||||
],
|
],
|
||||||
{
|
{
|
||||||
minOpacity: 0.5,
|
minOpacity: 0.5,
|
||||||
gradient: {0.2: 'blue', 0.5: 'lime', 1: 'red'}
|
gradient: {0.1: 'blue', 0.3: 'lime', 0.8: 'orange', 1: 'red'}
|
||||||
}
|
}
|
||||||
).addTo(map);
|
).addTo(map);
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
<!--
|
{{- /*
|
||||||
Renders a work citation with semantic markup, called using the `cite` shortcode.
|
Renders a work citation with semantic markup, called using the `cite` shortcode.
|
||||||
|
|
||||||
@params cite URI for work. Optional.
|
@params cite URI for work. Optional.
|
||||||
|
@ -9,7 +9,7 @@
|
||||||
@params title Title of the work to display.
|
@params title Title of the work to display.
|
||||||
@params titleLang Language code of a foreign-language work's title. Optional.
|
@params titleLang Language code of a foreign-language work's title. Optional.
|
||||||
@params titleTr English translation of a foreign-language work's title. Optional.
|
@params titleTr English translation of a foreign-language work's title. Optional.
|
||||||
-->
|
*/ -}}
|
||||||
|
|
||||||
<!-- Optional parameter overrides (for nested citations) -->
|
<!-- Optional parameter overrides (for nested citations) -->
|
||||||
|
|
||||||
|
@ -19,9 +19,12 @@
|
||||||
{{- $titleTr := default .Params.titleTr ( .Scratch.Get "titleTr" ) -}}
|
{{- $titleTr := default .Params.titleTr ( .Scratch.Get "titleTr" ) -}}
|
||||||
{{- $schemaType := default .Params.schemaType ( .Scratch.Get "schemaType" ) -}}
|
{{- $schemaType := default .Params.schemaType ( .Scratch.Get "schemaType" ) -}}
|
||||||
|
|
||||||
<!-- Validation -->
|
{{- if ( strings.Contains $cite "#" ) -}}
|
||||||
|
{{- erroridf "cite-with-fragment" "Cite parameter includes fragment identifier, which probably isn't what you want." -}}
|
||||||
|
{{- $cite = delimit ( split $cite "#" ) "" -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
<!-- TODO: check `.Params.cite` is URI -->
|
<!-- Validation -->
|
||||||
|
|
||||||
{{- if ( and ( isset .Params "citeStyle" ) ( not ( in ( slice "inherit" "enquote" "normal" ) .Params.citeStyle ) ) ) -}}
|
{{- if ( and ( isset .Params "citeStyle" ) ( not ( in ( slice "inherit" "enquote" "normal" ) .Params.citeStyle ) ) ) -}}
|
||||||
{{- erroridf "invalid-citeStyle" "Invalid `citeStyle` value %q for %q" .Params.citeStyle $title -}}
|
{{- erroridf "invalid-citeStyle" "Invalid `citeStyle` value %q for %q" .Params.citeStyle $title -}}
|
||||||
|
@ -33,6 +36,8 @@
|
||||||
{{- erroridf "invalid-schemaType" "Invalid Schema.org type value %q for %q" $schemaType $title -}}
|
{{- erroridf "invalid-schemaType" "Invalid Schema.org type value %q for %q" $schemaType $title -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
<!-- TODO: check `.Params.cite` is URI -->
|
||||||
|
|
||||||
{{- if ( or $titleLang $titleTr ) -}}
|
{{- if ( or $titleLang $titleTr ) -}}
|
||||||
{{- if ( not ( and $titleLang $titleTr ) ) -}}
|
{{- if ( not ( and $titleLang $titleTr ) ) -}}
|
||||||
{{- erroridf "invalid-foreign-title" "Must have both title translation and language set for foreign language title %q" $title -}}
|
{{- erroridf "invalid-foreign-title" "Must have both title translation and language set for foreign language title %q" $title -}}
|
||||||
|
@ -60,7 +65,16 @@
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
<span itemprop="name">
|
<span itemprop="name">
|
||||||
{{- if $titleLang -}}
|
{{- if $titleLang -}}
|
||||||
<i lang="{{ $titleLang }}" title="{{ $titleTr }}">
|
<i
|
||||||
|
lang="{{ $titleLang }}"
|
||||||
|
title="
|
||||||
|
{{- if $.Params.shortTitle -}}
|
||||||
|
{{- printf "%s [%s]" $title $titleTr | plainify -}}
|
||||||
|
{{- else -}}
|
||||||
|
{{- $titleTr | plainify -}}
|
||||||
|
{{- end -}}
|
||||||
|
"
|
||||||
|
>
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
{{- ( default $title .Params.shortTitle ) | markdownify | safeHTML -}}
|
{{- ( default $title .Params.shortTitle ) | markdownify | safeHTML -}}
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
<!--
|
||||||
|
Gets the top-level parent org of an organisation.
|
||||||
|
|
||||||
|
@params organisation The organisation to search for.
|
||||||
|
-->
|
||||||
|
|
||||||
|
{{- $organisation_page := default . ( index .Ancestors.Reverse 3 ) -}}
|
||||||
|
{{- $organisation_title := default $organisation_page.Title $organisation_page.Params.markup_title -}}
|
||||||
|
|
||||||
|
{{- return $organisation_title -}}
|
||||||
|
|
|
@ -1,16 +1,14 @@
|
||||||
<aside class="timeline__legend">
|
<aside class="timeline__legend">
|
||||||
<div>
|
<fieldset id="legend__past">
|
||||||
<label for="legend__past">Past</label>
|
<legend class="label">Past</legend>
|
||||||
<div id="legend__past">
|
|
||||||
<button id="past-unpaid" class="legend__button"><p><span class="colour-square colour-square--unpaid-past"></span> Unpaid</p></button>
|
<button id="past-unpaid" class="button legend__button"><p><span class="colour-square colour-square--unpaid-past"></span> Unpaid</p></button>
|
||||||
<button id="past-paid" class="legend__button"><p><span class="colour-square colour-square--paid-past"></span> Paid</p></button>
|
<button id="past-paid" class="button legend__button"><p><span class="colour-square colour-square--paid-past"></span> Paid</p></button>
|
||||||
</div>
|
</fieldset>
|
||||||
</div>
|
<fieldset id="legend__current">
|
||||||
<div>
|
<legend class="label">Current</legend>
|
||||||
<label for="legend__current">Current</label>
|
|
||||||
<div id="legend__current">
|
<button id="current-unpaid" class="button legend__button"><p><span class="colour-square colour-square--unpaid-current"></span> Unpaid</p></button>
|
||||||
<button id="current-unpaid" class="legend__button"><p><span class="colour-square colour-square--unpaid-current"></span> Unpaid</p></button>
|
<button id="current-paid" class="button legend__button"><p><span class="colour-square colour-square--paid-current"></span> Paid</p></button>
|
||||||
<button id="current-paid" class="legend__button"><p><span class="colour-square colour-square--paid-current"></span> Paid</p></button>
|
</fieldset>
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</aside>
|
</aside>
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
{{ block "header" . }}
|
{{ block "header" . }}
|
||||||
<h2 class="p-name site-header__title" itemprop="name"><a class="u-url" href="{{ .Site.Home.RelPermalink }}" rel="me author">{{ .Site.Title }}</a></h2>
|
<h2 class="p-name site-header__title" itemprop="name"><a class="u-url" href="{{ .Site.Home.RelPermalink }}" rel="me author">{{ .Site.Title }}</a></h2>
|
||||||
<p class="p-note site-header__tagline" itemprop="about">Views my own. Discussion ≠ endorsement. Do try this at home.</p>
|
<p class="p-note site-header__tagline" itemprop="about">Views my own. Discussion ≠ endorsement. Do try this at home.</p>
|
||||||
<p class="site-header__icons">~ <a class="u-email" href="mailto:{{ $.Site.Author.email }}" rel="me">📧</a> ~ <a class="u-url" href="{{ .Site.Params.codeURL }}" rel="me">💻</a> ~ <a class="u-key" href="/{{ .Site.Params.keyfile }}" rel="me">🔐</a> ~ <a href="/index.xml" aria-label="{{ .Site.Title }} RSS feed"><img class="feed-icon" alt="RSS feed" src="{{ .Site.Params.feedIcon }}"></a> ~</p>
|
<p class="site-header__icons">~ <a class="u-email" href="mailto:{{ $.Site.Author.email }}" rel="me">✉️</a> ~ <a class="u-url" href="{{ .Site.Params.codeURL }}" rel="me">🧑💻</a> ~ <a class="u-key" href="/{{ .Site.Params.keyfile }}" rel="me">🔐</a> ~ <a href="/index.xml" aria-label="{{ .Site.Title }} RSS feed"><img class="feed-icon" alt="RSS feed" src="{{ .Site.Params.feedIcon }}"></a> ~</p>
|
||||||
<nav class="site-header__nav">
|
<nav class="site-header__nav">
|
||||||
<ul>
|
<ul>
|
||||||
{{ range ( where .Site.Sections.ByTitle "Type" "in" site.Params.mainSections ) }}
|
{{ range ( where .Site.Sections.ByTitle "Type" "in" site.Params.mainSections ) }}
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
<section class="site-content__body">
|
<section class="site-content__body">
|
||||||
{{ range ( ( where .Pages "Draft" false ).GroupByPublishDate "2006" ) }}
|
{{ range ( ( where ( where .Pages "Draft" false ) "Params.redact" "ne" true ).GroupByPublishDate "2006" ) }}
|
||||||
{{ if ( not ( eq .Key "0001" ) ) }}
|
{{ if ( not ( eq .Key "0001" ) ) }}
|
||||||
{{ partialCached "header-tile.html" . .Key }}
|
{{ partialCached "header-tile.html" . .Key }}
|
||||||
{{ range .Pages }}
|
{{ range .Pages }}
|
||||||
{{ if ( not ( .IsDescendant ( .GetPage "/cv/roles" ) ) ) }}
|
{{ if ( not ( .IsDescendant ( .GetPage "/cv/roles" ) ) ) }}
|
||||||
{{ partialCached "item-tile.html" . .Title }}
|
{{ partialCached "item-tile.html" . .Path }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
9
layouts/partials/math.html
Normal file
9
layouts/partials/math.html
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
<script id="MathJax-script" async src="/js/mathjax/tex-chtml.js"></script>
|
||||||
|
<script>
|
||||||
|
MathJax = {
|
||||||
|
tex: {
|
||||||
|
displayMath: [['\\[', '\\]'], ['$$', '$$']], // block
|
||||||
|
inlineMath: [['\\(', '\\)']] // inline
|
||||||
|
}
|
||||||
|
};
|
||||||
|
</script>
|
|
@ -5,7 +5,7 @@
|
||||||
@params page_file_path Filepath of the calling file for error messages.
|
@params page_file_path Filepath of the calling file for error messages.
|
||||||
-->
|
-->
|
||||||
|
|
||||||
{{- $src := . -}}
|
{{- $src := .src -}}
|
||||||
|
|
||||||
<video
|
<video
|
||||||
class="u-video figure__video"
|
class="u-video figure__video"
|
||||||
|
@ -24,4 +24,4 @@
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
Your browser doesn't support embedded video, <a href="{{ $src.RelPermalink }}">view the video here</a>.
|
Your browser doesn't support embedded video, <a href="{{ $src.RelPermalink }}">view the video here</a>.
|
||||||
</video>
|
</video>
|
||||||
|
|
|
@ -15,7 +15,6 @@
|
||||||
var imageObserver = new IntersectionObserver(function(entries, observer) {
|
var imageObserver = new IntersectionObserver(function(entries, observer) {
|
||||||
entries.forEach(function(entry) {
|
entries.forEach(function(entry) {
|
||||||
if (entry.isIntersecting) {
|
if (entry.isIntersecting) {
|
||||||
console.log("Ding");
|
|
||||||
var image = entry.target;
|
var image = entry.target;
|
||||||
image.classList.remove("lazy");
|
image.classList.remove("lazy");
|
||||||
imageObserver.unobserve(image);
|
imageObserver.unobserve(image);
|
||||||
|
|
|
@ -24,7 +24,7 @@
|
||||||
{{- with .shortTitlePl -}}{{- . | safeHTML -}}{{- else -}}{{- .shortTitle | safeHTML -}}s{{- end -}}
|
{{- with .shortTitlePl -}}{{- . | safeHTML -}}{{- else -}}{{- .shortTitle | safeHTML -}}s{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
</abbr>{{- /**/ -}}
|
</abbr>{{- /**/ -}}
|
||||||
|
|
||||||
<!-- Long titles (e.g. 'foo bar baz') -->
|
<!-- Long titles (e.g. 'foo bar baz') -->
|
||||||
{{- else if ( or ( eq $mode "longTitle" ) ( eq $mode "longTitlePl" ) ) -}}
|
{{- else if ( or ( eq $mode "longTitle" ) ( eq $mode "longTitlePl" ) ) -}}
|
||||||
{{- if ( eq $mode "longTitle" ) -}}
|
{{- if ( eq $mode "longTitle" ) -}}
|
||||||
|
@ -36,7 +36,7 @@
|
||||||
{{- with .longTitlePl -}}{{- . | safeHTML -}}{{- else -}}{{- .longTitle | safeHTML -}}s{{- end -}}
|
{{- with .longTitlePl -}}{{- . | safeHTML -}}{{- else -}}{{- .longTitle | safeHTML -}}s{{- end -}}
|
||||||
{{- if .lang -}}</i>{{- end -}}{{- /**/ -}}
|
{{- if .lang -}}</i>{{- end -}}{{- /**/ -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
<!-- Full titles (e.g. 'foo bar baz (FBB)') -->
|
<!-- Full titles (e.g. 'foo bar baz (FBB)') -->
|
||||||
{{- else if ( or ( eq $mode "fullTitle" ) ( eq $mode "fullTitlePl" ) ) -}}
|
{{- else if ( or ( eq $mode "fullTitle" ) ( eq $mode "fullTitlePl" ) ) -}}
|
||||||
{{- if ( eq $mode "fullTitle" ) -}}
|
{{- if ( eq $mode "fullTitle" ) -}}
|
||||||
|
|
|
@ -1,32 +1,78 @@
|
||||||
{{- if ( not .Params ) -}}
|
{{- /*
|
||||||
{{- errorf "No params provided for blockquote" -}}
|
Renders a block quotation.
|
||||||
|
|
||||||
|
@params style Force a blockquote style. Optional.
|
||||||
|
@params cite URI for work. Optional.
|
||||||
|
@params source The speaker(s) of the quotation.
|
||||||
|
|
||||||
|
For works cited (optional):
|
||||||
|
@params ibid Whether to use ibidem as the source. Optional.
|
||||||
|
@see partials/cite.html.tmpl for full list of args.
|
||||||
|
|
||||||
|
For works cited that form part of a series (optional):
|
||||||
|
@params schemaTypeSeries The Schema.org `itemtype` value for the work series. Default 'CreativeWork'. Optional.
|
||||||
|
@params titleSeries Title of the work series to display. Optional.
|
||||||
|
@params citeSeries URI for work series. Optional.
|
||||||
|
@params titleSeriesLang Language code of a foreign-language work series' title. Optional.
|
||||||
|
@params titleSeriesTr English translation of a foreign-language work series' title. Optional.
|
||||||
|
@params numberSeries The number or code of the quoted work within its series. Optional.
|
||||||
|
*/ -}}
|
||||||
|
|
||||||
|
{{- $valid_styles := slice "" "epigram" "script" -}}
|
||||||
|
|
||||||
|
<!-- Variable assignment -->
|
||||||
|
|
||||||
|
{{- $style := default "" ( index .Params "style" ) -}}
|
||||||
|
{{- $cite := default "" ( index .Params "cite" ) -}}
|
||||||
|
{{- $ibid := default false ( index .Params "ibid" ) -}}
|
||||||
|
{{- $source := .Params.source -}}
|
||||||
|
|
||||||
|
{{- $isSourceHidden := default ( not ( or ( isset .Params "source" ) ( isset .Params "ibid" ) ) ) ( index .Params "hideSource" ) -}}
|
||||||
|
|
||||||
|
{{- $hasCitedWork := ( isset .Params "title" ) }}
|
||||||
|
{{- $hasCitedSeries := ( isset .Params "titleSeries" ) -}}
|
||||||
|
|
||||||
|
<!-- Validation -->
|
||||||
|
|
||||||
|
{{- if ( not ( in $valid_styles $style ) ) -}}
|
||||||
|
{{- errorf "Invalid blockquote style (%q) provided" $style -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{- if ( not ( or ( isset .Params "source" ) ( isset .Params "ibid" ) ) ) -}}
|
||||||
|
{{- erroridf "blockquote-no-params" "No source provided for blockquote" -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{- if ( not ( isset $.Params "cite" ) ) -}}
|
||||||
|
{{- erroridf "missing-cite" "No cite found for blockquote (%q)" .Page.File.Path -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
<!-- Rendering -->
|
||||||
|
|
||||||
<figure
|
<figure
|
||||||
class="figure--blockquote blockquote{{- if .Params.style }} blockquote--{{- .Params.style -}}{{- end -}}"
|
class="figure--blockquote blockquote{{- with $style }} blockquote--{{- . -}}{{- end -}}"
|
||||||
itemscope
|
itemscope
|
||||||
itemtype="Quotation"
|
itemtype="Quotation"
|
||||||
role="group">
|
role="group">
|
||||||
<blockquote
|
<blockquote
|
||||||
class="blockquote__body"
|
class="blockquote__body"
|
||||||
{{- if .Params.cite }} cite="{{ .Params.cite }}"{{- end -}}>
|
{{- with $cite }} cite="{{ . }}"{{- end -}}>
|
||||||
{{- .Inner | .Page.RenderString -}}
|
{{- .Inner | .Page.RenderString -}}
|
||||||
</blockquote>
|
</blockquote>
|
||||||
<figcaption class="blockquote__caption">
|
<figcaption class="blockquote__caption{{- if $isSourceHidden }} blockquote__caption--hidden{{- end -}}">
|
||||||
{{- if .Params.ibid -}}
|
{{- if $ibid -}}
|
||||||
<abbr lang="la" title="ibīdem [in the same place]">Ibid.</abbr>
|
<abbr lang="la" title="ibīdem [in the same place]">Ibid.</abbr>
|
||||||
{{- else -}}
|
{{- else if $source -}}
|
||||||
<span itemprop="spokenByCharacter">{{- .Params.source | safeHTML -}}</span>
|
<span temprop="spokenByCharacter">{{- $source | safeHTML -}}</span>
|
||||||
{{- if .Params.title -}}, <span itemprop="isBasedOn">{{- partial "cite.html.tmpl" . -}}
|
{{- if $hasCitedWork -}}, <span itemprop="isBasedOn">{{- partial "cite.html.tmpl" . -}}
|
||||||
{{- if ( isset .Params "titleSeries" ) }} (
|
{{- if $hasCitedSeries }} (
|
||||||
{{- .Scratch.Set "cite" .Params.citeSeries -}}
|
{{- .Scratch.Set "cite" .Params.citeSeries -}}
|
||||||
{{- .Scratch.Set "title" .Params.titleSeries -}}
|
{{- .Scratch.Set "title" .Params.titleSeries -}}
|
||||||
{{- .Scratch.Set "titleLang" .Params.titleSeriesLang -}}
|
{{- .Scratch.Set "titleLang" .Params.titleSeriesLang -}}
|
||||||
{{- .Scratch.Set "titleTr" .Params.titleSeriesTr -}}
|
{{- .Scratch.Set "titleTr" .Params.titleSeriesTr -}}
|
||||||
{{- .Scratch.Set "schemaType" .Params.schemaTypeSeries -}}
|
{{- .Scratch.Set "schemaType" .Params.schemaTypeSeries -}}
|
||||||
{{- partial "cite.html.tmpl" . -}}
|
{{- partial "cite.html.tmpl" . -}}
|
||||||
{{- with .Params.numberSeries }}, {{ . | safeHTML -}}{{- end -}}
|
{{- with .Params.numberSeries }}, {{ . | safeHTML -}}{{- end -}}
|
||||||
){{- end -}}</span>
|
){{- end -}}</span>
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
</figcaption>
|
</figcaption>
|
||||||
|
|
33
layouts/shortcodes/button.html
Normal file
33
layouts/shortcodes/button.html
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
{{- /*
|
||||||
|
Renders a button, or no-JS fallback.
|
||||||
|
|
||||||
|
@params id ID for button.
|
||||||
|
@params label Label text for button.
|
||||||
|
@params text Text for button.
|
||||||
|
*/ -}}
|
||||||
|
|
||||||
|
<!-- Validation -->
|
||||||
|
|
||||||
|
{{- if ( not ( isset .Params "id" ) ) -}}
|
||||||
|
{{- errorf "No ID set for button (%q)" .Page.File.Path -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{- if ( not ( isset .Params "label" ) ) -}}
|
||||||
|
{{- errorf "No label set for button '%q' (%q)" .Params.id .Page.File.Path -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{- if ( not ( isset .Params "text" ) ) -}}
|
||||||
|
{{- errorf "No text set for button '%q' (%q)" .Params.id .Page.File.Path -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
<!-- Rendering -->
|
||||||
|
|
||||||
|
<noscript>You must have JavaScript enabled to interact with this button.</noscript>
|
||||||
|
|
||||||
|
|
||||||
|
<label class="label label--button">
|
||||||
|
{{- .Params.label -}}:
|
||||||
|
<button id="{{- .Params.id -}}" class="button">
|
||||||
|
{{- .Params.text -}}
|
||||||
|
</button>
|
||||||
|
</label>
|
|
@ -4,14 +4,18 @@
|
||||||
|
|
||||||
<figure class="article__figure figure figure--chart{{ with .Get "class" }} {{ . }}{{ end }}" role="group">
|
<figure class="article__figure figure figure--chart{{ with .Get "class" }} {{ . }}{{ end }}" role="group">
|
||||||
{{- with .Get "chart-id" -}}
|
{{- with .Get "chart-id" -}}
|
||||||
<canvas class="chart" id="{{ . }}">
|
<div class="chart-container">
|
||||||
You must enable Javascript to view this chart.
|
<canvas class="chart" id="{{ . }}">
|
||||||
</canvas>
|
You must enable Javascript to view this chart.
|
||||||
|
</canvas>
|
||||||
|
</div>
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- with .Get "chart-id-2" -}}
|
{{- with .Get "chart-id-2" -}}
|
||||||
<canvas class="chart" id="{{ . }}">
|
<div class="chart-container">
|
||||||
You must enable Javascript to view this chart.
|
<canvas class="chart" id="{{ . }}">
|
||||||
</canvas>
|
You must enable Javascript to view this chart.
|
||||||
|
</canvas>
|
||||||
|
</div>
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
{{- if or ( .Get "caption" ) ( .Get "title" ) -}}
|
{{- if or ( .Get "caption" ) ( .Get "title" ) -}}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
<!--
|
{{- /*
|
||||||
Renders a work citation with semantic markup.
|
Renders a work citation with semantic markup.
|
||||||
|
|
||||||
@params cite URI for work. Optional.
|
@params cite URI for work. Optional.
|
||||||
|
@ -9,7 +9,7 @@
|
||||||
@params title Title of the work to display.
|
@params title Title of the work to display.
|
||||||
@params titleLang Language code of a foreign-language work's title. Optional.
|
@params titleLang Language code of a foreign-language work's title. Optional.
|
||||||
@params titleTr English translation of a foreign-language work's title. Optional.
|
@params titleTr English translation of a foreign-language work's title. Optional.
|
||||||
-->
|
*/ -}}
|
||||||
|
|
||||||
<!-- Validation -->
|
<!-- Validation -->
|
||||||
|
|
||||||
|
@ -23,6 +23,6 @@
|
||||||
|
|
||||||
<!-- Rendering -->
|
<!-- Rendering -->
|
||||||
|
|
||||||
{{- $citationId := cond ( .Params.cite | not | not ) .Params.cite .Params.title -}}
|
{{- $citationId := printf "%s%s" ( cond ( isset .Params "cite" ) .Params.cite .Params.title ) ( default "" .Params.shortTitle ) -}}
|
||||||
|
|
||||||
{{- /**/ -}}{{- partialCached "cite.html.tmpl" . $citationId -}}{{- /**/ -}}
|
{{- partialCached "cite.html.tmpl" . $citationId -}}
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
<h3 class="comment__author" itemprop="author">{{ .Params.author }}</h3>
|
<h3 class="comment__author" itemprop="author">{{ .Params.author }}</h3>
|
||||||
{{- $publishDate := time .Params.publishDate -}}
|
{{- $publishDate := time .Params.publishDate -}}
|
||||||
<p class="comment__publish-date">
|
<p class="comment__publish-date">
|
||||||
<time class="dt-published" datetime="{{ $publishDate.Format "2006-01-02T15:04:05-07:00" }}" itemprop="datePublished">{{ $publishDate.Format "January 2" }}<sup>{{ if in (slice 1 21 31) $publishDate.Day }}st{{ else if in (slice 2 22) $publishDate.Day}}nd{{ else if in (slice 3 23) $publishDate.Day }}rd{{ else }}th{{ end }}</sup>, 1{{ $publishDate.Format "2006" | lang.NumFmt 0 }} <abbr style="font-variant: small-caps; font-size: 0.8em;" title="Holocene Era">HE</abbr></time>
|
<time class="dt-published" datetime="{{ $publishDate.Format "2006-01-02T15:04:05-07:00" }}" itemprop="datePublished">{{ $publishDate.Format "January 2" }}<sup>{{ if in (slice 1 21 31) $publishDate.Day }}st{{ else if in (slice 2 22) $publishDate.Day}}nd{{ else if in (slice 3 23) $publishDate.Day }}rd{{ else }}th{{ end }}</sup>, 1{{ $publishDate.Format "2006" | lang.FormatNumberCustom 0 }} <abbr style="font-variant: small-caps; font-size: 0.8em;" title="Holocene Era">HE</abbr></time>
|
||||||
</p>
|
</p>
|
||||||
{{- with .Params.source -}}
|
{{- with .Params.source -}}
|
||||||
<p class="comment__source">Source: {{ . }}</p>
|
<p class="comment__source">Source: {{ . }}</p>
|
||||||
|
|
|
@ -47,7 +47,7 @@
|
||||||
{{- partial "media/audio.html.tmpl" $src -}}
|
{{- partial "media/audio.html.tmpl" $src -}}
|
||||||
|
|
||||||
{{- else -}}
|
{{- else -}}
|
||||||
{{- partial "media/video.html.tmpl" ( dict "." $src "page_file_path" .Page.File.Path ) -}}
|
{{- partial "media/video.html.tmpl" ( dict "src" $src "page_file_path" .Page.File.Path ) -}}
|
||||||
|
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
<!-- Rendering -->
|
<!-- Rendering -->
|
||||||
|
<div>
|
||||||
{{- if .Get "link" -}}
|
{{- if .Get "link" -}}
|
||||||
{{- if $linkedResource -}}
|
{{- if $linkedResource -}}
|
||||||
<a href="{{- $linkedResource.RelPermalink -}}"{{- with .Get "rel" }} rel="{{- . -}}"{{- end -}}>
|
<a href="{{- $linkedResource.RelPermalink -}}"{{- with .Get "rel" }} rel="{{- . -}}"{{- end -}}>
|
||||||
|
@ -42,4 +42,9 @@
|
||||||
|
|
||||||
{{- if .Get "link" -}}
|
{{- if .Get "link" -}}
|
||||||
</a>
|
</a>
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{- with ( .Get "caption" ) -}}
|
||||||
|
<div class="figure__caption"><p class="figcaption__caption">{{ . | safeHTML }}</p></div>
|
||||||
|
{{- end -}}
|
||||||
|
</div>
|
||||||
|
|
|
@ -40,8 +40,8 @@
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
{{- partial "media/video.html.tmpl" ( dict "." $src "page_file_path" .Page.File.Path ) -}}
|
{{- partial "media/video.html.tmpl" ( dict "src" $src "page_file_path" .Page.File.Path ) -}}
|
||||||
|
|
||||||
{{- if .Get "link" -}}
|
{{- if .Get "link" -}}
|
||||||
</a>
|
</a>
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
Loading…
Reference in a new issue