Reseting all redundant commits

This commit is contained in:
Set Hallstrom 2020-07-21 11:05:32 +02:00
parent ad05bc280a
commit 9f59a32bf1
421 changed files with 72746 additions and 3044 deletions

300
_layouts/album.html Normal file
View file

@ -0,0 +1,300 @@
---
lang: en
---
<!DOCTYPE HTML>
<!--
Based on _Story_ by html5up.net | @ajlkn
Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
Remixed and Jekyllified by Setto
-->
<html lang="{% if page.lang != site.lang %}{{ page.lang }}{% else %}{{ site.lang }}{% endif %}">
<head>
<link type="application/atom+xml" rel="alternate" href="{{ site.url }}/feed.xml" title="{{ site.name }}" />
{% include seo.html %}
{% include relBase.html %}
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=yes" />
<link rel="stylesheet" href="{{ relBase }}/assets/css/main20200710.css" />
<link rel="apple-touch-icon" href="{{ site.url }}/apple-touch-icon.png">
<link rel="icon" type="image/png" href="{{ site.url }}/touch-icon.png" sizes="192x192">
<link rel="shortcut icon" href="{{ site.url }}{{ site.icon }}" type="image/png" />
<noscript><link rel="stylesheet" href="{{ relBase }}/assets/css/noscript20200710.css" /></noscript>
</head>
<body id="body">
<span id="top" style="display: none;"></span>
<!-- Wrapper -->
<div id="wrapper" class="divided">
<!-- Banner -->
<section
class="banner onload-image-fade-in onload-content-fade-right style2 fullscreen content-align-center image-position-center"
style="min-height:100vh;">
<div class="content editable">
<h1 class="editable">{{ page.title }}</h1>
<p>by <strong>{{ page.artists }}</strong>
<br />{{ page.date | date: '%Y' }}
</p>
<ul class="actions stacked">
<li><a href="#moe" class="button small smooth-scroll">cheggit!</a></li>
</ul>
</div>
<div class="image">
<img src="{{ site.mediaurl }}/{{ page.slug }}/{{ page.tracks[0].trackSlug }}.jpeg" alt="{{ page.title }}" />
</div>
</section>
<!-- Content -->
<section class="wrapper style1 align-center">
<div class="inner" style="padding-top: 40px;">
<div class="index align-left">
<!-- Author -->
<section style="padding-top:40px;" id="moe">
{% include author.html %}
<!-- Content -->
<div class="content">
<!-- HERE BEGINS MADNESS -->
<!-- Content -->
<div class="content">
<div id="mainwrap">
<div id="nowPlay">
<p class="right" id="npTitle" style="font-weight: bold;"></p>
<p class="left" id="npAction">Paused...</p>
</div>
<div id="audiowrap">
<div id="audio0">
<audio id="audio1" preload="metadata" controls="controls">Your browser does not support HTML5
Audio!</audio>
</div>{% assign onetracker = page.tracks | size %}
{% if onetracker > 1 %}
<div id="tracks">
<a id="btnPrev"><span class="icon solid fa-fast-backward"></span></a>
<a id="btnNext"><span class="icon solid fa-fast-forward"></span></a>
</div>
{% endif %}
</div>
<div id="plwrap">
<ul id="plList">
{% for track in page.tracks %}
<li class="">
<div class="plItem">
<div class="plNum">{{ track.common.track.no }}.</div>
<div class="plTitle">{{ track.common.title }}</div>
<div class="plLength">{% assign round_seconds = track.format.duration | round %}{% assign minutes = round_seconds | divided_by: 60 %}{% assign leftover_seconds = minutes | times: 60 %}{{ minutes }}:{% assign seconds_without_zero = round_seconds | minus: leftover_seconds %}{% if seconds_without_zero < 10 %}0{% endif %}{{ seconds_without_zero }}</div>
</div>
</li>
{% endfor %}
</ul>
</div>
</div>
<div id="noJSalbum">
{% for track in page.tracks %}
<div class="plItem">
<div class="plNum">{{ track.common.track.no }}.</div>
<div class="plTitle"><a href="{{ track.audio }}">{{ track.common.title }} </a></div>
<div class="plLength">{% assign round_seconds = track.format.duration | round %}{% assign minutes = round_seconds | divided_by: 60 %}{% assign leftover_seconds = minutes | times: 60 %}{{ minutes }}:{% assign seconds_without_zero = round_seconds | minus: leftover_seconds %}{% if seconds_without_zero < 10 %}0{% endif %}{{ seconds_without_zero }}</div>
</div>
{% endfor %}
</div>
</div>
<div class="content" style="font-family: monospace;font-size: 16px;margin-top:60px;">
{{ content }}
<p>{{ page.credits }}</p>
</div>
</div>
</section>
</div>
</div>
</section>
<!-- HERE ENDS MADNESS -->
{% include streamer.html %}
<section class="wrapper style1 align-center">
<div class="inner">
<h2>Track list</h2>
<p>Use thses pages to share one song in particular</p>
</div>
</section>
{% for track in page.tracks %}
<section
class="spotlight style4 orient-{% cycle 'left', 'right' %} content-align-{% cycle 'right', 'left' %} image-position-center onscroll-image-fade-in"
{% if forloop.index == 1 %}style="box-shadow: none;" {% endif %}>
<div class="content">
<h3>{{ track.common.title }}</h3>
<p>
{% assign round_seconds = track.format.duration | round %}{% assign minutes = round_seconds | divided_by: 60 %}{% assign leftover_seconds = minutes | times: 60 %}{{ minutes }}:{% assign seconds_without_zero = round_seconds | minus: leftover_seconds %}{% if seconds_without_zero < 10 %}0{% endif %}{{ seconds_without_zero }}
<br /><strong>{{ track.common.genre }}</strong>
<br />{{ track.common.year }}</p>
<ul class="actions stacked">
<li><a href="{{ relBase }}/albums/{{ track.slug }}/" class="button">Track</a></li>
</ul>
</div>
<div class="image">
<img src="{{ site.mediaurl }}/{{ track.albumSlug }}/{{ track.trackSlug }}.jpeg" alt="{{ track.common.title }}" />
</div>
</section>
{% endfor %}
<section class="wrapper style1 align-center">
<div class="inner">
<div class="index align-left">
<!-- Author -->
<section>
<!-- Content -->
<div class="content">
<!-- post Naviation -->
<div style="text-align: center;">
<h3>More releases</h3>
</div>
<div class="post-nav">
<div>
{% if page.previous.url and page.lang == page.previous.lang %}
<h4><a href="{{page.previous.url}}" alt="Read {{page.previous.title}}" title="Read {{page.previous.title}}"><i class="fas fa-arrow-left"></i></a> <a
href="{{page.previous.url}}">&nbsp;{{page.previous.title}}</a></h4>
<p style="margin-right: 20px">{{ page.previous.description }}</p>
{% endif %}
</div>
<div class="post-nav-next">
{% if page.next.url and page.lang == page.next.lang %}
<h4><a href="{{page.next.url}}">&nbsp;{{page.next.title}}</a> <a href="{{page.next.url}}" alt="Read {{page.next.title}}" title="Read {{page.next.title}}"><i
class="fas fa-arrow-right"></i></a></h4>
<p style="margin-left: 20px">{{ page.next.description }}</p>
{% endif %}
</div>
</div>
<!-- End Post Navigation -->
</div>
</section>
</div>
</div>
</section>
{% include footer.html %}
</div>
{% include navigation.html %}
{% include scripts.html %}
<script type="text/javascript">
// html5media enables <video> and <audio> tags in all major browsers
// External File: http://api.html5media.info/1.1.8/html5media.min.js
// Add user agent as an attribute on the <html> tag...
// Inspiration: http://css-tricks.com/ie-10-specific-styles/
var b = document.documentElement;
b.setAttribute('data-useragent', navigator.userAgent);
b.setAttribute('data-platform', navigator.platform);
// HTML5 audio player + playlist controls...
// Inspiration: http://jonhall.info/how_to/create_a_playlist_for_html5_audio
// Mythium Archive: https://archive.org/details/mythium/
jQuery(function ($) {
var supportsAudio = !!document.createElement('audio').canPlayType;
if (supportsAudio) {
var index = 0,
playing = false,
mediaPath = '',
extension = '',
tracks = [{% for track in page.tracks %}{
"track": {{ track.common.track.no }},
"name": "{{ track.common.title }}",
"length": "{% assign round_seconds = track.format.duration | round %}{% assign minutes = round_seconds | divided_by: 60 %}{% assign leftover_seconds = minutes | times: 60 %}{{ minutes }}:{{ round_seconds | minus: leftover_seconds }}",
"file": "{{ site.mediaurl }}/{{ track.albumSlug }}/{{ track.trackSlug }}"
}{% unless forloop.last %},{% endunless %}{% endfor %}],
trackCount = tracks.length,
npAction = $('#npAction'),
npTitle = $('#npTitle'),
audio = $('#audio1').bind('play', function () {
playing = true;
npAction.text('Playing...');
}).bind('pause', function () {
playing = false;
npAction.text('Paused...');
}).bind('ended', function () {
npAction.text('Paused...');
if ((index + 1) < trackCount) {
index++;
loadTrack(index);
audio.play();
} else {
audio.pause();
index = 0;
loadTrack(index);
}
}).get(0),
btnPrev = $('#btnPrev').click(function () {
if ((index - 1) > -1) {
index--;
loadTrack(index);
if (playing) {
audio.play();
}
} else {
audio.pause();
index = 0;
loadTrack(index);
}
}),
btnNext = $('#btnNext').click(function () {
if ((index + 1) < trackCount) {
index++;
loadTrack(index);
if (playing) {
audio.play();
}
} else {
audio.pause();
index = 0;
loadTrack(index);
}
}),
li = $('#plList li').click(function () {
var id = parseInt($(this).index());
if (id !== index) {
playTrack(id);
}
}),
loadTrack = function (id) {
$('.plSel').removeClass('plSel');
$('#plList li:eq(' + id + ')').addClass('plSel');
npTitle.text(tracks[id].name);
index = id;
audio.src = mediaPath + tracks[id].file + extension;
$('audio').attr("data-matomo-title", tracks[id].name);
},
playTrack = function (id) {
loadTrack(id);
audio.play();
};
extension = audio.canPlayType('audio/mpeg') ? '.mp3' : audio.canPlayType('audio/ogg') ? '.ogg' : '';
loadTrack(index);
}
});
</script>
{% include cookie-consent.html %}
</body>
</html>

3
_layouts/blog.html Normal file
View file

@ -0,0 +1,3 @@
---
layout: default
---

View file

@ -1,29 +1,34 @@
---
---
{% include relBase.html %}
<!DOCTYPE html>
<html lang="en">
<!DOCTYPE HTML>
<!--
Based on _Story_ by html5up.net | @ajlkn
Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
Remixed and Jekyllified by Setto
-->
<html lang="{% if page.lang != site.lang %}{{ page.lang }}{% else %}{{ site.lang }}{% endif %}">
<head>
{% include seo.html %}
{% include relBase.html %}
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=yes" />
<link rel="apple-touch-icon" href="{{ relBase }}/apple-touch-icon.png">
<link rel="icon" type="image/png" href="{{ relBase }}/touch-icon.png" sizes="192x192">
<link rel="shortcut icon" href="{{ relBase }}/favicon.png" type="image/png" />
<link rel="stylesheet" href="{{ relBase }}/assets/css/style20200128-1.css" />
<script src="/assets/js/jquery-3.4.1.min.js"></script>
<script type="text/javascript" src="/assets/js/isotope.pkgd.min.js"></script>
{% include seo.html %}
{% include matomo.html %}
<link rel="stylesheet" href="{{ relBase }}/assets/css/main20200710.css" />
<link rel="apple-touch-icon" href="{{ site.url }}/apple-touch-icon.png">
<link rel="icon" type="image/png" href="{{ site.url }}/touch-icon.png" sizes="192x192">
<link rel="shortcut icon" href="{{ site.url }}{{ site.icon }}" type="image/png" />
<noscript><link rel="stylesheet" href="{{ relBase }}/assets/css/noscript20200710.css" /></noscript>
</head>
<body>
{% if page.collection == 'tracks' or page.url == '/music/' %}
<div id="wallpaper">
{{ content }}
</div>
{% else %}
{{ content }}
{% endif %}
<body id="body">
<span id="top" style="display: none;"></span>
<!-- Wrapper -->
<div id="wrapper" class="divided">
{{ content }}
</div>
{% include navigation.html %}
{% include scripts.html %}
{% include cookie-consent.html %}
</body>
</html>

View file

@ -1,114 +0,0 @@
---
layout: default
---
{% include relBase.html %}
{% include navmenu.html %}
<div id="player">
<div id="info">
<div id="controls">
<div class="container">
<button id="mu_pause">Play</button><br /><br />
{% if page.previous != nil %}
<a href="{{ relBase }}{{ page.previous.url }}" title="Previous Track"> <img
src="{{ relBase }}/assets/img/icons/rewind.svg" title="Previous Track" /> </a>
{% endif %}
<a id="download" title="Download This Track!" href="{{ page.mp3 }}"> <img
src="{{ relBase }}/assets/img/icons/download.svg" title="Download Track" /> </a>
{% if page.next != nil %}
<a href="{{ relBase }}{{ page.next.url }}" title="Next Track"> <img
src="{{ relBase }}/assets/img/icons/fastforward.svg" title="Next Track" /> </a>{% endif %}
<br /><br />{% include liberapay.html %}
</div>
</div>
</div>
<div class="trackcontainer">
<h1>{{ page.title }}</h1>
<p style="margin-bottom: 0px;">{% for c in page.categories %}{{ c }}{% unless forloop.last %}&nbsp;|&nbsp;{% endunless %}{% endfor %}<br />{{ page.date | date: '%Y - %B' }}
<br />
<span id="tracktime" style="font-weight: normal;">&nbsp;</span></p>
{% include cookiemonster.html %}
</div>
<div id="timer">
{{ page.content }}
<img src="{{ page.image }}" alt="cover art for {{ page.title }}" width="100%" />
</div>
</div>
<audio data-matomo-title="{{ page.title }}" preload="true" autoplay="true"
ontimeupdate="document.getElementById('tracktime').innerHTML = Math.floor(this.currentTime) + ' / ' + Math.floor(this.duration) + ' Seconds';">
<source src="{{ page.mp3 }}" type="audio/mpeg" />
<source src="{{ page.ogg }}" type="audio/ogg" />
<h1>Your browser isn't ready for so much hotness. Use the download-link instead.</h1>.
</audio>
<script type="text/javascript">
function loadUrl(newLocation) {
window.location = newLocation;
return false;
}
var mu = document.getElementsByTagName("audio")[0];
var anim = document.getElementById("wallpaper");
var pauseButton = document.getElementById("mu_pause");
function muFade() {
mu.classList.add("stopfade");
anim.classList.add("stopfade");
}
mu.addEventListener('ended', function () {
// only functional if "loop" is removed
mu.pause();
mu.currentTime = 0;
{% if page.previous != nil %}
loadUrl('{{ relBase }}{{ page.previous.url }}'); return false;
{% endif %}
// qq IE10
muFade();
});
pauseButton.addEventListener("click", function () {
mu.classList.toggle("stopfade");
if (mu.paused) {
mu.play();
pauseButton.innerHTML = "Pause";
} else {
mu.pause();
pauseButton.innerHTML = "Resume";
}
});
</script>
<style type="text/css">
body {
background-image:url('{{ page.image }}') ;
background-size: 200%;
background-repeat: repeat;
}
#navigation {
opacity: 1;
}
#wallpaper {
background-image: url(/assets/img/world2.svg);
-webkit-animation: AnimationName 30s ease infinite;
-moz-animation: AnimationName 30s ease infinite;
animation: AnimationName 30s ease infinite;
height: fit-content;
@-webkit-keyframes AnimationName {
0%{background-position:0% 91%}
50%{background-position:100% 10%}
100%{background-position:0% 91%}
}
@-moz-keyframes AnimationName {
0%{background-position:0% 91%}
50%{background-position:100% 10%}
100%{background-position:0% 91%}
}
@keyframes AnimationName {
0%{background-position:0% 91%}
50%{background-position:100% 10%}
100%{background-position:0% 91%}
}
}
.stopfade {
animation-play-state: paused;
}
</style>

View file

@ -1,5 +1,3 @@
---
---
{% include relBase.html %}
{{ content }}
{{ content }}

View file

43
_layouts/page.html Normal file
View file

@ -0,0 +1,43 @@
---
layout: default
---
{% include relBase.html %}
<!-- Banner -->
<section class="banner onload-image-fade-in onload-content-fade-right style2 fullscreen content-align-center image-position-center" style="min-height:100vh;">
<div class="content">
<h1>{{ page.title }}</h1>
<p>{{ page.description }}</p>
</div>
<div class="image">
<img src="{{ page.image }}" alt="unfound page" />
</div>
</section>
<!-- Content -->
<section class="wrapper style1 align-center">
<div class="inner">
<div class="index align-left">
<!-- Author -->
<section>
{% if page.url != '/cookies/' %}
{% if page.url != '/webcreds/' %}
{% include author.html %}
{% endif %}{% endif %}
<!-- Content -->
<div class="content">
{{ content }}
</div>
</section>
</div>
</div>
</section>
{% include footer.html %}

403
_layouts/post.html Normal file
View file

@ -0,0 +1,403 @@
---
---
{% if page.category == 'releases' %}
<!DOCTYPE HTML>
<!--
Based on _Story_ by html5up.net | @ajlkn
Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
Remixed and Jekyllified by Setto
-->
<html lang="{% if page.lang != site.lang %}{{ page.lang }}{% else %}{{ site.lang }}{% endif %}">
<head>
<link type="application/atom+xml" rel="alternate" href="{{ site.url }}/feed.xml" title="{{ site.name }}" />
{% include seo.html %}
{% include relBase.html %}
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=yes" />
<link rel="stylesheet" href="{{ relBase }}/assets/css/main20200710.css" />
<link rel="apple-touch-icon" href="{{ site.url }}/apple-touch-icon.png">
<link rel="icon" type="image/png" href="{{ site.url }}/touch-icon.png" sizes="192x192">
<link rel="shortcut icon" href="{{ site.url }}{{ site.icon }}" type="image/png" />
<noscript><link rel="stylesheet" href="{{ relBase }}/assets/css/noscript20200710.css" /></noscript>
</head>
<body id="body">
<span id="top" style="display: none;"></span>
<!-- Wrapper -->
<div id="wrapper" class="divided">
<!-- Banner -->
<section
class="banner onload-image-fade-in onload-content-fade-right style2 fullscreen content-align-center image-position-center"
style="min-height:100vh;">
<div class="content editable">
<h1 class="editable">{{ page.title }}</h1>
<p>{{ page.description }}</p>
<ul class="actions stacked">
<li><a href="#moe" class="button small smooth-scroll">cheggit!</a></li>
</ul>
</div>
<div class="image">
<img src="{{ relBase }}{{ page.image }}" alt="{{ page.title }}" class="editable" />
</div>
</section>
<!-- Content -->
<section class="wrapper style1 align-center">
<div class="inner" style="padding-top: 40px;">
<div class="index align-left">
<!-- Author -->
<section style="padding-top:40px;" id="moe">
{% include author.html %}
<!-- Content -->
<div class="content">
<!-- HERE BEGINS MADNESS -->
{% for album in site.albums %}
{% if page.album == album.slug %}
<!-- Content -->
<div class="content">
<div id="mainwrap">
<div id="nowPlay">
<p class="right" id="npTitle" style="font-weight: bold;"></p>
<p class="left" id="npAction">Paused...</p>
</div>
<div id="audiowrap">
<div id="audio0">
<audio id="audio1" preload="metadata" controls="controls">Your browser does not support HTML5
Audio!</audio>
</div>{% assign onetracker = album.tracks | size %}
{% if onetracker > 1 %}
<div id="tracks">
<a id="btnPrev"><span class="icon solid fa-fast-backward"></span></a>
<a id="btnNext"><span class="icon solid fa-fast-forward"></span></a>
</div>
{% endif %}
</div>
<div id="plwrap">
<ul id="plList">
{% for track in album.tracks %}
<li class="">
<div class="plItem">
<div class="plNum">{{ track.common.track.no }}.</div>
<div class="plTitle">{{ track.common.title }}</div>
<div class="plLength">{% assign round_seconds = track.format.duration | round %}{% assign minutes = round_seconds | divided_by: 60 %}{% assign leftover_seconds = minutes | times: 60 %}{{ minutes }}:{% assign seconds_without_zero = round_seconds | minus: leftover_seconds %}{% if seconds_without_zero < 10 %}0{% endif %}{{ seconds_without_zero }}</div>
</div>
</li>
{% endfor %}
</ul>
</div>
</div>
<div id="noJSalbum">
{% for track in album.tracks %}
<div class="plItem">
<div class="plNum">{{ track.common.track.no }}.</div>
<div class="plTitle"><a href="{{ site.mediaurl }}/{{ track.albumSlug }}/{{ track.trackSlug }}.mp3">{{ track.common.title }} </a></div>
<div class="plLength">{% assign round_seconds = track.format.duration | round %}{% assign minutes = round_seconds | divided_by: 60 %}{% assign leftover_seconds = minutes | times: 60 %}{{ minutes }}:{{ round_seconds | minus: leftover_seconds }}</div>
</div>
{% endfor %}
</div>
</div>
<div class="content" style="font-family: monospace;font-size: 16px;margin-top:60px;">
{{ content }}
<p>{{ page.credits }}</p>
</div>
</div>
</section>
</div>
</div>
</section>
{% include streamer.html %}
<!-- Tracks -->
{% for track in album.tracks %}
<section
class="spotlight style4 orient-{% cycle 'left', 'right' %} content-align-left image-position-center onscroll-image-fade-in"
{% if forloop.index == 1 %}style="box-shadow: none;" {% endif %}>
<div class="content">
<h3>{{ track.common.title }}</h3>
<p>
{% assign round_seconds = track.format.duration | round %}{% assign minutes = round_seconds | divided_by: 60 %}{% assign leftover_seconds = minutes | times: 60 %}{{ minutes }}:{{ round_seconds | minus: leftover_seconds }}
<br /><strong>{{ track.common.genre }}</strong>
<br />{{ track.common.year }}</p>
<ul class="actions stacked">
<li><a href="{{ relBase }}/tracks/{{ track.slug }}/" class="button">Track</a></li>
</ul>
</div>
<div class="image">
<img src="{{ site.mediaurl }}/{{ track.albumSlug }}/{{ track.trackSlug }}.jpeg" alt="{{ track.common.title }}" />
</div>
</section>
{% endfor %}
<!-- END Tracks -->
{% break %} {% endif %} {% endfor %}
<!-- HERE ENDS MADNESS -->
<section class="wrapper style1 align-center">
<div class="inner">
<div class="index align-left">
<!-- Author -->
<section>
<!-- Content -->
<div class="content">
<!-- post Naviation -->
<div style="text-align: center;">
<h3>{{ site.data.translations[page.lang].post-nav}}</h3>
</div>
<div class="post-nav">
<div>
{% if page.previous.url and page.lang == page.previous.lang %}
<h4><a href="{{page.previous.url}}" alt="Read {{page.previous.title}}" title="Read {{page.previous.title}}"><i class="fas fa-arrow-left"></i></a> <a
href="{{page.previous.url}}">&nbsp;{{page.previous.title}}</a></h4>
<p style="margin-right: 20px">{{ page.previous.description }}</p>
{% endif %}
</div>
<div class="post-nav-next">
{% if page.next.url and page.lang == page.next.lang %}
<h4><a href="{{page.next.url}}">&nbsp;{{page.next.title}}</a> <a href="{{page.next.url}}" alt="Read {{page.next.title}}" title="Read {{page.next.title}}"><i
class="fas fa-arrow-right"></i></a></h4>
<p style="margin-left: 20px">{{ page.next.description }}</p>
{% endif %}
</div>
</div>
<!-- End Post Navigation -->
</div>
</section>
</div>
</div>
</section>
{% include footer.html %}
</div>
{% include navigation.html %}
{% include scripts.html %}
<script type="text/javascript">
// html5media enables <video> and <audio> tags in all major browsers
// External File: http://api.html5media.info/1.1.8/html5media.min.js
// Add user agent as an attribute on the <html> tag...
// Inspiration: http://css-tricks.com/ie-10-specific-styles/
var b = document.documentElement;
b.setAttribute('data-useragent', navigator.userAgent);
b.setAttribute('data-platform', navigator.platform);
// HTML5 audio player + playlist controls...
// Inspiration: http://jonhall.info/how_to/create_a_playlist_for_html5_audio
// Mythium Archive: https://archive.org/details/mythium/
jQuery(function ($) {
var supportsAudio = !!document.createElement('audio').canPlayType;
if (supportsAudio) {
var index = 0,
playing = false,
mediaPath = '',
extension = '',
tracks = [{% for album in site.albums %}{% if page.album == album.slug %}{% for track in album.tracks %}{
"track": {{ track.common.track.no }},
"name": "{{ track.common.title }}",
"length": "{% assign round_seconds = track.format.duration | round %}{% assign minutes = round_seconds | divided_by: 60 %}{% assign leftover_seconds = minutes | times: 60 %}{{ minutes }}:{{ round_seconds | minus: leftover_seconds }}",
"file": "{{ site.mediaurl }}/{{ track.albumSlug }}/{{ track.trackSlug }}"
}{% unless forloop.last %},{% endunless %}{% endfor %}{% break %} {% endif %}{% endfor %}],
trackCount = tracks.length,
npAction = $('#npAction'),
npTitle = $('#npTitle'),
audio = $('#audio1').bind('play', function () {
playing = true;
npAction.text('Playing...');
}).bind('pause', function () {
playing = false;
npAction.text('Paused...');
}).bind('ended', function () {
npAction.text('Paused...');
if ((index + 1) < trackCount) {
index++;
loadTrack(index);
audio.play();
} else {
audio.pause();
index = 0;
loadTrack(index);
}
}).get(0),
btnPrev = $('#btnPrev').click(function () {
if ((index - 1) > -1) {
index--;
loadTrack(index);
if (playing) {
audio.play();
}
} else {
audio.pause();
index = 0;
loadTrack(index);
}
}),
btnNext = $('#btnNext').click(function () {
if ((index + 1) < trackCount) {
index++;
loadTrack(index);
if (playing) {
audio.play();
}
} else {
audio.pause();
index = 0;
loadTrack(index);
}
}),
li = $('#plList li').click(function () {
var id = parseInt($(this).index());
if (id !== index) {
playTrack(id);
}
}),
loadTrack = function (id) {
$('.plSel').removeClass('plSel');
$('#plList li:eq(' + id + ')').addClass('plSel');
npTitle.text(tracks[id].name);
index = id;
audio.src = mediaPath + tracks[id].file + extension;
$('audio').attr("data-matomo-title", tracks[id].name);
},
playTrack = function (id) {
loadTrack(id);
audio.play();
};
extension = audio.canPlayType('audio/mpeg') ? '.mp3' : audio.canPlayType('audio/ogg') ? '.ogg' : '';
loadTrack(index);
}
});
</script>
{% include cookie-consent.html %}
</body>
</html>
{% else %}
<!DOCTYPE HTML>
<!--
Based on _Story_ by html5up.net | @ajlkn
Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
Remixed and Jekyllified by Setto
-->
<html lang="{% if page.lang != site.lang %}{{ page.lang }}{% else %}{{ site.lang }}{% endif %}">
<head>
<link type="application/atom+xml" rel="alternate" href="{{ site.url }}/feed.xml" title="{{ site.name }}" />
{% include seo.html %}
{% include relBase.html %}
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=yes" />
<link rel="stylesheet" href="{{ relBase }}/assets/css/main20200710.css" />
<link rel="apple-touch-icon" href="{{ site.url }}/apple-touch-icon.png">
<link rel="icon" type="image/png" href="{{ site.url }}/touch-icon.png" sizes="192x192">
<link rel="shortcut icon" href="{{ site.url }}{{ site.icon }}" type="image/png" />
<noscript><link rel="stylesheet" href="{{ relBase }}/assets/css/noscript20200710.css" /></noscript>
</head>
<body id="body">
<span id="top" style="display: none;"></span>
<!-- Wrapper -->
<div id="wrapper" class="divided">
<!-- Banner -->
<section class="banner onload-image-fade-in onload-content-fade-right style2 fullscreen content-align-center image-position-center" style="min-height:85vh;">
<div class="content">
<h1>{{ page.title }}</h1>
<p>{{ page.description }}</p>
</div>
<div class="image">
<img src="{{ page.image }}" alt="unfound page" />
</div>
</section>
<!-- Content -->
<section class="wrapper style1 align-center">
<div class="inner">
<div class="index align-left">
<!-- Author -->
<section>
{% if page.url != '/cookies/' %}
{% if page.url != '/webcreds/' %}
{% include author.html %}
{% endif %}{% endif %}
<!-- Content -->
<div class="content">
{{ content }}
{% if page.link != nil %}
<ul class="actions stacked">
<li><a href="{{ page.link }}?ref=SakrecoerSentMe" target="_blank" rel="noopener" class="button small">cheggit!</a></li>
</ul>
{% endif %}
</div>
</section>
</div>
</div>
</section>
<section class="wrapper style1 align-center">
<div class="inner">
<div class="index align-left">
<!-- Author -->
<section>
<!-- Content -->
<div class="content">
<!-- post Naviation -->
<div style="text-align: center;">
<h3>{{ site.data.translations[page.lang].post-nav}}</h3>
</div>
<div class="post-nav">
<div>
{% if page.previous.url and page.lang == page.previous.lang %}
<h4><a href="{{page.previous.url}}" alt="Read {{page.previous.title}}" title="Read {{page.previous.title}}"><i class="fas fa-arrow-left"></i></a> <a
href="{{page.previous.url}}">&nbsp;{{page.previous.title}}</a></h4>
<p style="margin-right: 20px">{{ page.previous.description }}</p>
{% endif %}
</div>
<div class="post-nav-next">
{% if page.next.url and page.lang == page.next.lang %}
<h4><a href="{{page.next.url}}">&nbsp;{{page.next.title}}</a> <a href="{{page.next.url}}" alt="Read {{page.next.title}}" title="Read {{page.next.title}}"><i
class="fas fa-arrow-right"></i></a></h4>
<p style="margin-left: 20px">{{ page.next.description }}</p>
{% endif %}
</div>
</div>
<!-- End Post Navigation -->
</div>
</section>
</div>
</div>
</section>
{% include footer.html %}
</div>
{% include navigation.html %}
{% include scripts.html %}
{% include cookie-consent.html %}
</body>
</html>
{% endif %}

154
_layouts/track.html Normal file
View file

@ -0,0 +1,154 @@
---
layout: default
---
{% include relBase.html %}
<!-- Banner -->
<section
class="banner onload-image-fade-in onload-content-fade-right style3 fullscreen content-align-center image-position-center" style="background-image:url('{{ site.mediaurl }}/{{ page.slug }}.jpeg');background-size: cover; background-repeat: no-repeat;">
<div style="z-index:0;position:absolute; top:0; left:0; width:100%;min-height:100%;background-color: rgba(13, 13 ,13, 0.5);"></div>
<div class="content" style="z-index:1">
<h1 style="margin-top:80px">{{ page.common.title }}</h1>
<p><strong>{% for style in page.common.genre %}{{ style }}{% endfor %}</strong> by <strong>{{ page.common.artist }}</strong>
<br />{{ page.common.year }}
</p>
<p><strong><span id="tracktime"></span></strong><span id="{{ page.common.title | slugify | remove: '-' }}"></span></strong></p>
<script type="text/javascript">
var {{ page.common.title | slugify | remove: '-' }}timestamp = {{ page.format.duration | round }};
var {{ page.common.title | slugify | remove: '-' }}hours = Math.floor({{ page.common.title | slugify | remove: '-' }}timestamp / 60 / 60);
var {{ page.common.title | slugify | remove: '-' }}minutes = Math.floor({{ page.common.title | slugify | remove: '-' }}timestamp / 60) - ({{ page.common.title | slugify | remove: '-' }}hours * 60);
var {{ page.common.title | slugify | remove: '-' }}seconds = {{ page.common.title | slugify | remove: '-' }}timestamp % 60;
var {{ page.common.title | slugify | remove: '-' }}formatted = {{ page.common.title | slugify | remove: '-' }}hours.toString().padStart(2, '0') + ':' + {{ page.common.title | slugify | remove: '-' }}minutes.toString().padStart(2, '0') + ':' + {{ page.common.title | slugify | remove: '-' }}seconds.toString().padStart(2, '0');
var theSpan = document.getElementById("{{ page.common.title | slugify | remove: '-' }}");
theSpan.innerHTML = {{ page.common.title | slugify | remove: '-' }}formatted;
</script>
<ul class="actions stacked">
<li><button id="mu_pause" class="button icon solid fa-play">Play dat!</button></li>
</ul>
</div>
<div class="image">
<img src="{{ site.mediaurl }}/{{ page.slug }}.jpeg" alt="{{ page.title }} logo" id="coverart" />
</div>
</section>
<!-- Content -->
<section class="wrapper style1 align-center">
<div class="inner" style="padding-top:40px">
<div class="index align-left">
<section style="padding-top:40px">
{% include author.html %}
<!-- Content -->
{% if page.all.UNSYNCEDLYRICS != nil %}
<div class="content">
{% unless page.all.UNSYNCEDLYRICS == '' %}<h2>Lyrics</h2>{% endunless %}
<p style="font-family: monospace;font-size:16px;">
{{ page.all.UNSYNCEDLYRICS | newline_to_br }}
</p>
<p>credits:
{{ page.all.Comment }}
</p>
</div>
{% endif %}
</section>
</div>
</div>
</section>
{% include streamer.html %}
<!-- Page navigation -->
<section class="wrapper style1 align-center">
<div class="inner">
<div class="index align-left">
<!-- Author -->
<section>
<!-- Content -->
<div class="content">
<!-- post Naviation -->
<div style="text-align: center;">
<h3>Play more songs grom this release</h3>
</div>
<div class="post-nav">
<div>
{% if page.previous.url and page.lang == page.previous.lang %}
<h4><a href="{{ relBase }}/albums/{{ page.previousTrack.slug }}/" alt="Read {{ page.previousTrack.common.title }}" title="Read {{ page.previousTrack.common.title }}"><i class="fas fa-arrow-left"></i></a> <a
href="{{ relBase }}/albums/{{ page.previousTrack.slug }}/">&nbsp;{{ page.previousTrack.common.title }}</a>
</h4>
{% endif %}
</div>
<div class="post-nav-next">
{% if page.next.url and page.lang == page.next.lang %}
<h4><a href="{{ relBase }}/albums/{{ page.nextTrack.slug }}/">&nbsp;{{ page.nextTrack.common.title }}</a> <a
href="{{ relBase }}/albums/{{ page.nextTrack.slug }}/" alt="Read {{ page.nextTrack.common.title }}" title="Read {{ page.nextTrack.common.title }}"><i class="fas fa-arrow-right"></i></a></h4>
{% endif %}
</div>
</div>
<!-- End Post Navigation -->
</div>
</section>
</div>
</div>
</section>
<!-- Audio player-->
<audio autoplay preload="metadata" data-matomo-title="{{ page.common.title }}">
<source src="{{ site.mediaurl }}/{{ page.slug }}.mp3" type="audio/mpeg" ontimeupdate='updateTrackTime(this);' />
<h1>Your browser isn't ready for so much hotness. Use the download-link instead.</h1>.
</audio>
{% include footer.html %}
<script type="text/javascript">
function loadUrl(newLocation) {
window.location = newLocation;
return false;
}
var mu = document.getElementsByTagName("audio")[0];
var pauseButton = document.getElementById("mu_pause");
var spincover = document.getElementById("coverart");
mu.addEventListener('ended', function () {
// only functional if "loop" is removed
mu.pause();
mu.currentTime = 0;
loadUrl("{{ relBase }}/albums/{{ page.nextTrack.slug }}/"); return false;
});
mu.onplaying = function() {
pauseButton.innerHTML = "Pause";
pauseButton.classList.remove("fa-play");
pauseButton.classList.add("fa-pause");
spincover.classList.add("spinnit");
spincover.classList.remove("paused");
};
pauseButton.addEventListener("click", function () {
if (mu.paused) {
mu.play();
}
else {
mu.pause();
pauseButton.innerHTML = "Resume";
pauseButton.classList.add("fa-play");
pauseButton.classList.remove("fa-pause");
spincover.classList.add("paused");
}
});
mu.addEventListener('timeupdate', function () {
var timestamp = Math.floor(mu.currentTime);
var hours = Math.floor(timestamp / 60 / 60);
var minutes = Math.floor(timestamp / 60) - (hours * 60);
var seconds = timestamp % 60;
var formatted = hours.toString().padStart(2, '0') + ':' + minutes.toString().padStart(2, '0') + ':' + seconds.toString().padStart(2, '0');
var thecurrentSpan = document.getElementById("tracktime");
thecurrentSpan.innerHTML = formatted + ' / ';
});
</script>