https://hashb.in/

Eingereichte URL:
https://hashb.in/
Bericht beendet:
NameTyp
onbeforetoggleobject
documentPictureInPictureobject
onscrollendobject
LZStringobject
fundefined
textareaobject
urlInputobject
downloadobject
contentobject
processContentfunction
<html><head>
    <title>HashBin is a paste bin that ne</title>
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link href="favicon.ico" rel="icon" type="image/x-icon">
    <style>
        body, textarea, input, #tools {
            background-color: #002b36;
            color: #93a1a1;
            font: 14px/20px monospace;
            padding: 0;
            margin: 0;
        }
        body:before {
            position: fixed;
            content: '>';
            z-index: 1000;
            text-align: center;
            margin-top: 60px;
            width: 30px;
            color: #586e75;
        }
        #t {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            overflow: auto;
            outline: none;
            border: none;
            box-sizing: border-box;
            padding: 60px 30px 30px 30px;
        }
        a {
            text-decoration: none;
            color: #268bd2;
        }
        #tools {
            text-align: center;
            padding: 20px;
            z-index: 1000;
            width: 100%;
            position: fixed;
            top: 0;
            box-sizing: border-box;
        }
        input {
            display: none;
            margin-top: 5px;
            width: 100%;
            border: 1px solid #268bd2;
            padding: 5px;
            border-radius: 3px;
        }
        /* Light color theme */
        body, textarea, input, #tools {
            background-color: #fdf6e3;
            color: #586e75;
        }
        body:before {
            color: #93a1a1;
        }
        @media (min-width: 600px) {
            #tools {
                padding: 10px 20px 0 0;
                right: 0;
                width: auto;
                background: none;
            }
            body:before {
                margin-top: 30px;
                width: 50px;
            }
            #t {
                padding: 30px 50px 30px 50px;
            }
        }
    </style>
</head>
<body>
    <div id="tools">
        <a href="#" id="share">Share</a> |
        <a href="#" id="new">New</a> |
        <a href="data:text/plain,HashBin%20is%20a%20paste%20bin%20that%20never%20sees%20the%20contents%20of%20its%20pastes.%0AI%20posit%2C%20that%20it%20should%20be%20immune%20to%20takedown%20notices.%0A%0A-%20Click%20%22New%22%20to%20create%20your%20own%20paste%0A-%20Click%20%22%3F%22%20to%20learn%20more%0A%0A%0A--%0AJordan%20Eldrege%20(%40captbaritone)" id="download" download="hashbin_is_a_paste_bin_that_ne.txt">Download</a> |
        <a href="https://github.com/captbaritone/hashb.in" target="_blank">?</a>

        <input id="urlInput">
    </div>
    <textarea spellcheck="false" id="t">HashBin is a paste bin that never sees the contents of its pastes.
I posit, that it should be immune to takedown notices.

- Click "New" to create your own paste
- Click "?" to learn more


--
Jordan Eldrege (@captbaritone)</textarea>
    <script language="javascript" src="js/lz-string.min.js"></script>
    <script>
        var f;
        var textarea = document.getElementById("t");
        var urlInput = document.getElementById("urlInput");
        var download = document.getElementById('download');

        var content = LZString.decompressFromBase64(window.location.hash.slice(1));
        if(content) {
            textarea.value = content;
        }

        processContent(); // Update urlInput and download link

        function processContent() {
            window.location.hash = hash();
            urlInput.value = window.location;
            document.title = title();
            download.setAttribute('download', filename());
            download.href = downloadUri();
        }

        function hash() {
            return LZString.compressToBase64(textarea.value);
        }

        function title() {
            return textarea.value ? textarea.value.slice(0,30) : 'HashBin';
        }

        function filename() {
            return title().replace(/[^a-z0-9]/gi, '_').toLowerCase() + '.txt';
        }

        function downloadUri() {
            return "data:text/plain," + encodeURIComponent(textarea.value);
        }

        function contentChanged() {
            clearInterval(f);
            f = setTimeout(function() {
                processContent();
            }, 500);
        }

        function share() {
            urlInput.style.display = "block";
            urlInput.select();
            return false;
        }

        function unshare() {
            urlInput.style.display = "none";
        }

        function clear() {
            textarea.value = '';
            unshare();
            textarea.focus();
            processContent();
            return false;
        }

        textarea.onkeyup = contentChanged;
        textarea.onpaste = contentChanged;
        textarea.onfocus = unshare;
        document.getElementById('share').onclick = share;
        document.getElementById('new').onclick = clear;
    </script>


</body></html>