Skip to content

Commit

Permalink
Deploying to gh-pages from @ 07dceb7 🚀
Browse files Browse the repository at this point in the history
  • Loading branch information
s110b committed Nov 25, 2023
0 parents commit ebf7a37
Show file tree
Hide file tree
Showing 122 changed files with 6,345 additions and 0 deletions.
248 changes: 248 additions & 0 deletions 001/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,248 @@
<!doctype html>
<html class="notranslate" translate="no">
<head>
<meta charset="utf-8">
<meta name="google" content="notranslate" />
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
<title data-title="maxvoltar.photo">001</title>
<link rel="alternate" type="application/rss+xml" title="RSS Feed" href="https://maxvoltar.photo/feed.xml">
<meta property="og:title" content="001">
<meta property="og:type" content="website">
<meta property="og:url" content="https://maxvoltar.photo">
<meta property="og:image" content="https://maxvoltar.photo/best/photos/large/001-686656.jpg">
<meta property="og:site_name" content="maxvoltar.photo">
<meta property="og:description" content="@maxvoltar's minimalistic, self-hosted photo stream.">
<meta name="thumbnail" content="https://maxvoltar.photo/best/photos/large/001-686656.jpg">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="">
<meta name="twitter:title" content="001">
<meta name="twitter:description" content="@maxvoltar's minimalistic, self-hosted photo stream.">
<meta name="twitter:image:src" content="https://maxvoltar.photo/best/photos/large/001-686656.jpg">
<meta name="description" content="@maxvoltar's minimalistic, self-hosted photo stream.">
<script type="text/javascript" src="/best/js/lazy-loading.js"></script>
<link rel="stylesheet" type="text/css" media="screen" href="/best/css/master.css" />
<link rel="stylesheet" type="text/css" href="/best/css/toastify.min.css">
<link rel="apple-touch-icon" sizes="180x180" href="/best/apple-touch-icon.png?v=1">
<link rel="icon" type="image/png" sizes="32x32" href="/best/favicon-32x32.png?v=1">
<link rel="icon" type="image/png" sizes="16x16" href="/best/favicon-16x16.png?v=1">
<link rel="manifest" href="/best/site.webmanifest?v=1">
<link rel="mask-icon" href="/best/favicon.svg?v=1">
<link rel="shortcut icon" href="/best/favicon.ico?v=1">
<meta name="msapplication-TileColor" content="#603cba">
<meta name="theme-color" content="#ffffff">
</head>
<body>
<main>
<ul class="grid" id="target">
<li class="item target" id="id-001" style="background-image: url('/best/photos/tint/001-65ba1d.jpg')" title="001">
<img class="lazyload" data-src="/best/photos/thumbnail/001-ccf4df.jpg" src="/best/photos/tint/001-65ba1d.jpg" height="" width="" />
<span class="full">
<span style="background-image: url('/best/photos/large/001-686656.jpg')"></span>
</span>
<a class="open" href="/best/001" data-target="id-001">Open</a>
<a class="close" href="/best/">Close</a>
<ul class="links top photodetail-links">
<li class="share"><a onClick="shareImage('001','/best/001');" title="Share this photo">Share</a></li>
</ul>
<ul class="meta">
<!--
<li></li>
<li></li>
<li><span class="aperture"><em>f</em>/</span></li>
-->
<li><a onClick="shareImage('001', '/best/001')" class="gridview-button share" title="Share this image">Share</a></li>
</ul>
</li>
</ul>
<ul class="links bottom">
<li class="sort"><a rel="me" href="#" title="Reverse sort order">Sort</a></li>
<li class="rss"><a rel="alternate" type="application/rss+xml" href="https://maxvoltar.photo/feed.xml" title="RSS Feed">RSS Feed</a></li>
<li class="github"><a rel="me" href="https://github.com/waschinski/photo-stream" title="Fork on Github">Github</a></li>
<li class="github"><a rel="me" href="https://github.com/maxvoltar" title="@maxvoltar on Github">Github</a></li>
<li class="instagram"><a rel="me" href="https://instagram.com/maxvoltar" title="@maxvoltar on Instagram">Instagram</a></li>
</ul>
</main>
<script>
const ESCAPE = 27;
const RIGHT = 39;
const LEFT = 37;
const UP = 38;
const DOWN = 40;
const TARGET_CLASS = 'target';

/*
* swipe detection
*
* found at: https://stackoverflow.com/a/23230280
*/
document.addEventListener('touchstart', handleTouchStart, false);
document.addEventListener('touchmove', handleTouchMove, false);

var xDown = null;

function getTouches(evt) {
return evt.touches || // browser API
evt.originalEvent.touches; // jQuery
}

function handleTouchStart(evt) {
const firstTouch = getTouches(evt)[0];
xDown = firstTouch.clientX;
};

function handleTouchMove(evt) {
if ( ! xDown ) {
return;
}

var xUp = evt.touches[0].clientX;

var xDiff = xDown - xUp;

if ( xDiff > 0 ) {
clickNavigationButton('.next');
} else {
clickNavigationButton('.previous');
}
/* reset values */
xDown = null;
yDown = null;
};

/* image sharing */

const shareImage = (title, url) => {
if (navigator.canShare) {
const shareData = {
title: title,
text: 'I found a cool photo over at maxvoltar.photo! Check it out!',
url: url
}
navigator.share(shareData)
} else {
navigator.clipboard.writeText(`I found a cool photo over at maxvoltar.photo! Check it out!\n\n${window.location.origin}${url}`);
Toastify({
text: "Copied to clipboard",
duration: 3000,
style: {
background: "rgba(0, 0, 0, 0.7)"
}
}).showToast();
}
}

const clickNavigationButton = (buttonClass) => {
const id = window.history.state && window.history.state.id;
if (id) {
const selector = `#${id} ${buttonClass}`;
const button = document.querySelector(selector);
button && button.click();
}
}

const openPhoto = (id, href) => {
const photo = document.getElementById(id);
const phototitle = photo.getAttribute('title');
removeTargetClass();
photo.classList.add(TARGET_CLASS);
document.title = phototitle;

if (href) {
window.history.pushState({id: id}, '', href);
}
}

const closePhoto = (href) => {
const title = document.querySelector('head title').getAttribute('data-title');
removeTargetClass();
document.title = title;

if (href) {
window.history.pushState({}, '', href);
}
}

const removeTargetClass = () => {
let targets = document.querySelectorAll(`.${TARGET_CLASS}`);
targets.forEach((target) => {
target.classList.remove(TARGET_CLASS);
});
}

const handleClick = (selector, event, callback) => {
if (event.target.matches(selector)) {
callback();
event.preventDefault();
}
}

const handleKey = (keyCode, event, callback) => {
if (event.keyCode === keyCode) {
callback();
event.preventDefault();
}
}

const reverseSorting = () => {

var parent = document.getElementById('target');
for (var i = 1; i < parent.childNodes.length; i++){
parent.insertBefore(parent.childNodes[i], parent.firstChild);
}

}

window.onpopstate = function(event) {
if (event.state && event.state.id) {
const id = event.state.id;
openPhoto(id, null);
} else {
closePhoto(null);
}
}

document.addEventListener('keydown', (event) => {
handleKey(ESCAPE, event, () => {
clickNavigationButton('.close');
});

handleKey(RIGHT, event, () => {
clickNavigationButton('.next');
});

handleKey(LEFT, event, () => {
clickNavigationButton('.previous');
});

handleKey(UP, event, () => {
reverseSorting();
});

handleKey(DOWN, event, () => {
reverseSorting();
});
});

document.addEventListener('click', (event) => {
handleClick('[data-target][href]', event, () => {
const id = event.target.getAttribute('data-target');
const href = event.target.getAttribute('href');
openPhoto(id, href);
});

handleClick('[href].close', event, () => {
const href = event.target.getAttribute('href');
closePhoto(href);
});

handleClick('ul.links li.sort a', event, () => {
reverseSorting();
});
});

lazyload();
</script>
<script type="text/javascript" src="/best/js/toastify.js"></script>
<script src="/best/js/photos.js" data-photo-id="001" data-photo-url="/best/001" data-target-id="target"></script>
</body>
</html>
42 changes: 42 additions & 0 deletions 404.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="google" content="notranslate" />
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
<title data-title="maxvoltar.photo">maxvoltar.photo</title>
<link rel="alternate" type="application/rss+xml" title="RSS Feed" href="https://maxvoltar.photo/feed.xml">
<meta property="og:title" content="maxvoltar.photo">
<meta property="og:type" content="website">
<meta property="og:url" content="https://maxvoltar.photo">
<meta property="og:image" content="https://maxvoltar.photosocial-preview.png">
<meta property="og:site_name" content="maxvoltar.photo">
<meta property="og:description" content="@maxvoltar's minimalistic, self-hosted photo stream.">
<meta name="thumbnail" content="https://maxvoltar.photosocial-preview.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="">
<meta name="twitter:title" content="maxvoltar.photo">
<meta name="twitter:description" content="@maxvoltar's minimalistic, self-hosted photo stream.">
<meta name="twitter:image:src" content="https://maxvoltar.photosocial-preview.png">
<meta name="description" content="@maxvoltar's minimalistic, self-hosted photo stream.">
<script type="text/javascript" src="/best/js/lazy-loading.js"></script>
<link rel="stylesheet" type="text/css" media="screen" href="/best/css/master.css" />
<link rel="stylesheet" type="text/css" href="/best/css/toastify.min.css">
<link rel="apple-touch-icon" sizes="180x180" href="/best/apple-touch-icon.png?v=1">
<link rel="icon" type="image/png" sizes="32x32" href="/best/favicon-32x32.png?v=1">
<link rel="icon" type="image/png" sizes="16x16" href="/best/favicon-16x16.png?v=1">
<link rel="manifest" href="/best/site.webmanifest?v=1">
<link rel="mask-icon" href="/best/favicon.svg?v=1">
<link rel="shortcut icon" href="/best/favicon.ico?v=1">
<meta name="msapplication-TileColor" content="#603cba">
<meta name="theme-color" content="#ffffff">
</head>
<body>
<div class="four-oh-four">
<img src="https://maxvoltar.photo/favicon.svg" alt="">
<h1>404</h1>
<p>Photo not found.</p>
<a href="https://maxvoltar.photo">Back to overview</a>
</div>
</body>
</html>
43 changes: 43 additions & 0 deletions about/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="google" content="notranslate" />
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
<title data-title="maxvoltar.photo">About</title>
<link rel="alternate" type="application/rss+xml" title="RSS Feed" href="https://maxvoltar.photo/feed.xml">
<meta property="og:title" content="About">
<meta property="og:type" content="website">
<meta property="og:url" content="https://maxvoltar.photo">
<meta property="og:image" content="https://maxvoltar.photosocial-preview.png">
<meta property="og:site_name" content="maxvoltar.photo">
<meta property="og:description" content="@maxvoltar's minimalistic, self-hosted photo stream.">
<meta name="thumbnail" content="https://maxvoltar.photosocial-preview.png">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="">
<meta name="twitter:title" content="About">
<meta name="twitter:description" content="@maxvoltar's minimalistic, self-hosted photo stream.">
<meta name="twitter:image:src" content="https://maxvoltar.photosocial-preview.png">
<meta name="description" content="@maxvoltar's minimalistic, self-hosted photo stream.">
<script type="text/javascript" src="/best/js/lazy-loading.js"></script>
<link rel="stylesheet" type="text/css" media="screen" href="/best/css/master.css" />
<link rel="stylesheet" type="text/css" href="/best/css/toastify.min.css">
<link rel="apple-touch-icon" sizes="180x180" href="/best/apple-touch-icon.png?v=1">
<link rel="icon" type="image/png" sizes="32x32" href="/best/favicon-32x32.png?v=1">
<link rel="icon" type="image/png" sizes="16x16" href="/best/favicon-16x16.png?v=1">
<link rel="manifest" href="/best/site.webmanifest?v=1">
<link rel="mask-icon" href="/best/favicon.svg?v=1">
<link rel="shortcut icon" href="/best/favicon.ico?v=1">
<meta name="msapplication-TileColor" content="#603cba">
<meta name="theme-color" content="#ffffff">
</head>
<body>
<p>This is the base Jekyll theme. You can find out more info about customizing your Jekyll theme, as well as basic Jekyll usage documentation at <a href="https://jekyllrb.com/">jekyllrb.com</a></p>
<p>You can find the source code for Minima at GitHub:
<a href="https://github.com/jekyll">jekyll</a> /
<a href="https://github.com/jekyll/minima">minima</a></p>
<p>You can find the source code for Jekyll at GitHub:
<a href="https://github.com/jekyll">jekyll</a> /
<a href="https://github.com/jekyll/jekyll">jekyll</a></p>
</body>
</html>
Binary file added android-chrome-192x192.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added android-chrome-512x512.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added apple-touch-icon-precomposed.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added apple-touch-icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
9 changes: 9 additions & 0 deletions browserconfig.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<browserconfig>
<msapplication>
<tile>
<square150x150logo src="/mstile-150x150.png?v=1"/>
<TileColor>#603cba</TileColor>
</tile>
</msapplication>
</browserconfig>
Loading

0 comments on commit ebf7a37

Please sign in to comment.