diff --git a/index.php b/index.php
index a3663c8..dc3c932 100644
--- a/index.php
+++ b/index.php
@@ -23,6 +23,9 @@
@@ -102,8 +108,13 @@
diff --git a/js/blockexplorer.js b/js/blockexplorer.js
index 255a327..43bd32c 100644
--- a/js/blockexplorer.js
+++ b/js/blockexplorer.js
@@ -17,8 +17,8 @@ blockchainExplorer = function(){
function _getblockNameFromHash(hash)
{
var retour = '';
- if (_liste_blocks != null)
- _liste_blocks.forEach(function(item){
+ if (_known_blocks != null)
+ _known_blocks.forEach(function(item){
if (hash == item.hash) retour = item.name;
});
return retour;
@@ -27,9 +27,10 @@ blockchainExplorer = function(){
function _getblocHashFromName(name)
{
var retour = '';
- _liste_blocks.forEach(function(item){
- if (name == item.name) retour = item.hash;
- });
+ if (_known_blocks != null)
+ _known_blocks.forEach(function(item){
+ if (name == item.name) retour = item.hash;
+ });
return retour;
}
@@ -37,14 +38,21 @@ blockchainExplorer = function(){
{
var contenu = '';
var downloadingImage = new Image();
+ var div_label = block.height;
_cur_class = 1 - _cur_class;
blockName = _getblockNameFromHash(block.hash);
- if (blockName != '') blockName = ' ( '+blockName+' )';
-
+ // if (blockName != '') blockName = ' ( '+blockName+' )';
+
+ if (_mode > 1)
+ if (block.hash == _liste_blocks['TOP'])
+ {
+ div_label = 'LAST';
+ if (blockName == '') blockName = 'LAST';
+ }
contenu += ' ';
- if (_mode != 0)
+ if ((_mode % 2) != 0)
{
contenu += '
';
// contenu += '
block '+block.height+blockName+'
';
@@ -52,20 +60,21 @@ blockchainExplorer = function(){
contenu += '
';
//contenu += ' | hash | '+block.hash+' |
';
//contenu += ' | index | '+block.block_index+' |
';
+ if (_mode == 3 ) contenu += ' | name | '+blockName+' |
';
contenu += ' | height | '+block.height+' |
';
contenu += ' | timestamp | '+block.time+' |
';
contenu += ' | nonce | '+block.nonce+' |
';
contenu += ' | nb tx | '+block.n_tx+' |
';
contenu += ' | outputs | '+_precisionRound(block.topisto_outputs).toFixed(4)+' |
';
contenu += ' | inputs | '+_precisionRound(block.topisto_inputs).toFixed(4)+' |
';
- contenu += ' | fees | '+_precisionRound(block.topisto_fees).toFixed(4)+' |
';
+ if (_mode != 3 ) contenu += ' | fees | '+_precisionRound(block.topisto_fees).toFixed(4)+' |
';
contenu += ' | reward | '+_precisionRound(block.topisto_reward).toFixed(4)+' |
';
contenu += '
';
contenu += '
';
}
contenu += '
';
- $('#info_'+block.height).html(contenu);
+ $('#info_'+div_label).html(contenu);
contenu = '';
contenu += ''
- $('#info_'+block.height).append(contenu);
+ $('#info_'+div_label).append(contenu);
downloadingImage.onload = function(){
@@ -95,7 +104,7 @@ blockchainExplorer = function(){
div0.style.backgroundRepeat = "no-repeat";
div0.style.backgroundPosition = "center";
div0.style.backgroundSize = "auto 100%";
- if (_mode==1) div0.style.opacity=0.3;
+ if ((_mode %2) == 1) div0.style.opacity=0.3;
flag_nav = true;
@@ -211,7 +220,7 @@ blockchainExplorer = function(){
_liste_blocks['BLOCK_'+data.height] = data.hash;
// Ajouter un div
- _addDivForBlock(data.height,true);
+ if (_mode < 2) _addDivForBlock(data.height,true);
// Mettre les infos dans le div
_addInfoForBlock(data);
@@ -226,18 +235,32 @@ blockchainExplorer = function(){
block_hash = '?block_hash='+_liste_blocks['BOTTOM'];
$.getJSON('data/getBlockInfo.php'+block_hash, function( data ) {
- _liste_blocks['BOTTOM'] = data.prev;
- _liste_blocks['BLOCK_'+data.height] = data.hash;
- _liste_blocks['LENGTH'] += 1;
-
- // Ajouter un div
- _addDivForBlock(data.height, false);
+ // Ajouter un div
+ _addDivForBlock(data.height, false);
- // Mettre les infos dans le div
- _addInfoForBlock(data);
+ // Mettre les infos dans le div
+ _addInfoForBlock(data);
- // Récursivité pour précharger par paquets
- if (_liste_blocks['LENGTH'] % 10) _addBottomBlock();
+ _liste_blocks['BLOCK_'+data.height] = data.hash;
+ _liste_blocks['LENGTH'] += 1;
+
+ switch(_mode)
+ {
+ case 0:
+ case 1:
+ // Récursivité pour précharger par paquets
+ if (data.height > 0)
+ _liste_blocks['BOTTOM'] = data.prev;
+ break;
+ case 2:
+ case 3:
+ if (data.height > 0)
+ _liste_blocks['BOTTOM'] = _known_blocks[_liste_blocks['LENGTH']-1].hash;
+ break;
+ }
+
+ if (_liste_blocks['LENGTH'] % 10) _addBottomBlock();
+
});
}
@@ -245,18 +268,35 @@ blockchainExplorer = function(){
{
var block_hash = '';
+ _liste_blocks = [];
+ _liste_blocks['LENGTH'] = 0;
+
$(document).scrollTop( $("#explorer").offset().top );
$('#blockchain').html('');
if (block_name != 'LAST') block_hash = '?block_hash='+_getblocHashFromName(block_name);
$.getJSON('data/getBlockInfo.php'+block_hash, function( data ) {
- _liste_blocks['BOTTOM'] = data.prev;
_liste_blocks['TOP'] = data.hash;
_liste_blocks['BLOCK_'+data.height] = data.hash;
_liste_blocks['LENGTH'] += 1;
- _addDivForBlock(data.height);
+ div_label = data.height;
+ switch(_mode)
+ {
+ case 0:
+ case 1:
+ // Récursivité pour précharger par paquets
+ _liste_blocks['BOTTOM'] = data.prev;
+ break;
+ case 2:
+ case 3:
+ div_label = 'LAST';
+ _liste_blocks['BOTTOM'] = _known_blocks[0].hash;
+ break;
+ }
+
+ _addDivForBlock(div_label);
_addInfoForBlock(data);
blockchainListener.addBlockHook(_addTopBlock);
@@ -288,8 +328,6 @@ blockchainExplorer = function(){
if (_known_blocks == null)
{
$.getJSON('data/getKnownBlocksList.php', function( data ) {
- _liste_blocks = [];
- _liste_blocks['LENGTH'] = 0;
_known_blocks = data;
_known_blocks.sort(function(a,b){