| @ -193,12 +193,15 @@ | |||||
| .col-sm-4 { | .col-sm-4 { | ||||
| text-align: center; | text-align: center; | ||||
| } | } | ||||
| .btn-lg { | |||||
| width: 100%; | |||||
| } | |||||
| .btn-topisto { | |||||
| width: 60px !important; | |||||
| } | |||||
| } | } | ||||
| @media screen and (max-width: 480px) { | @media screen and (max-width: 480px) { | ||||
| .logo { | .logo { | ||||
| font-size: 150px; | font-size: 150px; | ||||
| } | } | ||||
| .btn-topisto { | |||||
| width: 60px !important; | |||||
| } | |||||
| } | } | ||||
| @ -0,0 +1,136 @@ | |||||
| <!DOCTYPE html> | |||||
| <html lang="en"> | |||||
| <head> | |||||
| <title>TOPISTO</title> | |||||
| <meta charset="utf-8"> | |||||
| <meta name="viewport" content="width=device-width, initial-scale=1"> | |||||
| <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> | |||||
| <link href="https://fonts.googleapis.com/css?family=Montserrat" rel="stylesheet" type="text/css"> | |||||
| <link href="https://fonts.googleapis.com/css?family=Lato" rel="stylesheet" type="text/css"> | |||||
| <link href="https://fonts.googleapis.com/css?family=Bangers" rel="stylesheet" type="text/css"> | |||||
| <link href="css/topisto.css" rel="stylesheet" type="text/css"> | |||||
| <link href="css/fonts.css" rel="stylesheet" type="text/css"> | |||||
| <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> | |||||
| <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> | |||||
| <script src="js/lastblock.js" defer></script> | |||||
| <script src="js/blockexplorer.js" defer></script> | |||||
| <script> | |||||
| $(document).ready(function(){ | |||||
| // tooltips activation | |||||
| $('[data-toggle="tooltip"]').tooltip(); | |||||
| // Add smooth scrolling to all links in navbar + footer link | |||||
| $(".navbar a, footer a[href='#myPage']").on('click', function(event) { | |||||
| // Make sure this.hash has a value before overriding default behavior | |||||
| if (this.hash !== "") { | |||||
| // Prevent default anchor click behavior | |||||
| event.preventDefault(); | |||||
| // Store hash | |||||
| var hash = this.hash; | |||||
| // Using jQuery's animate() method to add smooth page scroll | |||||
| // The optional number (900) specifies the number of milliseconds it takes to scroll to the specified area | |||||
| $('html, body').animate({ | |||||
| scrollTop: $(hash).offset().top | |||||
| }, 900, function(){ | |||||
| // Add hash (#) to URL when done scrolling (default click behavior) | |||||
| window.location.hash = hash; | |||||
| }); | |||||
| } // End if | |||||
| }); | |||||
| $(window).scroll(function() { | |||||
| $(".slideanim").each(function(){ | |||||
| var pos = $(this).offset().top; | |||||
| var winTop = $(window).scrollTop(); | |||||
| if (pos < winTop + 600) { | |||||
| ajouterPreviousBlock(); | |||||
| $(this).addClass("slide"); | |||||
| } | |||||
| }); | |||||
| }); | |||||
| }); | |||||
| </script> | |||||
| </head> | |||||
| <body id="myPage" data-spy="scroll" data-target=".navbar" data-offset="60"> | |||||
| <nav class="navbar navbar-default navbar-fixed-top"> | |||||
| <div class="container"> | |||||
| <div class="navbar-header"> | |||||
| <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#myNavbar"> | |||||
| <span class="icon-bar"></span> | |||||
| <span class="icon-bar"></span> | |||||
| <span class="icon-bar"></span> | |||||
| </button> | |||||
| <a class="navbar-brand" href=".."> | |||||
| <img id="logo_topisto" src="images/topisto_vert.png" style="border-radius:6px;display:inline-block;visibility:block;height:72px;;box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19)"> | |||||
| <span style="vertical-align:text-bottom;display:inline-block;color:black;font-family: Bangers, sans-serif;font-size: 60px;text-shadow: 2px 2px #ffffff">TOPISTO</span> | |||||
| </a> | |||||
| </div> | |||||
| </div> | |||||
| </nav> | |||||
| <div id="explorer" class="container-fluid bg-grey" style="padding-top:10px"> | |||||
| <div class="row"> | |||||
| <div class="col-sm-12"> </div> | |||||
| </div> | |||||
| </div> | |||||
| <div id="blockchain"></div> | |||||
| <div id="contact" class="container-fluid bg-grey"> | |||||
| <h4 class="text-center"> | |||||
| <a href="#myPage" title="To Top"> | |||||
| <span class="glyphicon glyphicon-chevron-down"></span> | |||||
| </a> | |||||
| SCROLL TO LOAD PREVIOUS BLOCK | |||||
| <a href="#myPage" title="To Top"> | |||||
| <span class="glyphicon glyphicon-chevron-down"></span> | |||||
| </a> | |||||
| </h4> | |||||
| <div class="row slideanim"> | |||||
| <div class="col-sm-5"> | |||||
| <p>Contact me</p> | |||||
| <p><span class="glyphicon glyphicon-map-marker"></span> Shambala</p> | |||||
| <p><span class="glyphicon glyphicon-globe"></span> Employer : Mutiny</p> | |||||
| <p><span class="glyphicon glyphicon-phone"></span> +00 666 666 666</p> | |||||
| <p> | |||||
| <span class="glyphicon glyphicon-envelope"></span> | |||||
| <!--Place the code below where you want the link to be displayed--> | |||||
| <span id="obf"><script>document.getElementById("obf").innerHTML="<n uers=\"znvygb:nyoreg.frnaquvyf@gbcvfgb.arg?fhowrpg=pbagnpg\" gnetrg=\"_oynax\">nyoreg.frnaquvyf@gbcvfgb.arg</n>".replace(/[a-zA-Z]/g,function(c){return String.fromCharCode((c<="Z"?90:122)>=(c=c.charCodeAt(0)+13)?c:c-26);});</script> | |||||
| <noscript><span style="unicode-bidi:bidi-override;direction:rtl;">ten.otsipot@slihdnaes.trebla</span></noscript></span> | |||||
| </p> | |||||
| </div> | |||||
| <div class="col-sm-5"> | |||||
| bookmarks : <br> | |||||
| <a href="http://inconvergent.net/" target="_blank">Inconvergent</a><br> | |||||
| <a href="http://www.datasketch.es/" target="_blank">Data Sketches</a><br> | |||||
| <a href="https://bit101.github.io/lab/dailies/170310.html" target="_blank">bit101-github</a><br> | |||||
| <a href="http://www.imdb.com/title/tt1508021/" target="_blank">being captain zero</a><br> | |||||
| </div> | |||||
| <div class="col-sm-2"> | |||||
| PGP : <br> | |||||
| <a href="page.php?id=00000000"><img src="articles/00000000/public_key_qrcode.png" width="100%; height: auto"></img></a> | |||||
| </div> | |||||
| </div> | |||||
| </div> | |||||
| <footer class="container-fluid bg-grey text-center"> | |||||
| <a href="#myPage" title="To Top"> | |||||
| <span class="glyphicon glyphicon-chevron-up"></span> | |||||
| </a> | |||||
| <p>Bootstrap Theme Made By <a href="https://www.w3schools.com" title="Visit w3schools">www.w3schools.com</a></p> | |||||
| </footer> | |||||
| </body> | |||||
| </html> | |||||
| @ -20,6 +20,9 @@ | |||||
| <script> | <script> | ||||
| // Init array | // Init array | ||||
| var liste_blocks = { | var liste_blocks = { | ||||
| 'WHALE201810' : '0000000000000000000f9f2dadfb8f312572183272802cbfcc4ff95b4ee6777d', | |||||
| 'BLOCK21E800' : '00000000000000000021e800c1e8df51b22c1588e5a624bea17e9faa34b2dc4a', | |||||
| 'HURRICANE_1' : '0000000000000000000fe6d521a187a5523d5cef6f6c178923ff82ffe5a0f372', | |||||
| 'SEGWIT' : '000000000000000000cbeff0b533f8e1189cf09dfbebf57a8ebe349362811b80', | 'SEGWIT' : '000000000000000000cbeff0b533f8e1189cf09dfbebf57a8ebe349362811b80', | ||||
| 'SEGWIT_LOCK' : '0000000000000000012e6060980c6475a9a8e62a1bf44b76c5d51f707d54522c', | 'SEGWIT_LOCK' : '0000000000000000012e6060980c6475a9a8e62a1bf44b76c5d51f707d54522c', | ||||
| 'BCC' : '00000000000000000019f112ec0a9982926f1258cdcc558dd7c3b7e5dc7fa148', | 'BCC' : '00000000000000000019f112ec0a9982926f1258cdcc558dd7c3b7e5dc7fa148', | ||||
| @ -80,7 +80,7 @@ | |||||
| </button> | </button> | ||||
| <a class="navbar-brand" href=".."> | <a class="navbar-brand" href=".."> | ||||
| <img id="logo_topisto" src="images/topisto_vert.png" style="border-radius:6px;display:inline-block;visibility:hidden;height:72px;;box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19)"> | <img id="logo_topisto" src="images/topisto_vert.png" style="border-radius:6px;display:inline-block;visibility:hidden;height:72px;;box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19)"> | ||||
| <span style="vertical-align:text-bottom;display:inline-block;color:black;font-family: Bangers, sans-serif;font-size: 70px;">TOPISTO</span> | |||||
| <span style="vertical-align:text-bottom;display:inline-block;color:black;font-family: Bangers, sans-serif;font-size: 60px;text-shadow: 2px 2px #ffffff">TOPISTO</span> | |||||
| </a> | </a> | ||||
| </div> | </div> | ||||
| <div class="collapse navbar-collapse" id="myNavbar"> | <div class="collapse navbar-collapse" id="myNavbar"> | ||||
| @ -115,22 +115,18 @@ | |||||
| <div class="container-fluid bg-grey" style="padding-top:0px;padding-bottom:10px"> | <div class="container-fluid bg-grey" style="padding-top:0px;padding-bottom:10px"> | ||||
| <div class="row"> | <div class="row"> | ||||
| <div class="col-sm-4"> | <div class="col-sm-4"> | ||||
| <br><br><xsmall>A kind of Blockchain Explorer</xsmall> | |||||
| <span class="align-middle">My Blockchain Explorer</span> | |||||
| </div> | </div> | ||||
| <div class="col-sm-2"> | |||||
| <div class="col-sm-8 text-right"> | |||||
| <a href="#navigation" onclick="javascript:initBlockchain('GENESIS');" class="btn btn-success btn-lg btn-topisto" data-toggle="tooltip" title="GENESIS"> | <a href="#navigation" onclick="javascript:initBlockchain('GENESIS');" class="btn btn-success btn-lg btn-topisto" data-toggle="tooltip" title="GENESIS"> | ||||
| <span class="glyphicon glyphicon-fast-backward"></span> | <span class="glyphicon glyphicon-fast-backward"></span> | ||||
| </a> | </a> | ||||
| <a href="#navigation" onclick="javascript:gotoBlock('PREVIOUS');" class="btn btn-info btn-lg btn-topisto" data-toggle="tooltip" title="PREVIOUS"> | <a href="#navigation" onclick="javascript:gotoBlock('PREVIOUS');" class="btn btn-info btn-lg btn-topisto" data-toggle="tooltip" title="PREVIOUS"> | ||||
| <span class="glyphicon glyphicon-backward"></span> | <span class="glyphicon glyphicon-backward"></span> | ||||
| </a> | </a> | ||||
| </div> | |||||
| <div class="col-sm-4"> | |||||
| <select id="blockSelector" style="width:100%" onchange="javascript:blockSelectorChange()" data-width="100%"> | |||||
| <select style="display:none" id="blockSelector" onchange="javascript:blockSelectorChange()" data-width="100%"> | |||||
| <option value="LAST">LAST</option> | <option value="LAST">LAST</option> | ||||
| </select> | </select> | ||||
| </div> | |||||
| <div class="col-sm-2 text-right"> | |||||
| <a id="btn-forward" href="#navigation" onclick="javascript:gotoBlock('NEXT');" class="btn btn-secondary btn-lg btn-topisto" data-toggle="tooltip" title="NEXT"> | <a id="btn-forward" href="#navigation" onclick="javascript:gotoBlock('NEXT');" class="btn btn-secondary btn-lg btn-topisto" data-toggle="tooltip" title="NEXT"> | ||||
| <span class="glyphicon glyphicon-forward"></span> | <span class="glyphicon glyphicon-forward"></span> | ||||
| </a> | </a> | ||||
| @ -1,6 +1,7 @@ | |||||
| // Init array | // Init array | ||||
| var liste_blocks = { | var liste_blocks = { | ||||
| '21E8' : '00000000000000000021e800c1e8df51b22c1588e5a624bea17e9faa34b2dc4a', | |||||
| 'WHALE201810' : '0000000000000000000f9f2dadfb8f312572183272802cbfcc4ff95b4ee6777d', | |||||
| 'BLOCK21E800' : '00000000000000000021e800c1e8df51b22c1588e5a624bea17e9faa34b2dc4a', | |||||
| 'HURRICANE_1' : '0000000000000000000fe6d521a187a5523d5cef6f6c178923ff82ffe5a0f372', | 'HURRICANE_1' : '0000000000000000000fe6d521a187a5523d5cef6f6c178923ff82ffe5a0f372', | ||||
| 'SEGWIT' : '000000000000000000cbeff0b533f8e1189cf09dfbebf57a8ebe349362811b80', | 'SEGWIT' : '000000000000000000cbeff0b533f8e1189cf09dfbebf57a8ebe349362811b80', | ||||
| 'SEGWIT_LOCK' : '0000000000000000012e6060980c6475a9a8e62a1bf44b76c5d51f707d54522c', | 'SEGWIT_LOCK' : '0000000000000000012e6060980c6475a9a8e62a1bf44b76c5d51f707d54522c', | ||||
| @ -180,6 +181,23 @@ | |||||
| return true; | return true; | ||||
| } | } | ||||
| function ajouterPreviousBlock() | |||||
| { | |||||
| // Bloquer la navigation pendant le calcul | |||||
| if (!flag_nav) return false; | |||||
| flag_nav = false; | |||||
| // Ajouter un div | |||||
| addDivForBlock(cur_height[cur_height.length-1] - 1); | |||||
| // Mettre les infos du | |||||
| block_hash = '?block_hash='+liste_blocks['PREVIOUS']; | |||||
| $.getJSON('data/getBlockInfo.php'+block_hash, function( data ) { | |||||
| liste_blocks['PREVIOUS'] = data.prev; | |||||
| liste_blocks['BLOCK_'+data.height] = data.hash; | |||||
| addInfoForBlock(data); | |||||
| }); | |||||
| } | |||||
| function initBlockchain(block_name) | function initBlockchain(block_name) | ||||
| { | { | ||||
| $(document).scrollTop( $("#explorer").offset().top ); | $(document).scrollTop( $("#explorer").offset().top ); | ||||
| @ -20,6 +20,9 @@ | |||||
| <script> | <script> | ||||
| // Init array | // Init array | ||||
| var liste_blocks = { | var liste_blocks = { | ||||
| 'WHALE201810' : '0000000000000000000f9f2dadfb8f312572183272802cbfcc4ff95b4ee6777d', | |||||
| 'BLOCK21E800' : '00000000000000000021e800c1e8df51b22c1588e5a624bea17e9faa34b2dc4a', | |||||
| 'HURRICANE_1' : '0000000000000000000fe6d521a187a5523d5cef6f6c178923ff82ffe5a0f372', | |||||
| 'SEGWIT' : '000000000000000000cbeff0b533f8e1189cf09dfbebf57a8ebe349362811b80', | 'SEGWIT' : '000000000000000000cbeff0b533f8e1189cf09dfbebf57a8ebe349362811b80', | ||||
| 'SEGWIT_LOCK' : '0000000000000000012e6060980c6475a9a8e62a1bf44b76c5d51f707d54522c', | 'SEGWIT_LOCK' : '0000000000000000012e6060980c6475a9a8e62a1bf44b76c5d51f707d54522c', | ||||
| 'BCC' : '00000000000000000019f112ec0a9982926f1258cdcc558dd7c3b7e5dc7fa148', | 'BCC' : '00000000000000000019f112ec0a9982926f1258cdcc558dd7c3b7e5dc7fa148', | ||||