From 3ec9264deb436af8fd6f5efc5efc3c7872127b05 Mon Sep 17 00:00:00 2001 From: Feuerfuchs Date: Mon, 24 Jun 2019 21:54:39 +0200 Subject: Improved design, add setting for image previews, add prompt for new location --- assets/main.js | 40 +--------------------------------------- 1 file changed, 1 insertion(+), 39 deletions(-) (limited to 'assets/main.js') diff --git a/assets/main.js b/assets/main.js index 46cb7ee..cbabeef 100644 --- a/assets/main.js +++ b/assets/main.js @@ -1,39 +1 @@ -"use strict"; -var linkQryEls = document.getElementsByClassName('link--QRY'); -var i = linkQryEls.length; -while (i--) { - linkQryEls[i].addEventListener('click', function (e) { - e.preventDefault(); - var resp = prompt('Please enter required input: ', ''); - if ((resp !== null) && (resp !== "")) { - window.location.href = e.target.href + '?' + resp; - } - return false; - }); -} -var imgPreviewEls = document.getElementsByClassName('img-preview'); -i = imgPreviewEls.length; -var _loop_1 = function () { - var imgPreviewEl = imgPreviewEls[i]; - var child = imgPreviewEl.children[0]; - var thumbnailUrl = child.src; - child.addEventListener('load', function (e) { - child.classList.remove('faded'); - }); - imgPreviewEls[i].addEventListener('click', function (e) { - e.preventDefault(); - child.classList.add('faded'); - if (child.classList.contains('expanded')) { - child.classList.remove('expanded'); - child.src = thumbnailUrl; - } - else { - child.classList.add('expanded'); - child.src = imgPreviewEl.href; - } - return false; - }); -}; -while (i--) { - _loop_1(); -} +"use strict";var KeyValueStore=function(){function e(e){this.data=e;for(var t=0,n=Object.keys(e);t=n.valueRange.length?l=0:l<0&&(l=n.valueRange.length-1),a=n.value=n.valueRange[l]}else{if("number"!=typeof a)throw new Error("Can't cycle \""+e+'"');a+=t,n.value=a}return n.callbacks&&n.callbacks.forEach(function(e){e(a)}),a},e.prototype.addCallback=function(e,t){var n=this.data[e];n.callbacks||(n.callbacks=[]),n.callbacks.push(t)},e}();function ensureSetting(e,t){var n=localStorage.getItem(e);return null===n&&(n=t,localStorage.setItem(e,n)),n}var settings=new KeyValueStore({imagePreviews:{value:"1"===ensureSetting("image-previews","1"),valueRange:[!1,!0]}});function generateImageThumbnails(){for(var i=document.querySelectorAll(".link--IMG, .link--GIF"),s=i.length,e=function(){var e=i[s],t=e.href.replace(/^(.*?)\/I/,"$1/T"),n=document.createTextNode("\n"),a=document.createElement("span");a.classList.add("type-annotation"),a.textContent=" -> ";var l=document.createElement("img");l.src=t,l.addEventListener("load",function(e){l.classList.remove("faded")});var r=document.createElement("a");r.classList.add("img-preview"),r.href=e.href,r.addEventListener("click",function(e){return e.preventDefault(),l.classList.add("faded"),l.classList.contains("expanded")?(l.classList.remove("expanded"),l.src=t):(l.classList.add("expanded"),l.src=r.href),!1}),r.append(l),e.parentNode.insertBefore(r,e.nextSibling),e.parentNode.insertBefore(a,r),e.parentNode.insertBefore(n,a)};s--;)e()}function removeImageThumbnails(){for(var e=document.querySelectorAll(".link--IMG, .link--GIF"),t=e.length;t--;)for(var n=e[t],a=3;a--&&n.nextSibling;)n.nextSibling.remove()}!function(){for(var e=document.getElementsByClassName("link--QRY"),t=e.length;t--;)e[t].addEventListener("click",function(e){e.preventDefault();var t=prompt("Please enter required input: ","");return null!==t&&""!==t&&(window.location.href=e.target.href+"?"+t),!1})}(),document.getElementsByClassName("location__prefix")[0].addEventListener("click",function(e){e.preventDefault();var t=prompt("Please enter new location: ","");return null!==t&&""!==t&&(window.location.href=window.location.origin+"/"+t),!1}),function(){function e(e,t){void 0===t&&(t=!1),e?generateImageThumbnails():t||removeImageThumbnails(),localStorage.setItem("image-previews",e?"1":"0"),n.textContent=e?"[yes]":"[no]"}var n=document.getElementsByClassName("setting--image-previews")[0].getElementsByClassName("setting__value")[0];n.addEventListener("click",function(e){return e.preventDefault(),settings.cycleValue("imagePreviews"),!1}),e(settings.getValue("imagePreviews"),!0),settings.addCallback("imagePreviews",e)}(),function(){for(var a=document.getElementsByClassName("modal"),l=a.length,e=function(){var t=a[l],n=t.getElementsByClassName("modal__content")[0],e=t.getElementsByClassName("modal__close-btn")[0];document.addEventListener("click",function(e){t.classList.contains("modal--visible")&&(e.target===n||n.contains(e.target)||(t.classList.remove("modal--visible"),e.preventDefault(),e.stopPropagation()))},!0),document.addEventListener("keydown",function(e){t.classList.contains("modal--visible")&&27===e.keyCode&&t.classList.remove("modal--visible")}),e.addEventListener("click",function(e){return e.preventDefault(),t.classList.remove("modal--visible"),!1})};l--;)e();var t=document.getElementsByClassName("settings-btn")[0],n=document.getElementsByClassName("modal--settings")[0];t.addEventListener("click",function(e){return e.preventDefault(),n.classList.add("modal--visible"),!1})}(); \ No newline at end of file -- cgit v1.2.3-54-g00ecf