JSFiddle - React, Tailwind, and code Playground

HTML

<input type="text" id="hardfork" placeholder="Hard fork block number" />
<input type="button" id="refresh" value="Refresh" onclick="refresh()" />
<div id="error"><span style="color:red" id="errorMsg"></span></div>
<div id="result"></div>

JavaScript

function process(text) {
    $("#apicall").remove();
    $("#errorMsg").html("");
    var processedText = text.slice(text.indexOf("["));
    var result = JSON.parse(processedText);
    var timestamp = result[0].timestamp;
    var curBlockNum  = parseInt(result[0]._id);
    var curTime = new Date(Date.UTC(
                           timestamp.slice(0,4),             // Year 
                           parseInt(timestamp.slice(4,6))-1, // Month
                           timestamp.slice(6,8),             // Day
                           timestamp.slice(9,11),            // Hour
                           timestamp.slice(11,13),           // Minute
                           timestamp.slice(13,15)));         // Second
    $("#result").html("Current block: " + curBlockNum + " (" + curTime + ")");
    var inputText = $("#hardfork").val();
    if (inputText != "") {
        var hardforkBlockNum = parseInt(inputText);
        if (!(hardforkBlockNum > curBlockNum)) {
            $("#errorMsg").html("Please enter valid future block number.");
        } else {   
            var hardforkTime = new Date(curTime.getTime() + 10000*(hardforkBlockNum - curBlockNum));
            $("#result").append("<br />Hard fork block: " + hardforkBlockNum + " (" + hardforkTime + ")");
        }
    }
}

function refresh() {
    var script = document.createElement("script");
    script.id  = "apicall";
    script.src = "http://www.bitsharesblocks.com:1591/api/blocks/new/?callback=process";
    document.body.appendChild(script);
}

$(document).ready(function() {
    refresh();
});