<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<title>BandWidth</title>
<script language = "JavaScript" src="jquery-1.8.3.js"  type="text/javascript"></script>
</head>
<body >
<script language="JavaScript">

//http://upload.wikimedia.org/wikipedia/commons/5/51/Google.png
//Size = 238 KB
function measureBW(cnt, cb) {
    var start = new Date().getTime();
    var bandwidth;
    var i = 0;
    (function rec() {
        var xmlHttp = new XMLHttpRequest();
		xmlHttp.open('GET', 'Google.png', true);
        //xmlHttp.open('GET', 'http://upload.wikimedia.org/wikipedia/commons/5/51/Google.png', true);

        xmlHttp.onreadystatechange = function () {
            if (xmlHttp.readyState == 4) {
                var x = new Date().getTime() - start;
                bw = Number(((238 / (x / 1000))));
                bandwidth = ((bandwidth || bw) + bw) / 2;
				console.log("bandwidth ="+bandwidth);
                i++;
              if (i < cnt) {
                start = new Date().getTime();rec();
              }
                else cb(bandwidth.toFixed(0));
            }
        };
        xmlHttp.send(null);
    })();

}
//var imageAddr = 'http://upload.wikimedia.org/wikipedia/commons/5/51/Google.png' + "?n=" + Math.random();
var imageAddr = 'Google.png' + "?n=" + Math.random();

var startTime, endTime;
var downloadSize = 243397;
var download = new Image();
var inter;


$(document).ready(function() {
	download.src = imageAddr;
});
download.onprogress = function(e) { 
	//console.log("Progress ="+ e.loaded / e.total);
};

download.onload = function() {
	$("<div />").attr("id", "bandwidthDiv").appendTo("#pageDIV").css("z-index",200).css({ position:'relative', left:'45px', top:'92px', width:'200px', height:'200px'});
	
    endTime = (new Date()).getTime();
   // showResults();
 inter = setInterval(showResults, 5000);
}

 
startTime = (new Date()).getTime();
 
//calculates and shows the results
function showResults() {
clearInterval(inter);
    var duration = ((endTime - startTime) / 10000);
    var bitsLoaded = downloadSize * 8;
    var speedBps = Math.round(bitsLoaded / duration);
    var speedKbps = (speedBps / 1024).toFixed(2);
    var speedMbps = (speedKbps / 1024).toFixed(2);
 
    // log the info into the console
    // console.log("Your connection speed is: \n" +    speedBps + " bps\n" +    speedKbps + " kbps\n" +    speedMbps + " Mbps\n");
    Varbandwidthspeed.set(speedKbps);
    image661.actionHide();
    text664.actionHide();
}

</script>
</body>
</html>
