4 Matching Annotations
- Dec 2020
-
www.altocumulus.org www.altocumulus.org
-
My weather camera wbinfo = {} wbinfo.url = "https://www.altocumulus.org/~hallgren/webcam2/?webcamsection="; wbinfo.timestamp = "20201217191630"; wbinfo.request_ts = ""; wbinfo.prefix = "https://via.hypothes.is/"; wbinfo.mod = ""; wbinfo.top_url = "https://via.hypothes.is/https://www.altocumulus.org/~hallgren/webcam2/?webcamsection="; wbinfo.is_framed = false; wbinfo.is_live = true; wbinfo.coll = ""; wbinfo.proxy_magic = ""; wbinfo.static_prefix = "https://via.hypothes.is/static/__pywb"; wbinfo.wombat_ts = "20201217191630"; wbinfo.wombat_scheme = "https"; wbinfo.wombat_host = "www.altocumulus.org"; wbinfo.wombat_sec = "1608232590"; wbinfo.wombat_opts = {"no_rewrite_prefixes": ["http://localhost:5000/", "http://localhost:3001/", "https://localhost:5000/", "https://localhost:3001/", "https://hypothes.is/", "https://qa.hypothes.is/", "https://cdn.hypothes.is/", "/assets/"], "http_cache": "pass"}; if (window && window._WBWombat && !window._wb_js_inited && !window._wb_wombat) { window._wb_wombat = new _WBWombat(wbinfo); } /** * Return `true` if this frame has no ancestors or its nearest ancestor was * not served through Via. * * The implementation relies on all documents proxied through Via sharing the * same origin. */ function isTopViaFrame() { if (window === window.top) { // Trivial case - This is the top-most frame in the tab so it must be the // top Via frame. return true; } try { // Get a reference to the parent frame. Via's "wombat.js" frontend code // monkey-patches `window.parent` in certain cases, in which case // `window.__WB_orig_parent` is the _real_ parent frame. var parent = window.__WB_orig_parent || window.parent; // Try to access the parent frame's location. This will trigger an // exception if the frame comes from a different, non-Via origin. // // This test assumes that all documents proxied through Via are served from // the same origin. If a future change to Via means that is no longer the // case, this function will need to be implemented differently. parent.location.href; // If the access succeeded, the parent frame was proxied through Via and so // this is not the top Via frame. return false; } catch (err) { // If the access failed, the parent frame was not proxied through Via and // so this is the top Via frame. return true; } } function stripFragment(url) { return url.replace(/#.*$/, ''); } /** * Test if a link will navigate to a new page as opposed to scrolling to a * different location within the current page. * * @param {HTMLAnchorElement} linkEl */ function isExternalLink(linkEl) { // Create a link that is definitely internal and compare its absolute URL // to the target link. // // We do this rather than the more obvious comparison of `linkEl.href` to `location.href` // because Via monkey-patches `HTMLAnchorElement.prototype.href` so that it // returns the original (non-proxied) URL and therefore cannot be // compared directly with the real (proxied) URL that `location.href` returns. const internalLink = document.createElement('a'); // nb. `href` always returns an absolute URL when read. internalLink.href = '#'; return stripFragment(internalLink.href) !== stripFragment(linkEl.href); } /** * Setup handling of links to other documents. * * @param {"same-tab"|"new-tab"} mode */ function setupExternalLinkHandler(mode) { if (mode === "new-tab") { document.addEventListener("click", function (event) { if (!event.target.closest) { // Do nothing in browsers that don't support `element.closest` (IE 11). return; } var linkEl = event.target.closest("a"); if (linkEl) { if (isExternalLink(linkEl)) { // Make link open in a new tab. linkEl.target = "_blank"; } } }); } } (function () { if (!isTopViaFrame()) { // Do not inject Hypothesis into iframes in documents proxied through Via. // As well as slowing down the loading of the proxied page even more, this // causes problems with the way that the client "discovers" annotate-able iframes. // // See https://github.com/hypothesis/client/issues/568, // https://github.com/hypothesis/via/issues/119 and // https://github.com/hypothesis/lms/issues/701. return; } // Inject the Hypothesis client. var embed_script = document.createElement("script"); embed_script.src = "https://cdn.hypothes.is/hypothesis"; document.head.appendChild(embed_script); setupExternalLinkHandler("same-tab"); window.hypothesisConfig = function() { return {"showHighlights": true, "appType": "via", "openSidebar": false}; }})(); if (_wb_js) { _wb_js.load(); } My weather camera
Väderkamera i Göteborg
-
My weather camera wbinfo = {} wbinfo.url = "https://www.altocumulus.org/~hallgren/webcam2/?webcamsection="; wbinfo.timestamp = "20201217191234"; wbinfo.request_ts = ""; wbinfo.prefix = "https://via.hypothes.is/"; wbinfo.mod = ""; wbinfo.top_url = "https://via.hypothes.is/https://www.altocumulus.org/~hallgren/webcam2/?webcamsection="; wbinfo.is_framed = false; wbinfo.is_live = true; wbinfo.coll = ""; wbinfo.proxy_magic = ""; wbinfo.static_prefix = "https://via.hypothes.is/static/__pywb"; wbinfo.wombat_ts = "20201217191234"; wbinfo.wombat_scheme = "https"; wbinfo.wombat_host = "www.altocumulus.org"; wbinfo.wombat_sec = "1608232354"; wbinfo.wombat_opts = {"no_rewrite_prefixes": ["http://localhost:5000/", "http://localhost:3001/", "https://localhost:5000/", "https://localhost:3001/", "https://hypothes.is/", "https://qa.hypothes.is/", "https://cdn.hypothes.is/", "/assets/"], "http_cache": "pass"}; if (window && window._WBWombat && !window._wb_js_inited && !window._wb_wombat) { window._wb_wombat = new _WBWombat(wbinfo); } /** * Return `true` if this frame has no ancestors or its nearest ancestor was * not served through Via. * * The implementation relies on all documents proxied through Via sharing the * same origin. */ function isTopViaFrame() { if (window === window.top) { // Trivial case - This is the top-most frame in the tab so it must be the // top Via frame. return true; } try { // Get a reference to the parent frame. Via's "wombat.js" frontend code // monkey-patches `window.parent` in certain cases, in which case // `window.__WB_orig_parent` is the _real_ parent frame. var parent = window.__WB_orig_parent || window.parent; // Try to access the parent frame's location. This will trigger an // exception if the frame comes from a different, non-Via origin. // // This test assumes that all documents proxied through Via are served from // the same origin. If a future change to Via means that is no longer the // case, this function will need to be implemented differently. parent.location.href; // If the access succeeded, the parent frame was proxied through Via and so // this is not the top Via frame. return false; } catch (err) { // If the access failed, the parent frame was not proxied through Via and // so this is the top Via frame. return true; } } function stripFragment(url) { return url.replace(/#.*$/, ''); } /** * Test if a link will navigate to a new page as opposed to scrolling to a * different location within the current page. * * @param {HTMLAnchorElement} linkEl */ function isExternalLink(linkEl) { // Create a link that is definitely internal and compare its absolute URL // to the target link. // // We do this rather than the more obvious comparison of `linkEl.href` to `location.href` // because Via monkey-patches `HTMLAnchorElement.prototype.href` so that it // returns the original (non-proxied) URL and therefore cannot be // compared directly with the real (proxied) URL that `location.href` returns. const internalLink = document.createElement('a'); // nb. `href` always returns an absolute URL when read. internalLink.href = '#'; return stripFragment(internalLink.href) !== stripFragment(linkEl.href); } /** * Setup handling of links to other documents. * * @param {"same-tab"|"new-tab"} mode */ function setupExternalLinkHandler(mode) { if (mode === "new-tab") { document.addEventListener("click", function (event) { if (!event.target.closest) { // Do nothing in browsers that don't support `element.closest` (IE 11). return; } var linkEl = event.target.closest("a"); if (linkEl) { if (isExternalLink(linkEl)) { // Make link open in a new tab. linkEl.target = "_blank"; } } }); } } (function () { if (!isTopViaFrame()) { // Do not inject Hypothesis into iframes in documents proxied through Via. // As well as slowing down the loading of the proxied page even more, this // causes problems with the way that the client "discovers" annotate-able iframes. // // See https://github.com/hypothesis/client/issues/568, // https://github.com/hypothesis/via/issues/119 and // https://github.com/hypothesis/lms/issues/701. return; } // Inject the Hypothesis client. var embed_script = document.createElement("script"); embed_script.src = "https://cdn.hypothes.is/hypothesis"; document.head.appendChild(embed_script); setupExternalLinkHandler("same-tab"); window.hypothesisConfig = function() { return {"showHighlights": true, "appType": "via", "openSidebar": false}; }})(); if (_wb_js) { _wb_js.load(); } My weather camera
Väderkamera i Krokslätt, Mölndal, Göteborg Weather camera in Krokslätt, Mölndal, Gothenburg
-
My weather camera
väderkamera i Göteborg
-
Krokslätt Thu Dec 17 19:17:59 2020
weather in Krokslätt
-